Implement Open API Namespace Support (original) (raw)

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. No compiler support. 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 at least Cargo and compiler support for this to be experimented with and allow crates-io work.

The "shiny future" we are working towards

Design axioms

Ownership and team asks

Definitions

Definitions for terms used above:

Frequently asked questions