Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use 8.0 era dependencies for non net9.0 TFMs #5470

Merged
merged 12 commits into from
Oct 19, 2024
46 changes: 46 additions & 0 deletions eng/Versions.props
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,52 @@
<MicrosoftExtensionsHttpPollyVersion>9.0.0-rtm.24477.5</MicrosoftExtensionsHttpPollyVersion>
<MicrosoftExtensionsObjectPoolVersion>9.0.0-rtm.24477.5</MicrosoftExtensionsObjectPoolVersion>
</PropertyGroup>

<PropertyGroup Label="Manual">
<!-- Packages from dotnet/runtime -->
<MicrosoftBclTimeProviderLTSVersion>8.0.1</MicrosoftBclTimeProviderLTSVersion>
<MicrosoftExtensionsCachingAbstractionsLTSVersion>8.0.0</MicrosoftExtensionsCachingAbstractionsLTSVersion>
<MicrosoftExtensionsCachingMemoryLTSVersion>8.0.0</MicrosoftExtensionsCachingMemoryLTSVersion>
<MicrosoftExtensionsConfigurationAbstractionsLTSVersion>8.0.0</MicrosoftExtensionsConfigurationAbstractionsLTSVersion>
<MicrosoftExtensionsConfigurationBinderLTSVersion>8.0.2</MicrosoftExtensionsConfigurationBinderLTSVersion>
<MicrosoftExtensionsConfigurationJsonLTSVersion>8.0.0</MicrosoftExtensionsConfigurationJsonLTSVersion>
<MicrosoftExtensionsConfigurationLTSVersion>8.0.0</MicrosoftExtensionsConfigurationLTSVersion>
<MicrosoftExtensionsDependencyInjectionAbstractionsLTSVersion>8.0.1</MicrosoftExtensionsDependencyInjectionAbstractionsLTSVersion>
<MicrosoftExtensionsDependencyInjectionLTSVersion>8.0.0</MicrosoftExtensionsDependencyInjectionLTSVersion>
<MicrosoftExtensionsDiagnosticsLTSVersion>8.0.0</MicrosoftExtensionsDiagnosticsLTSVersion>
<MicrosoftExtensionsHostingAbstractionsLTSVersion>8.0.0</MicrosoftExtensionsHostingAbstractionsLTSVersion>
<MicrosoftExtensionsHostingLTSVersion>8.0.0</MicrosoftExtensionsHostingLTSVersion>
<MicrosoftExtensionsHttpLTSVersion>8.0.0</MicrosoftExtensionsHttpLTSVersion>
<MicrosoftExtensionsLoggingAbstractionsLTSVersion>8.0.1</MicrosoftExtensionsLoggingAbstractionsLTSVersion>
<MicrosoftExtensionsLoggingConfigurationLTSVersion>8.0.0</MicrosoftExtensionsLoggingConfigurationLTSVersion>
<MicrosoftExtensionsLoggingConsoleLTSVersion>8.0.0</MicrosoftExtensionsLoggingConsoleLTSVersion>
<MicrosoftExtensionsLoggingLTSVersion>8.0.0</MicrosoftExtensionsLoggingLTSVersion>
<MicrosoftExtensionsOptionsConfigurationExtensionsLTSVersion>8.0.0</MicrosoftExtensionsOptionsConfigurationExtensionsLTSVersion>
<MicrosoftExtensionsOptionsLTSVersion>8.0.2</MicrosoftExtensionsOptionsLTSVersion>
<MicrosoftNETCoreAppRefLTSVersion>8.0.8</MicrosoftNETCoreAppRefLTSVersion>
<MicrosoftNETCoreAppRuntimewinx64LTSVersion>8.0.8</MicrosoftNETCoreAppRuntimewinx64LTSVersion>
<SystemCollectionsImmutableLTSVersion>8.0.0</SystemCollectionsImmutableLTSVersion>
<SystemConfigurationConfigurationManagerLTSVersion>8.0.0</SystemConfigurationConfigurationManagerLTSVersion>
<SystemDiagnosticsDiagnosticSourceLTSVersion>8.0.1</SystemDiagnosticsDiagnosticSourceLTSVersion>
<SystemDiagnosticsPerformanceCounterLTSVersion>8.0.0</SystemDiagnosticsPerformanceCounterLTSVersion>
<SystemIOHashingLTSVersion>8.0.0</SystemIOHashingLTSVersion>
<SystemIOPipelinesLTSVersion>8.0.0</SystemIOPipelinesLTSVersion>
<SystemRuntimeCachingLTSVersion>8.0.0</SystemRuntimeCachingLTSVersion>
<SystemSecurityCryptographyPkcsLTSVersion>8.0.0</SystemSecurityCryptographyPkcsLTSVersion>
<SystemSecurityCryptographyXmlLTSVersion>8.0.1</SystemSecurityCryptographyXmlLTSVersion>
<SystemTextEncodingsWebLTSVersion>8.0.0</SystemTextEncodingsWebLTSVersion>
<SystemTextJsonLTSVersion>8.0.4</SystemTextJsonLTSVersion>
<!-- Dependencies from https://github.com/aspnet/AspNetCore -->
<MicrosoftAspNetCoreAppRefLTSVersion>8.0.8</MicrosoftAspNetCoreAppRefLTSVersion>
<MicrosoftAspNetCoreAppRuntimewinx64LTSVersion>8.0.8</MicrosoftAspNetCoreAppRuntimewinx64LTSVersion>
<MicrosoftAspNetCoreMvcTestingLTSVersion>8.0.8</MicrosoftAspNetCoreMvcTestingLTSVersion>
<MicrosoftAspNetCoreTestHostLTSVersion>8.0.8</MicrosoftAspNetCoreTestHostLTSVersion>
<MicrosoftExtensionsCachingSqlServerLTSVersion>8.0.8</MicrosoftExtensionsCachingSqlServerLTSVersion>
<MicrosoftExtensionsCachingStackExchangeRedisLTSVersion>8.0.8</MicrosoftExtensionsCachingStackExchangeRedisLTSVersion>
<MicrosoftExtensionsDiagnosticsHealthChecksLTSVersion>8.0.8</MicrosoftExtensionsDiagnosticsHealthChecksLTSVersion>
<MicrosoftExtensionsHttpPollyLTSVersion>8.0.8</MicrosoftExtensionsHttpPollyLTSVersion>
<MicrosoftExtensionsObjectPoolLTSVersion>8.0.8</MicrosoftExtensionsObjectPoolLTSVersion>
</PropertyGroup>
<!--

