fix(deps): resolve dependabot security alerts#541
Merged
Conversation
Addresses Dependabot alert #22 (CVE-2026-27606, GHSA-mw96-cpmx-2vgc): - rollup: 4.52.5 -> 4.60.2 (arbitrary file write via path traversal) Additional vulnerabilities fixed via npm audit fix: - ajv: 6.12.6 -> 6.15.0 (ReDoS with $data option) - brace-expansion: 1.1.12 -> 1.1.14 (ReDoS zero-step sequence) - minimatch: 3.1.2 -> 3.1.5 (ReDoS repeated wildcards) - picomatch: 2.3.1 -> 2.3.2 (method injection / ReDoS) - postcss: 8.5.6 -> 8.5.13 (XSS via unescaped </style>) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Addresses Dependabot alert #63 (CVE-2026-39365, GHSA-4w7w-66w2-5vf9): path traversal in optimized deps .map handling. All 5.x versions fall within the vulnerable range (<= 6.4.1); 6.4.2 is the patched version. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Fixes GHSA-qx2v-qp2m-jg93 (postcss XSS via unescaped </style>) and partially fixes GHSA-48c2-rrv3-qjmp (yaml stack overflow via deeply nested collections). The top-level yaml is now 2.8.3. The nested node_modules/yaml-language-server/node_modules/yaml remains at 2.7.1 because volar-service-yaml@0.0.70 (the latest release) pins yaml-language-server@~1.20.0, which in turn pins yaml@2.7.1 exactly. There is no non-breaking fix available upstream; the chain will resolve once volar-service-yaml ships a release that adopts a newer yaml-language-server. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
adamspofford-dfinity
approved these changes
May 1, 2026
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
vitebump to 6.4.2)cargo updateto pull in latest compatible versionscargo-generate(the only consumer) pinsgix-config ~0.48which transitively requiresgix-date ^0.11.1; no fix is available until cargo-generate updates its gix dependency chaindocs-site— fixes GHSA-qx2v-qp2m-jg93 (XSS via unescaped</style>); supersedes Dependabot PR chore(deps): bump postcss from 8.5.6 to 8.5.13 in /docs-site #540docs-site— partially fixes GHSA-48c2-rrv3-qjmp (stack overflow via deeply nested collections)Why the yaml fix is incomplete
The remaining vulnerable instance is
node_modules/yaml-language-server/node_modules/yaml@2.7.1, a nested install scoped toyaml-language-server. The dependency chain is:volar-service-yaml@0.0.70is the latest available version and still pinsyaml-language-server@~1.20.0, which pinsyamlat exactly2.7.1. There is no non-breaking upstream fix:npm audit fix --forcewould downgrade@astrojs/checkto0.9.2, which is the wrong direction. The nested install will resolve oncevolar-service-yamlships a release that adopts a neweryaml-language-server.Why example lock files are excluded from git
examples/contains standalone frontend projects that each have their ownpackage-lock.json(or equivalent). Committing these lock files causes Dependabot to open security alerts for every transitive JS dependency across all examples — but since the examples are templates/demos rather than deployed applications, pinning their transitive deps in git provides little value and creates significant noise.The
.gitignorerules added in this PR exclude:examples/**/package-lock.jsonexamples/**/yarn.lockexamples/**/pnpm-lock.yamlThe example
package.jsonfiles (which specify direct dependencies) are still tracked, so the examples remain usable and reproducible for their intended purpose.Test plan
cargo build --bin icpsucceedscargo testpassescargo clippyclean