Skip to content

build(deps): Upgrade js-yaml 4.x to 4.1.1 to fix GHSA-mh29-5h37-fv8m#209

Merged
oioki merged 1 commit intomasterfrom
fix/js-yaml-4x-ghsa-mh29-5h37-fv8m
Feb 27, 2026
Merged

build(deps): Upgrade js-yaml 4.x to 4.1.1 to fix GHSA-mh29-5h37-fv8m#209
oioki merged 1 commit intomasterfrom
fix/js-yaml-4x-ghsa-mh29-5h37-fv8m

Conversation

@oioki
Copy link
Member

@oioki oioki commented Feb 27, 2026

Follow-up to #208 — the same advisory (GHSA-mh29-5h37-fv8m) also covers js-yaml@4.1.0, fixed in 4.1.1. The previous PR addressed the 3.x instance; this one addresses the 4.x instance used by eslint.

The vulnerable js-yaml@^4.1.0 → 4.1.0 entry comes from eslint@8.56.0 and @eslint/eslintrc@2.1.4. Since ^4.1.0 naturally satisfies 4.1.1, removing the stale lockfile entry is sufficient for yarn to re-resolve to the patched release.

No resolutions override is added for js-yaml. Unlike minimatch (where 9.x and 3.x share the same CJS API), js-yaml 3.x and 4.x have incompatible interfaces — safeLoad/safeDump were removed in 4.x — so a single broad resolution would break either the eslint (4.x) or the jest/istanbul (3.x) instance.

The same advisory also affects js-yaml@4.1.0 (fixed in 4.1.1). This
instance is pulled in by eslint@8.56.0 and @eslint/eslintrc@2.1.4, both of
which require js-yaml@^4.1.0.

No resolutions override is added: a broad "js-yaml" entry cannot safely pin
both the 3.x and 4.x instances simultaneously since the two major versions
have incompatible APIs (safeLoad/safeDump were removed in 4.x). Since
^4.1.0 naturally satisfies 4.1.1, removing the stale lockfile entry is
sufficient.

Co-Authored-By: Claude <noreply@anthropic.com>
@oioki oioki marked this pull request as ready for review February 27, 2026 09:33
@oioki oioki merged commit 52ecfe7 into master Feb 27, 2026
11 checks passed
@oioki oioki deleted the fix/js-yaml-4x-ghsa-mh29-5h37-fv8m branch February 27, 2026 09:33
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