-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
Update PackageOverrides.txt #104638
Update PackageOverrides.txt #104638
Conversation
Update PackageOverrides.txt which ships inside the Microsoft.NETCore.App.Ref targeting pack with the latest state for .NET 9. This improves build perf as assembly version checks are avoided for the packages listed with a version lower or equal.
System.Security.Cryptography.Primitives|4.3.0 | ||
System.Security.Cryptography.X509Certificates|4.3.0 | ||
System.Security.Cryptography.Xml|4.4.0 |
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.
From what I can see, this line is wrong as System.Security.Cryptography.Xml was never inbox.
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.
Note that it is "inbox" in Microsoft.AspNetCore.App
(which means its not inbox in Microsoft.NETCore.App)
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.
It's in ASP.NET Core but not .NETCore. Surprising that no-one ever hit this, maybe because the package version was old? Or folks listen to us and don't actually use it. I confirmed your analysis in 2.0 - 9.0. Thanks for catching it and removing 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.
@eerhardt I see that an entry for it is missing in https://github.com/dotnet/aspnetcore/blob/main/eng/PackageOverrides.txt. There might be others that are missing. Should I file an issue?
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.
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.
Looks like ASP.NET's should be updated to no longer include System.IO.Pipelines, since that is now in NETCore.App.
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.
@eerhardt will you take care of updating the PackageOverrides list in aspnetcore or do you want me to file an issue?
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've opened dotnet/aspnetcore#56724 to track updating aspnetcore's file.
cc @eerhardt |
System.Text.Encodings.Web|9.0.0 | ||
System.Text.Json|9.0.0 |
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.
These 9.0.0
ones are interesting. Is there a reason they weren't included to begin with?
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.
Good question. System.Text.Json is a new package but System.Text.Encodings.Web existed since 2015 and has been inbox since at least netcoreapp2.0. If I'm not mistaken it was you who created the initial list?
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.
This list hasn't changed since you originally added it. I think we were letting platform manifest do the work then.
With PackageOverrides we can short circuit that work. It can also help if we eventually feed this data into NuGet for supplied by platform (short circuiting even earlier in restore).
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.
If I'm not mistaken it was you who created the initial list?
I believe it was initially added in dotnet/core-setup#7369.
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.
That was just copied from your list: https://github.com/dotnet/core-setup/pull/7369/files#diff-d43a6b44d056f972850070a59b2db1c58d30dd708de5b8a27f492a4b97d71210R4
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.
We should consider what's more maintainable for packages that are still built in maintenance-packages or older runtime but not current runtime.
src/installer/pkg/sfx/Microsoft.NETCore.App/PackageOverrides.txt
Outdated
Show resolved
Hide resolved
System.Text.Encodings.Web|9.0.0 | ||
System.Text.Json|9.0.0 |
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.
This list hasn't changed since you originally added it. I think we were letting platform manifest do the work then.
With PackageOverrides we can short circuit that work. It can also help if we eventually feed this data into NuGet for supplied by platform (short circuiting even earlier in restore).
System.Security.Cryptography.Primitives|4.3.0 | ||
System.Security.Cryptography.X509Certificates|4.3.0 | ||
System.Security.Cryptography.Xml|4.4.0 |
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.
Update packages that aren't produced from runtime/main anymore but from other branches or from the maintenance-packages repository.
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 updated the package versions for ones that will ship again from maintenance-packages or from a servicing branch. Any other feedback?
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.
LGTM. Just some minor questions/comments.
System.Xml.XDocument|4.3.0 | ||
System.Xml.XmlDocument|4.3.0 | ||
System.Xml.XmlSerializer|4.3.0 | ||
System.Xml.XPath|4.3.0 | ||
System.Xml.XPath.XDocument|4.3.0 | ||
System.Xml.XPath.XDocument|5.0.0 |
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.
We haven't shipped a new version of System.Xml.XPath.XDocument
since 2016. Why does it get 5.0.0
and the other System.Xml packages don't?
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.
This package and a few others (i.e. DispatchProxy that you commented on below) will soon get a new version for servicing. The sources got moved to https://github.com/dotnet/maintenance-packages/tree/main/src.
System.Reflection.Emit|4.3.0 | ||
System.Reflection.Emit.ILGeneration|4.3.0 | ||
System.Reflection.Emit.Lightweight|4.3.0 | ||
System.Reflection.DispatchProxy|6.0.0 |
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 think this one can stay at 5.0.0
, we never shipped a 5.0.0
(just 5.0.0-preview packages for a while), and it makes it consistent with the other 4.x packages.
LGTM |
Update PackageOverrides.txt which ships inside the Microsoft.NETCore.App.Ref targeting pack with the latest state for .NET 9.
This improves build perf as assembly version checks are avoided for the packages listed with a version lower or equal.
Filed #104639 for adding some automation.
I went through the entire list of inbox libraries from
runtime/src/libraries/NetCoreAppLibrary.props
Line 28 in 5795e8c