51 releases (28 stable)

2.3.1 Nov 8, 2019
2.1.0 Sep 26, 2019
1.8.4 Sep 20, 2019
1.7.0 Oct 30, 2018
0.6.0 Nov 30, 2016

#6 in Cargo plugins

Download history 741/week @ 2019-07-26 501/week @ 2019-08-02 444/week @ 2019-08-09 676/week @ 2019-08-16 704/week @ 2019-08-23 686/week @ 2019-08-30 1463/week @ 2019-09-06 1938/week @ 2019-09-13 2909/week @ 2019-09-20 1580/week @ 2019-09-27 807/week @ 2019-10-04 2188/week @ 2019-10-11 1287/week @ 2019-10-18 1186/week @ 2019-10-25 915/week @ 2019-11-01

5,597 downloads per month

MIT license


cargo-update TravisCI build status AppVeyorCI build status Licence 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 and you're on Mac, re-try with PKG_CONFIG_PATH=/usr/local/opt/openssl/lib/pkgconfig. 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)

Special thanks

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

  • ThePhD


~322K SLoC