Lookups in flight across the whole run. Same as -c/--concurrency.
Environment variables
Every variable below is read once, at startup. A flag always beats an
environment variable, which always beats the built-in default.
reserve config show reports each resolved setting alongside which of the three
supplied it.
An exported variable is a standing preference, not this run's instruction, and
it never stands in for a typed flag. Setting RESERVE_NO_INPUT doesn't block
--interactive from opening the picker for this one run, the way typing
--no-input would.
reserve-specific variables
RESERVE_CONCURRENCYinteger, 1-1024RESERVE_TIMEOUTinteger, 1-3600Seconds to wait on any single request. Same as --timeout.
RESERVE_WIDTHinteger, 1-10000Lays the table out for this many columns instead of the terminal's width. Same
as --width.
RESERVE_NO_INPUTbooleanDefault: offNever prompt and never open the picker. Same as --no-input. Accepts 1,
true, yes, on as true; an empty value, 0, no, off, or similar
reads as off.
RESERVE_PLAINbooleanDefault: offDraws borders and the spinner with plain characters, and skips the picker. Set
this where the terminal shows borders and the spinner as empty boxes. reserve doctor reports whether your terminal can draw the picker, and why not when it
can't.
A RESERVE_CONCURRENCY, RESERVE_TIMEOUT, or RESERVE_WIDTH value that isn't
a whole number, or is outside its range, stops the command before it runs and
names the variable in the error message. An empty or blank value for any of the
three is skipped, same as if it were unset.
export RESERVE_CONCURRENCY=50 # 50 lookups in flight on every future run
export RESERVE_TIMEOUT=20 # wait 20s per request instead of the 10s default
export RESERVE_WIDTH=100 # lay tables out for 100 columns
export RESERVE_NO_INPUT=1 # never open the picker, in this shell
export RESERVE_PLAIN=1 # plain borders, no picker, for a dumb terminal$ RESERVE_WIDTH=0 reserve example.com
error: RESERVE_WIDTH is set to 0, and --width takes 1 to 10000
Usage: reserve [OPTIONS] [NAME]... [COMMAND]
For more information, try '--help'.reserve config show names the origin of every setting, so a flag beating an
exported variable is visible before the run starts:
$ RESERVE_TIMEOUT=45 reserve --timeout 7 --concurrency 12 config show
Resolved settings
concurrency 12 flag
timeout 7 flag
width unset built-in default
no_input false built-in default
per_registry published allowance built-in default
rate published allowance built-in defaultDrop the two flags and timeout reads 45 with environment beside it, while
concurrency falls back to its built-in default.
Standard variables reserve also respects
NO_COLORany non-empty valueSuppresses colour and the progress line.
CLICOLOR0The exact value 0 suppresses colour and the progress line, same as
NO_COLOR.
CLICOLOR_FORCEany value other than 0Keeps colour through a pipe.
FORCE_COLORnon-empty, not 0Keeps colour through a pipe, same as CLICOLOR_FORCE.
TERMstringdumb, empty, or unset on a Unix host means no colour and no progress line,
and it's the only thing (not colour suppression) that decides whether the
interactive picker can open at all.
COLUMNSinteger > 0Overrides the terminal width the layout is fitted to. Read only when stdout is
a terminal, so an exported COLUMNS never cuts piped output a script expects
whole.
LINESinteger > 0Overrides the terminal height the layout is fitted to, under the same
terminal-only condition as COLUMNS.
RUST_LOGtracing-subscriber filter syntaxWidens what -v turned on. Logs go to stderr, so a pipe reading stdout still
receives only results.
RUST_BACKTRACEstringPrints a backtrace if the tool panics.
LC_ALL, LC_CTYPE, LANGstringOn a non-Windows host, box-drawing and the spinner glyphs are used only when
the first of these three that's set contains UTF-8 or UTF8. Outside a
UTF-8 locale, reserve falls back to plain characters and the picker doesn't
open. Windows skips this check.
export NO_COLOR=1 # no colour, no progress line, anywhere
export FORCE_COLOR=1 # keep colour even through a pipe
export RUST_LOG=reserve_core=debug # widen -v's tracing for one crate
export RUST_BACKTRACE=1 # print a backtrace if reserve panics$ reserve example.com --tld com | cat
DOMAIN STATUS SOURCE TIME NOTE
- example.com TAKEN registry 1352ms
0 available 1 taken 0 unknown (1 checked)
# no colour codes, no progress line: piping already suppresses both
$ FORCE_COLOR=1 reserve example.com --tld com | cat
# same table, but with ANSI colour codes preserved through the pipeFile locations
Everything reserve writes for itself lives under one directory,
devops.bd/reserve, inside your platform's own config, cache, and data
directories. Run reserve config path to see the three resolved locations.
Deleting them removes every trace of the tool.