Deprecation policy reminder
Hi there, I noticed some deprecation activity this week. Nice! I'd just like to remind everyone that we have a policy for that described in PEP 387 <https://www.python.org/dev/peps/pep-0387/> It's a very short PEP so I recommend you read it in its entirety. The important piece I want to highlight is that we cannot deprecate a feature in one release and remove it in the next one. We need at least two releases with the warning.
Relevant quotes:
Python's yearly release process (PEP 602 <https://www.python.org/dev/peps/pep-0602>) means that the deprecation period must last at least two years.
and:
Wait for the warning to appear in at least two minor Python versions of the same major version, or one minor version in an older major version (e.g. for a warning in Python 3.10, you either wait until at least Python 3.12 or Python 4.0 to make the change). It's fine to wait more than two releases.
Since this PEP is easy to miss, I linked it to the docs of DeprecationWarning in GH-28123 <https://github.com/python/cpython/pull/28123>.
Cheers, Ł
Are there any exceptions? In the discussion about PyCode_New we've come to the conclusion that keeping it and PyCode_NewWithPosArgs around is going to be impossible to support, and we've found the few users of that API (Cython) supportive of changing it incompatibly.
On Thu, Sep 2, 2021 at 3:56 AM Łukasz Langa <lukasz@langa.pl> wrote:
Hi there, I noticed some deprecation activity this week. Nice! I'd just like to remind everyone that we have a policy for that described in PEP 387 <https://www.python.org/dev/peps/pep-0387/> It's a very short PEP so I recommend you read it in its entirety. The important piece I want to highlight is that we cannot deprecate a feature in one release and remove it in the next one. We need at least two releases with the warning.
Relevant quotes:
Python's yearly release process (PEP 602 <https://www.python.org/dev/peps/pep-0602>) means that the deprecation period must last at least two years.
and:
Wait for the warning to appear in at least two minor Python versions of the same major version, or one minor version in an older major version (e.g. for a warning in Python 3.10, you either wait until at least Python 3.12 or Python 4.0 to make the change). It's fine to wait more than two releases.
Since this PEP is easy to miss, I linked it to the docs of DeprecationWarning in GH-28123 <https://github.com/python/cpython/pull/28123>.
Cheers, Ł
python-committers mailing list -- python-committers@python.org To unsubscribe send an email to python-committers-leave@python.org https://mail.python.org/mailman3/lists/python-committers.python.org/ Message archived at https://mail.python.org/archives/list/python-committers@python.org/message/W... Code of Conduct: https://www.python.org/psf/codeofconduct/
-- --Guido van Rossum (python.org/~guido) *Pronouns: he/him **(why is my pronoun here?)* <http://feministing.com/2015/02/03/how-using-they-as-a-singular-pronoun-can-c...>
Hey Guido,
The PEP notes that the steering council can grant exceptions to the policy in some cases. So maybe it's time to loop them in and ask them about the PyCode_New proposal.
Ammar Askar
On Thu, Sep 2, 2021, 11:03 AM Guido van Rossum <guido@python.org> wrote:
Are there any exceptions? In the discussion about PyCode_New we've come to the conclusion that keeping it and PyCode_NewWithPosArgs around is going to be impossible to support, and we've found the few users of that API (Cython) supportive of changing it incompatibly.
On Thu, Sep 2, 2021 at 3:56 AM Łukasz Langa <lukasz@langa.pl> wrote:
Hi there, I noticed some deprecation activity this week. Nice! I'd just like to remind everyone that we have a policy for that described in PEP 387 <https://www.python.org/dev/peps/pep-0387/> It's a very short PEP so I recommend you read it in its entirety. The important piece I want to highlight is that we cannot deprecate a feature in one release and remove it in the next one. We need at least two releases with the warning.
Relevant quotes:
Python's yearly release process (PEP 602 <https://www.python.org/dev/peps/pep-0602>) means that the deprecation period must last at least two years.
and:
Wait for the warning to appear in at least two minor Python versions of the same major version, or one minor version in an older major version (e.g. for a warning in Python 3.10, you either wait until at least Python 3.12 or Python 4.0 to make the change). It's fine to wait more than two releases.
Since this PEP is easy to miss, I linked it to the docs of DeprecationWarning in GH-28123 <https://github.com/python/cpython/pull/28123>.
Cheers, Ł
python-committers mailing list -- python-committers@python.org To unsubscribe send an email to python-committers-leave@python.org https://mail.python.org/mailman3/lists/python-committers.python.org/ Message archived at https://mail.python.org/archives/list/python-committers@python.org/message/W... Code of Conduct: https://www.python.org/psf/codeofconduct/
-- --Guido van Rossum (python.org/~guido) *Pronouns: he/him **(why is my pronoun here?)* <http://feministing.com/2015/02/03/how-using-they-as-a-singular-pronoun-can-c...>
python-committers mailing list -- python-committers@python.org To unsubscribe send an email to python-committers-leave@python.org https://mail.python.org/mailman3/lists/python-committers.python.org/ Message archived at https://mail.python.org/archives/list/python-committers@python.org/message/B... Code of Conduct: https://www.python.org/psf/codeofconduct/
PEP 387 says:
The steering council may grant exceptions to this policy. In particular, they may shorten the
required deprecation period for a feature. Exceptions are only granted for extreme situations
such as dangerously broken or insecure features or features no one could reasonably be depending
on (e.g., support for completely obsolete platforms).
I’m not sure I agree that these are the only reasons to grant an exception, but I guess we’ll have to discuss that. Please do formally ask the SC for an exception.
Cheers, -Barry
On Sep 2, 2021, at 08:02, Guido van Rossum <guido@python.org> wrote:
Are there any exceptions? In the discussion about PyCode_New we've come to the conclusion that keeping it and PyCode_NewWithPosArgs around is going to be impossible to support, and we've found the few users of that API (Cython) supportive of changing it incompatibly.
On Thu, Sep 2, 2021 at 3:56 AM Łukasz Langa <lukasz@langa.pl> wrote: Hi there, I noticed some deprecation activity this week. Nice! I'd just like to remind everyone that we have a policy for that described in PEP 387 It's a very short PEP so I recommend you read it in its entirety. The important piece I want to highlight is that we cannot deprecate a feature in one release and remove it in the next one. We need at least two releases with the warning.
Relevant quotes:
Python's yearly release process (PEP 602) means that the deprecation period must last at least two years.
and:
Wait for the warning to appear in at least two minor Python versions of the same major version, or one minor version in an older major version (e.g. for a warning in Python 3.10, you either wait until at least Python 3.12 or Python 4.0 to make the change). It's fine to wait more than two releases.
Since this PEP is easy to miss, I linked it to the docs of DeprecationWarning in GH-28123.
Cheers, Ł
python-committers mailing list -- python-committers@python.org To unsubscribe send an email to python-committers-leave@python.org https://mail.python.org/mailman3/lists/python-committers.python.org/ Message archived at https://mail.python.org/archives/list/python-committers@python.org/message/W... Code of Conduct: https://www.python.org/psf/codeofconduct/
-- --Guido van Rossum (python.org/~guido) Pronouns: he/him (why is my pronoun here?)
python-committers mailing list -- python-committers@python.org To unsubscribe send an email to python-committers-leave@python.org https://mail.python.org/mailman3/lists/python-committers.python.org/ Message archived at https://mail.python.org/archives/list/python-committers@python.org/message/B... Code of Conduct: https://www.python.org/psf/codeofconduct/
https://github.com/python/steering-council/issues/75
On Thu, Sep 2, 2021 at 8:21 AM Barry Warsaw <barry@python.org> wrote:
PEP 387 says:
The steering council may grant exceptions to this policy. In
particular, they may shorten the required deprecation period for a feature. Exceptions are only granted for extreme situations such as dangerously broken or insecure features or features no one could reasonably be depending on (e.g., support for completely obsolete platforms).
I’m not sure I agree that these are the only reasons to grant an exception, but I guess we’ll have to discuss that. Please do formally ask the SC for an exception.
Cheers, -Barry
On Sep 2, 2021, at 08:02, Guido van Rossum <guido@python.org> wrote:
Are there any exceptions? In the discussion about PyCode_New we've come to the conclusion that keeping it and PyCode_NewWithPosArgs around is going to be impossible to support, and we've found the few users of that API (Cython) supportive of changing it incompatibly.
On Thu, Sep 2, 2021 at 3:56 AM Łukasz Langa <lukasz@langa.pl> wrote: Hi there, I noticed some deprecation activity this week. Nice! I'd just like to remind everyone that we have a policy for that described in PEP 387 It's a very short PEP so I recommend you read it in its entirety. The important piece I want to highlight is that we cannot deprecate a feature in one release and remove it in the next one. We need at least two releases with the warning.
Relevant quotes:
Python's yearly release process (PEP 602) means that the deprecation period must last at least two years.
and:
Wait for the warning to appear in at least two minor Python versions of the same major version, or one minor version in an older major version (e.g. for a warning in Python 3.10, you either wait until at least Python 3.12 or Python 4.0 to make the change). It's fine to wait more than two releases.
Since this PEP is easy to miss, I linked it to the docs of DeprecationWarning in GH-28123.
Cheers, Ł
python-committers mailing list -- python-committers@python.org To unsubscribe send an email to python-committers-leave@python.org https://mail.python.org/mailman3/lists/python-committers.python.org/ Message archived at https://mail.python.org/archives/list/python-committers@python.org/message/W... Code of Conduct: https://www.python.org/psf/codeofconduct/
-- --Guido van Rossum (python.org/~guido) Pronouns: he/him (why is my pronoun here?)
python-committers mailing list -- python-committers@python.org To unsubscribe send an email to python-committers-leave@python.org https://mail.python.org/mailman3/lists/python-committers.python.org/ Message archived at https://mail.python.org/archives/list/python-committers@python.org/message/B... Code of Conduct: https://www.python.org/psf/codeofconduct/
-- --Guido van Rossum (python.org/~guido) *Pronouns: he/him **(why is my pronoun here?)* <http://feministing.com/2015/02/03/how-using-they-as-a-singular-pronoun-can-c...>
participants (4)
-
Ammar Askar
-
Barry Warsaw
-
Guido van Rossum
-
Łukasz Langa