Open Liriel opened 4 years ago
I don't yet know what the underlying reason is, but I've filed this issue on the CLI github to seek help.
Something appears to have changed in the package selection process between .net core 3.0 preview and 3.1. If you publish verbose, you'll see a line where it has a conflict between the libraries in the linux-arm/ folder and the x86 compiled version in the linux/ folder. These two libraries share a name for reasons I outlined in the article, but it seems that the package selection process is finding both and choosing the the other 'arbitrarily'. The behavior used to be that it would look for a library in the specific rid folder, i.e. linux-arm, and choose that, and then if it did not find the specific rid, fallback to the next available one based on the rid graph (see: [RID graph](https://docs.microsoft.com/en-us/dotnet/core/rid-catalog and linux-arm rid).
So it appears to be a regression in the behavior on the CLI side as there should be no name conflict issue when a specific
I updated the other issue with better description and your succinct repro steps, thanks!
it appears the bug made it into the 3.0 release as well (downgrading to 3.0.100 did not change the behavior for me)
Hi erikest! thanks for all the research and for providing the nuget packge. It seems though that adding the package does not automatically copy the correct library when pubilshing.
steps to reproduce:
create a new project and add the packages
publish to arm
dotnet publish -r linux-arm --self-contained
checking the hashes I get the pc one:
should be 46a8d1fe8e97b9578148443c886f41eb (fron the latest nuget package)
any Idea what's goning on?