
The asynchat [1] and asyncore [2] libraries have been deprecated since 3.6 in favor of asyncio [3]. In addition, smtpd [4], which depends on asynchat and asyncore, is deprecated in favor of aiosmtpd [5]. The documentation for each of these libraries mentions that it is deprecated and refers to the suggested replacement. However, they do not yet emit DeprecationWarnings at import, so people may be using them without being aware that they are no longer maintained (there are a few dozen open issues on bpo, some of them reporting bugs). The next step is to add deprecation warnings, so that we can eventually delete them. There is also the issue that some of the stdlib tests are still using these libraries, but this does not need to block removing them from the stdlib because we can move them to test.support until those tests are rewritten. Note that nobody needs to stop using these libraries if they don't want to migrate to the suggested alternatives - the modules are pure python and anyone can include a copy in their own codebase and continue using it in a legacy application (or even continue maintaining it if they want). Barry and I are working on a patch to add deprecation warnings in 3.10 when one of these are imported [6]. Let us know if you have any comments on this plan. [1] https://docs.python.org/3/library/asynchat.html [2] https://docs.python.org/3/library/asyncore.html [3] https://docs.python.org/3/library/asyncio.html [4] https://docs.python.org/3/library/smtpd.html [5] https://aiosmtpd.readthedocs.io/en/latest/ [6] https://github.com/python/cpython/pull/26882