Skip to content

Commit

Permalink
Enable pre-built detection
Browse files Browse the repository at this point in the history
- Move various Microsoft.CodeAnalysis version numbers into Versions.props (some were already this way)
- When in source-build mode, use the latest (testing) version across the board, which is closer to what will be used in full source build
- When in normal repo build mode, use the individual versions.
- Baseline a few dependencies that are executed or redistributed and cannot be satisfied by reference package.

This should remove the need for the current RA source build patch
  • Loading branch information
oleksandr-didyk authored and mmitche committed May 23, 2023
1 parent c30ffa6 commit 56bec2d
Show file tree
Hide file tree
Showing 32 changed files with 120 additions and 53 deletions.
7 changes: 7 additions & 0 deletions Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,13 @@
<NoWarn Condition="'$(Language)' == 'C#'">$(NoWarn),1573,1591,1712</NoWarn>
</PropertyGroup>

<PropertyGroup Condition="'$(DotNetBuildFromSource)' == 'true'">
<!-- When building in source build mode, treat this set of warnings not as errors. Source build is
using a newer version of Microsoft.CodeAnalysis than the default build -->
<NoWarn>$(NoWarn);CS8600;CS0618;CS8601;CS8602;CS8603;CS8604</NoWarn>
<NoWarn>$(NoWarn);CS8605;CS8609;CS8618;CS8619;CS8620;CS8621;CS8625;CS8631;CS8714;CS8762;CS8765</NoWarn>
</PropertyGroup>

<PropertyGroup>
<!-- We generate per-project assembly attributes files, so we can safely delete them when cleaning the project -->
<TargetFrameworkMonikerAssemblyAttributesFileClean>true</TargetFrameworkMonikerAssemblyAttributesFileClean>
Expand Down
1 change: 1 addition & 0 deletions NuGet.config
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
<add key="dotnet5" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet5/nuget/v3/index.json" />
<add key="dotnet7" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet7/nuget/v3/index.json" />
<add key="dotnet8" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet8/nuget/v3/index.json" />
<add key="dotnet8-transport" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet8-transport/nuget/v3/index.json" />
<add key="dotnet-eng" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json" />
<add key="dotnet-tools" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json" />
<add key="dotnet-public" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public/nuget/v3/index.json" />
Expand Down
17 changes: 15 additions & 2 deletions eng/SourceBuildPrebuiltBaseline.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,18 @@
<!-- See aka.ms/dotnet/prebuilts for guidance on what pre-builts are and how to eliminate them. -->
<UsageData>
<IgnorePatterns>
<UsagePattern IdentityGlob="*/*" />
<UsagePattern IdentityGlob="Microsoft.SourceBuild.Intermediate.*" />

<!-- This packages contain functionality that is executed in the build -->
<UsagePattern IdentityGlob="Microsoft.Net.Compilers.Toolset/*" />
<UsagePattern IdentityGlob="System.Composition*/*" />
<!-- In SB mode, Microsoft.CodeAnalysis.Common has a dependency on CodeAnalysis.Analyzers and
its dependencies. This is not an issue in full SB mode. -->
<UsagePattern IdentityGlob="Microsoft.CodeAnalysis.Analyzers*/*" />

<!-- This is the version of Microsoft.CodeAnalysis executed and built against in source build.
When updating that verison, update the version here. -->
<UsagePattern IdentityGlob="Microsoft.CodeAnalysis*/*4.6.0-1.final*" />
<UsagePattern IdentityGlob="System.Threading.Channels/*6.0.0*" />
</IgnorePatterns>
</UsageData>
</UsageData>
26 changes: 19 additions & 7 deletions eng/Version.Details.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,22 +5,34 @@
<Uri>https://github.com/dotnet/roslyn</Uri>
<Sha>66a912c9463eebe832cf742d2fe8bb2e1a4600ec</Sha>
</Dependency>
<Dependency Name="Microsoft.SourceBuild.Intermediate.source-build-reference-packages" Version="8.0.0-alpha.1.23214.4">
<Uri>https://github.com/dotnet/source-build-reference-packages</Uri>
<Sha>05b4fdac346e01716abda4c92fcf0b7880e73792</Sha>
<SourceBuild RepoName="source-build-reference-packages" ManagedOnly="true" />
</Dependency>
<Dependency Name="Microsoft.SourceBuild.Intermediate.source-build-externals" Version="8.0.0-alpha.1.23214.1">
<Uri>https://github.com/dotnet/source-build-externals</Uri>
<Sha>de4dda48d0cf31e13182bc24107b2246c61ed483</Sha>
<SourceBuild RepoName="source-build-externals" ManagedOnly="true" />
</Dependency>
</ProductDependencies>
<ToolsetDependencies>
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="8.0.0-beta.23269.1">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>fb6291b40fa4334dbd167e2071953e83cc8b9fdc</Sha>
<SourceBuild RepoName="arcade" ManagedOnly="true" />
</Dependency>
<Dependency Name="Microsoft.Net.Compilers.Toolset" Version="4.5.0">
<Uri>https://github.com/dotnet/roslyn</Uri>
<Sha>6a5a63bbc9f4449d9bd1e95a8f9624939c3ccdc3</Sha>
<Dependency Name="Microsoft.SourceLink.GitHub" Version="8.0.0-beta.23218.3" CoherentParentDependency="Microsoft.DotNet.Arcade.Sdk">
<Uri>https://github.com/dotnet/sourcelink</Uri>
<Sha>47c52dd2ebf9edfd40abdcff999c13eb461f6ce2</Sha>
<SourceBuild RepoName="sourcelink" ManagedOnly="true" />
</Dependency>
<Dependency Name="Microsoft.CodeAnalysis.CSharp.CodeStyle" Version="4.5.0">
<Uri>https://github.com/dotnet/roslyn</Uri>
<Sha>6a5a63bbc9f4449d9bd1e95a8f9624939c3ccdc3</Sha>
<Dependency Name="Microsoft.DotNet.XliffTasks" Version="1.0.0-beta.23263.1" CoherentParentDependency="Microsoft.DotNet.Arcade.Sdk">
<Uri>https://github.com/dotnet/xliff-tasks</Uri>
<Sha>3f7d6c7e742012d9437fcb0d04cac63202d37621</Sha>
<SourceBuild RepoName="xliff-tasks" ManagedOnly="true" />
</Dependency>
<Dependency Name="Microsoft.CodeAnalysis.VisualBasic.CodeStyle" Version="4.5.0">
<Dependency Name="Microsoft.Net.Compilers.Toolset" Version="4.5.0">
<Uri>https://github.com/dotnet/roslyn</Uri>
<Sha>6a5a63bbc9f4449d9bd1e95a8f9624939c3ccdc3</Sha>
</Dependency>
Expand Down
59 changes: 43 additions & 16 deletions eng/Versions.props
Original file line number Diff line number Diff line change
@@ -1,18 +1,5 @@
<Project>
<Import Project="$(SourceBuildPackageVersionPropsPath)" Condition="'$(SourceBuildPackageVersionPropsPath)' != ''" />
<PropertyGroup>
<!--
Binaries that need to be executable during source build are restricted to versions available within source build.
This section defines executable versions of packages which are referenced via lower-version reference assemblies
during the build.
-->
<SystemCollectionsImmutableExecutableVersion>$(SystemCollectionsImmutableVersion)</SystemCollectionsImmutableExecutableVersion>
<SystemCollectionsImmutableExecutableVersion Condition="'$(SystemCollectionsImmutableExecutableVersion)' == ''">5.0.0</SystemCollectionsImmutableExecutableVersion>
<SystemReflectionMetadataExecutableVersion>$(SystemReflectionMetadataVersion)</SystemReflectionMetadataExecutableVersion>
<SystemReflectionMetadataExecutableVersion Condition="'$(SystemReflectionMetadataExecutableVersion)' == ''">5.0.0</SystemReflectionMetadataExecutableVersion>
<MicrosoftCodeAnalysisExecutableVersion>$(MicrosoftCodeAnalysisVersion)</MicrosoftCodeAnalysisExecutableVersion>
<MicrosoftCodeAnalysisExecutableVersion Condition="'$(MicrosoftCodeAnalysisExecutableVersion)' == ''">3.8.0</MicrosoftCodeAnalysisExecutableVersion>
</PropertyGroup>
<PropertyGroup>
<VersionPrefix>3.3.5</VersionPrefix>
<PreReleaseVersionLabel>beta1</PreReleaseVersionLabel>
Expand Down Expand Up @@ -40,12 +27,52 @@
<UsingToolMicrosoftNetCompilers>true</UsingToolMicrosoftNetCompilers>
<!-- Dependencies from https://github.com/dotnet/roslyn -->
<MicrosoftNetCompilersToolsetVersion>4.5.0</MicrosoftNetCompilersToolsetVersion>
<!-- Microsoft.CodeAnalysis.* versions. Read this!
This repo uses a wide variety of M.CA.* package versions. This is an atypical pattern in
.NET's repositories but a necessary one for roslyn-analyzers.
Some facts:
- These versions are chosen on purpose.
- They often represent the base required surface area of Microsoft.CA to support for a given feature or analyzer.
This means that the analyzer would be supported in the widest array of C# compilation scenarios.
- Most of these dependencies only represent target surface area. In some cases, the M.CA libraries are
redistributed (tools) or used within the build.
- Some of these versions are used for testing to ensure that analyzers built against older surface area
still work against new implementations.
- Linux source-build only builds a single implementation of M.CA.*.
- Linux source-build does have some ability to provide surface area packages via the source-build-reference-packages repo.
However, because these reference packages do not provide implementations, they cannot be used in any case
where the package contents would be redisted or executed. An SBRP may not be created for a version that is used both
as a reference assembly and redisted.
Repo-level source build and the roslyn-analzyers official build are a bit in tension.
For most repositories, we resolve this tension with a combination of source-build-reference-packages and
flow from other repositories. This is less feasible in roslyn-analyzers. We wish to maintain good prebuilt detection
and reasonably accurately approximate how this repo will be built in full source build without
changing how it's built officially for Microsoft too much.
To this end, the following is done:
- The input M.CA.* versions are chosen differently for source-build. A new version is chosen for source build
(same as the testing version) and applied to all uses of M.CA.*.
- The multi-version behavior is maintained for roslyn-analyzer's official Microsoft build.
-->
<MicrosoftCodeAnalysisCSharpCodeStyleVersion>4.5.0</MicrosoftCodeAnalysisCSharpCodeStyleVersion>
<MicrosoftCodeAnalysisVisualBasicCodeStyleVersion>4.5.0</MicrosoftCodeAnalysisVisualBasicCodeStyleVersion>
<!-- Roslyn -->
<MicrosoftCodeAnalysisVersion>3.3.1</MicrosoftCodeAnalysisVersion>
<MicrosoftCodeAnalysisForRoslynDiagnosticsAnalyzersVersion>3.7.0</MicrosoftCodeAnalysisForRoslynDiagnosticsAnalyzersVersion>
<!-- Microsoft.CodeAnalysis versions for different purposes. Only MicrosoftCodeAnalysisVersion is used in source-build mode.
The pattern used is that a project that needs a different version creates a property here and uses it to override
MicrosoftCodeAnalysisVersion in non-source-build mode. -->
<!-- Recent stable version to test against, and use in source-build. Ideally these stay aligned. When this is updated,
please update the version number in the source build baseline. -->
<MicrosoftCodeAnalysisVersionForSourceBuild>4.6.0-1.final</MicrosoftCodeAnalysisVersionForSourceBuild>
<MicrosoftCodeAnalysisVersionForTests>4.6.0-1.final</MicrosoftCodeAnalysisVersionForTests>
<MicrosoftCodeAnalysisForRoslynDiagnosticsAnalyzersVersion>3.7.0</MicrosoftCodeAnalysisForRoslynDiagnosticsAnalyzersVersion>
<MicrosoftCodeAnalysisVersionForPublicApiAnalyzers>1.2.1</MicrosoftCodeAnalysisVersionForPublicApiAnalyzers>
<MicrosoftCodeAnalysisVersionForBannedApiAnalyzers>2.9.0</MicrosoftCodeAnalysisVersionForBannedApiAnalyzers>
<MicrosoftCodeAnalysisVersionForPerfSensitiveAnalyzers>2.9.0</MicrosoftCodeAnalysisVersionForPerfSensitiveAnalyzers>
<MicrosoftCodeAnalysisVersionForResxSourceGenerators>4.0.1</MicrosoftCodeAnalysisVersionForResxSourceGenerators>
<!-- Default/source-build version. -->
<MicrosoftCodeAnalysisVersion Condition="'$(DotNetBuildFromSource)' != 'true'">3.3.1</MicrosoftCodeAnalysisVersion>
<MicrosoftCodeAnalysisVersion Condition="'$(DotNetBuildFromSource)' == 'true'">$(MicrosoftCodeAnalysisVersionForSourceBuild)</MicrosoftCodeAnalysisVersion>
<DogfoodAnalyzersVersion>3.3.4</DogfoodAnalyzersVersion>
<DogfoodNetAnalyzersVersion>8.0.0-preview1.22621.6</DogfoodNetAnalyzersVersion>
<MicrosoftCodeAnalysisBannedApiAnalyzersVersion>$(DogfoodAnalyzersVersion)</MicrosoftCodeAnalysisBannedApiAnalyzersVersion>
Expand Down
2 changes: 1 addition & 1 deletion src/Directory.Build.targets
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@
</None>
</ItemGroup>

