On 5/3/2018 6:22 AM, Jeroen Demeyer wrote:
On 2018-05-03 11:30, Victor Stinner wrote:
Please don't queue backward incompatible changes for Python 4.0. You
should use the regular deprecation process.

I don't really see how that can be done here. As Stefan said

The problem is that this
change does not really fit into the deprecation cycle since there is no
specific use case to warn about.

The PEP proposes to change an implementation detail. It's really hard to determine at runtime whether code is relying on that implementation detail. We could insert a DeprecationWarning in some places, but those would mostly be false positives (a DeprecationWarning is shown but the code won't break).

On top of that, there is no way to show a DeprecationWarning for code like "type(x) is foo".

Deprecating doesn't necessarily involve a DeprecationWarning, although if possible it should, of course. It could just be a documented deprecation. We've done this before, although I can't think of an example off the top of my head (which I realize is not exactly helpful).

"If you're doing a type check involving C functions, and you're doing it <old way>, change it to <new way> because we're going to deprecate the old way in version x.y". Of course this assumes both <old way> and <new way> can coexist for several versions, which itself might not be possible.

Eric

_______________________________________________
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/archive%40mail-archive.com

Reply via email to