-
Notifications
You must be signed in to change notification settings - Fork 411
Closed
Closed
Feature
Copy link
Labels
Feature-Language-ServicePopulating the Roslyn workspace with references, source files, analyzers, etcPopulating the Roslyn workspace with references, source files, analyzers, etcParity-Legacy-APIMissing or behavior differences in APIs from the legacy project system.Missing or behavior differences in APIs from the legacy project system.Parity-Legacy-FeatureMissing features from the legacy project system.Missing features from the legacy project system.Triage-ApprovedReviewed and prioritizedReviewed and prioritized
Milestone
Description
We need an API that lets consumers wait on the language service to be up-to-date with a given project version, similar to IProjectTreeService.PublishTree:
Task PublishLatestAsync(
CancellationToken cancellationToken = default(CancellationToken));
Task PublishAsync(
IImmutableDictionary<NamedIdentity, IProjectVersionRequirement> minimumRequiredDataSourceVersions,
CancellationToken cancellationToken = default(CancellationToken));This lets services such as CodeModel provider to block this before returning a CodeModel item, or the renamer to block on this attempting to rename. Also lets us block VS integration tests on this work before attempting to test state.
Without this, it's impossible to know when ProjectItem.CodeModel is going to return a result.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Feature-Language-ServicePopulating the Roslyn workspace with references, source files, analyzers, etcPopulating the Roslyn workspace with references, source files, analyzers, etcParity-Legacy-APIMissing or behavior differences in APIs from the legacy project system.Missing or behavior differences in APIs from the legacy project system.Parity-Legacy-FeatureMissing features from the legacy project system.Missing features from the legacy project system.Triage-ApprovedReviewed and prioritizedReviewed and prioritized