This will attempt to list all the changes that affect users of the
sewer-cli
program, including even cosmetic changes. If you use sewer as a
library you may find internal changes not called out here.
New sewer-cli
features are usually just mentioned, see
sewer-cli.md for more complete documentation.
added many words in the /docs directory. A lot of it is internals documentation; a lot of it was written to help me understand exactly how some things worked and decide how they should be improved - design essays, as it were. Much of it is sure to still be in some intermediate state.
new documentation of the sewer-cli
user command. Tries to
be as-is in 0.8.3 while warning about things that are sure to change
later.
--acme_timeout
has been added (revised from menduo’s PR #154)
--p_opt name=value ...
allows passing multiple driver options through
the command line. This is preferred over single-purpose cli options that
were briefly present in pre-release work since they eliminate the need to
manually add new driver options to the cli parser.
alias
parameter (in DNSProviderBase) added; available through --p_opt
alias=...
for sewer-cli
. NB: legacy drivers do NOT implement
aliasing yet - code changes required except for the demonstration DNS
driver, unbound_ssh.
prop_delay
, prop_timeout
and prop_sleep_times
(in DNSProviderBase)
Available through the --p_opt
option in sewer-cli
, though no legacy
provider has the driver support necessary to make prop_timeout
and
prop_sleep_times
work.
Mostly I’ve tried to avoid changes that were likely to break things. More
so for sewer-cli
than those who use the inner workings of Client, of
course.
the default log level for providers changed from INFO to WARNING,
so by default they don’t natter so much. Makes sewer-cli
a little quieter
when there are no problems. (there’s more to be done - it looks like some
messages that are clearly informational are written at a higher priority.)
all the legacy DNS providers have been minimally revised to accept some new options (alias and prop_delay) and pass them up to their parent classes.
sewer-cli
interface to providers has been augmented to pass some new options
(–acme_timeout, driver parameters from –p_opts)
sewer-cli
has had long option abbreviations disabled in argparse. This
was never documented in sewer, and is an attractive nuisance since the
addition of another option can break an abbreviation. Everyone wants more
options, right?
unbound_ssh
driver, a working demonstration of using aliasing support in
a legacy DNS driver. Needs a rather specific environment to work, but I
just renewed a handful of certificates using it the other day. :-)
JSON configuration has arrived. meta.json replaces version.py. catalog.json adds a central description of known drivers, replacing the mess of imports (removed, see below), and some non-DRY lists in setup.py and cli.py.
sewer.catalog
provides loading of the JSON catalog as well as methods to
lookup the driver’s descriptor by name and load the module; replaces the
mess of imports
import sewer
and access especially
the provider classes as eg. sewer.ThatDNSDns
. import sewer.dns_providers.thatdns.ThatDNSDns
is the current
workaround, sorry.from sewer import catalog
pro_cls = catalog.ProviderCatalog().get_provider("route53")
provider = pro_cls(...arguments as needed...)
This does NOT affect sewer-cli
users.
--action {run,renew}
option has never actually had any effect and is no
longer required (since 0.8.2?). LOGS A WARNING IN 0.8.3.