major
-----
* Support Python 3.9, 3.10, 3.11. Drop Python 3.6 and earlier, All code
and examples have been updated to the new-style PEP-492 syntax.
* the ``loop``, ``event_loop``, and ``log`` arguments are no longer accepted to
any class initializers.
* The asyncio Future, ``TelnetServer.waiter_encoding``, now receives
only a boolean, rather than an instance of TelnetServer (self).
* This release has a known memory leak when using the ``_waiter_connected`` and
``_waiter_closed`` arguments to Client or Shell class initializers, please do
not use them. A replacement "wait_for_negotiation" awaitable will be provided
in a future release.
minor
-----
- std. python telnetlib is no longer imported, its constants are
extracted directly to avoid DeprecationWarning
- some changes in CI/tox about dropping/adding python support, etc.
- skip pexpect tests with py3.10 until I can find the time to also
devote time to maintain that library to fix asyncio compatibility
issues
- small fix in repr_mapping() to use shlex to make values containing
spaces conditionally quoted
- small race condition fix for waiter_closed
- small race condition fix for repr(BaseClient) and Server,
around "peername" and in get_extra_info()