cube-js/cube · error

Unable to find Cube Store release v${version}. Most probably

Error message

Unable to find Cube Store release v${version}. Most probably it was removed.

What it means

Thrown by downloadBinaryFromRelease when the binary download 404'd and fetchRelease() returns no release (falsy) for tag v${version} in the cube-js/cube.js repo — meaning the GitHub release itself cannot be found, not just its assets. The library interprets this as the release having been deleted or not yet created.

Source

Thrown at rust/cubestore/js-wrapper/src/download.ts:63

    await downloadAndExtractFile(url, {
      cwd: cubestorePath,
      showProgress: true,
    });
  } catch (e: any) {
    if (e.toString().includes('Not Found')) {
      const release = await fetchRelease(version);
      if (release) {
        if (release.assets.length === 0) {
          throw new Error(
            `There are no artifacts for Cube Store v${version}. Most probably it is still building. Please try again later.`
          );
        }

        throw new Error(
          `Cube Store v${version} Artifact for ${currentTarget} doesn't exist. Most probably it is still building. Please try again later.`
        );
      } else {
        throw new Error(
          `Unable to find Cube Store release v${version}. Most probably it was removed.`
        );
      }
    } else {
      throw e;
    }
  }
}

View on GitHub (pinned to 7d981676b3)

Solutions

  1. Verify the exact version in node_modules/@cubejs-backend/cubestool (or rust/cubestore/js-wrapper)/package.json and confirm a matching tag exists at github.com/cube-js/cube.js/releases/tag/v${version}.
  2. Reinstall a published cube.js version so the wrapper version matches an existing release (e.g. yarn add @cubejs-backend/cubestool@<published-version>).
  3. If running from the monorepo/source, set CUBEJS_GH_API_TOKEN and ensure you are not on an unpublished dev version; build cubestored locally instead.
  4. Check whether the release was removed or re-tagged upstream and upgrade to a version that has a valid release.

Example fix

// before
"@cubejs-backend/cubestool": "0.35.0-beta.3"
// after: use a published version with a matching GitHub release
"@cubejs-backend/cubestool": "0.35.0"
Defensive patterns

Strategy: validation

Validate before calling

import { version } from '@cubejs-backend/cubestool/package.json';
const res = await fetch(`https://api.github.com/repos/cube-js/cube.js/releases/tags/v${version}`);
if (res.status === 404) {
  throw new Error(`Version ${version} has no GitHub release; use a published version.`);
}

Type guard

function releaseExists(res: { status: number }): boolean {
  return res.status === 200;
}

Try / catch

try {
  await cubeStoreHandler.acquire();
} catch (e) {
  if (/Unable to find Cube Store release/.test(String(e))) {
    throw new Error('Installed cubestool version has no matching release — reinstall a published version.');
  } else { throw e; }
}

Prevention

When it happens

Trigger: getBinary() -> downloadBinaryFromRelease() with the local cubestored missing; downloadAndExtractFile() fails with 'Not Found'; fetchRelease(version) returns undefined/null because GET /repos/cube-js/cube.js/releases/tags/v${version} found no release (404) — this can also happen if the API call fails in a way returning no release or a CUBEJS_GH_API_TOKEN-authenticated request hits an unexpected state.

Common situations: Installing a custom/patched version of @cubejs-backend/cubestool whose package version has no matching cube.js release tag; version skew where the js-wrapper package.json version predates or postdates the release tag; a release that was deleted/re-tagged; running a dev build of the monorepo where version in rust/cubestore/js-wrapper/package.json has no published GitHub release.

Related errors


AI-assisted analysis of cube-js/cube@7d981676b3 (2026-09-02). Data as JSON: /api/errors/60b186fea5cd3a50. Report an issue: GitHub.