-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Add pywin32
type stubs from microsoft/python-type-stubs and mhammond/pywin32
#8825
Conversation
This comment has been minimized.
This comment has been minimized.
About that primer error: |
The primer output is good! It shows that mypy currently emits an error when checking |
Oh I get it now, it's a diff saying those errors would not be in the output anymore! I'll revert back to a single module since that's more accurate. |
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.
Thanks, this is great! I have a few comments but I can't review this in detail, both because of its size and because I don't have access to Windows :)
I say we merge it (after giving other maintainers a chance to have their say) and handle any further improvements in separate PRs.
stubs/pywin32/_win32typing.pyi
Outdated
from typing_extensions import final | ||
|
||
class PyDSCAPSType: | ||
def __new__(cls): ... |
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.
What's the point of these __new__
methods in the stubs? Wouldn't the stub behave the same without them?
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.
Pretty sure there's not point and they're just leftovers from copying the original stubs
@@ -0,0 +1,66 @@ | |||
APPBREAKFLAG_DEBUGGER_BLOCK = ... |
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.
Are these all ints? Can we use : int
for them?
This comment has been minimized.
This comment has been minimized.
Diff from mypy_primer, showing the effect of this PR on open source code: comtypes (https://github.com/enthought/comtypes)
- comtypes/test/test_win32com_interop.py:13: error: Cannot find implementation or library stub for module named "pythoncom"
- comtypes/test/test_safearray.py:239: error: Cannot find implementation or library stub for module named "pythoncom"
|
Removals from `stubinfo.py`: - `atomicwrites` is archived and deprecated at runtime; stubs were removed from typeshed in python/typeshed#8925 - `attrs` has had inline types for a very long time now - `chardet` recently cut a release with inline types; typeshed's stubs were marked obsolete in python/typeshed#9318 - `cryptography` has had inline types for a very long time now; the only reason why it's still in typeshed is because other typeshed packages need `types-cryptography` as a dependency, and our testing infrastructure therefore can't currently cope with it being removed from typeshed. - `emoji` recently cut a release bundling stubs with the runtime package; typeshed's stubs were marked obsolete in python/typeshed#9051 - `termcolor` recently cut a release with inline types; typeshed's stubs were marked obsolete in python/typeshed#8746 - `prettytable` recently cut a release with inline types; typeshed's stubs were marked obsolete in python/typeshed#9023 Additions: - Stubs for `Xlib` were added in python/typeshed#9279 - Stubs for `consolemenu` were added in python/typeshed#8820 - Stubs for `dockerfile_parse` were added in python/typeshed#9305 - Stubs for `flask_migrate` were added in python/typeshed#8967 - Stubs for `paho.mqtt` were added in python/typeshed#8853 - Stubs for `pycocotools` were added in python/typeshed#9086 - Stubs for many `pywin32` modules were added in python/typeshed#8825, and multiple follow-up PRs - Stubs for `pyscreeze` were added in python/typeshed#8823
Helps with microsoft/python-type-stubs#211
This PR does not intend to complete the types for pywin32. Due to the size of this stub, it will be done in multiple steps:
Any
types (or useIncomplete
when that was not possible)(*args, **kwargs): ... # incomplete
def __getattr__(self, __name: str) -> Any: ... # incomplete
added to them