^^^^^^^^^^
Expand Down
73 changes: 56 additions & 17 deletions eng/packages/General.props
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,33 @@
<ItemGroup>
<PackageVersion Include="ICSharpCode.Decompiler" Version="8.2.0.7535" />
<PackageVersion Include="Microsoft.Bcl.HashCode" Version="1.1.1" />
<PackageVersion Include="Microsoft.Bcl.TimeProvider" Version="$(MicrosoftBclTimeProviderVersion)" />
<PackageVersion Include="Microsoft.CodeAnalysis.Analyzers" Version="$(MicrosoftCodeAnalysisAnalyzersVersion)" />
<PackageVersion Include="Microsoft.CodeAnalysis.Common" Version="$(MicrosoftCodeAnalysisVersion)" />
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="$(MicrosoftCodeAnalysisVersion)" />
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp" Version="$(MicrosoftCodeAnalysisVersion)" />
<PackageVersion Include="Microsoft.CodeAnalysis" Version="$(MicrosoftCodeAnalysisVersion)" />
<PackageVersion Include="Microsoft.IO.RecyclableMemoryStream" Version="3.0.0" />
<PackageVersion Include="Newtonsoft.Json" Version="13.0.3" />
<PackageVersion Include="Polly" Version="8.4.2" />
<PackageVersion Include="Polly.Core" Version="8.4.2" />
<PackageVersion Include="Polly.Extensions" Version="8.4.2" />
<PackageVersion Include="Polly.RateLimiting" Version="8.4.2" />
<PackageVersion Include="System.Buffers" Version="4.5.1" />
<PackageVersion Include="System.CommandLine.NamingConventionBinder" Version="2.0.0-beta4.22272.1" />
<PackageVersion Include="System.CommandLine" Version="2.0.0-beta4.22272.1" />
<PackageVersion Include="System.ComponentModel.Annotations" Version="5.0.0" />
<PackageVersion Include="System.Memory" Version="4.5.5" />
<PackageVersion Include="System.Private.Uri" Version="4.3.2" />
<PackageVersion Include="System.Runtime.CompilerServices.Unsafe" Version="6.0.0" />
<PackageVersion Include="System.Threading.Tasks.Extensions" Version="4.5.4" />
<PackageVersion Include="System.ValueTuple" Version="4.5.0" />
<PackageVersion Include="YamlDotNet" Version="12.3.1" />
</ItemGroup>

