-
Notifications
You must be signed in to change notification settings - Fork 10.3k
[release/3.1] Don't use baseline assembly versions for RID-agnostic packages #17970
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
Conversation
See my comments in #17969 |
This was approved for 3.1.2 - see #17969 |
Watching https://dev.azure.com/dnceng/public/_build/results?buildId=476946 to see if the test failures are unique to this PR |
Hmmm - this might not be needed in 3.1. I just looked at the runtime packs for 3.1.1, and they don't exhibit the same symptom as the 3.0.2 runtime pack (that is, all AssemblyVersions are correct at 3.1.1.0, where in 3.0.2, the non-x64 runtime packs all have AssemblyVersions 3.0.0.0). Will investigate why this is the case tomorrow. |
Moved to Mar as per Tactics. Will need to be explicitly approved for Feb, if required. |
Confirmed locally that this fixes the assembly versions. The Helix failures are not new, see https://dev.azure.com/dnceng/public/_build/results?buildId=476946&view=ms.vss-test-web.build-test-results-tab (note than I ran this PR's Helix tests 4 times, resulting in the 1163 failures, which is almost exactly 291 * 4). I tried to remove the |
Agreed |
@Pilchie how do we ask for this to be approved for Feb.? |
(if it's more than the list you emailed around 😈) |
Worth noting that the original bug here is a bit mysterious - it seems that all projects with |
3.1 port of #17969
In all CI builds except Windows x64, we set
OnlyPackPlatformSpecificPackages=true
: https://github.com/aspnet/AspNetCore/blob/e6af4bfe7e022e2c3b32c583b280965041c3d15c/.azure/pipelines/ci.yml#L254-L261This makes us decide that all libraries without
RuntimeIdentifiers
are not packable: https://github.com/aspnet/AspNetCore/blob/1ff3e7b21ea5270b832a6e05c74b1b5f67d4cfb0/Directory.Build.targets#L5Then later, we say that everything that is not packable, is not part of "this patch" (if we're doing a patch build): https://github.com/aspnet/AspNetCore/blob/1ff3e7b21ea5270b832a6e05c74b1b5f67d4cfb0/Directory.Build.targets#L62-L68
Which causes us to use basline assembly versions:
https://github.com/aspnet/AspNetCore/blob/1ff3e7b21ea5270b832a6e05c74b1b5f67d4cfb0/Directory.Build.targets#L74-L77
We are incorrect to say that these libraries/packages aren't "in this patch" - we're just not building them right now. Moving the condition for
OnlyPackPlatformSpecificPackages
down in the file should fix the issue. Without this, all of our non-Windows-x64 builds create runtime packs w/3.0.0.0
assembly versioned .dll's.@JunTaoLuo @Pilchie @dagood @dougbu PTAL