aboutsummaryrefslogtreecommitdiffstats
path: root/doc/src/guide/deps.asciidoc
diff options
context:
space:
mode:
Diffstat (limited to 'doc/src/guide/deps.asciidoc')
-rw-r--r--doc/src/guide/deps.asciidoc42
1 files changed, 42 insertions, 0 deletions
diff --git a/doc/src/guide/deps.asciidoc b/doc/src/guide/deps.asciidoc
index 11f09fa..066a3d8 100644
--- a/doc/src/guide/deps.asciidoc
+++ b/doc/src/guide/deps.asciidoc
@@ -180,6 +180,7 @@ The following table lists all existing methods:
| hex | hex version [pkg] | Download the given project version from hex.pm
| fail | N/A | Always fail, reserved for internal use
| legacy | N/A | Legacy Erlang.mk fetcher, reserved for internal use
+| default | N/A | Reserved
|===
The `git` and `hg` methods both have a repository and commit.
@@ -369,6 +370,47 @@ of those files directly instead. The reason is that `make fetch-*` and
`make list-*` may have unwanted content in their output, such as actual
fetching of dependencies.
+=== Querying dependencies
+
+You can obtain information about all dependencies with
+the `make query-deps` family of commands:
+
+* `make query-deps` will list dependencies found in `BUILD_DEPS`
+ and `DEPS` recursively.
+* `make query-doc-deps` will list documentation dependencies
+ of the current project.
+* `make query-rel-deps` will list release dependencies
+ of the current project.
+* `make query-shell-deps` will list shell dependencies
+ of the current project.
+* `make query-test-deps` will list test dependencies
+ of the current project.
+
+By default the information printed will be the dependency name,
+fetch method, repository and version, prefixed by the current
+project's name. But this output can be customized via the
+variable `QUERY`:
+
+[source,bash]
+$ make query-deps QUERY="name fetch_method repo version extra absolute_path"
+
+The following options are available:
+
+name:: The dependency name.
+fetch_method:: The dependency's fetch method.
+repo:: The dependency's repository.
+version:: The dependency's version, tag or commit.
+extra:: Any additional information specific to the fetch method used.
+absolute_path:: The dependency's location after it has been fetched.
+
+Fields that have no value will print `-`. For example
+not all fetch methods have a value for the `version`.
+
+The value for `extra`, when available, will be formatted
+with the name of the information printed prefixed. For
+example the hex fetch method will add
+`package-name=uuid_erl` for the `uuid` application.
+
=== Ignoring unwanted dependencies
Sometimes, you may want to ignore dependencies entirely.