GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | ||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | ||||||||
GeezerVison is showing github.com — gh-105373: Remove the PyObject_SetAttr(NULL) deprecation by vstinner · Pull Request #105374 · python/cpython Conversation
|
|
Deprecation added by issue #69887. cc @serhiy-storchaka @vadmium I would prefer that either we fully removed these deprecations, or to really deprecate them: emit DeprecationWarning at runtime. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
What is changed since it was discussed 8 years ago? |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
I would like to clarify what is really deprecated or not in Python 3.13. I don't see the value of a mention of a deprecation in the documentation without using IMO passing NULL is just fine, it's not going to change, so there is no need to deprecate it. In 2015, you wrote:
So well, I propose to actually not deprecate it :-D |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
The Gmane link no longer work, the working links to the discussion (it was split on several threads) are The problems with the current behavior:
Changing the current behavior is a long process. M.-A. Lemburg specified the required procedure. It is interesting, that if we started it in 3.6, it would already be finished. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
I reported this error prone API as capi-workgroup/problems#47 |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
Oh right. I would prefer to emit a DeprecationWarning in this case and prepare a migration plan towards "Del" functions instead. I don't think that a sentence in the documentation is enough to help users to avoid mistakes. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
I created a discussion to specify "Soft Deprecation" in PEP 387: https://discuss.python.org/t/formalize-the-concept-of-soft-deprecation-dont-schedule-removal-in-pep-387-backwards-compatibility-policy/27957 |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
I close this PR in favor of issue #106572: Deprecate PyObject_SetAttr(obj, name, NULL): PyObject_DelAttr(obj, name) must be used instead. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
There was an error while loading. Please reload this page.