Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gh-106320: Remove private _Py_Identifier API #108593

Merged
merged 1 commit into from
Aug 29, 2023

Conversation

vstinner
Copy link
Member

@vstinner vstinner commented Aug 28, 2023

Remove the private _Py_Identifier type and related private functions from the public C API:

  • _PyObject_GetAttrId()
  • _PyObject_LookupSpecialId()
  • _PyObject_SetAttrId()
  • _PyType_LookupId()
  • _Py_IDENTIFIER()
  • _Py_static_string()
  • _Py_static_string_init()

Move them to the internal C API: add a new pycore_identifier.h header file. No longer export these functions.

@vstinner
Copy link
Member Author

Remove the private _Py_Identifier type and related private functions
from the public C API:

* _PyObject_GetAttrId()
* _PyObject_LookupSpecialId()
* _PyObject_SetAttrId()
* _PyType_LookupId()
* _Py_IDENTIFIER()
* _Py_static_string()
* _Py_static_string_init()

Move them to the internal C API: add a new pycore_identifier.h header
file. No longer export these functions.
@vstinner vstinner merged commit 4fb96a1 into python:main Aug 29, 2023
15 checks passed
@vstinner vstinner deleted the pycore_identifier branch August 29, 2023 00:29
@osandov
Copy link

osandov commented Oct 23, 2023

Is there a recommendation for what to use instead? I read the discussion linked, but it didn't seem like there was a conclusion on the replacement.

@vstinner
Copy link
Member Author

Is there a recommendation for what to use instead? I read the discussion linked, but it didn't seem like there was a conclusion on the replacement.

I'm worried about these APIs :-( No consensus was found on a migration plan to move away from this private API. Maybe we should consider adding back the private API for now until a clear consensus is found.

@vstinner
Copy link
Member Author

@osandov:

Is there a recommendation for what to use instead? I read the discussion linked, but it didn't seem like there was a conclusion on the replacement.

I created #111484

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants