Skip to content

Commit 93e2561

Browse files
authored
Convert HideAdvancedMembers option to editorconfig option (#74360)
1 parent e2bfb31 commit 93e2561

File tree

88 files changed

+384
-244
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

88 files changed

+384
-244
lines changed

src/EditorFeatures/CSharpTest/CodeActions/AddUsing/AddUsingTests.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,11 @@
55
using System.Collections.Generic;
66
using System.Collections.Immutable;
77
using System.Threading.Tasks;
8-
using Microsoft.CodeAnalysis.Completion;
98
using Microsoft.CodeAnalysis.CSharp;
109
using Microsoft.CodeAnalysis.CSharp.Test.Utilities;
1110
using Microsoft.CodeAnalysis.Editing;
1211
using Microsoft.CodeAnalysis.Formatting;
12+
using Microsoft.CodeAnalysis.Options;
1313
using Microsoft.CodeAnalysis.Remote.Testing;
1414
using Microsoft.CodeAnalysis.Tags;
1515
using Microsoft.CodeAnalysis.Test.Utilities;
@@ -6365,7 +6365,7 @@ static void Main(string[] args)
63656365
</Workspace>";
63666366

63676367
await TestMissingAsync(initialWorkspace, new TestParameters(
6368-
globalOptions: Option(CompletionOptionsStorage.HideAdvancedMembers, true),
6368+
options: Option(MemberDisplayOptionsStorage.HideAdvancedMembers, true),
63696369
testHost: testHost));
63706370
}
63716371

src/EditorFeatures/Core.Wpf/SignatureHelp/Controller.Session_ComputeModel.cs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
using Microsoft.CodeAnalysis.ErrorReporting;
1414
using Microsoft.CodeAnalysis.Internal.Log;
1515
using Microsoft.CodeAnalysis.LanguageService;
16+
using Microsoft.CodeAnalysis.Options;
1617
using Microsoft.CodeAnalysis.Shared.Extensions;
1718
using Microsoft.CodeAnalysis.SignatureHelp;
1819
using Microsoft.VisualStudio.Text;
@@ -82,15 +83,12 @@ private async Task<Model> ComputeModelInBackgroundAsync(
8283
}
8384
}
8485

85-
var options = Controller.GlobalOptions.GetSignatureHelpOptions(document.Project.Language);
86-
8786
// first try to query the providers that can trigger on the specified character
8887
var (provider, items) = await SignatureHelpService.GetSignatureHelpAsync(
8988
providers,
9089
document,
9190
caretPosition,
9291
triggerInfo,
93-
options,
9492
cancellationToken).ConfigureAwait(false);
9593

9694
if (provider == null)

src/EditorFeatures/Core/AddImports/AbstractAddImportsPasteCommandHandler.cs

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
using Microsoft.CodeAnalysis.AddImportOnPaste;
88
using Microsoft.CodeAnalysis.AddMissingImports;
99
using Microsoft.CodeAnalysis.CodeCleanup;
10-
using Microsoft.CodeAnalysis.Completion;
1110
using Microsoft.CodeAnalysis.Editor.BackgroundWorkIndicator;
1211
using Microsoft.CodeAnalysis.Editor.Shared.Extensions;
1312
using Microsoft.CodeAnalysis.Editor.Shared.Utilities;
@@ -152,16 +151,10 @@ private async Task ExecuteAsync(Document document, SnapshotSpan snapshotSpan, IT
152151
await TaskScheduler.Default;
153152

154153
var addMissingImportsService = document.GetRequiredLanguageService<IAddMissingImportsFeatureService>();
155-
156-
var cleanupOptions = await document.GetCodeCleanupOptionsAsync(cancellationToken).ConfigureAwait(false);
157-
158-
var options = new AddMissingImportsOptions(
159-
CleanupOptions: cleanupOptions,
160-
HideAdvancedMembers: _globalOptions.GetOption(CompletionOptionsStorage.HideAdvancedMembers, document.Project.Language));
161-
162154
var textSpan = snapshotSpan.Span.ToTextSpan();
155+
163156
var updatedDocument = await addMissingImportsService.AddMissingImportsAsync(
164-
document, textSpan, options, backgroundWorkContext.GetCodeAnalysisProgress(), cancellationToken).ConfigureAwait(false);
157+
document, textSpan, backgroundWorkContext.GetCodeAnalysisProgress(), cancellationToken).ConfigureAwait(false);
165158

