.TH "CARGO\-UPDATE" "1" "May 2016" "The Rust package manager" "Cargo Manual" .hy .SH NAME .PP cargo\-update \- Update the package dependencies .SH SYNOPSIS .PP \f[I]cargo update\f[] [OPTIONS] .SH DESCRIPTION .PP Update dependencies as recorded in the local lock file. .PP This command requires that a \f[I]Cargo.lock\f[] already exists as generated by \f[I]cargo build\f[] or related commands. .PP If \f[I]SPEC\f[] is given, then a conservative update of the \f[I]lockfile\f[] will be performed. This means that only the dependency specified by \f[I]SPEC\f[] will be updated. Its transitive dependencies will be updated only if \f[I]SPEC\f[] cannot be updated without updating dependencies. All other dependencies will remain locked at their currently recorded versions. .PP If \f[I]PRECISE\f[] is specified, then \f[B]\-\-aggressive\f[] must not also be specified. The argument \f[I]PRECISE\f[] is a string representing a precise revision that the package being updated should be updated to. For example, if the package comes from a git repository, then \f[I]PRECISE\f[] would be the exact revision that the repository should be updated to. .PP If \f[I]SPEC\f[] is not given, then all dependencies will be re\-resolved and updated. .PP For more information about package id specifications, see "cargo help pkgid". .SH OPTIONS .TP .B \-h, \-\-help Print this message. .RS .RE .TP .B \-p \f[I]SPEC\f[], \-\-package \f[I]SPEC ...\f[] Package to update. .RS .RE .TP .B \-\-aggressive Force updating all dependencies of as well. .RS .RE .TP .B \-\-precise \f[I]PRECISE\f[] Update a single dependency to exactly \f[I]PRECISE\f[]. .RS .RE .TP .B \-v, \-\-verbose Use verbose output. .RS .RE .TP .B \-q, \-\-quiet No output printed to stdout. .RS .RE .TP .B \-\-color \f[I]WHEN\f[] Coloring: auto, always, never. .RS .RE .SH SEE ALSO .PP cargo(1) .SH COPYRIGHT .PP This work is dual\-licensed under Apache 2.0 and MIT terms. See \f[I]COPYRIGHT\f[] file in the cargo source distribution.