'cargo publish' rifiuta per sicurezza di pubblicare pacchetti su crates.io se il repository git locale contiene file modificati o non tracciati, garantendo che il codice distribuito corrisponda esattamente a un commit git.
CARGO_PUBLISH_DIRTY
→
La medesima dipendenza è stata dichiarata due volte all'interno della stessa sezione del file Cargo.toml, provocando il fallimento del parser TOML di Cargo.
CARGO_DUPLICATE_DEPENDENCY
→
L'errore compare quando due o più crate o package all'interno di un workspace Rust dipendono reciprocamente l'uno dall'altro creando un ciclo irrisolvibile.
CARGO_CYCLIC_DEP
→
L'errore compare quando il clone git di una dipendenza remota presente in ~/.cargo/git/db si trova in uno stato interrotto o corrotto, impedendo il checkout dell'albero di sorgenti.
CARGO_GIT_CACHE_CORRUPT
→
L'errore segnala che il file di configurazione del progetto Cargo.toml contiene errori di sintassi TOML, sezioni non riconosciute o chiavi obbligatorie mancanti (come [package] name o version).
CARGO_MANIFEST_ERROR
→
L'errore indica che lo script di pre-compilazione 'build.rs' di un crate ha subito un panic o non ha trovato librerie C/C++ native di sistema necessarie (come OpenSSL, libclang o pkg-config).
CARGO_BUILD_RS_FAIL
→
L'errore compare durante la risoluzione del dependency tree quando due crate richiedono versioni reciprocamente incompatibili di una libreria comune o una versione inesistente su crates.io.
CARGO_RESOLV_FAIL
→
I crate che si interfacciano con codice nativo C (come 'openssl-sys' o 'libsqlite3-sys') usano pkg-config durante la compilazione di 'build.rs'; se i pacchetti di sviluppo della libreria (es. libssl-dev) non sono installati nel sistema operativo host, la build fallisce.
CARGO_PKG_CONFIG_NOT_FOUND
→