[Python-Dev] Process to remove a Python feature (original) (raw)

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