4141dd1176
Few more fixes for issues found by testing on internal codebases ( #4876 )
...
Few unrelated (but quite obvious) fixes here.
Co-authored-by: Ivan Levkivskyi <ilevkivskyi@dropbox.com >
2020-12-30 17:32:14 +00:00
fb753c4226
Loosen some types to avoid pain in real-life situations ( #4870 )
...
In this diff:
* Loosen `set.__[i]sub__()` to allow typical use cases (that work at runtime). Namely, allow removing `unicode` from a set of `str`, and allow removing optional values from non-optional sets.
* Avoid using union return types in `cryptography` deserialization functions.
* Tune `SupportsItems` so that `dict` implements it on Python 2.
Co-authored-by: Ivan Levkivskyi <ilevkivskyi@dropbox.com >
2020-12-29 18:31:14 +00:00
Ash Berlin-Taylor and GitHub
3e10b44bb4
copy.deepcopy memo type is Any, not input type ( #4828 )
2020-12-16 17:38:11 +01:00
Jun Jia and GitHub
35d73ef277
type of argument_default should be Any ( #4811 )
2020-12-14 19:17:19 +01:00
Sebastian Rittau and GitHub
1c6ac09b82
Add EllipsisType, NoneType, and NotImplementedType (Python 3.10) ( #4822 )
2020-12-14 18:38:35 +01:00
c4d8507ff7
Removed unused import symbols from stdlib stubs and fixed a few other errors detected by pyright. I did a similar pass several months ago; these were introduced since then. ( #4803 )
...
Co-authored-by: Eric Traut <erictr@microsoft.com >
2020-12-06 18:44:18 +01:00
Ran Benita and GitHub
1958f3ec67
threading: properly export excepthook, ExceptHookArgs ( #4797 )
...
An `import X as Y` where X != Y no longer exports, so
27a45df479 caused them to be un-exported.
2020-12-02 14:58:52 +01:00
095464874a
Added partial type stubs for stdlib xml ( #4777 )
...
Added empty stubs for xml.dom.minidom.parse and xml.dom.minidom.parseString, and other modules under xml.dom
Co-authored-by: Stephanie Ding <sym@fb.com >
Co-authored-by: Shantanu <hauntsaninja@users.noreply.github.com >
2020-11-20 19:02:35 -08:00
Ran Benita and GitHub
27a45df479
threading: fix ExceptHookArgs being a function instead of a type ( #4768 )
...
The previous typing meant `threading.ExceptHookArgs` could not be used
to type a value.
The new typing follows what cpython does in the happy path (`_thread`
exists rather than the pure-python fallback being used).
Fixes #4767 .
2020-11-14 14:50:34 +01:00
Stefano Chiodino and GitHub
ca45cb21a8
Update zipfile.pyi ( #4753 )
2020-11-10 12:01:06 +01:00
2702f8c32e
ctypes: fix argument names ( #4735 )
...
Co-authored-by: hauntsaninja <>
2020-10-31 18:34:25 -07:00
Jelle Zijlstra and GitHub
301325b55b
Make _GeneratorContextManager covariant ( #4733 )
...
Fixes #4732
2020-10-30 17:31:55 -07:00
Sebastian Rittau and GitHub
4603728a15
Clean up files with former forced consistency ( #4717 )
...
Replace Text with str in Python 3 code
2020-10-27 07:52:35 +01:00
Vincent Barbaresi and GitHub
de98690e72
update math and gzip stubs for Python 3.8 ( #4710 )
...
I ran stubtest and spotted 2 things missing in 3.8 stdlib
- added BadGzipFile exception for gzip:
https://docs.python.org/3/library/gzip.html#gzip.BadGzipFile
- added math.perm() method:
https://docs.python.org/3/library/math.html#math.perm
2020-10-25 19:58:09 -07:00
1dd1b701c9
_typeshed: add SupportsLessThan, SupportsLessThanT ( #4711 )
...
And use it everywhere. Note there seemed to be a discrepancy between
heapq in Python 2 and 3, so I changed that. It should probably be more
widely used within heapq, but leaving that out of scope for this PR.
Co-authored-by: hauntsaninja <>
2020-10-25 15:04:43 -07:00
Paul and GitHub
820cc11256
Provide types for ArgumentError members. ( #4700 )
2020-10-24 17:02:58 -07:00
6ff5b88ca7
typeshed: remove crufty comments ( #4699 )
...
Co-authored-by: hauntsaninja <>
2020-10-23 09:40:06 +02:00
Sebastian Rittau and GitHub
3de732e188
Split distutils for Python 2 and 3 ( #4685 )
...
Addresses #4679 , but also starts addressing #4674 .
2020-10-22 19:24:17 -07:00
6f943d43ea
Added __class_getitem__ ( #4695 )
...
Resolves #4682
Co-authored-by: hauntsaninja <>
2020-10-22 14:05:04 -07:00
Sebastian Rittau and GitHub
5927e5ca30
Remove most consistency checks and split builtins.pyi into py2/3 files ( #4686 )
...
Split builtins.pyi in Python 2 and 3 versions
Partly addresses #4674
2020-10-22 13:39:06 -07:00
b0f4900c9f
fractions: make Fraction satisfy SupportsRound ( #4697 )
...
Helps with https://github.com/python/mypy/issues/9628
Co-authored-by: hauntsaninja <>
2020-10-22 12:12:27 -07:00
faf827bc36
mark some positional-only arguments ( #4693 )
...
https://github.com/python/mypy/pull/9626 will make stubtest a little bit
stricter about positional-only arguments for dunders like __init__
Co-authored-by: hauntsaninja <>
2020-10-22 13:31:23 +02:00
Dominic Davis-Foster and GitHub
dcbeed5b5a
Add stub for readline.set_auto_history ( #4688 )
2020-10-20 14:27:07 -07:00
7e378a7554
PEP 584: add or operators to dict ( #4671 )
...
Co-authored-by: hauntsaninja <>
2020-10-15 13:42:01 +02:00
3a16ebb463
builtins: int can accept __trunc__-able ( #4665 )
...
Refer to https://docs.python.org/3/reference/datamodel.html#object.__trunc__
Fixes https://github.com/python/mypy/issues/9588
Co-authored-by: hauntsaninja <>
2020-10-14 09:47:47 +02:00
Cebtenzzre and GitHub
58ee9c0ae5
termios: Fix type of tcgetattr and tcsetattr attributes ( #4662 )
...
Returning a union from tcgetattr forces the caller to use isinstance or
a type: ignore comment if they modify the returned list. Return
List[Any] instead.
The cc field has ints at cc[termios.VTIME] and cc[termios.VMIN] if
lflag & termios.ICANON is zero. Change _Attr to allow this.
Fixes #4661
2020-10-12 18:24:09 -07:00
Rebecca Chen and GitHub
fff7a10ae7
Add a version guard for importing enum in pstats. ( #4635 )
...
* Add a version guard for importing enum.
I'm trying to pull the latest version of typeshed into Google, and
pytype chokes on pstats in Python 2 because the enum module was
introduced in 3.4.
* Move the enum import into the branch that defines SortKey.
2020-10-08 16:09:24 -07:00
Sebastian Rittau and GitHub
35f4ade96f
Replace bool.__init__() with __new__() ( #4614 )
...
Fixes #4612
2020-10-09 00:20:03 +02:00
Peter Law and GitHub
fa0ba1eda8
Add various undocumented functions from ftplib ( #4633 )
...
Fixes #4632
2020-10-08 22:20:48 +02:00
Kaushal Rohit and GitHub
36f2ffa07e
Added missing SysLogHandler types ( #4630 )
2020-10-07 19:02:54 -07:00
nicolas-harraudeau-sonarsource and GitHub
cc71b6a4ed
Fix "cgi.parse_qsl" return type ( #4621 )
...
Fixes #4620
2020-10-06 10:28:33 +02:00
e428f2d479
pep 484: last reexports ( #4609 )
...
Co-authored-by: hauntsaninja <>
2020-10-04 23:51:04 +02:00
723a23abfc
contextlib: get rid of a TODO ( #4610 )
...
This dates back three years to https://github.com/python/typeshed/pull/1249
It seems pretty unused in practice, so I think this is fine:
https://grep.app/search?q=from%20contextlib%20import%20ContextManager&case=true
https://grep.app/search?q=contextlib.ContextManager&case=true
Co-authored-by: hauntsaninja <>
2020-10-04 23:49:49 +02:00
karl ding and GitHub
ce3c9e05c0
imaplib: Add new functions from Python 3.9 ( #4596 )
...
Add imaplib.IMAP4.unselect()
2020-10-02 19:58:24 -07:00
karl ding and GitHub
9cbb2c7820
math: Add new functions from Python 3.9 ( #4590 )
...
Add support for new math functions added in Python 3.9:
- gcd
- lcm
- nextafter
- ulp
2020-10-01 10:54:41 +02:00
e3889c776e
pep 484: explicit reexport as intended ( #4586 )
...
See discussion on typing-sig.
This doesn't take care of some third_party libraries, will follow up on
those.
Co-authored-by: hauntsaninja <>
2020-09-30 10:04:23 -07:00
Sebastian Rittau and GitHub
27dfbf68aa
Use __new__ instead of __init__ for some builtin classes ( #4555 )
...
Closes #4514 #2630 #2686
2020-09-30 00:00:06 -07:00
Shantanu and GitHub
076983eec4
PathLike: make runtime_checkable ( #4582 )
...
I made PathLike a protocol in #4447 , but it should also be
runtime_checkable.
Caught by mypy_primer:
src/werkzeug/utils.py:646: error: Only @runtime_checkable protocols can be used with instance and class checks
2020-09-27 07:50:56 +02:00
Shantanu and GitHub
d6d2249edc
builtins: rename _LT ( #4579 )
...
Having an obscure type variable name is causing some pretty inscrutable
errors. For instance:
```
xarray/core/utils.py:466: error: Value of type variable "_LT" of "sorted" cannot be "K"
tornado/simple_httpclient.py:324: error: Value of type variable "_LT" of "min" cannot be "Optional[float]"
```
I think having a more descriptive type variable name here is better for
user experience and helps address the "why" of an error.
2020-09-26 07:33:26 +02:00
Unrud and GitHub
c5cc223313
Fix typo in constant name EAI_ADDRFAMILY ( #4577 )
2020-09-25 14:17:08 -07:00
Jake Bailey and GitHub
de70d0199d
Fix distutils.log function signatures ( #4573 )
2020-09-24 17:27:50 -07:00
c41f3e9bf9
Define NoneType class in _typeshed
...
Type checkers can use this to handle protocol matching for None (e.g. `foo: Hashable = None`).
Co-authored-by: Eric Traut <erictr@microsoft.com >
2020-09-20 15:42:23 -07:00
Sebastian Rittau and GitHub
9a6b500909
Add various missing undocumented functions ( #4554 )
...
Mostly addresses #2149
2020-09-19 22:59:35 -07:00
Sebastian Rittau and GitHub
fe69ffcb0f
Add a few missing stdlib modules ( #4550 )
2020-09-18 11:28:25 -04:00
Sebastian Rittau and GitHub
4e88557666
Complete msvcrt ( #4548 )
2020-09-18 09:20:26 -04:00
Sebastian Rittau and GitHub
4e2e02b266
Fix cls argument name of CodecInfo.__new__() ( #4549 )
2020-09-17 12:04:54 -07:00
proost and GitHub
b1865639c2
set difference strictly ( #3886 )
...
Fixes #1840
2020-09-17 17:49:07 +02:00
Jonathan Slenders and GitHub
822e427693
Added annotations for msvcrt.getch. ( #4547 )
2020-09-17 10:55:44 +02:00
8642d2aa97
pkgutil, sys: make types more precise ( #4536 )
...
Co-authored-by: hauntsaninja <>
2020-09-16 10:38:27 +02:00
Nikolaus Waxweiler and GitHub
d402f55334
load*: Return Any instead of Dict-types ( #4543 )
...
A plist file can contain more object types than dictionaries.
2020-09-15 16:29:59 -07:00