<!-- The items in this ItemGroup are packages coming from aspnetcore and runtime repos. When an asset is targeting net9.0 version
of the framework, the following versions should be used. -->
<ItemGroup Condition="'$(TargetFramework)' == 'net9.0' Or '$(ForceLatestDotnetVersions)' == 'true'">
<PackageVersion Include="Microsoft.Bcl.TimeProvider" Version="$(MicrosoftBclTimeProviderVersion)" />
<PackageVersion Include="Microsoft.Extensions.Caching.Abstractions" Version="$(MicrosoftExtensionsCachingAbstractionsVersion)" />
<PackageVersion Include="Microsoft.Extensions.Caching.Memory" Version="$(MicrosoftExtensionsCachingMemoryVersion)" />
<PackageVersion Include="Microsoft.Extensions.Caching.SqlServer" Version="$(MicrosoftExtensionsCachingSqlServerVersion)" />
Expand All @@ -31,28 +52,46 @@
<PackageVersion Include="Microsoft.Extensions.ObjectPool" Version="$(MicrosoftExtensionsObjectPoolVersion)" />
<PackageVersion Include="Microsoft.Extensions.Options.ConfigurationExtensions" Version="$(MicrosoftExtensionsOptionsConfigurationExtensionsVersion)" />
<PackageVersion Include="Microsoft.Extensions.Options" Version="$(MicrosoftExtensionsOptionsVersion)" />
<PackageVersion Include="Microsoft.IO.RecyclableMemoryStream" Version="3.0.0" />
<PackageVersion Include="Newtonsoft.Json" Version="13.0.3" />
<PackageVersion Include="Polly" Version="8.4.2" />
<PackageVersion Include="Polly.Core" Version="8.4.2" />
<PackageVersion Include="Polly.Extensions" Version="8.4.2" />
<PackageVersion Include="Polly.RateLimiting" Version="8.4.2" />
<PackageVersion Include="System.Buffers" Version="4.5.1" />
<PackageVersion Include="System.Collections.Immutable" Version="$(SystemCollectionsImmutableVersion)" />
<PackageVersion Include="System.CommandLine.NamingConventionBinder" Version="2.0.0-beta4.22272.1" />
<PackageVersion Include="System.CommandLine" Version="2.0.0-beta4.22272.1" />
<PackageVersion Include="System.ComponentModel.Annotations" Version="5.0.0" />
<PackageVersion Include="System.Diagnostics.DiagnosticSource" Version="$(SystemDiagnosticsDiagnosticSourceVersion)" />
<PackageVersion Include="System.Diagnostics.PerformanceCounter" Version="$(SystemDiagnosticsPerformanceCounterVersion)" />
<PackageVersion Include="System.IO.Hashing" Version="$(SystemIOHashingVersion)" />
<PackageVersion Include="System.IO.Pipelines" Version="$(SystemIOPipelinesVersion)" />
<PackageVersion Include="System.Memory" Version="4.5.5" />
<PackageVersion Include="System.Private.Uri" Version="4.3.2" />
<PackageVersion Include="System.Runtime.CompilerServices.Unsafe" Version="6.0.0" />
<PackageVersion Include="System.Text.Json" Version="$(SystemTextJsonVersion)" />
<PackageVersion Include="System.Threading.Tasks.Extensions" Version="4.5.4" />
<PackageVersion Include="System.ValueTuple" Version="4.5.0" />
<PackageVersion Include="YamlDotNet" Version="12.3.1" />
</ItemGroup>

