Skip to content

chore(workspace): block exotic subdeps#1303

Merged
John-David Dalton (jdalton) merged 1 commit intomainfrom
chore/block-exotic-subdeps
May 5, 2026
Merged

chore(workspace): block exotic subdeps#1303
John-David Dalton (jdalton) merged 1 commit intomainfrom
chore/block-exotic-subdeps

Conversation

@jdalton
Copy link
Copy Markdown
Collaborator

@jdalton John-David Dalton (jdalton) commented May 5, 2026

Refuses transitive deps declared via git/tarball/local-tarball specs. An npm package shouldn't drag in a git URL we don't control (bypasses npm registry validation, no provenance, no soak window). Direct git deps are still allowed.

pnpm's current default is false; declared explicitly so a future flip can't silently change install behavior.


Note

Medium Risk
Changes pnpm install policy to reject transitive git/tarball/local-tarball dependencies, which could break installs for packages that rely on those specifiers. Impact is limited to dependency resolution/configuration (no runtime code changes).

Overview
Enables pnpm’s blockExoticSubdeps in pnpm-workspace.yaml to refuse transitive dependencies declared via git/tarball/local-tarball specifiers, while still allowing direct git dependencies.

Adds explanatory comments and explicitly pins this behavior to avoid future pnpm default changes silently altering install policy.

Reviewed by Cursor Bugbot for commit 556936e. Configure here.

Refuse transitive dependencies declared via git/tarball/local-tarball
specs. An npm package shouldn't drag in a git URL we don't control
(bypasses npm registry validation, no provenance, no soak window).
Direct git deps are still allowed.

pnpm's current default is false; declared explicitly so a future flip
can't silently change install behavior.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant