BaseCommand
, BaseMultiCommand
, and BaseSubCommand
now include
typing for all code, and modernized documentation.
This has required some small typing fixes throughout the codebase, but
has also found a few typing and logic errors that are being fixed. For
instance, BaseCommand._init_server_url()
received a fix to avoid
crashing if repository information couldn't be found.
Some legacy Python 2 conditional code has been removed. There are some
other deprecated code paths that don't have proper typing, but those
will be going away in a separate change.