Skip to content
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

Consider guards for projects missing RID-specific assets #11206

Closed
swaroop-sridhar opened this issue Apr 8, 2020 · 2 comments
Closed

Consider guards for projects missing RID-specific assets #11206

swaroop-sridhar opened this issue Apr 8, 2020 · 2 comments

Comments

@swaroop-sridhar
Copy link
Contributor

Consider the libuv 1.9.0 nuget package.
It provides platform specific native asset libuv library.

The package structure is :

runtimes
   |- debian-x64/native/libuv.so
   |- rhel-x64/native/libuv.so
   |- win-x64/native/libuv.dll

dotnet publish will generate the above directory structure within the bin/.net5/publish directory.

However, dotnet publish -r debian-x64 --self-contained=false will generate bin/.net5/debian-x64/publish that only contains libuv.so from runtime/debian-x64/native.

However, dotnet publish -r linux-x64 --self-contained=false will generate bin/.net5/linux-x64/publish without libuv.so. While the publish succeeds here, the app will fail at runtime because of the missing library.

The missing RID-asset (for linux-x64) may actually mean that the library (libuv.so) is unnecessary for that platform -- although it is weird that the lib is not necessary at a higher RID but necessary in a lower RID. This is somewhat similar to missing an assembly that is only loaded at runtime for reflection -- where the SDK cannot know the exact requirements.

Should we consider guards in the SDK to check for this case? (ex: missing assets at a parent RID)?

@swaroop-sridhar
Copy link
Contributor Author

CC: @dsplaisted @vitek-karas

@marcpopMSFT marcpopMSFT self-assigned this Apr 16, 2020
@marcpopMSFT marcpopMSFT added untriaged Request triage from a team member needs team triage Requires a full team discussion and removed untriaged Request triage from a team member labels Apr 16, 2020
@marcpopMSFT marcpopMSFT removed the needs team triage Requires a full team discussion label Apr 29, 2020
@marcpopMSFT marcpopMSFT removed their assignment Apr 29, 2020
@marcpopMSFT
Copy link
Member

Thanks for the suggestion. This is not a priority at the moment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants