fix: expand non-Java workspace roots when resources are shown - #1075
Merged
wenyt (wenytang-ms) merged 3 commits intoSep 3, 2026
Conversation
Contributor
There was a problem hiding this comment.
🟡 Changes recommended
Conditional exclusions and resource actions are incorrect for supported filesystem configurations.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
Adds filesystem browsing for non-Java roots in multi-root workspaces.
Changes:
- Adds filesystem-backed explorer nodes with exclusion filtering.
- Keeps Java project APIs limited to
ProjectNode. - Extends tests, documentation, and localization.
File summaries
| File | Description |
|---|---|
src/views/workspaceResourceFolderNode.ts |
Implements filesystem resource nodes. |
src/views/workspaceNode.ts |
Loads resources for non-Java roots. |
src/views/dependencyDataProvider.ts |
Filters root project results. |
test/multiple-suite/projectView.test.ts |
Tests resources and exclusions. |
test/e2e-plans/java-dep-project-explorer.yaml |
Verifies expandable non-Java roots. |
README.md |
Documents browsing behavior. |
package.nls.json |
Updates English setting text. |
package.nls.zh-cn.json |
Updates Simplified Chinese text. |
package.nls.zh-tw.json |
Updates Traditional Chinese text. |
Review details
- Files reviewed: 9/9 changed files
- Comments generated: 2
- Review effort level: Balanced
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Contributor
There was a problem hiding this comment.
🟡 Changes recommended
Mutations in filesystem-only roots leave the tree stale because those roots are not watched for refreshes.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Review details
- Files reviewed: 9/9 changed files
- Comments generated: 1
- Review effort level: Balanced
wenyt (wenytang-ms)
marked this pull request as ready for review
September 3, 2026 06:40
wenyt (wenytang-ms)
requested review from
Changyong Gong (chagong) and
Jinbo Wang (testforstephen)
as code owners
September 3, 2026 06:40
Changyong Gong (chagong)
approved these changes
Sep 3, 2026
wenyt (wenytang-ms)
deleted the
fix/758-expand-non-java-workspace-roots
branch
September 3, 2026 07:47
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
java.project.explorer.showNonJavaResourcesis enabled.files.excludeto filesystem-backed resources and keep those resources out of APIs that return Java project nodes.Scope
This is the minimal Show counterpart to #1074. It makes filesystem-only roots expandable without merging ordinary filesystem resources into workspace roots that already contain JDT projects. Fallback resources can be browsed and opened, while mutation actions and automatic refresh for external filesystem changes remain outside this PR.
UI verification
Before: Hide
With
Hide Non-Java Resourcesenabled, the filesystem-onlynon-javaworkspace root is not shown, while Java workspace roots remain available.After: Show
Switching to
Show Non-Java Resourcesrestores thenon-javaroot, which can now be expanded to browsepackage.json.Validation
npx tsc -p . --noEmitnpm run tslintnpm run compilemultiple-suite: 4 passingFixes #758