Skip to content

DEP0040 punycode deprecation warning still appears during deploy on firebase-tools 15.15.0 with Node.js 22 #10385

Description

@ivenprillwitz

[REQUIRED] Environment info

  • firebase-tools: 15.15.0
  • Node.js: v22.22.1
  • npm: 10.9.4
  • Platform: macOS 26.4.1 (arm64)

[REQUIRED] Test case

Running a real Firebase deploy for a TypeScript Cloud Functions project still prints:

(node:82935) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.

[REQUIRED] Steps to reproduce

  1. Install firebase-tools@15.15.0
  2. Use Node.js 22.22.1
  3. In a Firebase project with Cloud Functions configured, run a deploy such as:
firebase deploy --only functions

In my case the project has standard predeploy hooks for functions:

"predeploy": [
  "npm --prefix \"$RESOURCE_DIR\" run lint",
  "npm --prefix \"$RESOURCE_DIR\" run build"
]

[REQUIRED] Expected behavior

No DEP0040 warning should be printed during deploy on a current firebase-tools release.

[REQUIRED] Actual behavior

The deploy prints the punycode deprecation warning under Node.js 22.

Additional notes

  • I upgraded specifically to check whether this was already fixed in a newer CLI release, but it still appears on 15.15.0.
  • In the same environment, these commands do not print the warning:
    • firebase --version
    • firebase deploy --help
    • local function lint / build commands
  • That makes it look like the warning is coming from a dependency that is only loaded on the actual deploy path.
  • I found the older closed report here: punycode deprecation #7476. This new report is to note that the warning still appears on firebase-tools 15.15.0 with Node.js 22.22.1.

If helpful, I can provide a minimal reproduction repository as a follow-up.

Activity

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