166159
if (updatedDocument is null)
167160
{

src/EditorFeatures/Core/ExternalAccess/UnitTestGenerator/Api/UnitTestGeneratorAddMissingImportsFeatureServiceAccessor.cs

Lines changed: 10 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,7 @@
77
using System.Threading;
88
using System.Threading.Tasks;
99
using Microsoft.CodeAnalysis.AddMissingImports;
10-
using Microsoft.CodeAnalysis.CodeCleanup;
11-
using Microsoft.CodeAnalysis.Completion;
1210
using Microsoft.CodeAnalysis.Host.Mef;
13-
using Microsoft.CodeAnalysis.Options;
1411
using Microsoft.CodeAnalysis.Shared.Extensions;
1512
using Microsoft.CodeAnalysis.Text;
1613

@@ -20,45 +17,35 @@ namespace Microsoft.CodeAnalysis.ExternalAccess.UnitTestGenerator.Api;
2017
[Shared]
2118
[method: ImportingConstructor]
2219
[method: Obsolete(MefConstruction.ImportingConstructorMessage, error: true)]
23-
internal class UnitTestGeneratorAddMissingImportsFeatureServiceAccessor(IGlobalOptionService globalOptions)
20+
internal class UnitTestGeneratorAddMissingImportsFeatureServiceAccessor()
2421
{
25-
private readonly IGlobalOptionService _globalOptions = globalOptions;
26-
22+
#pragma warning disable CA1822 // Mark members as static
2723
internal async Task<Document> AddMissingImportsAsync(Document document, TextSpan textSpan, CancellationToken cancellationToken)
24+
#pragma warning restore CA1822
2825
{
29-
var options = await GetOptionsAsync(document, cancellationToken).ConfigureAwait(false);
3026
var service = document.Project.GetRequiredLanguageService<IAddMissingImportsFeatureService>();
3127

3228
// Unfortunately, the unit testing system doesn't have a way to report progress.
33-
return await service.AddMissingImportsAsync(document, textSpan, options, CodeAnalysisProgress.None, cancellationToken).ConfigureAwait(false);
29+
return await service.AddMissingImportsAsync(document, textSpan, CodeAnalysisProgress.None, cancellationToken).ConfigureAwait(false);
3430
}
3531

32+
#pragma warning disable CA1822 // Mark members as static
3633
internal async Task<WrappedMissingImportsAnalysisResult> AnalyzeAsync(Document document, TextSpan textSpan, CancellationToken cancellationToken)
34+
#pragma warning restore CA1822
3735
{
38-
var options = await GetOptionsAsync(document, cancellationToken).ConfigureAwait(false);
3936
var service = document.Project.GetRequiredLanguageService<IAddMissingImportsFeatureService>();
40-
var result = await service.AnalyzeAsync(document, textSpan, options, cancellationToken).ConfigureAwait(false);
37+
var result = await service.AnalyzeAsync(document, textSpan, cancellationToken).ConfigureAwait(false);
4138
return new WrappedMissingImportsAnalysisResult(result.AddImportFixData.SelectAsArray(data => new WrappedAddImportFixData(data)));
4239
}
4340

41+
#pragma warning disable CA1822 // Mark members as static
4442
internal async Task<Document> AddMissingImportsAsync(Document document, WrappedMissingImportsAnalysisResult analysisResult, CancellationToken cancellationToken)
43+
#pragma warning restore CA1822
4544
{
46-
var options = await GetOptionsAsync(document, cancellationToken).ConfigureAwait(false);
4745
var service = document.Project.GetRequiredLanguageService<IAddMissingImportsFeatureService>();
4846
var unwrappedResult = new AddMissingImportsAnalysisResult(analysisResult.AddImportFixDatas.SelectAsArray(result => result.Underlying));
4947

5048
// Unfortunately, the unit testing system doesn't have a way to report progress.
51-
return await service.AddMissingImportsAsync(document, unwrappedResult, options.CleanupOptions.FormattingOptions, CodeAnalysisProgress.None, cancellationToken).ConfigureAwait(false);
52-
}
53-
54-
private async Task<AddMissingImportsOptions> GetOptionsAsync(Document document, CancellationToken cancellationToken)
55-
{
56-
var cleanupOptions = await document.GetCodeCleanupOptionsAsync(cancellationToken).ConfigureAwait(false);
57-
58-
var options = new AddMissingImportsOptions(
59-
CleanupOptions: cleanupOptions,
60-
HideAdvancedMembers: _globalOptions.GetOption(CompletionOptionsStorage.HideAdvancedMembers, document.Project.Language));
61-
62-
return options;
49+
return await service.AddMissingImportsAsync(document, unwrappedResult, CodeAnalysisProgress.None, cancellationToken).ConfigureAwait(false);
6350
}
6451
}

src/EditorFeatures/DiagnosticsTestUtilities/CodeActions/AbstractCodeActionOrUserDiagnosticTest.cs

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -110,9 +110,6 @@ public TestParameters WithCompilationOptions(CompilationOptions compilationOptio
110110
internal TestParameters WithOptions(OptionsCollectionAlias options)
111111
=> new(parseOptions, compilationOptions, options, globalOptions, fixProviderData, index, priority, retainNonFixableDiagnostics, includeDiagnosticsOutsideSelection, title, testHost, workspaceKind, includeNonLocalDocumentDiagnostics, treatPositionIndicatorsAsCode);
112112

113-
internal TestParameters WithGlobalOptions(OptionsCollectionAlias globalOptions)
114-
=> new(parseOptions, compilationOptions, options, globalOptions, fixProviderData, index, priority, retainNonFixableDiagnostics, includeDiagnosticsOutsideSelection, title, testHost, workspaceKind, includeNonLocalDocumentDiagnostics, treatPositionIndicatorsAsCode);
115-
116113
public TestParameters WithFixProviderData(object fixProviderData)
117114
=> new(parseOptions, compilationOptions, options, globalOptions, fixProviderData, index, priority, retainNonFixableDiagnostics, includeDiagnosticsOutsideSelection, title, testHost, workspaceKind, includeNonLocalDocumentDiagnostics, treatPositionIndicatorsAsCode);
118115

@@ -408,15 +405,14 @@ internal Task TestInRegularAndScriptAsync(
408405
CodeActionPriority? priority = null,
409406
CompilationOptions compilationOptions = null,
410407
OptionsCollectionAlias options = null,
411-
OptionsCollectionAlias globalOptions = null,
412408
object fixProviderData = null,
413409
ParseOptions parseOptions = null,
414410
string title = null,
415411
TestHost testHost = TestHost.OutOfProcess)
416412
{
417413
return TestInRegularAndScript1Async(
418414
initialMarkup, expectedMarkup,
419-
new TestParameters(parseOptions, compilationOptions, options, globalOptions, fixProviderData, index, priority, title: title, testHost: testHost));
415+
new TestParameters(parseOptions, compilationOptions, options, globalOptions: null, fixProviderData, index, priority, title: title, testHost: testHost));
420416
}
421417

422418
internal Task TestInRegularAndScript1Async(
@@ -449,15 +445,14 @@ internal Task TestAsync(
449445
CompilationOptions compilationOptions = null,
450446
int index = 0,
451447
OptionsCollectionAlias options = null,
452-
OptionsCollectionAlias globalOptions = null,
453448
object fixProviderData = null,
454449
CodeActionPriority? priority = null,
455450
TestHost testHost = TestHost.OutOfProcess)
456451
{
457452
return TestAsync(
458453
initialMarkup,
459454
expectedMarkup,
460-
new TestParameters(parseOptions, compilationOptions, options, globalOptions, fixProviderData, index, priority, testHost: testHost));
455+
new TestParameters(parseOptions, compilationOptions, options, globalOptions: null, fixProviderData, index, priority, testHost: testHost));
461456
}
462457

463458
private async Task TestAsync(

src/EditorFeatures/DiagnosticsTestUtilities/Diagnostics/AbstractDiagnosticProviderBasedUserDiagnosticTest.cs

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -191,24 +191,22 @@ private protected async Task TestDiagnosticInfoAsync(
191191
string diagnosticId,
192192
DiagnosticSeverity diagnosticSeverity,
193193
OptionsCollectionAlias options = null,
194-
OptionsCollectionAlias globalOptions = null,
195194
LocalizableString diagnosticMessage = null)
196195
{
197-
await TestDiagnosticInfoAsync(initialMarkup, parseOptions: null, compilationOptions: null, options, globalOptions, diagnosticId, diagnosticSeverity, diagnosticMessage);
198-
await TestDiagnosticInfoAsync(initialMarkup, GetScriptOptions(), compilationOptions: null, options, globalOptions, diagnosticId, diagnosticSeverity, diagnosticMessage);
196+
await TestDiagnosticInfoAsync(initialMarkup, parseOptions: null, compilationOptions: null, options, diagnosticId, diagnosticSeverity, diagnosticMessage);
197+
await TestDiagnosticInfoAsync(initialMarkup, GetScriptOptions(), compilationOptions: null, options, diagnosticId, diagnosticSeverity, diagnosticMessage);
199198
}
200199

201200
private protected async Task TestDiagnosticInfoAsync(
202201
string initialMarkup,
203202
ParseOptions parseOptions,
204203
CompilationOptions compilationOptions,
205204
OptionsCollectionAlias options,
206-
OptionsCollectionAlias globalOptions,
207205
string diagnosticId,
208206
DiagnosticSeverity diagnosticSeverity,
209207
LocalizableString diagnosticMessage = null)
210208
{
211-
var testOptions = new TestParameters(parseOptions, compilationOptions, options: options, globalOptions: globalOptions);
209+
var testOptions = new TestParameters(parseOptions, compilationOptions, options: options);
212210
using var workspace = CreateWorkspaceFromOptions(initialMarkup, testOptions);
213211
var diagnostics = (await GetDiagnosticsAsync(workspace, testOptions)).ToImmutableArray();
214212
diagnostics = diagnostics.WhereAsArray(d => d.Id == diagnosticId);

src/EditorFeatures/DiagnosticsTestUtilities/Diagnostics/AbstractUserDiagnosticTest.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -230,12 +230,11 @@ private protected Task TestActionCountInAllFixesAsync(
230230
ParseOptions parseOptions = null,
231231
CompilationOptions compilationOptions = null,
232232
OptionsCollectionAlias options = null,
233-
OptionsCollectionAlias globalOptions = null,
234233
object fixProviderData = null)
235234
{
236235
return TestActionCountInAllFixesAsync(
237236
initialMarkup,
238-
new TestParameters(parseOptions, compilationOptions, options, globalOptions, fixProviderData),
237+
new TestParameters(parseOptions, compilationOptions, options, globalOptions: null, fixProviderData),
239238
count);
240239
}
241240

src/EditorFeatures/Test/Options/GlobalOptionsTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@ public void ReadingOptionsFromGlobalOptions(string language)
192192
VerifyDataMembersHaveNonDefaultValues(globalOptions.GetDocumentationCommentOptions(globalOptions.GetLineFormattingOptions(language), language), DocumentationCommentOptions.Default, language);
193193
VerifyDataMembersHaveNonDefaultValues(globalOptions.GetImplementTypeOptions(language), ImplementTypeOptions.Default, language);
194194
VerifyDataMembersHaveNonDefaultValues(globalOptions.GetMetadataAsSourceOptions(), MetadataAsSourceOptions.Default, language);
195-
VerifyDataMembersHaveNonDefaultValues(globalOptions.GetSignatureHelpOptions(language), SignatureHelpOptions.Default, language);
195+
VerifyDataMembersHaveNonDefaultValues(globalOptions.GetMemberDisplayOptions(language), MemberDisplayOptions.Default, language);
196196
VerifyDataMembersHaveNonDefaultValues(globalOptions.GetSymbolSearchOptions(language), SymbolSearchOptions.Default, language);
197197
VerifyDataMembersHaveNonDefaultValues(globalOptions.GetWorkspaceConfigurationOptions(), WorkspaceConfigurationOptions.Default);
198198
}

src/EditorFeatures/Test2/IntelliSense/SignatureHelpControllerTests.vb

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ Namespace Microsoft.CodeAnalysis.Editor.UnitTests.IntelliSense
8080

8181
<WpfFact, WorkItem("http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/985007")>
8282
Public Sub UpKeyShouldNotCrashWhenSessionIsDismissed()
83-
Dim options = New SignatureHelpOptions()
83+
Dim options = New MemberDisplayOptions()
8484

8585
' Create a provider that will return an empty state when queried the second time
8686
Dim slowProvider = New Mock(Of ISignatureHelpProvider)(MockBehavior.Strict)
@@ -108,7 +108,7 @@ Namespace Microsoft.CodeAnalysis.Editor.UnitTests.IntelliSense
108108

109109
<WpfFact, WorkItem("https://devdiv.visualstudio.com/DefaultCollection/DevDiv/_workItems?id=179726&_a=edit")>
110110
Public Sub DownKeyShouldNotBlockOnModelComputation()
111-
Dim options = New SignatureHelpOptions()
111+
Dim options = New MemberDisplayOptions()
112112
Dim mre = New ManualResetEvent(False)
113113
Dim controller = CreateController(CreateWorkspace(), items:=CreateItems(2), waitForPresentation:=False)
114114
Dim slowProvider = New Mock(Of ISignatureHelpProvider)(MockBehavior.Strict)
@@ -128,7 +128,7 @@ Namespace Microsoft.CodeAnalysis.Editor.UnitTests.IntelliSense
128128

129129
<WpfFact, WorkItem("https://devdiv.visualstudio.com/DefaultCollection/DevDiv/_workItems?id=179726&_a=edit")>
130130
Public Sub UpKeyShouldNotBlockOnModelComputation()
131-
Dim options = New SignatureHelpOptions()
131+
Dim options = New MemberDisplayOptions()
132132
Dim mre = New ManualResetEvent(False)
133133
Dim controller = CreateController(CreateWorkspace(), items:=CreateItems(2), waitForPresentation:=False)
134134
Dim slowProvider = New Mock(Of ISignatureHelpProvider)(MockBehavior.Strict)
@@ -148,7 +148,7 @@ Namespace Microsoft.CodeAnalysis.Editor.UnitTests.IntelliSense
148148

149149
<WpfFact, WorkItem("https://devdiv.visualstudio.com/DefaultCollection/DevDiv/_workItems?id=179726&_a=edit")>
150150
Public Async Function UpKeyShouldBlockOnRecomputationAfterPresentation() As Task
151-
Dim options = New SignatureHelpOptions()
151+
Dim options = New MemberDisplayOptions()
152152
Dim workspace = CreateWorkspace()
153153
Dim threadingContext = workspace.GetService(Of IThreadingContext)()
154154

@@ -352,7 +352,7 @@ Namespace Microsoft.CodeAnalysis.Editor.UnitTests.IntelliSense
352352

353353
Public Property GetItemsCount As Integer
354354

355-
Public Function GetItemsAsync(document As Document, position As Integer, triggerInfo As SignatureHelpTriggerInfo, options As SignatureHelpOptions, cancellationToken As CancellationToken) As Task(Of SignatureHelpItems) Implements ISignatureHelpProvider.GetItemsAsync
355+
Public Function GetItemsAsync(document As Document, position As Integer, triggerInfo As SignatureHelpTriggerInfo, options As MemberDisplayOptions, cancellationToken As CancellationToken) As Task(Of SignatureHelpItems) Implements ISignatureHelpProvider.GetItemsAsync
356356
GetItemsCount += 1
357357
Return Task.FromResult(If(_items.Any(),
358358
New SignatureHelpItems(_items, TextSpan.FromBounds(position, position), selectedItem:=0, argumentIndex:=0, argumentCount:=0, argumentName:=Nothing),

src/EditorFeatures/TestUtilities/Completion/AbstractCompletionProviderTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ private CompletionOptions GetCompletionOptions()
7070
options = options with { ForceExpandedCompletionIndexCreation = ForceExpandedCompletionIndexCreation.Value };
7171

7272
if (HideAdvancedMembers.HasValue)
73-
options = options with { HideAdvancedMembers = HideAdvancedMembers.Value };
73+
options = options with { MemberDisplayOptions = new() { HideAdvancedMembers = HideAdvancedMembers.Value } };
7474

7575
if (ShowNameSuggestions.HasValue)
7676
options = options with { ShowNameSuggestions = ShowNameSuggestions.Value };

0 commit comments

Comments
 (0)