CARGO-REMOVE(1)
π CARGO-REMOVE(1) π
okay bestie, gather round, because this is the General Commands Manual entry for cargo-remove, and it's lowkey one of the most satisfying little commands in the whole Cargo cinematic universe. no cap.
β¨ NAME β¨
cargo-remove β remove dependencies from a Cargo.toml manifest file
it's giving "spring cleaning but make it Rust". π§Ήβ¨
πΈ SYNOPSIS πΈ
cargo remove [options] dependencyβ¦
yes queen, you can hand it one dependency or a whole lil squad of them. π
π¦ DESCRIPTION π¦
Remove one or more dependencies from a Cargo.toml manifest.
that's it. that's the whole vibe. it takes dependency names off your manifest like unfollowing someone who was never really your friend. π
π OPTIONS π
Section options
these tell Cargo which section of the manifest you're removing from, iykyk.
--devβ Remove as a development dependency (<https://doc.rust-lang.org/cargo/reference/specifying-dependencies.html#development-dependencies>).--buildβ Remove as a build dependency (<https://doc.rust-lang.org/cargo/reference/specifying-dependencies.html#build-dependencies>).--targettarget β Remove as a dependency to the given target platform (<https://doc.rust-lang.org/cargo/reference/specifying-dependencies.html#platform-specific-dependencies>).
To avoid unexpected shell expansions, you may use quotes around each target, e.g., --target 'cfg(unix)'.
fr fr, quote that target. your shell is a drama queen and will absolutely try something. π
Miscellaneous Options
the "random but essential" corner of the menu.
--dry-runβ Don't actually write to the manifest.
it's the "adding to cart but never checking out" of Cargo. β¨
Display Options
how much do you want this command to talk to you?
-v,--verboseβ Use verbose output. May be specified twice for "very verbose" output which includes extra output such as dependency warnings and build script output. May also be specified with theterm.verboseconfig value (<https://doc.rust-lang.org/cargo/reference/config.html>).-q,--quietβ Do not print cargo log messages. May also be specified with theterm.quietconfig value (<https://doc.rust-lang.org/cargo/reference/config.html>).--colorwhen β Control when colored output is used. Valid values:auto(default): Automatically detect if color support is available on the terminal.always: Always display colors.never: Never display colors.
May also be specified with the term.color config value (<https://doc.rust-lang.org/cargo/reference/config.html>).
rainbow terminal supremacy π
Manifest Options
where's your manifest, bestie? let's find it. π΅οΈββοΈ
--manifest-pathpath β Path to theCargo.tomlfile. By default, Cargo searches for theCargo.tomlfile in the current directory or any parent directory.--lockedβ Asserts that the exact same dependencies and versions are used as when the existingCargo.lockfile was originally generated. Cargo will exit with an error when either of the following scenarios arises:- The lock file is missing.
- Cargo attempted to change the lock file due to a different dependency resolution.
It may be used in environments where deterministic builds are desired, such as in CI pipelines.
this is the main character flag for CI. if the lock file ain't matching, Cargo is NOT playing. π
--offlineβ Prevents Cargo from accessing the network for any reason. Without this flag, Cargo will stop with an error if it needs to access the network and the network is not available. With this flag, Cargo will attempt to proceed without the network if possible.
Beware that this may result in different dependency resolution than online mode. Cargo will restrict itself to crates that are downloaded locally, even if there might be a newer version as indicated in the local copy of the index. See the cargo-fetch(1) command to download dependencies before going offline.
May also be specified with the net.offline config value (<https://doc.rust-lang.org/cargo/reference/config.html>).
β οΈ different resolution than online mode is a real possibility. it's not a bug, it's just the tradeoff. also go run cargo-fetch(1) before you go offline, bestie. π
--frozenβ Equivalent to specifying both--lockedand--offline.
two flags in a trench coat. iconic. π§₯
Package Selection
-pspecβ¦,--packagespecβ¦ β Package to remove from.
Common Options
the "every cargo command has these" section, and honestly? we stan consistency. π
+toolchainβ If Cargo has been installed with rustup, and the first argument tocargobegins with+, it will be interpreted as a rustup toolchain name (such as+stableor+nightly). See the rustup documentation (<https://rust-lang.github.io/rustup/overrides.html>) for more information about how toolchain overrides work.--configKEY=VALUE or PATH β Overrides a Cargo configuration value. The argument should be in TOML syntax ofKEY=VALUE, or provided as a path to an extra configuration file. This flag may be specified multiple times. See the command-line overrides section (<https://doc.rust-lang.org/cargo/reference/config.html#command-line-overrides>) for more information.-CPATH β Changes the current working directory before executing any specified operations. This affects things like where cargo looks by default for the project manifest (Cargo.toml), as well as the directories searched for discovering.cargo/config.toml, for example. This option must appear before the command name, for examplecargo -C path/to/my-project build.
This option is only available on the nightly channel (<https://doc.rust-lang.org/book/appendix-07-nightly-rust.html>) and requires the -Z unstable-options flag to enable (see #10098 <https://github.com/rust-lang/cargo/issues/10098>).
π¨ nightly-only AND needs -Z unstable-options. also it has to come before the command name. order matters, no cap.
-h,--helpβ Prints help information.-Zflag β Unstable (nightly-only) flags to Cargo. Runcargo -Z helpfor details.
π ENVIRONMENT π
See the reference (<https://doc.rust-lang.org/cargo/reference/environment-variables.html>) for details on environment variables that Cargo reads.
β EXIT STATUS β
0: Cargo succeeded. π101: Cargo failed to complete. π
π EXAMPLES π
okay these are the moment. watch and learn.
- Remove
regexas a dependency
cargo remove regex
- Remove
trybuildas a dev-dependency
cargo remove --dev trybuild
- Remove
nomfrom thex86_64-pc-windows-gnudependencies table
cargo remove --target x86_64-pc-windows-gnu nom
see how clean that is? ate and left no crumbs. π₯
π«Ά SEE ALSO π«Ά
and that's the whole page, bestie. this was CARGO-REMOVE(1) straight from the Cargo manual pages β thanks for reading the entire thing, you're genuinely the main character for that. now go forth and clean up your Cargo.toml. πβ¨ππ¦
π¦ where this page comes from
- ubuntu jammy: cargo-1.79 1.79.0+dfsg1ubuntu1~bpo0-0ubuntu0.22.04.1 Β· Apache-2.0 WITH LLVM exception
- ubuntu noble: cargo-1.79 1.79.0+dfsg1ubuntu1-0ubuntu0.24.04.1 Β· MIT OR Apache-2.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms