Cargo Package Registry

JFrog Artifactory Documentation

Products
JFrog Artifactory
Content Type
User Guide
ft:sourceType
Paligo

From JFrog Artifactory 7.17.4, the Cargo registry is supported for the Rust programming language, giving you full control of your deployment and resolving Cargo packages. Cargo downloads your Rust package's dependencies, compiles your packages, makes distributable packages, and uploads them to crates.io, the Rust community’s package registry. You can contribute to this book on GitHub.

Note

We support Cargo Sparse indexing from Artifactory 7.46.3 and by default from 7.58.0. If you still use Git indexing, you might experience the following issues and limitations:

  • Repository initialization might experience stability issues.

  • The Git implementation does not support proxy in remote repositories.

  • Performance and build time might be slightly slower.

Therefore, we strongly recommend updating to Sparse indexing. For more information, see Index Cargo Repositories Using Sparse Indexing

About Rust Programming Language

Rust is a programming language designed for performance and safety, with an emphasis on safety concurrency. A crate is a compilation unit in Rust. Using Cargo, you can publish libraries on crates.io, organize large projects with a workspace, install binaries from crates.io and extend Cargo using custom commands.

Cargo repositories in Artifactory offer the following benefits:

  • Secure and private local Cargo repositories with fine-grained access control

  • The ability to proxy remote Cargo resources and cache downloaded Cargo packages to keep you independent of the network and the remote resource

  • Metadata calculation of the Cargo packages hosted in the Artifactory local repositories

  • Version management: Archiving older versions of the packages uploaded to local repositories

  • Source and binaries management

Supported Cargo Version

Artifactory supports Cargo version 1.49.0 and above.