WebAudio wasm build fails with wasm-bindgen panic=unwind closures
Los mantenedores suelen responder en 1 día
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 75/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- rust, wasm
- Área
- audio-video-rtc
Línea de trabajo
Empieza por src/host/webaudio/mod.rs e inspecciona el callback Closure::wrap descrito en el issue. Comprueba cómo wasm-bindgen 0.2.129 gestiona la seguridad frente a desenrollados para este callback y, después, compila cpal para wasm32-unknown-unknown con panic=unwind para confirmar el fallo y verificar la construcción de closure compatible. La tarea estará terminada cuando la compilación se complete correctamente y el callback pertenezca al host WebAudio.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
With Rust panic=unwind and current wasm-bindgen (0.2.129), cpal 0.18.2 fails to compile for wasm32-unknown-unknown in src/host/webaudio/mod.rs at Closure::wrap(Box::new(move || { ... })). The boxed callback type Box<dyn FnMut()> does not implement wasm-bindgen's MaybeUnwindSafe bound.
A local one-line fix is:
Closure::wrap_assert_unwind_safe(Box::new(move || { ... }))
The callback is owned by the WebAudio host and does not cross Rust threads. Would you consider this change, or another supported closure construction, in cpal?
- Lenguaje dominante
- Rust
- Estrellas
- 4k
- Forks
- 554
- Merge medio
- 2 d 11 h
- PR fusionados (30 d)
- 3
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de RustAudio/cpal
-
aaudio: dynamic buffer tuning never grows the buffer (set_buffer_size_in_frames reports Err on success)Posiblemente ocupada @dannyward630 la tomó hace 3 días. Abiertohost - aaudio platform - android
Dificultad 2/5 1-3 horas Aptitud para principiantes 79/100
Los mantenedores suelen responder en 1 día
-
New WASAPI implementationAbiertocode quality dependencies host - wasapi platform - windows
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
RustAudio/cpal#1416 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
host - pipewire platform - linux
Dificultad 4/5 1-2 días Aptitud para principiantes 52/100
RustAudio/cpal#1405 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
WASAPI: default-device activation fails with RPC_E_CHANGED_MODE after endpoint-notification callbacks put thread-pool threads into an STAPosiblemente ocupada @dannyward630 la tomó hace 4 días. Abiertocorrectness host - wasapi platform - windows
Dificultad 4/5 3-5 días Aptitud para principiantes 20/100
RustAudio/cpal#1402 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
coreaudio (macOS): capture/playback timestamps double-count the buffer, loopback reads as −2 buffersPosiblemente ocupada @Marco-Farruggio la tomó hace 14 días. Abiertocorrectness host - coreaudio platform - macos
Dificultad 4/5 3-5 días Aptitud para principiantes 53/100
RustAudio/cpal#1398 · 1 comentario ·
Los mantenedores suelen responder en 1 día
Todos los issues de RustAudio/cpal
Issues similares
-
build.yml: macOS arm64 DMG fails, cargo missing on the macos-26 runner imagePosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
getopenscreen/openscreen#1423 ·
Los mantenedores suelen responder en 1 día
-
bug good first issue python
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
Los mantenedores suelen responder en 1 día
-
feature
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
bug: remove the "not stable yet" warning from DataReplacement commitsPosiblemente ocupada @lance-gatefixer la tomó hoy. Abiertobug
Dificultad 1/5 Menos de una hora Aptitud para principiantes 84/100
lance-format/lance#10433 ·
Los mantenedores suelen responder en 3 días
-
vorbis: Inverse coupling runs in wrong orderPosiblemente ocupada @computerfan la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100