CARGO-LOCATE-PROJECT(1) User Commands CARGO-LOCATE-PROJECT(1)

NAME


cargo-locate-project -- Print a JSON representation of a Cargo.toml
file's location

SYNOPSIS


cargo locate-project [options]

DESCRIPTION


This command will print a JSON object to stdout with the full path to
the manifest. The manifest is found by searching upward for a file
named Cargo.toml starting from the current working directory.

If the project happens to be a part of a workspace, the manifest of
the project, rather than the workspace root, is output. This can be
overridden by the --workspace flag. The root workspace is found by
traversing further upward or by using the field package.workspace
after locating the manifest of a workspace member.

OPTIONS


--workspace
Locate the Cargo.toml at the root of the workspace, as opposed to
the current workspace member.

Display Options


--message-format fmt
The representation in which to print the project location. Valid
values:

+o json (default): JSON object with the path under the key
"root".

+o plain: Just the path.

-v, --verbose
Use verbose output. May be specified twice for "very verbose"
output which includes extra output such as dependency warnings
and build script output. May also be specified with the
term.verbose config value
<https://doc.rust-lang.org/cargo/reference/config.html>.

-q, --quiet
Do not print cargo log messages. May also be specified with the
term.quiet config value
<https://doc.rust-lang.org/cargo/reference/config.html>.

--color when
Control when colored output is used. Valid values:

+o auto (default): Automatically detect if color support is
available on the terminal.

+o always: Always display colors.

+o never: Never display colors.

May also be specified with the term.color config value
<https://doc.rust-lang.org/cargo/reference/config.html>.

Manifest Options


--manifest-path path
Path to the Cargo.toml file. By default, Cargo searches for the
Cargo.toml file in the current directory or any parent directory.

Common Options


+toolchain
If Cargo has been installed with rustup, and the first argument
to cargo begins with +, it will be interpreted as a rustup
toolchain name (such as +stable or +nightly). See the rustup
documentation <https://rust-lang.github.io/rustup/overrides.html>
for more information about how toolchain overrides work.

--config KEY=VALUE or PATH
Overrides a Cargo configuration value. The argument should be in
TOML syntax of KEY=VALUE, or provided as a path to an extra
configuration file. This flag may be specified multiple times.
See the command-line overrides section
<https://doc.rust-lang.org/cargo/reference/config.html#command-line-overrides>
for more information.

-C PATH
Changes the current working directory before executing any
specified operations. This affects things like where cargo looks
by default for the project manifest (Cargo.toml), as well as the
directories searched for discovering .cargo/config.toml, for
example. This option must appear before the command name, for
example cargo -C path/to/my-project build.

This option is only available on the nightly channel
<https://doc.rust-lang.org/book/appendix-07-nightly-rust.html>
and requires the -Z unstable-options flag to enable (see #10098
<https://github.com/rust-lang/cargo/issues/10098>).

-h, --help
Prints help information.

-Z flag
Unstable (nightly-only) flags to Cargo. Run cargo -Z help for
details.

ENVIRONMENT


See the reference
<https://doc.rust-lang.org/cargo/reference/environment-variables.html>
for details on environment variables that Cargo reads.

EXIT STATUS


+o 0: Cargo succeeded.

+o 101: Cargo failed to complete.

EXAMPLES


1. Display the path to the manifest based on the current directory:

cargo locate-project

SEE ALSO


cargo(1), cargo-metadata(1)

CARGO-LOCATE-PROJECT(1)

tribblix@gmail.com :: GitHub :: Privacy