Expand description
ferro-cargo-registry-server
Cargo registry protocol for FerroRepo — sparse-index + publish /
yank / owners / download endpoints. The Git-index protocol is
wired with a 501 stub in Phase 1; Cargo itself defaults to sparse
since 1.68 (CARGO_REGISTRIES_*_PROTOCOL=sparse), so the stub is a
no-op for the client flows we target.
§Spec references
- Registry reference — https://doc.rust-lang.org/cargo/reference/registries.html
- Registry Web API — https://doc.rust-lang.org/cargo/reference/registry-web-api.html
- Index format — https://doc.rust-lang.org/cargo/reference/registries.html#index-format
- Publish pre-image layout (binary) — registry-web-api.html#publish
Re-exports§
pub use config::IndexConfig;pub use error::CargoError;pub use index::IndexDep;pub use index::IndexEntry;pub use index::entry_from_manifest;pub use index::parse_lines;pub use index::render_lines;pub use name::MAX_NAME_LEN;pub use name::index_path;pub use name::is_valid_name;pub use name::validate_name;pub use owners::Owner;pub use owners::OwnersMutationResponse;pub use owners::OwnersRequest;pub use owners::OwnersResponse;pub use publish::PublishRequest;pub use publish::encode as encode_publish_body;pub use publish::parse as parse_publish_body;pub use router::CargoState;pub use router::CrateRecord;pub use router::router;pub use version::is_valid_semver;pub use yank::YankResponse;
Modules§
- config
- Sparse-index
config.jsonrepresentation. - error
- Cargo registry protocol errors.
- handlers
- Axum handlers for the Cargo registry.
- index
- Sparse-index line-oriented JSON format.
- name
- Cargo crate name validator.
- owners
- Owner-management response shapes.
- publish
- Publish request body parser.
- router
- Axum router for the Cargo registry protocol.
- version
- Lightweight semver validator for Cargo registry versions.
- yank
- Yank / unyank response shapes.
Constants§
- CRATE_
NAME - Crate name, exposed for diagnostics and
/metricslabelling.