[Python-Dev] Process to remove a Python feature

Steven D'Aprano steve at pearwood.info
Fri May 4 09:14:03 EDT 2018


On Fri, May 04, 2018 at 12:56:57PM +0200, Victor Stinner wrote:

> Sorry, when I wrote "Python 4" I mean "the new Python release which
> introduces a lot of backward incompatible changes and will annoy
> everyone". It can be Python 3.9 or 3.10, or whatever version
> (including 4.3 if you want) :-)

I call that "Python 4000", in analogy with Python 3000 which became 
Python 3, and to further emphasise how far away it is, I've started 
calling it "Python 5000".

As I understand it, Guido has said that we won't be doing a repeat of 
the 2 to 3 break-a-lot-of-stuff-at-once transition unless there is some 
unforeseen necessity.


> My point is that deprecating a feature is one thing, removing it is
> something else.
> 
> We should slow down feature removal, or more generally reduce the
> number of backward incompatible changes per release.

Have there been many features removed since 3.1? I know there were some 
features removed in 3.0, like callable(), which were later put back in, 
but I can't think of anythin removed since then. If there were, the pace 
of it is pretty slow.


> Maybe keep a deprecating warning for 10 years is just fine.
> 
> Extract of the Zen of Python: "Although practicality beats purity." ;-)

Aside from things that need to be removed for security reasons, this 
seems good to me.


-- 
Steve


More information about the Python-Dev mailing list