remotion-dev/remotion · error · Error

Please upgrade to at least Bun 1.0.3

Error message

Please upgrade to at least Bun 1.0.3

What it means

Thrown by the CLI bootstrap when it detects it is running under Bun (typeof Bun !== 'undefined') and the parsed major version is less than 1 (i.e. any 0.x build). Remotion needs Bun >= 1.0.3 for compatibility; older Bun releases break bundling and module resolution.

Source

Thrown at packages/cli/src/index.ts:74

	const [command, ...args] = parsedCli._;

	const packageManager = packageManagerOption.getValue({
		commandLine: parsedCli,
	}).value;

	const remotionRoot = RenderInternals.findRemotionRoot();
	if (command !== VERSIONS_COMMAND && !parsedCli.help) {
		await validateVersionsBeforeCommand(remotionRoot, 'info');
	}

	const logLevel = await initializeCli(remotionRoot);

	const isBun = typeof Bun !== 'undefined';
	if (isBun) {
		const version = Bun.version.split('.');
		if (version.length === 3) {
			if (Number(version[0]) < 1) {
				throw new Error('Please upgrade to at least Bun 1.0.3');
			}

			if (Number(version[1]) === 0 && Number(version[2]) < 3) {
				throw new Error('Please upgrade to at least Bun 1.0.3');
			}
		}

		Log.info(
			{indent: false, logLevel},
			'You are running Remotion with Bun, which is mostly supported. Visit https://remotion.dev/bun for more information.',
		);
	}

	const isStudio = command === 'studio' || command === 'preview';

	const errorSymbolicationLock = isStudio
		? 0
		: RenderInternals.registerErrorSymbolicationLock();

View on GitHub (pinned to 78fe4bb3fd)

Solutions

  1. Upgrade Bun: `curl -fsSL https://bun.sh/install | bash` (or `brew upgrade bun`).
  2. Confirm `bun --version` reports >= 1.0.3.
  3. If you cannot upgrade Bun, run the CLI under Node: `npx remotion ...`.

Example fix

// before
$ bun --version
0.8.1
$ bunx remotion render ...
// after
$ bun upgrade
$ bun --version
1.1.0
$ bunx remotion render ...
Defensive patterns

Strategy: validation

Validate before calling

const assertBunVersion = () => {
  if (typeof Bun === 'undefined') return;
  const [maj, min, patch] = Bun.version.split('.').map(Number);
  if (maj < 1 || (maj === 1 && min === 0 && patch < 3)) {
    throw new Error(`Bun ${Bun.version} is too old. Upgrade to >= 1.0.3`);
  }
};

assertBunVersion();

Type guard

const isBunSupported = (version: string): boolean => {
  const [maj, min, patch] = version.split('.').map(Number);
  return maj > 1 || (maj === 1 && (min > 0 || patch >= 3));
};

Prevention

When it happens

Trigger: Running `bunx remotion ...` or invoking the CLI with the `bun` runtime when `bun --version` reports a 0.x release (e.g. 0.7.0, 0.8.x).

Common situations: System still has the old Bun pre-1.0 install; a CI image pinned to an outdated Bun; using `bun` instead of `npx` for the first time on a stale machine.

Related errors


AI-assisted analysis of remotion-dev/remotion@78fe4bb3fd (2026-08-12). Data as JSON: /api/errors/723c4763b3b180a0. Report an issue: GitHub.