Skip to content

chore(deps): upgrade linters, migrate to c8, and patch vulnerabilities#59

Merged
gkozlenko merged 1 commit intomasterfrom
upgrade-dependencies
Feb 19, 2026
Merged

chore(deps): upgrade linters, migrate to c8, and patch vulnerabilities#59
gkozlenko merged 1 commit intomasterfrom
upgrade-dependencies

Conversation

@gkozlenko
Copy link
Owner

@gkozlenko gkozlenko commented Feb 19, 2026

Upgraded core linting dependencies:

  • @eslint/js from 9.39.2 to 10.0.1
  • eslint from 9.39.2 to 10.0.0
  • globals from 16.5.0 to 17.3.0

Migrated code coverage tool to fix reporting:

  • Dropped nyc (17.1.0)
  • Added c8 (10.1.3)

Added overrides to patch transitive security vulnerabilities:

  • diff to 8.0.3
  • minimatch to 10.2.1

Disable no-useless-assignment rule to match current project style.

@gemini-code-assist
Copy link

Summary of Changes

Hello @gkozlenko, 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 maintaining the project's health and security by updating core linting dependencies to their latest major versions. It also includes targeted patches for transitive dependencies to resolve identified security vulnerabilities, ensuring a more robust and secure development environment. Additionally, an ESLint rule was adjusted to better fit existing code patterns.

Highlights

  • ESLint Core Upgrades: Upgraded @eslint/js from 9.39.2 to 10.0.1, eslint from 9.39.2 to 10.0.0, and globals from 16.5.0 to 17.3.0 to leverage the latest features and improvements.
  • Security Vulnerability Resolution: Addressed transitive security vulnerabilities by adding explicit overrides for ajv to 8.18.0, diff to 8.0.3, and minimatch to 10.2.1.
  • ESLint Rule Adjustment: Disabled the no-useless-assignment ESLint rule to align with the project's current coding style and prevent unnecessary linting errors.
Changelog
  • eslint.config.mjs
    • Disabled the 'no-useless-assignment' rule to match project style.
  • package-lock.json
    • Updated @eslint/js from 9.39.2 to 10.0.1.
    • Updated eslint from 9.39.2 to 10.0.0.
    • Updated globals from 16.5.0 to 17.3.0.
    • Added overrides for ajv to 8.18.0, diff to 8.0.3, and minimatch to 10.2.2 to address security vulnerabilities.
    • Numerous other transitive dependencies were updated, and several unused dependencies like callsites, concat-map, lodash.merge, import-fresh, punycode, uri-js, and resolve-from were removed.
    • Added license information to many dependency entries.
  • package.json
    • Updated devDependencies for @eslint/js, eslint, and globals.
    • Added an overrides section to explicitly manage versions of ajv, diff, and minimatch.
Activity
  • No human activity has been recorded on this pull request yet.
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

@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

The pull request upgrades ESLint to v10 and addresses several transitive security vulnerabilities through dependency overrides. While these updates are beneficial for security, there are significant compatibility concerns. Specifically, the new versions of eslint and globals require much newer Node.js versions than what the project currently specifies in its engines field. Additionally, forcing a major version jump for ajv via overrides may break ESLint's internal configuration validation. I have also provided feedback regarding the disabling of the no-useless-assignment rule.

@gkozlenko gkozlenko force-pushed the upgrade-dependencies branch 2 times, most recently from 20a9110 to 3213274 Compare February 19, 2026 21:03
@gkozlenko gkozlenko changed the title chore(deps): upgrade ESLint and resolve security vulnerabilities chore(deps): upgrade globals and resolve security vulnerabilities Feb 19, 2026
Repository owner deleted a comment from github-actions bot Feb 19, 2026
@gkozlenko
Copy link
Owner Author

/gemini review

Copy link

@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 upgrades several dependencies to address security vulnerabilities. However, some of the new versions introduce a minimum Node.js version requirement that is higher than what this project currently supports (>=10.0.0).

Specifically, globals@17.3.0 requires Node.js >=18, and the override for minimatch pulls in transitive dependencies (brace-expansion, balanced-match) that require Node.js 20 or newer.

These changes will break the package for users on older, supported versions of Node.js. I've left specific comments on the problematic dependency changes in package.json. These critical issues need to be addressed before this PR can be merged.

@gkozlenko gkozlenko force-pushed the upgrade-dependencies branch from 3213274 to fc4a2e2 Compare February 19, 2026 21:18
@gkozlenko gkozlenko changed the title chore(deps): upgrade globals and resolve security vulnerabilities chore(deps): upgrade ESLint and resolve security vulnerabilities Feb 19, 2026
@github-actions
Copy link
Contributor

github-actions bot commented Feb 19, 2026

Test Coverage Summary Statistics

  • Lines: 95.55%
  • Statements: 95.55%
  • Functions: 92.59%
  • Branches: 89.33%

Upgraded core linting dependencies:
- `@eslint/js` from `9.39.2` to `10.0.1`
- `eslint` from `9.39.2` to `10.0.0`
- `globals` from `16.5.0` to `17.3.0`

Migrated code coverage tool to fix reporting:
- Dropped `nyc` (`17.1.0`)
- Added `c8` (`10.1.3`)

Added overrides to patch transitive security vulnerabilities:
- `diff` to `8.0.3`
- `minimatch` to `10.2.1`

Disable `no-useless-assignment` rule to match current project style.
@gkozlenko gkozlenko changed the title chore(deps): upgrade ESLint and resolve security vulnerabilities chore(deps): upgrade linters, migrate to c8, and patch vulnerabilities Feb 19, 2026
@gkozlenko gkozlenko force-pushed the upgrade-dependencies branch from fc4a2e2 to 466414e Compare February 19, 2026 21:28
@gkozlenko gkozlenko merged commit 4ffd343 into master Feb 19, 2026
4 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.

1 participant