There are persistent questions why output from options like --list
and --stats doesn't show up. Also, borg currently isn't able to
show *just* the output for a given option (--list, --stats,
--show-rc, --show-version, or --progress), without other INFO level
messages.
The solution is to use more granular loggers, so that messages
specific to a given option goes to a logger designated for that
option. That option-specific logger can then be configured
separately from the regular loggers.
Those option-specific loggers can also be used as a hook in a
BORG_LOGGING_CONF config file to log the --list output to a separate
file, or send --stats output to a network socket where some daemon
could analyze it.
Steps:
- create an option-specific logger for each of the implied output options
- modify the messages specific to each option to go to the correct logger
- if an implied output option is passed, change the option-specific
logger (only) to log at INFO level
- test that root logger messages don't come through option-specific loggers
They shouldn't, per https://docs.python.org/3/howto/logging.html#logging-flow
but test just the same. Particularly test a message that can come from
remote repositories.
Fixes#526, #573, #665, #824
it is important to first do all the changes that modify the release contents,
then tag/sign it, then build the binaries via vagrant.
Only then the binaries will have the correct version number.
also: remove mailing list and irc channel address from development docs,
it is enough to have this information on the main page and on the support page.
link to the locations of different tools when I know them. i marked
the ones I don't know about specially so we can document those as
well.
point to the Github releases for the standalone binaries upload
we stop supporting them, because there are better alternatives:
- use a distribution package (from your linux distribution), if available
- use a pyinstaller binary provided by us (they include all you need in 1 file and
thus have better compatibility properties and are easier to install than a wheel)
- install from source (pypi or git) if everything else fails
README.rst (shown on github and also at the start of the html docs) shall
be like an elevator speech - convince readers in a very short time.
this is most important, everything else can come after we got the reader's interest.
include README into docs to avoid duplication.
also include CHANGES into docs.
add developer docs, move examples from tox.ini there
add separate support docs
remove glossary, most of what was there can be understood by an admin from context
move attic and compatibility note to the end