-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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 framework provided by the SDK #67080
Comments
These types of changes are still happening today. In order to do this, we would need to guarantee that the runtime pack version and NativeAOT package version are the same. |
dotnet/performance#2905 ran into us replacing the framework with our versions - it's not possible to use new Collections.Immutable with 7.0 NativeAOT because we replace it with the old version. |
Closing in favor of #87060. |
The ILCompiler NuGet package currently includes a copy of all the inbox framework assemblies:
runtime/src/installer/pkg/projects/Microsoft.DotNet.ILCompiler/Microsoft.DotNet.ILCompiler.pkgproj
Line 14 in b4e258a
The .targets embedded in the ILCompiler package then replace the framework implementation assemblies that the SDK knows about with this private copy:
runtime/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.targets
Lines 117 to 118 in 87777b6
runtime/src/coreclr/nativeaot/BuildIntegration/Microsoft.NETCore.Native.targets
Lines 158 to 159 in 87777b6
We do this because up until the move of NativeAOT to the runtime repo, we had customizations in the framework libraries that were not present in the shipping framework assemblies, and the NativeAOT CoreLib didn't version with the libraries that are in the SDK either (the latter is still true for users who consume NativeAOT as a NuGet package vs those that will consume it from the SDK - we sometimes do things like moving types from framework assemblies to CoreLib and such changes are not compatible with old frameworks).
The NativeAOT integration provided by the SDK should probably not be shipping a separate copy of these.
I'm putting this into .NET 7 milestone for consideration, but I'm not sure how much it's needed and how much it's nice to have.
Cc @agocke @LakshanF
The text was updated successfully, but these errors were encountered: