Files
Chris Arderne 55a3bf2858 feat(core,cli): add node-24 and node-26 runtimes, deprecate experimental aliases (#4337)
## Summary

Adds `node-24` and `node-26` as first-class `runtime` options in
`trigger.config.ts`. Previously these Node versions were only reachable
via the `experimental-node-24` / `experimental-node-26` names.

Those experimental names are now **deprecated aliases**: they still
resolve to `node-24` / `node-26` for backwards compatibility, but
loading a config that uses them prints a deprecation warning pointing at
the new name.

```ts
export default defineConfig({
  runtime: "node-24",
  project: "<your-project-ref>",
});
```

## Details

- `ConfigRuntime` (the public config schema) now accepts `node-24` and
`node-26` directly; the internal `BuildRuntime` already supported them,
so base images and the deploy path are unchanged.
- `resolveBuildRuntime` passes the new names straight through and keeps
mapping the experimental aliases to their replacements.
- Renamed the runtime helper from `isExperimentalConfigRuntime` to
`isDeprecatedConfigRuntime` and added `deprecatedRuntimeReplacement` so
the CLI can name the replacement in its warning.
- Docs snippet updated to list the new versions and flag the deprecated
names.
2026-07-22 14:10:27 +01:00

20 lines
502 B
Plaintext

Trigger.dev runs your tasks on specific Node.js versions:
- Node.js `21.7.3` (default)
- Node.js `22.16.0` (`node-22`)
- Node.js `24.18.0` (`node-24`)
- Node.js `26.4.0` (`node-26`)
- Bun `1.3.3` (`bun`)
You can change the runtime by setting the `runtime` field in your `trigger.config.ts` file.
```ts
import { defineConfig } from "@trigger.dev/sdk";
export default defineConfig({
// "node", "node-22", "node-24", "node-26" or "bun"
runtime: "node-24",
project: "<your-project-ref>",
});
```