Skip to content

feat: support installation key for dependency graph queries @W-20525733@#886

Open
WillieRuemmele wants to merge 2 commits into
mainfrom
wr/installKeyDisplayDeps
Open

feat: support installation key for dependency graph queries @W-20525733@#886
WillieRuemmele wants to merge 2 commits into
mainfrom
wr/installKeyDisplayDeps

Conversation

@WillieRuemmele

Copy link
Copy Markdown
Member

Summary

  • Add installationKey option to PackageVersionDependencyOptions and thread it through Package.getDependencyGraphPackageVersionDependencyDependencyDotProducer
  • Append AND InstallationKey = '...' to SubscriberPackageVersion queries when a key is provided, enabling dependency resolution for key-protected packages

Fixes forcedotcom/cli#3469

Work Item

@W-20525733@: Package Version Display Dependencies not possible, if installation key required

Proof of Work

  • Tests: 115 passing (no regressions — no existing unit tests for this flow)
  • Lint: clean
  • Type check: clean
  • Build: clean

Test plan

  • Run sf package version displaydependencies -p 04t<key-protected> -k <key> -v <hub> — should display the dependency graph
  • Run sf package version displaydependencies -p 04t<non-protected> (no key) — should still work as before
  • Run sf package version displaydependencies -p 08c... — unaffected path, should work as before

Thread installationKey through getDependencyGraph → PackageVersionDependency
→ SubscriberPackageVersion queries so that key-protected packages can have
their dependencies displayed.
Cover the installation key feature across both code paths:
- Flat graph: key appended to createFlatDependencyGraph query
- Transitive graph: key appended to addSelectedNodeIds query
- Negative case: no key when installationKey not provided
- SOQL injection prevention: special characters escaped
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.

Package Version Display Dependencies not possible, if installation key required

1 participant