-
Notifications
You must be signed in to change notification settings - Fork 200
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
Restore Microsoft.Private.CoreFX.NETCoreApp package #58
Conversation
I haven't figured out what to do with it yet, but it's clear we can't package the framework out of the CoreCLR NuGet infra and we need one for Microsoft.DotNet.ILCompiler. This is the rollback of the commit that deleted the transport package with tweaks to account for the endless build infra churn. frameworkPackage.targets has some validation to ensure there's no cycle in assembly dependencies. I've deleted it because we now have at least one such cycle (`netstandard > System.Xml.XDocument > System.Private.Xml.Linq > System.Private.Xml > System.Security.Cryptography.Algorithms > System.Formats.Asn1 > netstandard`).
Does this need a bug in dotnet/runtime ? |
We would need to create the runtime packs in installer partition, same as where they are created for other runtimes. |
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 fine to me as a temporary workaround if doing the proper thing is too hard at the moment.
Do we need an issue to track redoing this without the extra package?
@ericstj I'm restoring Microsoft.Private.CoreFX.NETCoreApp package here for... reasons.... One of the things building this package did was the VerifyClosure thing that you added around dotnet/corefx@e04090e. Do we still care about cycles in the closure? We now apparently have some in .NET 5.
|
https://github.com/dotnet/runtimelab/blob/NativeAOT/src/installer/pkg/projects/netcoreapp/pkg/Microsoft.NETCore.App.Runtime.pkgproj is pretty obfuscated in terms of what it is doing (I have no clue how that things turns into a package). I'll spend some time over a MSBuild binlog and try to figure out what it does and how to clone it into what we need. Maybe the extra transport package is not worth it. I'm afraid of touching too many files because people keep redoing this all the time. Whatever we build here might get broken more often than JitInterface and fixing the fallout will probably always involve inspecting binlogs because the build infra is too clever and churns too much to keep track of. |
The fix for this issue is to add a $(NetCoreAppCurrent) configuration to Asn1. I'll file an issue. cc @bartonjs |
@MichalStrehovsky the building of the runtime pack will be significantly simplified once I get dotnet/arcade#5714 and dotnet/runtime#38457 merged. |
Closing in favor of #64.
Thanks for the pointers! |
For some reason, the build issue was only caught internally.
I haven't figured out what to do with it yet, but it's clear we can't package the framework out of the CoreCLR NuGet infra and we need one for Microsoft.DotNet.ILCompiler.
This is the rollback of the commit that deleted the transport package with tweaks to account for the endless build infra churn.
frameworkPackage.targets has some validation to ensure there's no cycle in assembly dependencies. I've deleted it because we now have at least one such cycle (
netstandard > System.Xml.XDocument > System.Private.Xml.Linq > System.Private.Xml > System.Security.Cryptography.Algorithms > System.Formats.Asn1 > netstandard
).