Skip to content

Nodejs26 rejected at deploy, though Cloud Run functions supports it (Preview) #11393

Open

Description

@milo-

[REQUIRED] Environment info

firebase-tools: 15.34.2

Platform: Linux (Debian 13), Node v24.22.1

[REQUIRED] Test case

firebase.json
{ "functions": { "source": "." } }

package.json
{ "engines": { "node": "26" }, "main": "index.js" }

index.js can be empty: deploy fails before it loads the source.

Using "runtime": "nodejs26" in firebase.json in place of engines.node gives the same result.

[REQUIRED] Steps to reproduce

  1. Create the three files above.
  2. Run firebase deploy --only functions --project --debug.

[REQUIRED] Expected behavior

The deploy goes through on the nodejs26 runtime, perhaps with a warning that it's in Preview. Cloud Run functions already lists nodejs26 as Preview: https://docs.cloud.google.com/run/docs/runtimes/nodejs

[REQUIRED] Actual behavior

i functions: ensuring required API cloudfunctions.googleapis.com is enabled...
i functions: ensuring required API cloudbuild.googleapis.com is enabled...
i artifactregistry: ensuring required API artifactregistry.googleapis.com is enabled...
✔ functions: required API cloudfunctions.googleapis.com is enabled
✔ artifactregistry: required API artifactregistry.googleapis.com is enabled
✔ functions: required API cloudbuild.googleapis.com is enabled

Error: Detected node engine 26 in package.json, which is not a supported version. Valid versions are 20, 22, 24

src/deploy/functions/runtimes/supported/types.ts on main has no nodejs26 entry; the list stops at nodejs24. Node.js 26 is now Active LTS. Adding it with status: "beta" until Cloud Run marks it GA would let projects deploy on Node 26, and match the runtime they already test and build on.

Activity

  1. aalej commented on Oct 30, 2026

    @aalej
    Contributor

    Thanks for reporting this @milo-! As you mentioned, since Node.js 26 runtime is now supported in Preview on Cloud Run, we would need to add a nodejs26 runtime entry in src/deploy/functions/runtimes/supported/types.ts so folks would be able to deploy with Node.js 26.

    I'll raise this to our engineering team and mark this as reproducible.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      ⌂ Proxy