|
1 | 1 | <Project> |
2 | 2 | <Import Project="$(SourceBuildPackageVersionPropsPath)" Condition="'$(SourceBuildPackageVersionPropsPath)' != ''" /> |
3 | | - <PropertyGroup> |
4 | | - <!-- |
5 | | - Binaries that need to be executable during source build are restricted to versions available within source build. |
6 | | - This section defines executable versions of packages which are referenced via lower-version reference assemblies |
7 | | - during the build. |
8 | | - --> |
9 | | - <SystemCollectionsImmutableExecutableVersion>$(SystemCollectionsImmutableVersion)</SystemCollectionsImmutableExecutableVersion> |
10 | | - <SystemCollectionsImmutableExecutableVersion Condition="'$(SystemCollectionsImmutableExecutableVersion)' == ''">5.0.0</SystemCollectionsImmutableExecutableVersion> |
11 | | - <SystemReflectionMetadataExecutableVersion>$(SystemReflectionMetadataVersion)</SystemReflectionMetadataExecutableVersion> |
12 | | - <SystemReflectionMetadataExecutableVersion Condition="'$(SystemReflectionMetadataExecutableVersion)' == ''">5.0.0</SystemReflectionMetadataExecutableVersion> |
13 | | - <MicrosoftCodeAnalysisExecutableVersion>$(MicrosoftCodeAnalysisVersion)</MicrosoftCodeAnalysisExecutableVersion> |
14 | | - <MicrosoftCodeAnalysisExecutableVersion Condition="'$(MicrosoftCodeAnalysisExecutableVersion)' == ''">3.8.0</MicrosoftCodeAnalysisExecutableVersion> |
15 | | - </PropertyGroup> |
16 | 3 | <PropertyGroup> |
17 | 4 | <VersionPrefix>3.3.5</VersionPrefix> |
18 | 5 | <PreReleaseVersionLabel>beta1</PreReleaseVersionLabel> |
|
40 | 27 | <UsingToolMicrosoftNetCompilers>true</UsingToolMicrosoftNetCompilers> |
41 | 28 | <!-- Dependencies from https://github.com/dotnet/roslyn --> |
42 | 29 | <MicrosoftNetCompilersToolsetVersion>4.5.0</MicrosoftNetCompilersToolsetVersion> |
43 | | - <MicrosoftCodeAnalysisCSharpCodeStyleVersion>4.5.0</MicrosoftCodeAnalysisCSharpCodeStyleVersion> |
44 | | - <MicrosoftCodeAnalysisVisualBasicCodeStyleVersion>4.5.0</MicrosoftCodeAnalysisVisualBasicCodeStyleVersion> |
45 | | - <!-- Roslyn --> |
46 | | - <MicrosoftCodeAnalysisVersion>3.3.1</MicrosoftCodeAnalysisVersion> |
| 30 | + <!-- Microsoft.CodeAnalysis.* versions. Read this! |
| 31 | + This repo uses a wide variety of M.CA.* package versions. This is an atypical pattern in |
| 32 | + .NET's repositories but a necessary one for roslyn-analyzers. |
| 33 | +
|
| 34 | + Some facts: |
| 35 | + - These versions are chosen on purpose. |
| 36 | + - They often represent the base required surface area of Microsoft.CA to support for a given feature or analyzer. |
| 37 | + This means that the analyzer would be supported in the widest array of C# compilation scenarios. |
| 38 | + - Most of these dependencies only represent target surface area. In some cases, the M.CA libraries are |
| 39 | + redistributed (tools) or used within the build. |
| 40 | + - Some of these versions are used for testing to ensure that analyzers built against older surface area |
| 41 | + still work against new implementations. |
| 42 | + - Linux source-build only builds a single implementation of M.CA.*. |
| 43 | + - Linux source-build does have some ability to provide surface area packages via the source-build-reference-packages repo. |
| 44 | + However, because these reference packages do not provide implementations, they cannot be used in any case |
| 45 | + where the package contents would be redisted or executed. An SBRP may not be created for a version that is used both |
| 46 | + as a reference assembly and redisted. |
| 47 | +
|
| 48 | + In this repo, the MicrosoftCodeAnalysis property should **not** be set globally in this file. Instead, it should |
| 49 | + be set for each project, based on the properties below. When the project is executable, it should be |
| 50 | + set only for non-source build or repo-source build. Product source build will set an incoming MicrosoftCodeAnalysis property |
| 51 | + that will denote the available implementation version. |
| 52 | +
|
| 53 | + Example of surface area usage: |
| 54 | +
|
| 55 | + <MicrosoftCodeAnalysisVersion>$(MicrosoftCodeAnalysisVersionForPerfSensitiveAnalyzers)</MicrosoftCodeAnalysisVersion> |
| 56 | +
|
| 57 | + Example of executable usage: |
| 58 | +
|
| 59 | + <MicrosoftCodeAnalysisVersion Condition="'$(DotNetBuildFromSource)' != 'true' or '$(DotNetBuildFromSourceFlavor)' != 'Product'">$(MicrosoftCodeAnalysisVersionForExecution)</MicrosoftCodeAnalysisVersion> |
| 60 | + --> |
| 61 | + <!-- Microsoft.CodeAnalysis versions for different purposes. --> |
| 62 | + <!-- Surface area that various projects compile against. These should have source-build reference packages --> |
47 | 63 | <MicrosoftCodeAnalysisForRoslynDiagnosticsAnalyzersVersion>3.7.0</MicrosoftCodeAnalysisForRoslynDiagnosticsAnalyzersVersion> |
| 64 | + <MicrosoftCodeAnalysisVersionForPublicApiAnalyzers>1.2.1</MicrosoftCodeAnalysisVersionForPublicApiAnalyzers> |
| 65 | + <MicrosoftCodeAnalysisVersionForBannedApiAnalyzers>2.9.0</MicrosoftCodeAnalysisVersionForBannedApiAnalyzers> |
| 66 | + <MicrosoftCodeAnalysisVersionForBannedApiAnalyzersTests>3.3.1</MicrosoftCodeAnalysisVersionForBannedApiAnalyzersTests> |
| 67 | + <MicrosoftCodeAnalysisVersionForPerfSensitiveAnalyzers>2.9.0</MicrosoftCodeAnalysisVersionForPerfSensitiveAnalyzers> |
| 68 | + <MicrosoftCodeAnalysisVersionForPerfSensitiveAnalyzersTests>3.3.1</MicrosoftCodeAnalysisVersionForPerfSensitiveAnalyzersTests> |
| 69 | + <MicrosoftCodeAnalysisVersionForResxSourceGenerators>4.0.1</MicrosoftCodeAnalysisVersionForResxSourceGenerators> |
| 70 | + <MicrosoftCodeAnalysisVersionForNetAnalyzers>3.3.1</MicrosoftCodeAnalysisVersionForNetAnalyzers> |
| 71 | + <MicrosoftCodeAnalysisVersionForTextAnalyzers>3.3.1</MicrosoftCodeAnalysisVersionForTextAnalyzers> |
| 72 | + <MicrosoftCodeAnalysisVersionForCodeAnalysisAnalyzers>3.3.1</MicrosoftCodeAnalysisVersionForCodeAnalysisAnalyzers> |
| 73 | + <MicrosoftCodeAnalysisVersionForToolsAndUtilities>3.3.1</MicrosoftCodeAnalysisVersionForToolsAndUtilities> |
| 74 | + <!-- Versions for tests and general utility execution. --> |
| 75 | + <!-- This version is for utility and executable assemblies. The version here should not overlap with any of the surface |
| 76 | + area versions. --> |
48 | 77 | <MicrosoftCodeAnalysisVersionForTests>4.6.0-1.final</MicrosoftCodeAnalysisVersionForTests> |
| 78 | + <MicrosoftCodeAnalysisVersionForExecution>4.6.0-1.final</MicrosoftCodeAnalysisVersionForExecution> |
| 79 | + <MicrosoftCodeAnalysisCSharpCodeStyleVersion>4.5.0</MicrosoftCodeAnalysisCSharpCodeStyleVersion> |
| 80 | + <MicrosoftCodeAnalysisVisualBasicCodeStyleVersion>4.5.0</MicrosoftCodeAnalysisVisualBasicCodeStyleVersion> |
49 | 81 | <DogfoodAnalyzersVersion>3.3.4</DogfoodAnalyzersVersion> |
50 | 82 | <DogfoodNetAnalyzersVersion>8.0.0-preview1.22621.6</DogfoodNetAnalyzersVersion> |
51 | 83 | <MicrosoftCodeAnalysisBannedApiAnalyzersVersion>$(DogfoodAnalyzersVersion)</MicrosoftCodeAnalysisBannedApiAnalyzersVersion> |
|
59 | 91 | <MicrosoftCodeAnalysisTestingVersion>1.1.2-beta1.23205.1</MicrosoftCodeAnalysisTestingVersion> |
60 | 92 | <!-- Libs --> |
61 | 93 | <BenchmarkDotNetVersion>0.13.0</BenchmarkDotNetVersion> |
62 | | - <HumanizerVersion>2.2.0</HumanizerVersion> |
| 94 | + <HumanizerVersion>2.14.1</HumanizerVersion> |
63 | 95 | <MicrosoftBuildLocatorVersion>1.4.1</MicrosoftBuildLocatorVersion> |
64 | 96 | <MicrosoftDiagnosticsTracingTraceEventVersion>2.0.69</MicrosoftDiagnosticsTracingTraceEventVersion> |
65 | 97 | <MicrosoftExtensionsLoggingVersion>6.0.0-preview.5.21301.5</MicrosoftExtensionsLoggingVersion> |
|
72 | 104 | <SystemCommandLineRenderingVersion>2.0.0-beta1.20074.1</SystemCommandLineRenderingVersion> |
73 | 105 | <SystemCommandLineVersion>2.0.0-beta1.21216.1</SystemCommandLineVersion> |
74 | 106 | <SystemComponentModelCompositionVersion>4.7.0</SystemComponentModelCompositionVersion> |
| 107 | + <SystemCompositionVersion>8.0.0-preview.4.23259.5</SystemCompositionVersion> |
75 | 108 | <SystemDirectoryServicesVersion>4.7.0</SystemDirectoryServicesVersion> |
76 | 109 | <XunitCombinatorialVersion>1.2.7</XunitCombinatorialVersion> |
77 | 110 | <SystemMemoryVersion>4.5.5</SystemMemoryVersion> |
|
0 commit comments