Skip to content

fix(bootstrap): download hyperd from the Java API bundle, not C++#121

Merged
StefanSteiner merged 1 commit into
tableau:mainfrom
StefanSteiner:fix/bootstrap-java-package
Jun 8, 2026
Merged

fix(bootstrap): download hyperd from the Java API bundle, not C++#121
StefanSteiner merged 1 commit into
tableau:mainfrom
StefanSteiner:fix/bootstrap-java-package

Conversation

@StefanSteiner

Copy link
Copy Markdown
Contributor

Tableau's C++ macos-arm64 zip ships an x86_64 hyperd (upstream packaging defect), so on Apple Silicon the bootstrapped hyperd only ran under Rosetta — wasting CPU and defeating native performance. The Java macos-arm64 bundle carries a native arm64 hyperd.

Verified empirically: extracted the hyperd from both bundles for the pinned 0.0.25080.r2bfd835b release — C++ macos-arm64 is Mach-O x86_64, Java macos-arm64 is Mach-O arm64. The bundles share an identical URL template (only the java/cxx token) and identical internal layout (lib/hyper/hyperd), so extract.rs is unchanged.

Changes:

  • url.rs / scrape.rs: cxx -> java in the URL template and scrape regex.
  • hyperd-version.toml: replace all 4 per-platform sha256s with the Java bundle hashes (recomputed from the real downloads).
  • Doc/comment + README wording updated to reflect the Java bundle and the rationale.

End-to-end: download now fetches the java zip, sha256 verifies against the new pin, and the installed macos-arm64 hyperd is native arm64 (Hyper version main.0.0.25080.r2bfd835b).

Tableau's C++ macos-arm64 zip ships an x86_64 `hyperd` (upstream
packaging defect), so on Apple Silicon the bootstrapped hyperd only ran
under Rosetta — wasting CPU and defeating native performance. The Java
macos-arm64 bundle carries a native arm64 hyperd.

Verified empirically: extracted the hyperd from both bundles for the
pinned 0.0.25080.r2bfd835b release — C++ macos-arm64 is `Mach-O x86_64`,
Java macos-arm64 is `Mach-O arm64`. The bundles share an identical URL
template (only the java/cxx token) and identical internal layout
(lib/hyper/hyperd), so extract.rs is unchanged.

Changes:
- url.rs / scrape.rs: cxx -> java in the URL template and scrape regex.
- hyperd-version.toml: replace all 4 per-platform sha256s with the Java
  bundle hashes (recomputed from the real downloads).
- Doc/comment + README wording updated to reflect the Java bundle and
  the rationale.

End-to-end: `download` now fetches the java zip, sha256 verifies against
the new pin, and the installed macos-arm64 hyperd is native arm64
(`Hyper version main.0.0.25080.r2bfd835b`).
@StefanSteiner StefanSteiner merged commit 9ca4f24 into tableau:main Jun 8, 2026
12 checks passed
@StefanSteiner StefanSteiner mentioned this pull request Jun 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant