- Introduction
- 1. Getting Started
- 1.1. Installation
- 1.2. First Steps with Cargo
- 2. Cargo Guide
- 2.1. Why Cargo Exists
- 2.2. Creating a New Package
- 2.3. Working on an Existing Package
- 2.4. Dependencies
- 2.5. Package Layout
- 2.6. Cargo.toml vs Cargo.lock
- 2.7. Tests
- 2.8. Continuous Integration
- 2.9. Publishing on crates.io
- 2.10. Cargo Home
- 3. Cargo Reference
- 3.1. The Manifest Format
- 3.1.1. Cargo Targets
- 3.1.2. Rust version
- 3.2. Workspaces
- 3.3. Specifying Dependencies
- 3.3.1. Overriding Dependencies
- 3.3.2. Source Replacement
- 3.3.3. Dependency Resolution
- 3.4. Features
- 3.4.1. Features Examples
- 3.5. Profiles
- 3.6. Configuration
- 3.7. Environment Variables
- 3.8. Build Scripts
- 3.8.1. Build Script Examples
- 3.9. Build Cache
- 3.10. Package ID Specifications
- 3.11. External Tools
- 3.12. Registries
- 3.12.1. Registry Authentication
- 3.12.1.1. Credential Provider Protocol
- 3.12.2. Running a Registry
- 3.12.2.1. Registry Index
- 3.12.2.2. Registry Web API
- 3.13. SemVer Compatibility
- 3.14. Future incompat report
- 3.15. Reporting build timings
- 3.16. Lints
- 3.17. Unstable Features
- 4. Cargo Commands
- 4.1. General Commands
- 4.1.1. cargo
- 4.1.2. cargo help
- 4.1.3. cargo version
- 4.2. Build Commands
- 4.2.1. cargo bench
- 4.2.2. cargo build
- 4.2.3. cargo check
- 4.2.4. cargo clean
- 4.2.5. cargo clippy
- 4.2.6. cargo doc
- 4.2.7. cargo fetch
- 4.2.8. cargo fix
- 4.2.9. cargo fmt
- 4.2.10. cargo miri
- 4.2.11. cargo report
- 4.2.12. cargo run
- 4.2.13. cargo rustc
- 4.2.14. cargo rustdoc
- 4.2.15. cargo test
- 4.3. Manifest Commands
- 4.3.1. cargo add
- 4.3.2. cargo generate-lockfile
- 4.3.3. cargo info
- 4.3.4. cargo locate-project
- 4.3.5. cargo metadata
- 4.3.6. cargo pkgid
- 4.3.7. cargo remove
- 4.3.8. cargo tree
- 4.3.9. cargo update
- 4.3.10. cargo vendor
- 4.4. Package Commands
- 4.4.1. cargo init
- 4.4.2. cargo install
- 4.4.3. cargo new
- 4.4.4. cargo search
- 4.4.5. cargo uninstall
- 4.5. Publishing Commands
- 4.5.1. cargo login
- 4.5.2. cargo logout
- 4.5.3. cargo owner
- 4.5.4. cargo package
- 4.5.5. cargo publish
- 4.5.6. cargo yank
- 4.6. Deprecated and Removed
- 5. FAQ
- 6. Appendix: Glossary
- 7. Appendix: Git Authentication