This repository has been archived by the owner on Jul 31, 2023. It is now read-only.
[Discussion] [Live Share] Restricting language services to local files #326
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.
In preparation for Visual Studio Live Share adding support for "guests" to receive remote language services for Ruby, this PR makes the following changes:
DocumentSelector
to be limited tofile
anduntitled
(unsaved) files.With these changes, when someone has the Ruby extension installed, and joins a Live Share session (where files use the
vsls:
scheme), their language services will be entirely derived from the remote/host side, which provides a more accurate and project-wide experience (guests in Live Share don't have local file access to the project they're collaborating with).If someone joins a Ruby project using Live Share, and doesn't have the Ruby extension installed, then they will automatically receive language services from the host (which is awesome! 🎉), so this PR is simply an optimization for the case where collaborating developers both have the Ruby extension installed. Additionally, this wouldn't impact the "local" Ruby development experience.
Note: As an example, the TypeScript/JavaScript language services that come in-box with VS Code already have this scheme restriction, and so this PR replicates that behavior.