cube-js/cube · error
the latest release has no binary for this platform ({}-{});
Error message
the latest release has no binary for this platform ({}-{}); it may still be building — try again in a few minutes What it means
`cube update` fetches the latest CLI release and looks for an asset matching the current OS/architecture (e.g. linux-x86_64). If the release exists but has no binary asset for this platform, the CLI bails with this message, noting the asset may not be uploaded yet.
Source
Thrown at rust/cube-cli/src/commands/update.rs:39
let release = update::latest_release(&http).await?;
let latest = release.version();
if !is_newer(latest, CURRENT_VERSION) {
output::success(&format!(
"Cube CLI {CURRENT_VERSION} is up to date (latest release: {latest})"
));
return Ok(());
}
println!("Current version: {CURRENT_VERSION}");
println!("Latest release: {}", latest.bold().green());
if args.check {
println!("Run {} to install it.", "cube update".bold().cyan());
return Ok(());
}
let Some(asset) = release.asset_for_this_platform() else {
bail!(
"the latest release has no binary for this platform ({}-{}); \
it may still be building — try again in a few minutes",
std::env::consts::OS,
std::env::consts::ARCH
);
};
eprintln!("Downloading {}…", asset.name);
let bytes = http
.get(&asset.browser_download_url)
.send()
.await?
.error_for_status()
.context("download failed")?
.bytes()
.await?;
let new_binary = extract_binary(&bytes)?;View on GitHub (pinned to 7d981676b3)
Solutions
- Wait a few minutes and re-run `cube update`
- Check the release page on GitHub for available assets for your platform
- Install via an alternative channel (package manager or build from source) if your platform isn't supported
Defensive patterns
Strategy: retry
Validate before calling
// check assets before updating
const rel = await fetch(RELEASE_API).then(r => r.json());
const want = `${os()}-${arch()}`;
if (!rel.assets.some(a => a.name.includes(want))) console.warn("asset not yet published"); Try / catch
try {
run("cube update");
} catch (e) {
if (String(e).includes("no binary for this platform")) {
await sleep(5 * 60_000); run("cube update");
} else throw e;
} Prevention
- Delay update automation until well after release time
- Verify your OS/arch combination has published binaries
- Use a fallback install method (package manager, source build) for unsupported platforms
When it happens
Trigger: Running `cube update` immediately after a new release is published, before platform binaries finish uploading; running on an OS/arch the project doesn't publish binaries for (e.g. linux-aarch64, freebsd).
Common situations: CI runners on less common architectures; using the CLI right at release time;musl/alpine or ARM environments lacking published assets.
Related errors
- release archive does not contain a cube binary
- Unsupported platform: ${process.platform}
- ${pkg} dependency not found. Please run this command from pr
- Unable to detect libc on not linux os
- No app secret found
AI-assisted analysis of cube-js/cube@7d981676b3 (2026-09-02).
Data as JSON: /api/errors/632f139b506eef99.
Report an issue: GitHub.