<!-- The items in this ItemGroup are packages coming from aspnetcore and runtime repos. When an asset is not targeting net9.0 version
of the framework, we should use the following LTS versions instead -->
<ItemGroup Condition="'$(TargetFramework)' != 'net9.0' And '$(ForceLatestDotnetVersions)' != 'true'">
<PackageVersion Include="Microsoft.Bcl.TimeProvider" Version="$(MicrosoftBclTimeProviderLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.Caching.Abstractions" Version="$(MicrosoftExtensionsCachingAbstractionsLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.Caching.Memory" Version="$(MicrosoftExtensionsCachingMemoryLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.Caching.SqlServer" Version="$(MicrosoftExtensionsCachingSqlServerLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.Caching.StackExchangeRedis" Version="$(MicrosoftExtensionsCachingStackExchangeRedisLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.Configuration.Abstractions" Version="$(MicrosoftExtensionsConfigurationAbstractionsLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.Configuration.Binder" Version="$(MicrosoftExtensionsConfigurationBinderLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.Configuration.Json" Version="$(MicrosoftExtensionsConfigurationJsonLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.Configuration" Version="$(MicrosoftExtensionsConfigurationLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="$(MicrosoftExtensionsDependencyInjectionAbstractionsLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="$(MicrosoftExtensionsDependencyInjectionLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.Diagnostics" Version="$(MicrosoftExtensionsDiagnosticsLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.Diagnostics.HealthChecks" Version="$(MicrosoftExtensionsDiagnosticsHealthChecksLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.Hosting.Abstractions" Version="$(MicrosoftExtensionsHostingAbstractionsLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="$(MicrosoftExtensionsHostingLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.Http.Polly" Version="$(MicrosoftExtensionsHttpPollyLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.Http" Version="$(MicrosoftExtensionsHttpLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.Logging.Abstractions" Version="$(MicrosoftExtensionsLoggingAbstractionsLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.Logging.Configuration" Version="$(MicrosoftExtensionsLoggingConfigurationLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.Logging" Version="$(MicrosoftExtensionsLoggingLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.ObjectPool" Version="$(MicrosoftExtensionsObjectPoolLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.Options.ConfigurationExtensions" Version="$(MicrosoftExtensionsOptionsConfigurationExtensionsLTSVersion)" />
<PackageVersion Include="Microsoft.Extensions.Options" Version="$(MicrosoftExtensionsOptionsLTSVersion)" />
<PackageVersion Include="System.Collections.Immutable" Version="$(SystemCollectionsImmutableLTSVersion)" />
<PackageVersion Include="System.Diagnostics.DiagnosticSource" Version="$(SystemDiagnosticsDiagnosticSourceLTSVersion)" />
<PackageVersion Include="System.Diagnostics.PerformanceCounter" Version="$(SystemDiagnosticsPerformanceCounterLTSVersion)" />
<PackageVersion Include="System.IO.Hashing" Version="$(SystemIOHashingLTSVersion)" />
<PackageVersion Include="System.IO.Pipelines" Version="$(SystemIOPipelinesLTSVersion)" />
<PackageVersion Include="System.Text.Json" Version="$(SystemTextJsonLTSVersion)" />
</ItemGroup>

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

<PropertyGroup>
<TargetFrameworks>$(NetCoreTargetFrameworks)</TargetFrameworks>
<EnableConfigurationBindingGenerator>true</EnableConfigurationBindingGenerator>
<EnableConfigurationBindingGenerator Condition="'$(TargetFramework)' == '$(LatestTargetFramework)'">true</EnableConfigurationBindingGenerator>
<UseLoggingGenerator>true</UseLoggingGenerator>
<UseMetricsGenerator>true</UseMetricsGenerator>
<InjectExperimentalAttributeOnLegacy>true</InjectExperimentalAttributeOnLegacy>
<InjectGetOrAddOnLegacy>true</InjectGetOrAddOnLegacy>

<!-- using the ConfigurationBinder source generator is blocked by https://github.com/dotnet/runtime/issues/94547 -->
<IsAotCompatible Condition="'$(TargetFramework)' != '$(LatestTargetFramework)'">false</IsAotCompatible>
<NoWarn Condition="'$(TargetFramework)' != '$(LatestTargetFramework)'">$(NoWarn);IL2026</NoWarn>
</PropertyGroup>

<PropertyGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,9 @@
<MinCodeCoverage>75</MinCodeCoverage>
<MinMutationScore>50</MinMutationScore>
<Workstream>Fundamentals</Workstream>
<!-- This package needs to reference the dotnet9 versions of Microsoft.Extensions packages as it depends on
surface area that was added in .NET 9. -->
<ForceLatestDotnetVersions>true</ForceLatestDotnetVersions>
</PropertyGroup>

<ItemGroup>
Expand Down
Loading