Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Building for wasm32-unknown-emscripten fails unless wasm-bindgen version is pinned

Abierto Apto para principiantes
#5 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
74/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
rust, wasm
Área
build-system

Línea de trabajo

Comienza con Cargo.toml y reproduce el fallo usando cargo +nightly build --target wasm32-unknown-emscripten. Lee el uso de la closure en src/queue.rs alrededor de las líneas 24 y 79; después, verifica la resolución de dependencias con respecto a la versión de wasm-bindgen indicada; se considera terminado cuando la compilación para el target se completa correctamente.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

cargo +nightly build --target wasm32-unknown-emscripten fails with

error[E0277]: the type `UnsafeCell<isize>` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary
   --> src\queue.rs:79:30
    |
 79 |                 Closure::new(move |_| state.run_all())
    |                 ------------ ^^^^^^^^^^^^^^^^^^^^^^^^ `UnsafeCell<isize>` may contain interior mutability and a reference may not be safely transferable across a catch_unwind boundary
    |                 |
    |                 required by a bound introduced by this call
    |
    = help: within `QueueState`, the trait `RefUnwindSafe` is not implemented for `UnsafeCell<isize>`
note: required because it appears within the type `Cell<isize>`
   --> C:\Users\HeartofPhos\.rustup\toolchains\nightly-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\core\src\cell.rs:315:12
    |
315 | pub struct Cell<T: ?Sized> {
    |            ^^^^
note: required because it appears within the type `RefCell<VecDeque<singlethread::Job>>`
   --> C:\Users\HeartofPhos\.rustup\toolchains\nightly-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\core\src\cell.rs:852:12
    |
852 | pub struct RefCell<T: ?Sized> {
    |            ^^^^^^^
note: required because it appears within the type `QueueState`
   --> src\queue.rs:24:8
    |
 24 | struct QueueState {
    |        ^^^^^^^^^^
    = note: required for `Rc<QueueState>` to implement `UnwindSafe`
note: required because `state` is used within this closure
   --> src\queue.rs:79:39
    |
 79 |                 Closure::new(move |_| state.run_all())
    |                                       ^^^^^
    = note: required for `{closure@src\queue.rs:79:30: 79:38}` to implement `wasm_bindgen::__rt::marker::MaybeUnwindSafe`
note: required by a bound in `ScopedClosure::<'static, T>::new`
   --> C:\Users\HeartofPhos\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\wasm-bindgen-0.2.114\src\closure.rs:244:33
    |
242 |     pub fn new<F>(t: F) -> Self
    |            --- required by a bound in this associated function
243 |     where
244 |         F: IntoWasmClosure<T> + MaybeUnwindSafe + 'static,
    |                                 ^^^^^^^^^^^^^^^ required by this bound in `ScopedClosure::<'static, T>::new`

For more information about this error, try `rustc --explain E0277`.
error: could not compile `web-task` (lib) due to 1 previous error

updating Cargo.toml with wasm-bindgen = { version = "=0.2.108", default-features = false } successfully compiles

Lenguaje dominante
Rust
Estrellas
11
Forks
2
Métricas de merge de PR
Sin PR fusionados en 30 d

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de bevyengine/web-task

Todos los issues de bevyengine/web-task

Issues similares

Más issues de Rust

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.