Repository navigation
fix(deps): override minimatch to patched 11.x (Dependabot #205, #206) - #94
Merged
Merged
Conversation
Adds npm overrides so minimatch resolves to >=11.0.1 in the root and test-project lockfiles. In test-project also move glob 10.x to 13.x: glob 10 returns no matches with minimatch 11, and Dataform CLI 3.0.48 (tested in CI) globs definitions through it. The override range is limited to vulnerable minimatch versions so glob 7 / minimatch 3 under Dataform CLI 2.4.2 is untouched.
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
Resolves the open Dependabot alerts for
minimatch(GHSA-g3hv-75wg-m249, DoS via globparts amplification; vulnerable>= 7.0.0, < 11.0.1, patched in 11.0.1)./package-lock.json) and #206 (/test-project/package-lock.json).<= 4.3.1). No patched version exists upstream. deepmerge comes in throughjest-config(root) and@dataform/cli(test-project), andnpm audit fix --forcewould only "fix" it by downgrading jest to 25. These two alerts stay open until deepmerge publishes a fix.Why overrides
minimatch 9.x and 10.x are pinned by
glob,eslint,editorconfigand others, and no patched 9.x or 10.x release exists, so a plainnpm updatecannot reach 11.x.package.json:"minimatch@>=7 <11.0.1": "^11.0.5".test-project/package.json: the same minimatch override, plus"glob@^10": "^13.0.6". glob 10.x finds no files when run with minimatch 11, and Dataform CLI 3.0.48 (tested in CI) globs project definitions through it. glob 13 works with minimatch 11.test-project/package-lock.jsonalso had stale../node_modules/*entries (the linked root package's dependencies) pinning minimatch 9.0.9. npm does not re-resolve these on its own, so I updated them by hand to match what npm resolves for the same tree (minimatch 11.0.5 with brace-expansion 5, balanced-match 4 and@isaacs/nonrecursive-glob-match).npm install --package-lock-onlyleaves the result unchanged.minimatch 11 requires Node
20 || >=22. CI and publish use Node 20, and minimatch is only a dev-time dependency (the published package has none).Verification
Node 24 locally, clean
node_moduleseach time:npm ci,npm run lintandnpm test -- 2.4.2/npm test -- 3.0.48pass (93 jest tests, integration verification for both Dataform versions).test-project/:npm ciworks.npm auditin both: the minimatch advisory is gone and only deepmerge (low) is left among the tracked advisories.npm run test:singlefails onmaintoo (dataform.jsonandworkflow_settings.yamlboth exist), so it can't be used as a check. Compiling with CLI 3.1.2 directly fails onmainas well, with "Cannot require ... outside of project directory" for the linked package.Does not touch
.github/dependabot.ymlorci.yml(see #92).