Monthly Downloads: 5,411
Programming language: Rust
License: MIT License
Tags: Development Tools     Build System     Subcommand     Cargo     Plugin     Update    
Latest version: v3.0.0

cargo-update alternatives and similar packages

Based on the "Cargo" category

Do you think we are missing an alternative of cargo-update or a related project?

Add another 'Cargo' Package


cargo-update TravisCI build status AppVeyorCI build status [Licence](LICENSE) Crates.io version

A cargo subcommand for checking and applying updates to installed executables




Firstly, ensure you have CMake and the Required Libraries™.

Then proceed as usual:

cargo install cargo-update

If that doesn't work:

If it still doesn't work, slam open an issue or comment on one of the existing relevant ones.

Required libraries

Library *X package name msys2 package name
libgit2 libgit2-devel mingw-w64-x86_64-libgit2
libssh2 libssh2-devel mingw-w64-x86_64-libssh2
openssl openssl-devel mingw-w64-x86_64-openssl


cargo install-update -a - check for newer versions and update all installed packages.

cargo install-update crate1 crate2 ... - check for newer versions and update selected packages, will not install new packages.

For more information and examples see the manpage.


cargo-update will update itself seamlessly on Linux and Windows.

On Windows the following strategy is applied:

  • Check for old versions, remove them
  • Add the current version to the current executable's extension
  • Create an empty file in place of the just-renamed file (this way cargo install will "replace" it and not duplicate the entry in .crates.toml)


Some crates, like clippy and rustfmt, have moved from Crates.io to being a rustup component. If you'd installed them beforehand, then added them via rustup component, they might not have been removed from the list of crates installed via cargo install, and you might come across errors such as

$ cargo install-update -a
Updating registry 'https://github.com/rust-lang/crates.io-index'

Package          Installed  Latest    Needs update
clippy           v0.0.179   v0.0.302  Yes

Updating clippy
    Updating crates.io index
  Installing clippy v0.0.302
   Compiling clippy v0.0.302
error: failed to compile `clippy v0.0.302`, intermediate artifacts can be found at `/tmp/cargo-installxHfj2y`

Caused by:
  failed to run custom build command for `clippy v0.0.302`

Caused by:
  process didn't exit successfully: `/tmp/cargo-installxHfj2y/release/build/clippy-ffeedc2f188020a4/build-script-build` (exit code: 1)
--- stderr

error: Clippy is no longer available via crates.io

help: please run `rustup component add clippy-preview` instead

In that case, run cargo install --list to verify that they're still there and cargo uninstall them, which will deregister the cargo versions and leave you with the rustup ones.

Bleeding-edge cargos

Since 0.42.0, cargo install cratename checks for newer versions and installs them if they exist, instead of erroring out like it does usually.

Special thanks

To all who support further development on Patreon, in particular:

  • ThePhD

*Note that all licence references and agreements mentioned in the cargo-update README section above are relevant to that project's source code only.