chore(deps): update dev dependencies to latest and fix security advisories - #212
Merged
vanilla-wave merged 1 commit intoJul 21, 2026
Merged
Conversation
vanilla-wave
force-pushed
the
fix/security-audit-deps
branch
from
July 21, 2026 13:10
c54da65 to
fae4905
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Brings the dev toolchain up to date and clears all 4 advisories reported by
npm audit(1 critical, 2 high, 1 low). Every vulnerable package is a dev / transitive dependency — the published bundle is unaffected. The only runtime change is adayjspatch bump (1.11.13 → 1.11.21).Instead of pinning transitives with
overrides, the owning dev dependencies are updated to fresh versions so the patched transitives resolve naturally. A single narrow override remains for the one case that no dependency update can fix (see below).Vulnerabilities fixed
shell-quotenpm-run-all's range)brace-expansionjs-yaml@babel/corejest/@gravity-ui/eslint-configNotable dev-dependency updates
jest29 → 30,@types/jest29 → 30,jest-environment-jsdom→ 30.4.1,ts-jest→ 29.4.11 (supports jest 30)@commitlint/cli&config-conventional19 → 20size-limit+ presets 11 → 12@testing-library/jest-dom6.6 → 6.9,@testing-library/react→ 16.3.2,prettier3.5 → 3.9,@gravity-ui/prettier-config→ 1.1.1The one remaining override
@istanbuljs/load-nyc-config(latest1.1.0, reached viababel-plugin-istanbul) hard-pinsjs-yaml@^3.13.1, and no patched 3.x exists — even the latestbabel-plugin-istanbul@8still depends onload-nyc-config@^1.0.0. So no dependency bump can fix it. A scoped override forces it tojs-yaml@^4.3.0; that consumer only callsyaml.load(), which exists in 4.x, so it's safe:Deliberately not bumped (would break support)
eslintkept on 8 — v9/v10 require migrating.eslintrc→ flat config (eslint.config.js) and@gravity-ui/eslint-configv4; out of scope for a security update.@commitlintcapped at 20,jest-domat 6 — v21 / v7 require Node ≥ 22, but the repo targets Node 20 (.nvmrc, CI). The chosen versions are the freshest that keep Node 20 support.react/react-dom/@types/react*kept at 18 — bumping the peer range to 19 would be a breaking change for consumers.Other
src/types.ts— one formatting-only change (prettier 3.9 collapses short union types onto a single line); no behavior change.Verification (Node 20 target, ran on Node 24)
npm audit→ 0 vulnerabilitiesnpm run typecheck✓npm run lint✓npm run build✓jest→ 537 passed, 36 suites ✓size-limit✓ (within limits)🤖 Generated with Claude Code