Skip to content

Commit 54cb573

Browse files
[main] Update dependencies from dotnet/roslyn-analyzers (#87768)
* Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20230618.1 * Suppress RS1038 analyzer * Fix new failures found with CA1859 analyzer updates * Disable CA2261 on test projects, fix more CA1859 findings --------- Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com> Co-authored-by: Buyaa Namnan <[email protected]>
1 parent e40d6e1 commit 54cb573

File tree

14 files changed

+26
-16
lines changed

14 files changed

+26
-16
lines changed

eng/CodeAnalysis.src.globalconfig

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -658,6 +658,9 @@ dotnet_diagnostic.CA2259.severity = warning
658658
# CA2260: Use correct type parameter
659659
dotnet_diagnostic.CA2260.severity = warning
660660

661+
# CA2261: Do not use ConfigureAwaitOptions.SuppressThrowing with Task<TResult>
662+
dotnet_diagnostic.CA2261.severity = warning
663+
661664
# CA2300: Do not use insecure deserializer BinaryFormatter
662665
dotnet_diagnostic.CA2300.severity = none
663666

eng/CodeAnalysis.test.globalconfig

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -654,6 +654,9 @@ dotnet_diagnostic.CA2259.severity = none
654654
# CA2260: Use correct type parameter
655655
dotnet_diagnostic.CA2260.severity = none
656656

657+
# CA2261: Do not use ConfigureAwaitOptions.SuppressThrowing with Task<TResult>
658+
dotnet_diagnostic.CA2261.severity = none
659+
657660
# CA2300: Do not use insecure deserializer BinaryFormatter
658661
dotnet_diagnostic.CA2300.severity = none
659662

eng/Version.Details.xml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -372,13 +372,13 @@
372372
<Uri>https://github.com/dotnet/roslyn</Uri>
373373
<Sha>7787409c6b529c021d4f8b5fbe3d620094953be9</Sha>
374374
</Dependency>
375-
<Dependency Name="Microsoft.CodeAnalysis.Analyzers" Version="3.3.5-beta1.23308.2">
375+
<Dependency Name="Microsoft.CodeAnalysis.Analyzers" Version="3.11.0-beta1.23357.1">
376376
<Uri>https://github.com/dotnet/roslyn-analyzers</Uri>
377-
<Sha>2f0301ef59624a72fb00f7fd92caa50be03f277d</Sha>
377+
<Sha>82603c16509d7383cd1922680773a79b839b1705</Sha>
378378
</Dependency>
379-
<Dependency Name="Microsoft.CodeAnalysis.NetAnalyzers" Version="8.0.0-preview.23308.2">
379+
<Dependency Name="Microsoft.CodeAnalysis.NetAnalyzers" Version="8.0.0-preview.23357.1">
380380
<Uri>https://github.com/dotnet/roslyn-analyzers</Uri>
381-
<Sha>2f0301ef59624a72fb00f7fd92caa50be03f277d</Sha>
381+
<Sha>82603c16509d7383cd1922680773a79b839b1705</Sha>
382382
</Dependency>
383383
<Dependency Name="Microsoft.DotNet.ApiCompat.Task" Version="8.0.100-preview.7.23329.3">
384384
<Uri>https://github.com/dotnet/sdk</Uri>

eng/Versions.props

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,8 @@
3232
</ItemGroup>
3333
<PropertyGroup>
3434
<!-- dotnet/roslyn-analyzers dependencies -->
35-
<MicrosoftCodeAnalysisAnalyzersVersion>3.3.5-beta1.23308.2</MicrosoftCodeAnalysisAnalyzersVersion>
36-
<MicrosoftCodeAnalysisNetAnalyzersVersion>8.0.0-preview.23308.2</MicrosoftCodeAnalysisNetAnalyzersVersion>
35+
<MicrosoftCodeAnalysisAnalyzersVersion>3.11.0-beta1.23357.1</MicrosoftCodeAnalysisAnalyzersVersion>
36+
<MicrosoftCodeAnalysisNetAnalyzersVersion>8.0.0-preview.23357.1</MicrosoftCodeAnalysisNetAnalyzersVersion>
3737
<!-- dotnet/roslyn dependencies -->
3838
<!--
3939
These versions should not be used by any project that contributes to the design-time experience in VS, such as an analyzer, code-fix, or generator assembly.

src/coreclr/nativeaot/System.Private.CoreLib/src/System/Reflection/Runtime/MethodInfos/RuntimeMethodInfo.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -325,8 +325,10 @@ internal Delegate CreateDelegateNoThrowOnBindFailure(RuntimeTypeInfo runtimeDele
325325
return null;
326326
}
327327

328+
#pragma warning disable CA1859 // Use concrete types when possible for improved performance https://github.com/dotnet/roslyn-analyzers/issues/6751
328329
IList<ParameterInfo> delegateParameters = invokeMethod.GetParametersNoCopy();
329330
IList<ParameterInfo> targetParameters = this.GetParametersNoCopy();
331+
#pragma warning restore CA1859
330332
IEnumerator<ParameterInfo> delegateParameterEnumerator = delegateParameters.GetEnumerator();
331333
IEnumerator<ParameterInfo> targetParameterEnumerator = targetParameters.GetEnumerator();
332334

src/coreclr/tools/Common/Compiler/GenericCycleDetection/Graph.Cycles.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -311,7 +311,7 @@ public IEnumerable<P> ComputeVerticesInvolvedInAFlaggedCycle()
311311
}
312312
#endif
313313

314-
return verticesInAFlaggedCycleTarjanStyle.Select(v => v.Payload).ToArray();
314+
return verticesInAFlaggedCycleTarjanStyle.Select(v => v.Payload);
315315
}
316316

317317
/// <summary>

src/coreclr/tools/aot/ILCompiler.Compiler/Compiler/DependencyAnalysis/VTableSliceNode.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ public EagerlyBuiltVTableSliceNode(TypeDesc type)
102102
{
103103
}
104104

105-
private static IReadOnlyList<MethodDesc> ComputeSlots(TypeDesc type)
105+
private static MethodDesc[] ComputeSlots(TypeDesc type)
106106
{
107107
var slots = default(ArrayBuilder<MethodDesc>);
108108

src/libraries/Microsoft.Extensions.Logging.EventSource/src/EventSourceLogger.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -194,7 +194,7 @@ private static ExceptionInfo GetExceptionInfo(Exception? exception)
194194
/// <summary>
195195
/// Converts an ILogger state object into a set of key-value pairs (That can be send to a EventSource)
196196
/// </summary>
197-
private static IReadOnlyList<KeyValuePair<string, string?>> GetProperties(object? state)
197+
private static KeyValuePair<string, string?>[] GetProperties(object? state)
198198
{
199199
if (state is IReadOnlyList<KeyValuePair<string, object?>> keyValuePairs)
200200
{

src/libraries/System.Linq/src/System/Linq/Enumerable.SizeOpt.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ public static partial class Enumerable
99
{
1010
public static IEnumerable<TResult> Empty<TResult>() => Array.Empty<TResult>();
1111

12-
private static IEnumerable<TResult>? GetEmptyIfEmpty<TSource, TResult>(IEnumerable<TSource> source) =>
12+
private static TResult[]? GetEmptyIfEmpty<TSource, TResult>(IEnumerable<TSource> source) =>
1313
source is TSource[] { Length: 0 } ?
1414
Array.Empty<TResult>() :
1515
null;

src/libraries/System.Private.Xml/src/System/Xml/Serialization/ReflectionXmlSerializationReader.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ protected override void InitIDs()
8989
}
9090

9191
[RequiresUnreferencedCode(XmlSerializer.TrimSerializationWarning)]
92-
private object GenerateMembersElement(XmlMembersMapping xmlMembersMapping)
92+
private object?[] GenerateMembersElement(XmlMembersMapping xmlMembersMapping)
9393
{
9494
if (xmlMembersMapping.Accessor.IsSoap)
9595
{
@@ -102,7 +102,7 @@ private object GenerateMembersElement(XmlMembersMapping xmlMembersMapping)
102102
}
103103

104104
[RequiresUnreferencedCode(XmlSerializer.TrimSerializationWarning)]
105-
private object GenerateLiteralMembersElement(XmlMembersMapping xmlMembersMapping)
105+
private object[] GenerateLiteralMembersElement(XmlMembersMapping xmlMembersMapping)
106106
{
107107
ElementAccessor element = xmlMembersMapping.Accessor;
108108
MemberMapping[] mappings = ((MembersMapping)element.Mapping!).Members!;
@@ -322,7 +322,7 @@ private static void InitializeValueTypes(object?[] p, MemberMapping[] mappings)
322322
}
323323

324324
[RequiresUnreferencedCode(XmlSerializer.TrimSerializationWarning)]
325-
private object GenerateEncodedMembersElement(XmlMembersMapping xmlMembersMapping)
325+
private object?[] GenerateEncodedMembersElement(XmlMembersMapping xmlMembersMapping)
326326
{
327327
ElementAccessor element = xmlMembersMapping.Accessor;
328328
var membersMapping = (MembersMapping)element.Mapping!;

src/libraries/System.Runtime.InteropServices.JavaScript/gen/JSImportGenerator/JSImportGenerator.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<IsRoslynComponent>true</IsRoslynComponent>
99
<!-- Disable RS2008: Enable analyzer release tracking
1010
Diagnostics in runtime use a different mechanism (docs/project/list-of-diagnostics.md) -->
11-
<NoWarn>RS2008;$(NoWarn)</NoWarn>
11+
<NoWarn>RS2008;RS1038;$(NoWarn)</NoWarn>
1212
<DefineConstants>$(DefineConstants);JSIMPORTGENERATOR</DefineConstants>
1313
<AnalyzerLanguage>cs</AnalyzerLanguage>
1414
</PropertyGroup>

src/libraries/System.Runtime.InteropServices/gen/ComInterfaceGenerator/ComInterfaceGenerator.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<IsRoslynComponent>true</IsRoslynComponent>
99
<!-- Disable RS2008: Enable analyzer release tracking
1010
Diagnostics in runtime use a different mechanism (docs/project/list-of-diagnostics.md) -->
11-
<NoWarn>RS2008;$(NoWarn)</NoWarn>
11+
<NoWarn>RS2008;RS1038;$(NoWarn)</NoWarn>
1212
<AnalyzerLanguage>cs</AnalyzerLanguage>
1313
<DefineConstants>$(DefineConstants);MICROSOFT_INTEROP_COMINTERFACEGENERATOR</DefineConstants>
1414
</PropertyGroup>

src/libraries/System.Runtime.InteropServices/gen/LibraryImportGenerator/LibraryImportGenerator.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<IsRoslynComponent>true</IsRoslynComponent>
99
<!-- Disable RS2008: Enable analyzer release tracking
1010
Diagnostics in runtime use a different mechanism (docs/project/list-of-diagnostics.md) -->
11-
<NoWarn>RS2008;$(NoWarn)</NoWarn>
11+
<NoWarn>RS2008;RS1038;$(NoWarn)</NoWarn>
1212
<AnalyzerLanguage>cs</AnalyzerLanguage>
1313
</PropertyGroup>
1414

src/libraries/System.Security.Cryptography.Pkcs/src/Internal/Cryptography/Pal/Windows/DecryptorPalWindows.DecodeRecipients.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,9 @@ private static RecipientInfoCollection CreateRecipientInfos(SafeCryptMsgHandle h
3333
return new RecipientInfoCollection(recipientInfos);
3434
}
3535

36+
#pragma warning disable CA1859 // Use concrete types when possible for improved performance https://github.com/dotnet/roslyn-analyzers/issues/6751
3637
private static IEnumerable<RecipientInfo> ToRecipientInfosForThisIndex(SafeHandle pCmsgCmsRecipientInfoMemory, int index)
38+
#pragma warning restore CA1859
3739
{
3840
bool mustRelease = false;
3941
pCmsgCmsRecipientInfoMemory.DangerousAddRef(ref mustRelease);

0 commit comments

Comments
 (0)