chore(deps): refresh js-yaml to 3.15.1 and 4.3.1 - #180
Merged
Conversation
Clears the three open js-yaml alerts with a lockfile refresh alone — both parents' declared ranges already admitted the patched versions, so no manifest edit and no `overrides:` entry are involved. js-yaml 3.15.0 -> 3.15.1 (#56 high) js-yaml 4.2.0 -> 4.3.1 (#19, #57 high) 4.2.0 dedupes into the 4.3.1 copy already in the tree, so its lockfile entries disappear outright. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
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.
Refreshes
js-yamlinpnpm-lock.yaml, clearing the three remaining open Dependabot alerts. This empties the alert board.Alerts cleared
>= 3.0.0, < 3.15.1>= 4.0.0, < 4.3.0>= 4.0.0, < 4.3.1Resolutions
Four resolved copies drop to three.
4.2.0was the only vulnerable copy in the 4.x line — a4.3.1was already in the tree from@textlint/linter-formatter@15.8.0(landed in #171), so the update simply merges the two and deletes4.2.0's entries.5.2.2sits above every vulnerable range and is untouched. Net diff: 6 insertions, 14 deletions.Why a lockfile refresh is the whole fix
Both parents' declared ranges already admitted the patched versions, so the lockfile was simply stale:
@istanbuljs/load-nyc-config@1.1.0^3.13.1rc-config-loader@4.1.4^4.1.1@textlint/linter-formatter@15.7.1^4.1.1pnpm update js-yaml -rresolves all three. No manifest range bump is needed —js-yamlis not a direct dependency of any workspace package, so there is no declared floor of ours to raise.Why not an
overrides:entrypnpm-workspace.yamlhas nooverrides:block (verified on1c6af33), and adding one would change nothing. An override exists to force a resolution the declared ranges would otherwise forbid; here both ranges already permit the patched version and the lock now lands there on its own.Worth noting because this dependency used to be the repo's standing example of a genuine tier-3 case:
markdownlint-cli2once hard-pinnedjs-yaml@4.1.0, which no range change could reach. That is no longer true —markdownlint-cli2@0.23.2now resolvesjs-yaml@5.2.2, so the pin that justified an override is gone.Exposure
Dev-only. Every path terminates in a
devDependenciesedge:GitHub labels these alerts
scope: runtime, andpnpm whyrenders one path as@mermaid-lint/textlint@0.50.0 (dependencies)— neither means a consumer is exposed.@mermaid-lint/textlintdeclares exactly one real dependency,@mermaid-lint/core(workspace:*);textlintitself is a peerDependency (>=15.8.0). The wholetextlintsubtree is installed here only to satisfy that peer for local dev and tests. Downstream consumers supply their owntextlint, and>=15.8.0resolves to a version carrying@textlint/linter-formatter@15.8.0→ the already-patchedjs-yaml@4.3.1.This is the lockfile-presence-≠-installed trap, so it was checked against
packages/textlint/package.jsonrather than inferred from the lock. Nothing published reachesjs-yaml.No version bump
No
packages/*/package.jsonis touched, sorelease.ymldoes not trigger. Consistent with #107, #174, #176, and #179.Verification
pnpm test— 54 files, 1231 tests passingpnpm lint— clean (145 files)pnpm --filter @mermaid-lint/jest test— 3 tests passing (jest's own tree is wherejs-yaml@3.xlives, so this is the directly affected suite)pnpm why js-yaml -r— 3 copies, all outside every vulnerable rangepnpm-lock.yamlonly, net −8 lines🤖 Generated with Claude Code