Skip to content

RFD: PM interface, cargo PM, and discovery & sync#258

Open
nikomatsakis wants to merge 1 commit into
symposium-dev:rfd/registry-plugins-2-plugin-modelfrom
nikomatsakis:rfd/registry-plugins-3-pm-discovery
Open

RFD: PM interface, cargo PM, and discovery & sync#258
nikomatsakis wants to merge 1 commit into
symposium-dev:rfd/registry-plugins-2-plugin-modelfrom
nikomatsakis:rfd/registry-plugins-3-pm-discovery

Conversation

@nikomatsakis

Copy link
Copy Markdown
Member

Summary

Adds three sub-RFDs as a follow-up to #253 and #257:

PM interface: JSON-RPC over stdio protocol for PM binaries. Package-id tuples, four operations (resolve/search/fetch/list-deps), error handling, cache layout. Only path is built-in; cargo/git/recommendations are separate binaries.

Cargo PM: Resolve schema using cargo's dependency format, fetch via cargo toolchain, list-deps from Cargo.lock, plugin detection in crates.

Discovery & sync: The two-phase algorithm (list-deps on all PMs → search on all PMs for each dep), prompt UX, auto-install config, hook-triggered notification, debouncing.

Stacked on

PM interface: JSON-RPC over stdio protocol, package-id tuples, four
operations (resolve/search/fetch/list-deps), error handling, cache layout.
Only path PM is built-in; cargo/git/recommendations are separate binaries.

Cargo PM: resolve schema using cargo's dependency format, fetch via cargo
toolchain, list-deps from Cargo.lock, plugin detection in crates.

Discovery & sync: the two-phase algorithm (list-deps on all PMs, then
search on all PMs for each dep), prompt UX, auto-install config,
hook-triggered notification, debouncing.

Co-authored-by: Claude <claude@anthropic.com>
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