-
Notifications
You must be signed in to change notification settings - Fork 967
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
Pin web-sys
to 0.3.67
since we are using unstable APIs
#5224
Conversation
This would be worthwhile if |
It certainly will break builds for some users, but they will break upfront. The current approach allows for Wasm builds to break after the fact, in code that has already been released. In fact, |
This imposes a very large cost on all users of only stable features ("don't upgrade your other dependencies") in order to benefit users of unstable features. |
Hmm, would it be possible to have two |
This doesn't solve the immediate problem, but: We currently plan on upgrading |
@@ -160,7 +160,7 @@ js-sys = "0.3.67" | |||
wasm-bindgen = "0.2.87" | |||
wasm-bindgen-futures = "0.4.40" | |||
wasm-bindgen-test = "0.3" | |||
web-sys = "0.3.67" | |||
web-sys = "=0.3.67" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It would be good to have a comment here explaining why we are pinning to a specific version.
It may be possible with a bit of conditional compilation. I'll look into it. |
Connections
web-sys
patch version0.3.68
rustwasm/wasm-bindgen#3834Description
wgpu
relies on unstable APIs of theweb-sys
crate and the latest0.3.68
version breaks types related to WebGPU.Since semantic versioning isn't enforced for unstable APIs in
web-sys
, we should rely instead on a specific crate version to avoid broken builds in the future.Testing
N/A
Checklist
cargo fmt
.cargo clippy
. If applicable, add:--target wasm32-unknown-unknown
--target wasm32-unknown-emscripten
cargo xtask test
to run tests.CHANGELOG.md
. See simple instructions inside file.