I created https://github.com/python/steering-council/issues/86 to ask for a SC exception.
On Tue, Nov 16, 2021 at 8:11 PM Brett Cannon firstname.lastname@example.org wrote:
On Tue, Nov 16, 2021 at 3:05 AM Petr Viktorin email@example.com wrote:
On 12. 11. 21 13:09, Victor Stinner wrote:
It was decided to start deprecating the asyncore, asynchat and smtpd modules in Python 3.6 released in 2016, 5 years ago. Python 3.10 emits DeprecationWarning.
Wait, only Python 3.10? According to the policy, the warning should be there for *at least* two releases. (That's a minimum, for removing entire modules it might make sense to give people even more time.)
The PEP 387 says "Similarly a feature cannot be removed without notice between any two consecutive releases."
It is the case here. The 3 modules are marked as deprecated for 4 releases in the documentation: Python 3.6, 3.7, 3.9 and 3.10. Example: https://docs.python.org/3.6/library/asyncore.html
PEP 387 also contains a detailed process for making incompatible changes, which calls for warnings to appear in at least two releases.
Do you think the process section can be ignored? We should remove it from the PEP if that's the case.
I don't think it should be ignored and the modules got yanked prematurely. A request can be made to the SC, though, to expedite the removal with only one release raising an exception.