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

Add more WebAssembly feature extensions #6990

Merged
merged 1 commit into from
Mar 3, 2024
Merged

Conversation

dschuff
Copy link
Contributor

@dschuff dschuff commented Feb 29, 2024

This adds the data for WebAssembly extensions including
mutable global import/export, sign extension operators, threads/atomics, bulk
memory operations, nontrapping float-to-int conversion, bigint integration,
multi-value and SIMD. These are features that have been shipped in all major
browser engines.

This adds the data for WebAssembly extensions including
mutable global import/export, sign extension operators, threads/atomics, bulk
memory operations, nontrapping float-to-int conversion, bigint integration,
multi-value and SIMD. These are features that have been shipped in all major
browser engines.
@Fyrd
Copy link
Owner

Fyrd commented Mar 3, 2024

Thanks! I'll merge this PR now and review support later.

@Fyrd Fyrd merged commit 14ea9b8 into Fyrd:main Mar 3, 2024
1 check passed
@Fyrd
Copy link
Owner

Fyrd commented Mar 19, 2024

@dschuff According to your data in this PR multiple browsers support threads/atomics, but looking at https://wasm-feature-detect.surma.technology/ across even current browsers I'm seeing the test failing every time.

@dschuff
Copy link
Contributor Author

dschuff commented Mar 19, 2024

Using wasm threads (and SharedArrayBuffer) requires the page to be cross-origin isolated with COOP/COEP, so if it's not served the right way, threads won't work. Most likely the problem is that that demo URL isn't being served right (it can actually quite a pain for users, depending on how their site is architected). The corresponding page at https://webassembly.org/features/ (which just embeds the same wasm-feature-detect library) is set up correctly to serve with COEP, and you should hopefully be able see that it works.

@Fyrd
Copy link
Owner

Fyrd commented Mar 24, 2024

Ah, thanks, you're right!

The next thing I notice is that you have Opera versions set as if their version matches the Chromium version which is not the case. Instead it's 14 points off (as of Opera 69, 13 points off for Opera 68 and below), so if it's supported in Chrome 85 it should be in Opera 71.

@dschuff
Copy link
Contributor Author

dschuff commented Mar 25, 2024

Oops, I didn't realize that. I can open another PR to fix that if you want.

Also, I haven't actually tested on Opera, I just assumed that they generally ship features as V8/Chromium turns them on by default. This assumption is generally true for Edge, but I'm less familiar with how Opera ships features.

@@ -0,0 +1,603 @@
{
"title":"WebAssembly Non-trapping float-to-int Conversion",
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@dschuff I noticed this is the wrong title, have replaced it with "WebAssembly BigInt to i64 conversion in JS API"

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah thanks. I'm sure I just forgot to update it when copy/pasting.

@Fyrd
Copy link
Owner

Fyrd commented Apr 8, 2024

Alright, all of these now appear on the site.

@dschuff
Copy link
Contributor Author

dschuff commented Apr 8, 2024

Alright, all of these now appear on the site.

Thanks for your help!

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

Successfully merging this pull request may close these issues.

2 participants