Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Implement Open Rust Namespace Support

Metadata
Point of contactEd Page
StatusProposed for mentorship
Tracking issuerust-lang/rust-project-goals#256
Zulip channelN/A (an existing stream can be re-used or new streams can be created on request)
Teamscargo, compiler
Task owners(none)

Summary

Navigate the cross-team design work to get RFC 3243 implemented.

Motivation

RFC 3243 proposed opening up namespaces in Rust to extension, managed by the package name with crates-io putting access control on who can publish to a crate’s API namespace. This covers multiple teams and needs a lot of coordination to balance the needs of each team as shown on the rustc tracking issue.

The status quo

  • Cargo support is partially implemented.
  • Compiler design is agreed on and partially implemented.
  • There is a crates-io prototype for a previous iteration of RFC 3243 but that code base has likely diverged a lot since then.

The next 6 months

  • Implement Cargo and compiler support for this to be experimented with and allow crates-io work.
  • Understand what changes are needed for crates.io support, and what it will take to implement these.

The “shiny future” we are working towards

Team asks

TeamSupport levelNotes
cargoVibes
compilerSmallDesign discussions, PR review

Frequently asked questions