A cargo subcommand for displaying when Rust dependencies are out of date
cargo-outdated is a very early proof-of-concept for displaying when dependencies have newer versions available.
Follow these instructions to compile cargo-outdated, then skip down to Installation.
cargo and Rust installed$ git clone https://github.com/kbknapp/cargo-outdated && cd cargo-outdated$ cargo build --releasetarget/release/cargo-outdatedAll you need to do is place cargo-outdated somewhere in your $PATH. Then run cargo outdated anywhere in your project directory. For full details see below.
You have two options, place cargo-outdated into a directory that is already located in your $PATH variable (To see which directories those are, open a terminal and type echo "${PATH//:/\n}", the quotation marks are important), or you can add a custom directory to your $PATH
Option 1
If you have write permission to a directory listed in your $PATH or you have root permission (or via sudo), simply copy the cargo-outdated to that directory # sudo cp cargo-outdated /usr/local/bin
Option 2
If you do not have root, sudo, or write permission to any directory already in $PATH you can create a directory inside your home directory, and add that. Many people use $HOME/.bin to keep it hidden (and not clutter your home directory), or $HOME/bin if you want it to be always visible. Here is an example to make the directory, add it to $PATH, and copy cargo-outdated there.
Simply change bin to whatever you'd like to name the directory, and .bashrc to whatever your shell startup file is (usually .bashrc, .bash_profile, or .zshrc)
sh
$ mkdir ~/bin
$ echo "export PATH=$PATH:$HOME/bin" >> ~/.bashrc
$ cp cargo-outdated ~/bin
$ source ~/.bashrc
On Windows 7/8 you can add directory to the PATH variable by opening a command line as an administrator and running
sh
C:\> setx path "%path%;C:\path\to\cargo-outdated\binary"
Otherwise, ensure you have the cargo-outdated binary in the directory which you operating in the command line from, because Windows automatically adds your current directory to PATH (i.e. if you open a command line to C:\my_project\ to use cargo-outdated ensure cargo-outdated.exe is inside that directory as well).
There are a few options for using cargo-outdated which should be somewhat self explanitory.
``` USAGE: cargo outdated [FLAGS] [OPTIONS]
FLAGS: -h, --help Prints help information -R, --root-deps-only Only check root dependencies (Equivilant to --depth=1) -V, --version Prints version information -v, --verbose Print verbose output
OPTIONS:
-d, --depth
cargo-outdated is released under the terms of either the MIT or Apache 2.0 license. See the LICENSE-MIT or LICENSE-APACHE file for the details.
