On Tue, Nov 16, 2021 at 3:05 AM Petr Viktorin <encukou@gmail.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.