fix: upgrade js-yaml to patched versions (GHSA-5p4m-2wfm-xmqj) - #43406
fix: upgrade js-yaml to patched versions (GHSA-5p4m-2wfm-xmqj)#43406ASolarers-Rodriguez wants to merge 1 commit into
Conversation
|
Bito Automatic Review Skipped - Files Excluded |
Testing proofapache/superset isn't Snyk-monitored directly, so this uses npm-native proof instead. All output below is real, captured against the actual PR commit checked out in a local worktree with Before — After — Every instance is now Diff scope — Only the lockfile changed; Lerna/minimatch smoke check (the thing #42435 broke by crossing a major-version boundary into No Not run here: full |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #43406 +/- ##
=======================================
Coverage 66.81% 66.81%
=======================================
Files 2876 2876
Lines 164454 164454
Branches 37960 37960
=======================================
Hits 109873 109873
Misses 52388 52388
Partials 2193 2193
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
Summary
superset-frontend's Snyk scan flagsSNYK-JS-JSYAML-18593780(js-yaml 4.3.0), which corresponds to GHSA-5p4m-2wfm-xmqj — quadratic CPU consumption (O(n^2)) in!!omapresolution, a DoS reachable via a plainyaml.load()call on untrusted input with default options.>=4.0.0 <4.3.1and>=3.0.0 <3.15.1v4-legacy: 4.3.1,v3-legacy: 3.15.1) and OSV, which reports 0 known vulnerabilities for js-yaml@4.3.1 vs. 1 for 4.3.0Why lockfile-only
Every consumer of js-yaml in this tree already declares a range that admits the patched version, so no
package.jsonchange is needed:overrides.lerna.js-yaml^4.3.0cosmiconfig@8.3.6(root)^4.1.0lerna's nestedcosmiconfig@9.0.0^4.1.0react-diff-viewer-continued@4.4.0^4.2.0stylelint's nestedcosmiconfig@9.0.2^4.1.0js-yaml-loader@1.2.2/@istanbuljs/load-nyc-config(root, 3.x)^3.13.1This intentionally avoids adding/broadening a
package.jsonoverridesentry. A prior attempt at a different transitive-dependency CVE fix (#42435) used a broadoverridesblock that crossed a major-version boundary intolerna's pinnedminimatch@3.xchain and brokelint-frontend/validate-frontendwithTypeError: expand is not a functioninMinimatch.braceExpand. That was fixed by a lockfile-only replacement (#42583). This PR follows the same minimal, lockfile-only pattern — it changes exactly 5js-yamlentries inpackage-lock.jsonand nothing else.Test plan
npm ls js-yaml --all— every resolved instance is now>= 4.3.1(4.x line) or3.15.1(3.x line); see proof comment.git diff <merge-base> --stat— onlysuperset-frontend/package-lock.json, 15 insertions / 15 deletions.npx eslint --versionstill resolves (v10.8.1) and a directminimatch/braceExpandsmoke check succeeds — confirms this PR does not reproduce the fix: upgrade brace-expansion to 5.0.8 (CVE-2026-14257) #42435 failure mode.