
I would like to take a step back, I think that for removal of feature you need to make sure that the "old way" is not common enough. I think that in many context, users of Python see DeprecationWarnings as a stick. A deprecation warning means you'll have to do some work. A pep or a document that list all the removal may be useful, but I'm unsure if in reading what's knew you'll catch all the removal of functionality you use and convince yourself (or your management) to thouroughly go through your code base and fix these things. Maybe to help transition you need to soften the stick by being more explicit as since when things are deprecated and what can be done. Personally I find deprecations when I run test-suites and use libraries interactively, not by reading ahead of time documents. Python has made huge progress in the deprecation messages. And the usage of "X Is is deprecated, use Y" has become common, this is already tremendously more helpful than just "X is deprecated". But when I hit a DeprecationWarning message there is one crucial piece of information missing most of the time: Since which version number it's deprecated (and sometime since when the replacement is available could be good if overlap between functionality there was). Yes it is available in the docs (or in the docstring), but if I have to switch context to search in the documentation I might not bother. In particular when the version is in the deprecation message, as I know the python requirement of my project, I can immediately know if it's a search and replace away, or if I need to have conditional branches. That is at least to me the biggest change that would push me to update the deprecated features in my own project, and make me do drive by contributions on Open-Source project I use where I spotted one of those. There are other improvement possible to deprecation messages, but I think this one would have the largest impact for many developers who do not closely follow python development, and for whom DeprecationWarnings are just an extra hassle. Also if there is a standard, or conventional way _in warnings_ to say since when something is deprecated, then it's relatively easy to search for it when version N+p is released and remove what you believe is old enough. Thanks, -- Matthias On Fri, 4 May 2018 at 09:03, Serhiy Storchaka <storchaka@gmail.com> wrote:
04.05.18 16:14, Steven D'Aprano пише:
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.
Read "What's New" documents, sections "Removed" and "Porting to Python X.Y". There is a long list in every release.
_______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/bussonniermatthias%40gmai...