Clean up the dependency structure around the environment service #102928
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.
This PR fixes #102918
I followed the example of INativeWorkbenchEnvironmentService and extracted IBrowserWorkbenchEnvironmentService, splitting the workspace configuration options into two files: vs/workbench/{common,browser}/options.ts. Maybe I should have used the 'Web' infix instead of 'Browser' to highlight that those are web-only components, not reusable in the electron version. I'm happy to follow up and update this pull request as needed.
This PR also adds missing code-import-patterns for the web version.
Now looking at the code one again, I wonder if we should promote all
common
contributions relying on the common environment service's options tobrowser
as they don't make much sense in other environments. This can be done in a separate step though. There are:vscode/src/vs/workbench/services/extensionManagement/common/extensionManagementServerService.ts
Line 41 in 4ecf61e