fix(checksum_updater): register binaryen/wrpc/wit-bindgen-wrpc; refresh bytecodealliance registries - #599
Open
avrabe wants to merge 2 commits into
Open
fix(checksum_updater): register binaryen/wrpc/wit-bindgen-wrpc; refresh bytecodealliance registries#599avrabe wants to merge 2 commits into
avrabe wants to merge 2 commits into
Conversation
…sh bytecodealliance registries
Three tools were silently unregistered in tool_config.rs and falling through to
create_default_config()'s repo guess -- which is WRONG for all three (guesses
bytecodealliance/binaryen, bytecodealliance/wrpc-wasmtime,
bytecodealliance/wit-bindgen-wrpc; real repos are WebAssembly/binaryen and
bytecodealliance/wrpc respectively). Every update attempt for these three
tools failed outright with "Failed to get release for X" -- discovered while
checking bytecodealliance-tool versions and finding the updater couldn't touch
them at all.
- binaryen: WebAssembly/binaryen, PerPlatformAsset, tag `version_{version}`
(bare numeric version, no `v` prefix) -- matches tool_registry.bzl's binaryen
entry exactly.
- wrpc + wit-bindgen-wrpc: both live in bytecodealliance/wrpc. Static
per-platform binary names (no version embedded, matches the toolchain's
`filename: "{suffix}"` / is_binary=True) -- both dropped glibc-linux for
musl-only and ship no native Windows MSVC (gnu .exe only) as of v0.16+,
matching the existing hand-authored registry values, confirmed current at
v0.17.0.
With the fix, refreshed the registry (checksums/tools/*.json only -- NOT the
active build pins in toolchains/tool_versions.bzl, which are separately
hand-maintained and intentionally hold some tools back, e.g. wit-bindgen at
0.55.0 due to a documented C++ codegen break) for all 9 bytecodealliance/
upstream tools:
wasm-tools 1.246.2->1.254.0, wit-bindgen ->0.60.0 (registry only, NOT the
active pin), wac 0.9.0->0.10.1, wasmtime 45.0.1->47.0.2, wkg 0.15.0->0.16.0,
wrpc/wit-bindgen-wrpc ->0.17.0, binaryen 129->131, wasi-sdk 32->33.
Verified: validate --tools <all 9> -> 45/45 checksums valid (re-downloaded,
recomputed). wasi-sdk's Windows platforms (arm64/amd64, ~650MB tarballs) hit a
transient download timeout on the first pass and were silently dropped from
the written entry; caught it, retried, confirmed all 6 platforms present.
Restored the description field the serializer drops (wrpc, wit-bindgen-wrpc --
the others never had one). Two new unit tests pin the corrected URLs; full lib
suite 26/26 pass.
componentize-py intentionally left unregistered: it's pinned to the rolling
`canary` tag, and switching it to the newly-available versioned release
(v0.25.0) is a MODULE.bazel-level call, not the updater's to make silently --
flagged as a follow-up.
Registry-only change: does not move any active build pin, so it does not by
itself change what gets built. Bumping the active pins in tool_versions.bzl
(especially wasm-tools/wasmtime, which are tied together via
TOOL_COMPATIBILITY_MATRIX, and wit-bindgen, held back for a documented reason)
is a separate, higher-risk decision requiring the compat-matrix + full-pipeline
verification the file's own docs call for -- not done here.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
# Conflicts: # tools/checksum_updater/src/tool_config.rs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Found while checking bytecodealliance-tool versions: three tools were silently unregistered in
tool_config.rsand fell through tocreate_default_config()'s repo guess — which is wrong for all three. Every update attempt failed with"Failed to get release for X".binaryenbytecodealliance/binaryenWebAssembly/binaryenwrpcbytecodealliance/wrpc-wasmtimebytecodealliance/wrpcwit-bindgen-wrpcbytecodealliance/wit-bindgen-wrpcbytecodealliance/wrpc(monorepo)PerPlatformAsset, tagversion_{version}(bare numeric, novprefix) — matchestool_registry.bzl's existing binaryen entry.filename: "{suffix}"/is_binary=True) — both dropped glibc-linux for musl-only and ship no native Windows MSVC (gnu.exeonly) as of v0.16+, matching the existing hand-authored registry values, confirmed current at v0.17.0.With the fix, refreshed the registry only (
checksums/tools/*.json) for all 9 bytecodealliance/upstream tools:toolchains/tool_versions.bzlis a separate, hand-maintainedTOOL_VERSIONSdict thatget_tool_version()actually reads — not the registry'slatest_version. It intentionally holds some tools back (wit-bindgen is pinned at 0.55.0: "0.58 changes C codegen type names, breaks cpp_component"). This PR is purely a registry/checksum refresh; it does not change what gets built. Bumping the active pins (especially wasm-tools/wasmtime, tied together viaTOOL_COMPATIBILITY_MATRIX) is a separate, higher-risk call requiring the compat-matrix + full-pipeline verification the file's own docs mandate — not done here.Verification
validate --tools <all 9>→ 45/45 checksums valid (re-downloaded, recomputed).descriptionfield the serializer drops (wrpc, wit-bindgen-wrpc).test_binaryen_was_unregistered_now_correct_repo,test_wrpc_and_wit_bindgen_wrpc_were_unregistered_now_correct_repo). Full lib suite 26/26 pass.Deliberately not done
componentize-pystays unregistered — it's pinned to the rollingcanarytag, and a versioned release (v0.25.0) now exists upstream, but switching offcanaryis aMODULE.bazel-level call, not the updater's to make silently. Flagged as a follow-up.🤖 Generated with Claude Code