Expand description
Download and install the hyperd executable from Tableau’s Hyper C++
API release packages.
The crate ships both a CLI binary (hyperd-bootstrap) and a small
library. The library is blocking (no async runtime required) and has
no dependency on tokio, so it can be called from build scripts,
postinstall hooks, or any sync Rust code.
§Quick start
use hyperdb_bootstrap::{install, InstallOptions};
let installed = install(InstallOptions::default()).unwrap();
println!("hyperd is at {}", installed.binary_path.display());See InstallOptions and VersionSource for how to override the
destination, pin a specific release, load metadata from an external
TOML file, or scrape the latest release from the public releases page.
Re-exports§
pub use error::Error;pub use install::install;pub use install::InstallOptions;pub use install::InstalledHyperd;pub use install::VersionSource;pub use install::DEFAULT_DEST_ROOT;pub use platform::Platform;pub use release::PinnedRelease;pub use verify::verify_release;pub use verify::VerifyOutcome;
Modules§
- download
- HTTP (via
curl) download of release archives + SHA-256 verification. Downloads thehyperdrelease archive to a temp file and verifies its SHA-256 digest. - error
- Error types returned by the crate.
Error types returned by the
hyperd-bootstrapcrate. - extract
- ZIP archive extraction of the
hyperdbinary and its shared libraries. ZIP-archive extraction for the Hyper C++ API release bundle. - install
- High-level
installentry point and its configuration types. High-levelinstall()entry point: resolves a release, downloads and verifies the archive, extracts the executable into<dest_root>/<version_tag>/, then refreshes the<dest_root>/current/pointer so downstream tooling can always find the active install at a stable path. - platform
- Supported host platforms (macOS arm64/x86_64, Linux x86_64, Windows x86_64). Host-platform detection and slug encoding for the four targets that Tableau’s Hyper C++ API ships binaries for.
- release
- Pinned-release metadata loaded from
hyperd-version.toml. A pinnedhyperdrelease descriptor loaded fromhyperd-version.toml. - scrape
- Best-effort scraping of the public releases page to discover the latest version when no pin is supplied. Best-effort scraper for the public Hyper releases page.
- url
- URL construction for Tableau’s public download endpoint. Builds canonical download URLs for Tableau’s public Hyper C++ API release bundles.
- verify
- Reachability probes that HEAD each platform URL of a pinned release.
HEAD each supported platform’s download URL to confirm the pinned
release is still reachable on Tableau’s CDN. Used by the
verifyCLI subcommand and by CI workflows that guard against silent yanks or URL-scheme changes.