aboutsummaryrefslogtreecommitdiff
path: root/bpkg/common.cli
diff options
context:
space:
mode:
Diffstat (limited to 'bpkg/common.cli')
-rw-r--r--bpkg/common.cli55
1 files changed, 50 insertions, 5 deletions
diff --git a/bpkg/common.cli b/bpkg/common.cli
index d62633a..c7d28bc 100644
--- a/bpkg/common.cli
+++ b/bpkg/common.cli
@@ -98,9 +98,6 @@ namespace bpkg
\cb{test}, etc."
}
- // In the future we may also have --structured-result, similar to the
- // build system.
- //
bool --no-result
{
"Don't print informational messages about the outcome of performing
@@ -109,6 +106,18 @@ namespace bpkg
instead, unless suppressed with \cb{--no-progress}."
}
+ string --structured-result
+ {
+ "<fmt>",
+ "Write the result of performing a command in a structured form. In
+ this mode, instead of printing to \cb{stderr} informational messages
+ about the outcome of performing a command or some of its parts,
+ \cb{bpkg} writes to \cb{stdout} a machine-readable result description
+ in the specified format. Not all commands support producing structured
+ result and valid <fmt> values are command-specific. Consult the command
+ documentation for details."
+ }
+
// When it comes to external programs (such as curl, git, etc), if stderr
// is not a terminal, the logic is actually tri-state: With --no-progress
// we suppress any progress. With --progress we request full progress.
@@ -134,6 +143,18 @@ namespace bpkg
network transfers, building, etc."
}
+ bool --diag-color
+ {
+ "Use color in diagnostics. If printing to a terminal the color is used
+ by default provided the terminal is not dumb. Use \cb{--no-diag-color}
+ to suppress."
+ }
+
+ bool --no-diag-color
+ {
+ "Don't use color in diagnostics."
+ }
+
path --build
{
"<path>",
@@ -167,8 +188,7 @@ namespace bpkg
If the fetch program is not specified, then \cb{bpkg} will try to
discover if one of the above programs is available and use that.
- Currently, \cb{bpkg} has the following preference order: \cb{wget}
- 1.16 or higher (supports \cb{--show-progress}), \cb{curl},
+ Currently, \cb{bpkg} has the following preference order: \cb{curl},
\cb{wget}, and \cb{fetch}."
}
@@ -180,6 +200,13 @@ namespace bpkg
specify multiple fetch options."
}
+ // Undocumented equivalents to bdep's --curl* options. We "merge" them
+ // into --fetch/--fetch-option in an ad hoc manner (see fetch.cxx for
+ // details).
+ //
+ path --curl;
+ strings --curl-option;
+
size_t --fetch-timeout
{
"<sec>",
@@ -363,6 +390,24 @@ namespace bpkg
"Assume the answer to all authentication prompts is \cb{no}."
}
+ git_capabilities_map --git-capabilities
+ {
+ "<up>=<pc>",
+ "Protocol capabilities (<pc>) for a \cb{git} repository URL prefix
+ (<up>). Valid values for the capabilities are \cb{dumb} (no shallow
+ clone support), \cb{smart} (support for shallow clone, but not for
+ fetching unadvertised commits), \cb{unadv} (support for shallow clone
+ and for fetching unadvertised commits). For example:
+
+ \
+ bpkg build https://example.org/foo.git#master \
+ --git-capabilities https://example.org=smart
+ \
+
+ See \l{bpkg-repository-types(1)} for details on the \cb{git} protocol
+ capabilities."
+ }
+
string --pager // String to allow empty value.
{
"<path>",