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

[BUG] Windows WebKit doesn't have WebAssembly #2876

Closed
myobie opened this issue Jul 8, 2020 · 12 comments
Closed

[BUG] Windows WebKit doesn't have WebAssembly #2876

myobie opened this issue Jul 8, 2020 · 12 comments

Comments

@myobie
Copy link

myobie commented Jul 8, 2020

Context:

  • Playwright Version: 1.1.1
  • Operating System: Windows
  • Node version: 14.4.0
  • Browser: WebKit
  • Extra: Process running inside GitHub Actions; code running in a ServiceWorker context.

Code Snippet

(async function () {
  const response = await fetch(url)
  const bytes = await response.arrayBuffer()
  const module = await WebAssembly.compile(bytes)
  return module
})()

Describe the bug

Throws an Error with the message Can't find variable: WebAssembly. Code works on Linux WebKit and macOS WebKit – WebAssembly is found.

@aslushnikov
Copy link
Collaborator

@myobie Yes, there's no webassembly indeed. We have a summary table on what's in there and what's not for every platform:

https://github.com/microsoft/playwright/blob/master/docs/development/webkit.md

I don't think this is something that'll change in near future. +cc @yury-s to make sure I understand it right.

@yury-s
Copy link
Member

yury-s commented Jul 9, 2020

WebAssembly is currently disabled in WebKit Windows port upstream. I don't think anyone is actively working on enabling it there so it will likely be missing in WebKit Windows in the near future.

@myobie
Copy link
Author

myobie commented Jul 9, 2020

Gah, I missed that feature table. Thanks for the link and info. 🙇

@ericoporto
Copy link

WebAssembly is currently disabled in WebKit Windows port upstream.

Is this still the state in 2023?

@trusktr
Copy link

trusktr commented Jun 19, 2023

Is this still the state in 2023?

Yes indeed, I just tried. WebAssembly is still missing in Windows Webkit.

@fujii
Copy link

fujii commented Jun 29, 2023

upstream WebKit bug: https://bugs.webkit.org/show_bug.cgi?id=222315
Contributions are welcome.

@ericoporto
Copy link

Erh, curious, should playwright's WebKit in macOS have WebAssembly?

@iangrunert
Copy link

WebAssembly is now enabled on the Windows port for WebKit: WebKit/WebKit#18184

Note that this is just the low level interpreter, neither of the JIT tiers are enabled yet. This means it'll run significantly slower than other platforms for now, until the BBQ and / or OMG JIT tiers are enabled.

@DrMueller
Copy link

@iangrunert Sorry for the question, but how do I get the newest version with Windows WASM WebKit to work? According to https://playwright.dev/dotnet/docs/browsers, PlayWright.NET decides, which version of WebKit to use, isn't it?

@DrMueller
Copy link

DrMueller commented Jun 18, 2024

@iangrunert Sorry for the question, but how do I get the newest version with Windows WASM WebKit to work? According to https://playwright.dev/dotnet/docs/browsers, PlayWright.NET decides, which version of WebKit to use, isn't it? Does your comment above mean, that it is technically ready but not yet released?

@iangrunert
Copy link

@DrMueller Unfortunately JIT was disabled on the Windows port in May due to https://bugs.webkit.org/show_bug.cgi?id=273854, and JIT is (currently) required in order to generate entry thunks to use the WebAssembly interpreter.

I'm currently working on getting JIT + WebAssembly re-enabled, I can comment on this thread when that happens.

@DrMueller
Copy link

@iangrunert Thank you for the status update, yes it would be grat if you could leave a comment so i get pinged, when this is supposed to work.

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

8 participants