Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Firebase CLI Installation Warning: Unsupported Engine for [email protected] on Node.js 23 #8182

Closed
UsamaSarwar opened this issue Feb 7, 2025 · 1 comment

Comments

@UsamaSarwar
Copy link

UsamaSarwar commented Feb 7, 2025

Environment info

firebase-tools: Latest available version (installed globally using npm install -g firebase-tools)

Platform: macOS

Test case

When attempting to install firebase-tools globally using npm, the following warning appears:

npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '[email protected]',
npm WARN EBADENGINE   required: { node: '18 || 20 || 22' },
npm WARN EBADENGINE   current: { node: 'v23.5.0', npm: '11.1.0' }
npm WARN EBADENGINE }

Steps to reproduce

  1. Ensure Node.js v23.5.0 and npm 11.1.0 are installed.

  2. Run the command:

    npm install -g firebase-tools
  3. Observe the warning about an unsupported engine.

Expected behavior

firebase-tools should install without any warnings regarding unsupported engines.

Actual behavior

The installation process completes, but a warning is displayed about [email protected] requiring Node.js versions 18 || 20 || 22, while the current version in use is 23.5.0.

Additional context

This issue suggests that [email protected], a dependency of firebase-tools, does not yet support Node.js 23. This could cause unexpected behavior in Firebase CLI functionality. Please confirm if Firebase CLI is officially compatible with Node.js 23, or if users should downgrade to a supported version.

@joehan
Copy link
Contributor

joehan commented Feb 7, 2025

Hey @UsamaSarwar - sorry for the confusion here. As a policy, we don't make any efforts to support odd versions of node (as they are experimental per https://nodejs.org/en/about/previous-releases), so I'd recommend downgrading to an even version.

At the moment Node 20 will be the most stable experience using firebase-tools. Currently, Node 22 currently shows some deprecation warnings (but is otherwise stable), but that will be fixed soon by #8136.

I understand the confusion here tho - our engines.node field is extremely permissive and is satisfied by node 23. We are considering changing this to be a more explicit ~20 || ~22 in the next major version release.

@joehan joehan closed this as completed Feb 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants