Module cargo::util

source ·

Re-exports

pub use self::config::homedir;
pub use self::config::Config;
pub use self::config::ConfigValue;
pub use self::diagnostic_server::RustfixDiagnosticServer;
pub use self::errors::CliError;
pub use self::errors::internal;
pub use self::errors::CargoResult;
pub use self::errors::CliResult;
pub use self::graph::Graph;
pub use self::hex::hash_u64;
pub use self::hex::short_hash;
pub use self::hex::to_hex;
pub use self::into_url::IntoUrl;
pub use self::lev_distance::closest;
pub use self::lev_distance::closest_msg;
pub use self::lev_distance::lev_distance;
pub use self::restricted_names::validate_package_name;
pub use self::rustc::Rustc;
pub use self::to_semver::ToSemver;

Modules

Registry authentication support.
Cargo’s config system.
counter 🔒
A graph-like structure used to represent a set of dependencies and in what order they should be built.
A small TCP server to handle collection of diagnostics information in a cross-platform way for the cargo fix command.
flock 🔒
hasher 🔒
Implementation of a hasher that produces the same values across releases.
io 🔒
Job management (mostly for windows)
lockserver 🔒
An implementation of IPC locks, guaranteed to be released if a process dies
An internal profiler for Cargo itself
progress 🔒
queue 🔒
Helpers for validating and checking names like package and crate names.
semver_ext 🔒
Utilities for in-place editing of Cargo.toml manifests.
vcs 🔒
workspace 🔒

Structs

A newtype wrapper around Url which represents a “canonical” version of an original URL.
A “filesystem” is intended to be a globally shared, hence locked, resource in Cargo.
A simple, threadsafe, queue of items of type T

Enums

Traits

A type that can be interpreted as a relative Url and converted to a Url.

Functions

Formats a number of bytes into a human readable SI-prefixed size. Returns a tuple of (quantity, units).
The path that we pass to rustc is actually fairly important because it will show up in error messages (important for readability), debug information (important for caching), etc. As a result we need to be pretty careful how we actually invoke rustc.