-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Resolve 3.13 issues for ctypes._endian
#12372
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
Conversation
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
stdlib/ctypes/_endian.pyi
Outdated
|
||
if sys.version_info >= (3, 12): | ||
if sys.version_info >= (3, 13): | ||
from ctypes import Array as Array, Structure, Union |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why add Array
as new re-export?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's exported in the implementation: https://github.com/python/cpython/blob/094375b9b7e087a4f0f60541dc7f2dc53be92646/Lib/ctypes/_endian.py#L2
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's just imported there. This is a private module, and it doesn't seem like it's intentionally re-exported.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see, was trying to match the runtime as closely as possible, but makes sense.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
stdlib/ctypes/_endian.pyi
Outdated
|
||
if sys.version_info >= (3, 12): | ||
if sys.version_info < (3, 13): | ||
from _ctypes import RTLD_GLOBAL as RTLD_GLOBAL, RTLD_LOCAL as RTLD_LOCAL |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All of these look like incidental re-exports, can we remove all the as
imports?
Looks like it used to do from ctypes import *
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let me also add an ignore for older Python versions.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
@JelleZijlstra Should be ready for another look, apologies for the delay. |
According to mypy_primer, this change has no effect on the checked open source code. 🤖🎉 |
Starting in 3.13, we're no long doing a star import from
ctypes
: python/cpython#105768