<ItemGroup>
<ItemGroup Condition="'$(DotNetBuildFromSource)' != 'true'" >
<PackageReference Include="Microsoft.CodeAnalysis.BannedApiAnalyzers" Version="$(MicrosoftCodeAnalysisBannedApiAnalyzersVersion)" />
<AdditionalFiles Include="$(MSBuildThisFileDirectory)\BannedSymbols.txt" Condition="'$(BannedSymbolsOptOut)' != 'true'" />
</ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ private async Task<Document> ConvertKindToIsKindAsync(Document document, TextSpa

protected abstract void FixDiagnostic(DocumentEditor editor, SyntaxNode nodeToFix);

private sealed class CustomFixAllProvider : DocumentBasedFixAllProvider
private sealed class CustomFixAllProvider : Analyzer.Utilities.DocumentBasedFixAllProvider
{
private readonly PreferIsKindFix _fixer;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,10 @@
<PropertyGroup>
<TargetFramework>$(NetCurrent)</TargetFramework>
<ServerGarbageCollection>true</ServerGarbageCollection>
<MicrosoftCodeAnalysisVersion Condition="'$(DotNetBuildFromSource)' != 'true'">$(MicrosoftCodeAnalysisVersionForTests)</MicrosoftCodeAnalysisVersion>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.CodeAnalysis" Version="$(MicrosoftCodeAnalysisVersionForTests)" />
<PackageReference Include="Microsoft.CodeAnalysis" Version="$(MicrosoftCodeAnalysisVersion)" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\Test.Utilities\Test.Utilities.csproj" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<MicrosoftCodeAnalysisVersion>2.9.0</MicrosoftCodeAnalysisVersion>
<MicrosoftCodeAnalysisVersion Condition="'$(DotNetBuildFromSource)' != 'true'">$(MicrosoftCodeAnalysisVersionForBannedApiAnalyzers)</MicrosoftCodeAnalysisVersion>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="$(MicrosoftCodeAnalysisVersion)" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
Restore would conclude that there is a cyclic dependency between us and the Microsoft.CodeAnalysis.BannedApiAnalyzer package.
-->
<PackageId>*$(MSBuildProjectFile)*</PackageId>
<MicrosoftCodeAnalysisVersion>2.9.0</MicrosoftCodeAnalysisVersion>
<MicrosoftCodeAnalysisVersion Condition="'$(DotNetBuildFromSource)' != 'true'">$(MicrosoftCodeAnalysisVersionForBannedApiAnalyzers)</MicrosoftCodeAnalysisVersion>
</PropertyGroup>
<ItemGroup>
<Compile Include="..\..\Roslyn.Diagnostics.Analyzers\Core\RoslynDiagnosticIds.cs" Link="RoslynDiagnosticIds.cs" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<MicrosoftCodeAnalysisVersion>2.9.0</MicrosoftCodeAnalysisVersion>
<MicrosoftCodeAnalysisVersion Condition="'$(DotNetBuildFromSource)' != 'true'">$(MicrosoftCodeAnalysisVersionForBannedApiAnalyzers)</MicrosoftCodeAnalysisVersion>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.CodeAnalysis.VisualBasic" Version="$(MicrosoftCodeAnalysisVersion)" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

<!-- Avoid ID conflicts with the package project. -->
<PackageId>*$(MSBuildProjectFile)*</PackageId>
<MicrosoftCodeAnalysisVersion>4.0.1</MicrosoftCodeAnalysisVersion>
<MicrosoftCodeAnalysisVersion Condition="'$(DotNetBuildFromSource)' != 'true'">$(MicrosoftCodeAnalysisVersionForResxSourceGenerators)</MicrosoftCodeAnalysisVersion>
</PropertyGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<GenerateBindingRedirectsOutputType>true</GenerateBindingRedirectsOutputType>
<MicrosoftCodeAnalysisVersion>4.0.1</MicrosoftCodeAnalysisVersion>
<MicrosoftCodeAnalysisVersion Condition="'$(DotNetBuildFromSource)' != 'true'">$(MicrosoftCodeAnalysisVersionForResxSourceGenerators)</MicrosoftCodeAnalysisVersion>
</PropertyGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

<!-- Avoid ID conflicts with the package project. -->
<PackageId>*$(MSBuildProjectFile)*</PackageId>
<MicrosoftCodeAnalysisVersion>4.0.1</MicrosoftCodeAnalysisVersion>
<MicrosoftCodeAnalysisVersion Condition="'$(DotNetBuildFromSource)' != 'true'">$(MicrosoftCodeAnalysisVersionForResxSourceGenerators)</MicrosoftCodeAnalysisVersion>
</PropertyGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

<!-- Avoid ID conflicts with the package project. -->
<PackageId>*$(MSBuildProjectFile)*</PackageId>
<MicrosoftCodeAnalysisVersion>4.0.1</MicrosoftCodeAnalysisVersion>
<MicrosoftCodeAnalysisVersion Condition="'$(DotNetBuildFromSource)' != 'true'">$(MicrosoftCodeAnalysisVersionForResxSourceGenerators)</MicrosoftCodeAnalysisVersion>
</PropertyGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ namespace Microsoft.NetCore.Analyzers.InteropServices
{
public sealed partial class CSharpDisableRuntimeMarshallingFixer
{
private class CustomFixAllProvider : DocumentBasedFixAllProvider
private class CustomFixAllProvider : Analyzer.Utilities.DocumentBasedFixAllProvider
{
public static readonly CustomFixAllProvider Instance = new();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ public sealed override FixAllProvider GetFixAllProvider()
return CustomFixAllProvider.Instance;
}

private sealed class CustomFixAllProvider : DocumentBasedFixAllProvider
private sealed class CustomFixAllProvider : Analyzer.Utilities.DocumentBasedFixAllProvider
{
public static readonly CustomFixAllProvider Instance = new();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ public sealed override async Task RegisterCodeFixesAsync(CodeFixContext context)
other is not null ? new SyntaxNode[] { arg, other } : new SyntaxNode[] { arg })).WithTriviaFrom(node));
}

private sealed class CustomFixAllProvider : DocumentBasedFixAllProvider
private sealed class CustomFixAllProvider : Analyzer.Utilities.DocumentBasedFixAllProvider
{
public static readonly CustomFixAllProvider Instance = new();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,10 @@
<TargetFramework>$(NetCurrent)</TargetFramework>
<DefineConstants>$(DefineConstants),NET_ANALYZERS_TEST</DefineConstants>
<ServerGarbageCollection>true</ServerGarbageCollection>
<MicrosoftCodeAnalysisVersion Condition="'$(DotNetBuildFromSource)' != 'true'">$(MicrosoftCodeAnalysisVersionForTests)</MicrosoftCodeAnalysisVersion>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.CodeAnalysis" Version="$(MicrosoftCodeAnalysisVersionForTests)" />
<PackageReference Include="Microsoft.CodeAnalysis" Version="$(MicrosoftCodeAnalysisVersion)" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\Test.Utilities\Test.Utilities.csproj" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<MicrosoftCodeAnalysisVersion>2.9.0</MicrosoftCodeAnalysisVersion>
<MicrosoftCodeAnalysisVersion Condition="'$(DotNetBuildFromSource)' != 'true'">$(MicrosoftCodeAnalysisVersionForPerfSensitiveAnalyzers)</MicrosoftCodeAnalysisVersion>
</PropertyGroup>
<ItemGroup>
<InternalsVisibleTo Include="Microsoft.CodeAnalysis.CSharp.PerformanceSensitiveAnalyzers.CodeFixes" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<MicrosoftCodeAnalysisVersion>2.9.0</MicrosoftCodeAnalysisVersion>
<ReleaseTrackingOptOut>true</ReleaseTrackingOptOut>
<MicrosoftCodeAnalysisVersion Condition="'$(DotNetBuildFromSource)' != 'true'">$(MicrosoftCodeAnalysisVersionForBannedApiAnalyzers)</MicrosoftCodeAnalysisVersion>
</PropertyGroup>
<ItemGroup>
<InternalsVisibleTo Include="Microsoft.CodeAnalysis.PerformanceSensitiveAnalyzers.UnitTests" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
Restore would conclude that there is a cyclic dependency between us and the Microsoft.CodeAnalysis.PerformanceSensitive.Analyzers nuget package.
-->
<PackageId>*$(MSBuildProjectFile)*</PackageId>
<MicrosoftCodeAnalysisVersion>2.9.0</MicrosoftCodeAnalysisVersion>
<MicrosoftCodeAnalysisVersion Condition="'$(DotNetBuildFromSource)' != 'true'">$(MicrosoftCodeAnalysisVersionForPerfSensitiveAnalyzers)</MicrosoftCodeAnalysisVersion>
</PropertyGroup>
<ItemGroup>
<InternalsVisibleTo Include="Microsoft.CodeAnalysis.CSharp.PerformanceSensitiveAnalyzers" />
Expand Down
Loading

0 comments on commit 56bec2d

Please sign in to comment.