-
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
Support wasm variants in NuGet packages #76959
Comments
I couldn't figure out the best area label to add to this issue. If you have write-permissions please help me learn by adding exactly one area label. |
Tagging subscribers to 'arch-wasm': @lewing Issue DetailsWe need some way for NuGet package authors to provide single threaded and multi-threaded versions of native assets. Additionally, library authors should be able to identify whether they are in a single- or multi-threaded app.
|
@lewing @richlander This probably needs to be part of a broader discussion than just the runtime |
yes cc @jeromelaban |
Thanks Larry! Indeed, this is needed. For native assets, here's what we've been using with Uno to address that problem (along with the emscripten version number, for backward compatibility). SkiaSharp is already built this way, in the For a moment, Wasm exceptions support was considered a variant, but since it is supported by all major browsers, that leaves simd and threading for now. As for capabilities detection, it's for now available as part of an environment variable for threading, yet it's a quite weak API at this point. This issue should also be linked to another issue about startup time features detection. This is to include multiple builds of the same payload with different variants, based on browser capabilities, considering there's no current way (as far as I can see) to make fined-grained feature switching at IL level, or runtime level. |
Related #77541 |
We need some way for NuGet package authors to provide single threaded and multi-threaded versions of native assets.
Additionally, library authors should be able to identify whether they are in a single- or multi-threaded app.
(For example consider making
System.Threading.Thread.IsThreadStartSupported
a public property (and also linker-friendly))The text was updated successfully, but these errors were encountered: