Skip to content

Comments

chore(deps): resolve minimatch ReDoS vulnerability in prod dependencies#13363

Merged
czubocha merged 1 commit intomainfrom
minimatch-update
Feb 19, 2026
Merged

chore(deps): resolve minimatch ReDoS vulnerability in prod dependencies#13363
czubocha merged 1 commit intomainfrom
minimatch-update

Conversation

@czubocha
Copy link
Contributor

Summary

  • Resolve high-severity minimatch ReDoS vulnerability (GHSA-3ppc-4f35-3m26) in production dependencies by upgrading minimatch from 5.1.6/9.0.5 to 10.2.1 in package-lock.json
  • Update brace-expansion from 2.0.2 to 5.0.2 and add balanced-match 4.0.3 (required by the new minimatch/brace-expansion versions)
  • Applies to two production dependency paths:
    • [email protected] -> minimatch (used by the Python plugin via globSync())
    • archiver -> readdir-glob -> minimatch (used by the esbuild plugin via archive.directory())

Context

minimatch < 10.2.1 is vulnerable to ReDoS via repeated wildcards with non-matching literals. The fix version (10.2.1) declares engines: { node: "20 || >=22" }, but this is a policy decision -- the code is technically compatible with Node.js 18. The upgrade is applied surgically in package-lock.json to avoid bumping parent packages that would require breaking major version changes.

Remaining [email protected] instances are dev-only (jest via test-exclude, tape via dotignore) and do not affect production builds.

Test plan

  • npm audit --omit=dev reports no minimatch vulnerabilities
  • npm run lint passes
  • npm run prettier passes
  • npm run test passes (1062 unit tests)
  • Direct minimatch API smoke test: 219/219 assertions pass across all Framework patterns (wildcard, globstar, character classes, brace expansion, negation, dot files) comparing v9.0.5 vs v10.2.1 behavior
  • Esbuild packaging with brace expansion patterns (*.{json,txt}): production vs source output identical (207 files, zero diff)
  • Standard packaging with glob patterns: production vs source output identical
  • Python function packaging with slim mode (**/*.py[c|o], **/__pycache__*, **/*.dist-info*): production vs source output identical (90 files, zero diff)

@chatgpt-codex-connector
Copy link

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Feb 19, 2026

Important

Review skipped

Review was skipped due to path filters

⛔ Files ignored due to path filters (1)
  • package-lock.json is excluded by !**/package-lock.json

CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including **/dist/** will override the default block on the dist directory, by removing the pattern from both the lists.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch minimatch-update

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@czubocha czubocha changed the title chore(deps): update minimatch in prod deps chore(deps): resolve minimatch ReDoS vulnerability in prod dependencies Feb 19, 2026
@Mmarzex
Copy link
Contributor

Mmarzex commented Feb 19, 2026

Snyk checks have passed. No issues have been found so far.

Status Scanner Critical High Medium Low Total (0)
Open Source Security 0 0 0 0 0 issues
Licenses 0 0 0 0 0 issues
Code Security 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

@czubocha czubocha merged commit 1e5fd26 into main Feb 19, 2026
12 checks passed
@czubocha czubocha deleted the minimatch-update branch February 19, 2026 17:43
@github-actions github-actions bot locked and limited conversation to collaborators Feb 19, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants