Monitor wasm-pack: cargo install broken by zip crate mass-yank; CI uses taiki-e prebuilt binary
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 1/5
- Tiempo estimado
- Menos de una hora
- Aptitud para principiantes
- 15/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- github-actions, rust, wasm
- Área
- build-system, ci-cd
Línea de trabajo
Nothing in the repository needs a code change yet. Start by reading the upstream wasm-pack issue (wasm-bindgen/wasm-pack#1608) and the zip2 thread (zip-rs/zip2#1075) to see whether binary-install has been replaced. Done means the tracking note is current or the team has decided whether to revisit the taiki-e install-action step.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Summary
Our CI installs wasm-pack via taiki-e/install-action@wasm-pack (prebuilt binary) instead of cargo install wasm-pack, because cargo install wasm-pack stopped working on 2026-10-16. This issue tracks the upstream situation so we know when (and whether) to revisit.
Upstream tracking issue: https://github.com/wasm-bindgen/wasm-pack/issues/1608
What happened
On 2026-10-16 the zip crate maintainers yanked every published version except 9.0.3 and 9.0.4 (134 of 136 versions), ahead of publishing security advisories. See zip-rs/zip2#1075. The advisories cited so far:
- GHSA-vv5m-jxxh-4627: SUID/SGID bits preserved on extraction
- GHSA-4v9h-p7m9-rh26:
ZipArchive::extractcreates symlinks pointing outside the destination - GHSA-4684-h2q9-2vcp: Unix permissions applied through symlinks on extract
The maintainer said more advisories will be published later this month.
wasm-pack 0.15.0 depends on binary-install 0.4.1, which requires zip ^2.1.3. No unyanked 2.x exists, so a fresh cargo install wasm-pack fails to resolve. binary-install is archived, so a fix has to come from wasm-pack itself.
Why the prebuilt binary is acceptable for now
The taiki-e binary is the same wasm-pack 0.15.0 source, built with zip 2.4.2 from wasm-pack's own lockfile, so the vulnerable zip code is present. Practical exposure in our CI is low:
binary-installnever calls the high-levelZipArchive::extractAPI the advisories are about. It walks entries itself, filters withenclosed_name(), and writes only the specific binaries it wants with a fixed 0755 mode.- wasm-pack only reaches the zip code path for Windows binaryen downloads and chromedriver (
wasm-pack test). Everything else it fetches is.tar.gz. - Our workflows preinstall both tools wasm-pack would otherwise download (
wasm-bindgen-cliat the lockfile version via cargo,[email protected]via npm). wasm-pack prefers PATH copies when versions match, so in CI it downloads nothing.
What to watch for
- A wasm-pack release that drops or replaces
binary-install(resolving the upstream issue above). Once it ships, the taiki-e manifest picks it up automatically since we don't pin a version. - The additional zip advisories the maintainer said are coming. If any affect the entry-iteration path (not just
extract()), re-evaluate the "low exposure" reasoning above. - Whether we want to pin
taiki-e/install-actionto a commit SHA for supply-chain hygiene (independent of the zip question).
Related
Our own zip dependency was bumped from 6.0.0 (also yanked) to 9.0.4 in the same change that switched the workflows.
- Lenguaje dominante
- Rust
- Estrellas
- 278
- Forks
- 19
- Merge medio
- 20 h 23 min
- PR fusionados (30 d)
- 164
Preparar el entorno
- Sin Dockerfile ni 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 quarto-dev/q2
-
Dificultad 3/5 1-2 días Aptitud para principiantes 54/100
quarto-dev/q2#905 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 63/100
quarto-dev/q2#904 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 48/100
quarto-dev/q2#900 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
quarto-dev/q2#896 ·
Los mantenedores suelen responder en 1 día
-
"I want :emoji: to work"Abierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
quarto-dev/q2#893 · 3 reacciones ·
Los mantenedores suelen responder en 1 día
Todos los issues de quarto-dev/q2
Issues similares
-
units: No `#` in rustdoc headingAbierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 67/100
rust-bitcoin/rust-bitcoin#7089 · 1 comentario · 1 reacción ·
Los mantenedores suelen responder en 2 días
-
area/tools bug session-analysis
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
[Bug]: Python OpenTelemetrySectionConfig has no file_sinksQuizá libre de nuevo Un pull request para esta issue se cerró sin fusionarse. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
NVIDIA/NeMo-Relay#1514 ·
Los mantenedores suelen responder en 1 día
-
prompting proposal tool triaged
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
can1357/oh-my-pi#17041 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
README crane example out of dateAbierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 84/100
nix-community/fenix#262 ·