fix: bump brace-expansion and shell-quote via pnpm overrides - #72
Merged
angelocordon merged 4 commits intoJul 22, 2026
Merged
Conversation
Adds pnpm overrides to force patched versions of two transitive dev-only dependencies pulled in by @openapitools/openapi-generator-cli: brace-expansion 5.0.6 → 5.0.7 (GHSA-3jxr-9vmj-r5cp) shell-quote 1.8.4 → 1.10.0 (GHSA-395f-4hp3-45gv) Both packages are transitive dev dependencies only — they are never imported in production source code and have no production exposure. No organic parent upgrade was available: concurrently@10.0.3 still pins shell-quote@1.8.4, and the latest @OpenAPITools release ships the same dep tree. Overrides are used as last resort. Closes SECVULN-50771 Closes SECVULN-50770 Co-authored-by: OpenCode (claude-sonnet-4-6) <opencode.noreply@hashicorp.com>
|
Thank you for your submission! We require that all contributors sign our Contributor License Agreement ("CLA") before we can accept the contribution. Read and sign the agreement Learn more about why HashiCorp requires a CLA and what the CLA includes Have you signed the CLA already but the status is still pending? Recheck it. |
pnpm v10 no longer reads the "pnpm" field from package.json. Move all three overrides to pnpm-workspace.yaml, which is the canonical location in v10, and remove the now-dead "pnpm" block from package.json. The lockfile is unchanged — overrides resolve identically from the new location. Co-authored-by: OpenCode (claude-sonnet-4-6) <opencode.noreply@hashicorp.com>
angelocordon
enabled auto-merge (squash)
July 21, 2026 23:18
mohit-hashicorp
approved these changes
Jul 22, 2026
angelocordon
deleted the
fix/secvuln-50770-50771-brace-expansion-shell-quote
branch
July 22, 2026 05:23
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
Adds
pnpm.overridesto force patched versions of two transitive dev-onlydependencies pulled in by
@openapitools/openapi-generator-cli:brace-expansionshell-quoteRoot cause
brace-expansion (GHSA-3jxr-9vmj-r5cp):
expand()exhibited exponential-time O(2ⁿ) behavior on consecutive non-expanding{}groups. A ~90-byte input of 30 groups blocked the event loop for ~2 minutes. Fixed in 5.0.7.shell-quote (GHSA-395f-4hp3-45gv):
parse()usedArray.prototype.concatin areduce, copying the entire growing array on each iteration — O(n²) complexity. A ~63 KB input froze the event loop for ~4.5 s, stalling all concurrent clients. Fixed in 1.9.0.Transitive dependency chains
Scope
Both packages are transitive dev dependencies only. They are never imported in production source code. There is zero production exposure.
No organic parent upgrade was available:
concurrently@10.0.3still pinsshell-quote@1.8.4and the latest@openapitoolsrelease ships the same dep tree.pnpm.overridesare used as last resort.Files changed
package.json— addedbrace-expansion: >=5.0.7andshell-quote: >=1.9.0topnpm.overridespnpm-lock.yaml— regenerated lockfile reflecting patched versionsRevert plan
Reverting this PR fully restores the previous state. No migrations, feature flags, or infrastructure changes are involved.
PCI review checklist
I have documented a clear reason for, and description of, the change I am making.
If applicable, I've documented a plan to revert these changes if they require more than reverting the pull request.
If applicable, I've documented the impact of any changes to security controls.
This PR is a security control improvement: it upgrades two transitive dev dependencies to their patched versions, eliminating known DoS vulnerabilities (GHSA-3jxr-9vmj-r5cp / SECVULN-50771 and GHSA-395f-4hp3-45gv / SECVULN-50770) from the dependency graph.