A cargo subcommand for checking and applying updates to installed executables
Clone or download

README.md

cargo-update TravisCI build status AppVeyorCI build status Licence Crates.io version

A cargo subcommand for checking and applying updates to installed executables

Documentation

Manpage

Installation

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

Usage

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.

Self-update

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)