FuelLabs/fuels-ts · error · Error
Version '${fuelCoreVersion}' not found\n at ${pkgUrl}
Error message
Version '${fuelCoreVersion}' not found\n at ${pkgUrl} What it means
Thrown by the fuel-core binary install script when the body fetched from `https://github.com/FuelLabs/fuel-core/releases/download/v<version>/<pkg>` contains 'not found' (GitHub's 404 body). The `fuelCoreVersion` is read from `internal/fuel-core/VERSION`. Mirrors the forc installer's check and runs during the fuel-core postinstall.
Source
Thrown at internal/fuel-core/lib/install.js:64
versionMatches = binVersion === fuelCoreVersion;
info({
expected: fuelCoreVersion,
received: binVersion,
isGitBranch: isGitBranch(fuelCoreVersion),
});
}
if (versionMatches) {
info(`fuel-core binary already installed, skipping.`);
} else {
// Empty the `fuel-core-binaries` directory if it exists
rmSync(binDir, { recursive: true, force: true });
// Download
const buf = await fetch(pkgUrl).then((r) => r.buffer());
if (/not found/i.test(buf.toString())) {
throw new Error(`Version '${fuelCoreVersion}' not found\n at ${pkgUrl}`);
}
writeFileSync(pkgPath, buf);
// Extract
spawnSync('tar', ['xzf', pkgPath, '-C', rootDir]);
// Take the contents of the directory containing the extracted
// binaries and move them to the `fuel-core-binaries` directory
renameSync(`${fileName}`, binDir);
cpSync(versionFilePath, binVersionPath);
// Cleanup
rmSync(fileName, {
recursive: true,
force: true,
});
rmSync(pkgPath);View on GitHub (pinned to b3f37c91ac)
Solutions
- Verify `internal/fuel-core/VERSION` and confirm the `fuel-core-<version>-<platform>.tar.gz` asset exists at the corresponding GitHub release page.
- Bump or downgrade fuels to a release whose pinned fuel-core version ships assets for your platform.
- Switch VERSION to `git:<branch>` to build fuel-core from source via `buildFromGitBranch`.
- Route the install through a proxy/mirror that can actually reach GitHub release assets and returns the real tarball bytes.
Example fix
// before: internal/fuel-core/VERSION 0.40.0 // after: pin to a tag with the asset, or build from source git:master
Defensive patterns
Strategy: validation
Validate before calling
import { getCurrentVersion, getPkgPlatform } from './shared.js';
const version = getCurrentVersion().trim();
const platform = getPkgPlatform();
const url = `https://github.com/FuelLabs/fuel-core/releases/download/v${version}/fuel-core-${version}-${platform}.tar.gz`;
const ok = await fetch(url, { method: 'HEAD' }).then((r) => r.status === 200);
if (!ok) throw new Error(`fuel-core ${version} asset not found at ${url}`); Try / catch
try {
// run the installer
} catch (e) {
if (/Version '.*' not found/.test(e.message)) {
console.error('Pinned fuel-core version has no GitHub release asset for this platform. Edit internal/fuel-core/VERSION or build via git:<branch>.');
}
throw e;
} Prevention
- Pin `internal/fuel-core/VERSION` only to tags that publish all platform assets.
- Add a CI pre-check that HEADs the asset URL.
- Use `git:<branch>` to build fuel-core from source when iterating on unreleased versions.
When it happens
Trigger: The `internal/fuel-core/VERSION` pin references a fuel-core tag that lacks a `fuel-core-<version>-<platform>.tar.gz` asset; a fork pinned an unreleased version; a proxy returns a 404 HTML page that satisfies the `/not found/i` test.
Common situations: Upgrading fuels to a commit whose VERSION references an unreleased fuel-core; platform asset missing for `aarch64-unknown-linux-gnu`; transient GitHub release/publishing delay right after a tag.
Related errors
- Version '${forcVersion}' not found\n at ${pkgUrl}
- Unsupported platform ${process.platform}.${process.platform
- Unsupported arch ${process.arch}
- CONNECTION_REFUSED
- CONNECTION_REFUSED
AI-assisted analysis of FuelLabs/fuels-ts@b3f37c91ac (2026-08-12).
Data as JSON: /api/errors/446b30ab4b54ef7b.
Report an issue: GitHub.