-
Notifications
You must be signed in to change notification settings - Fork 744
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
base: main
Are you sure you want to change the base?
Conversation
src/Libraries/Microsoft.AspNetCore.HeaderParsing/Microsoft.AspNetCore.HeaderParsing.csproj
Outdated
Show resolved
Hide resolved
|
||
<PropertyGroup Label="Manual"> | ||
<!-- Packages from dotnet/runtime --> | ||
<MicrosoftBclTimeProviderLTSVersion>8.0.1</MicrosoftBclTimeProviderLTSVersion> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we have the any of the servicing concerns as discussed in dotnet/efcore#34769 (comment)? When we service this repo, we will need to wait for the 8.0.x release to be done before we can build this repo. Will that be a problem?
cc @ericstj
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not really because dotnet/extensions is not part of product construction. The reason why efcore is a concern, is that efcore 9 (which is part of product construction) would now depend on the build of .NET 8 servicing, meaning that a rebuild of 8 servicing would trigger at the very least a partial rebuild for .NET 9. In our case, while .NET 8 servicing rebuild would trigger a rebuild for us as well, it would only affect our layer as nothing depends on the live versions that we produce higher in the stack, and .NEt 9 wouldn't require a rebuild as extensions is not part of it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have a feeling we should go back to the original R9 organisation - i.e., have eng/packages/General.props contain only the general packages, and then have eng/packages/net80.props and eng/packages/net90.props that would contain TFM-specific packages.
Fair enough, I'm not sure how that will work for projects that are not multi-targeting as TFM is not always set at the right time, but I can try doing this and see how it behaves. |
Fixes #5462
cc: @eerhardt
This change makes it such that packages produced from this repository will depend on 8.0 era packages when consuming them from a project that targets net8.0 (and net462), and on 9.0 era packages when consuming them from a project that targets net9.0.
This is in favor of allowing customers that can only consume LTS versions of the rest of .NET to not be lifted when referencing packages from dotnet/extensions.
FYI: @ericstj @stephentoub @sebastienros @DamianEdwards @RussKie
Microsoft Reviewers: Open in CodeFlow