Skip to content

Conversation

@taeold
Copy link
Contributor

@taeold taeold commented Oct 21, 2025

Upgrades from TypeScript v4.3.5 to v5.9.3. All tests pass successfully.
* BREAKING: Drop Node.js 14/16 support, require Node.js >=18

- Update package.json engines to require Node.js >=18.0.0
- Upgrade @types/node from v14 to v18
- Update TypeScript target from ES2019 to ES2022
- Add useDefineForClassFields: false for backward compatibility
- Update CI/CD workflows to test Node.js 18, 20, 22, and 24
- Set default CI/CD Node.js version to 24
- Update integration test documentation
@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @taeold, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request focuses on a significant upgrade of the project's development environment by bumping the minimum Node.js version to 18 and updating TypeScript to version 5. These changes ensure the project leverages modern runtime features and type-checking capabilities, improving maintainability and compatibility with contemporary JavaScript ecosystems. The update also includes adjustments to the TypeScript compiler configuration to align with these newer versions.

Highlights

  • Node.js Version Upgrade: The minimum required Node.js version has been updated from 14.10.0 to 18.0.0, along with corresponding @types/node definitions, aligning the project with a more recent LTS release.
  • TypeScript Version Upgrade: The project's TypeScript dependency has been upgraded from 4.3.5 to 5.9.3, bringing in the latest language features and type-checking improvements.
  • TypeScript Compiler Configuration Update: The tsconfig.release.json has been updated to target es2022 for both lib and target compiler options, and useDefineForClassFields has been explicitly set to false.
Ignored Files
  • Ignored by pattern: .github/workflows/** (3)
    • .github/workflows/docs.yaml
    • .github/workflows/postmerge.yaml
    • .github/workflows/test.yaml
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates dependencies and configurations to support Node.js v18 and TypeScript v5.9.3. The changes include updates to package.json, package-lock.json, and tsconfig.release.json to reflect the new versions and configurations. I have identified a critical issue related to error handling in the firebase-functions.ts file.

Replace functions.config() implementation with an error that provides
clear migration guidance to the params module. This removes the deprecated
API as planned for the next major release while helping developers migrate.

The error message directs users to:
https://firebase.google.com/docs/functions/config-env#migrate-config
@@ -1,3 +1,3 @@
{
"name": "firebase-functions",
"version": "6.6.0",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

time to update version here too? (and in package-lock.json?)

@taeold taeold merged commit dece9a9 into master Oct 26, 2025
22 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants