Jelle Zijlstra and GitHub
adeda24fce
open: introduce concrete return types ( #4146 )
...
* make io classes inherit from typing IO classes
This makes these classes usable if type annotations are given as "IO"
or "TextIO". In the future, we'll then be able to move open() to
return a concrete class instead (#3951 ).
* open: introduce concrete return types
Fixes #3951 .
We use the values of the "mode" and "buffering" arguments to figure out
the concrete type open() will return at runtime. (Compare the CPython
code in https://github.com/python/cpython/blob/master/Modules/_io/_iomodule.c#L231 .)
2020-06-01 00:48:12 +02:00
Markus Pielmeier and GitHub
b7d9a4a584
Add support for __pow__ with pow() builtin ( #4109 )
2020-05-30 15:38:19 -07:00
de2c2947fe
windows: fix splitunc param name ( #4143 )
...
Co-authored-by: hauntsaninja <>
2020-05-29 20:37:19 -04:00
karl ding and GitHub
09821cd9ca
Add typing for CAN_J1939 sockets ( #4141 )
...
Add typing for CAN_J1939 sockets implementing support for the SAE J1939
protocol. This is available in Python 3.9+ on Linux 5.4+.
2020-05-29 12:33:47 +02:00
Rune Tynan and GitHub
a1953431ff
Move oem_(decode, encode) to be 3.6+ ( #4140 )
2020-05-28 18:57:32 -07:00
Brian Wellington and GitHub
0bed1d3956
socket.create_connection source_address is optional. ( #4133 )
2020-05-28 19:56:11 +02:00
Jelle Zijlstra and GitHub
c80622fbb9
remove type ignores about python/mypy#5027 ( #4119 )
...
The mypy issue got fixed by the good people of mypy. I did have to add an
override for __enter__ similar to what we're doing in #4082 .
2020-05-28 09:51:54 -07:00
846d922df2
More precise return types for open(), Path.open(), bz2.open(), etc. ( #3371 )
...
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com >
Co-authored-by: Sebastian Rittau <srittau@rittau.biz >
2020-05-28 09:20:23 -07:00
Jelle Zijlstra and GitHub
0cffa59e57
use a Protocol for str.format_map() ( #4122 )
...
Fixes #3824
2020-05-28 13:27:57 +02:00
Gregory P. Smith and GitHub
a9d5a1ed99
hmac digestmod is no longer Optional as of 3.8. ( #3367 )
2020-05-28 09:24:32 +02:00
Shantanu and GitHub
eca19f00fb
bdb: various fixes ( #4127 )
2020-05-27 21:42:45 -07:00
e8d0cadf7b
aifc: update for py39 ( #4126 )
...
Co-authored-by: hauntsaninja <>
2020-05-27 21:42:32 -07:00
22fd5e916a
wsgiref: fix arg name, make close an instance variable ( #4123 )
...
Co-authored-by: hauntsaninja <>
2020-05-27 21:06:11 -07:00
c988348179
ctypes: fix arg name on windows ( #4111 )
...
Co-authored-by: hauntsaninja <>
2020-05-27 20:21:45 -07:00
Brad Solomon and GitHub
ddb47deb27
Allow Union[unicode, str] rather than just str in several places ( #3887 )
...
* Allow unicode objects throughout urlparse.py
Functions such as `urlparse()`, if given a unicode object,
will happily return a ParseResult of unicode components.
Relatedly, functions like `unquote()` will accept any of
bytes/str/unicode and return an object of the same type
or a composite containing that type.
* Allow unicode in several places in Thread
`name` and `kwargs` to Thread.__init__ function perfectly
well with unicode, not just str.
Note: the .name attribute will always be str even
if the constructor is passed something else, since
__init__ calls:
self.__name = str(name or _newname())
* Use typing.AnyStr properly
...rather than defining a new TypeVar unncessarily.
* Use typing.Text properly
Text is behaviorally equivalent to Union[str, unicode]
for Python 2 argument types.
* Remove outdated import & definition
* [check file consistent] copy changes to _dummy_threading.pyi
2020-05-27 19:52:14 -07:00
Michael H and GitHub
a1c6566abe
[Add stub entry for logging._srcfile] ( #3840 )
...
- While this appears to be private, it's also documented as available
to set here: https://docs.python.org/3/howto/logging.html#optimization
- Did *not* update `logging.logThreads` et al to match the
documentation as it may be more appropriate to update the
documentation to set to `False` rather than to `0` based on how these
are used
Type further narrowed based on known type of a parameter to
`os.normcase`
2020-05-27 19:42:33 -07:00
Shantanu and GitHub
fd203e663e
py39: add PEP 616 methods ( #4090 )
2020-05-27 19:24:25 -07:00
02e1a68a56
argparse: add Action.format_usage ( #4114 )
...
Co-authored-by: hauntsaninja <>
2020-05-27 18:36:01 -07:00
Rune Tynan and GitHub
d51e13ad80
Add stubtest to Travis for windows ( #4113 )
2020-05-27 18:33:07 -07:00
Rune Tynan and GitHub
0c1babd288
Make _codecs pass stubtest on windows ( #4107 )
2020-05-27 19:36:41 +02:00
Batuhan Taskaya and GitHub
53ede5967b
is_tarfile accepts pathlike ( #3804 )
2020-05-27 17:21:55 +02:00
Rune Tynan and GitHub
7ac284f641
Add _pydecimal and _decimal stubs ( #4003 )
2020-05-27 10:10:51 +02:00
Rune Tynan and GitHub
f1d96d97fe
Fix stubtest failures for msvcrt on windows ( #4095 )
2020-05-27 10:05:33 +02:00
Zhiming Wang and GitHub
edb7dc1171
xml.etree.ElementTree: add support for os.PathLike for py36+ ( #4097 )
...
xml.etree.ElementTree uses open on filenames (e.g. [1]), so os.PathLike has
been supported as filenames since Python 3.6.
[1] https://github.com/python/cpython/blob/285ff63351bb5a42099527c283f65434e761be83/Lib/xml/etree/ElementTree.py#L584
2020-05-27 10:04:12 +02:00
Rune Tynan and GitHub
9b4eb8c90b
Fix stubtest failures for select on windows ( #4099 )
2020-05-27 09:57:06 +02:00
Rune Tynan and GitHub
d310a16e7c
Fix stubtest failures for time on windows ( #4104 )
2020-05-27 09:51:37 +02:00
Rune Tynan and GitHub
19a797c0ca
Fix stubtest failures for asyncore on windows, remove unnecessary imports ( #4093 )
2020-05-27 09:42:05 +02:00
Rune Tynan and GitHub
bd6eed8700
Fix stubtest failures for mmap on windows ( #4094 )
2020-05-27 09:40:06 +02:00
Rune Tynan and GitHub
5e80ca9e44
Fix stubtest failures for path files on windows ( #4096 )
2020-05-27 09:39:26 +02:00
Rune Tynan and GitHub
f83e4aef7c
Fix stubtest failures for socket on windows ( #4102 )
2020-05-27 09:38:45 +02:00
a94d6511fd
xml.etree.ElementInclude: update include for py39 ( #4086 )
...
Co-authored-by: hauntsaninja <>
2020-05-26 17:39:36 -07:00
Shantanu and GitHub
d313e170b7
threading: update for py39 ( #4087 )
2020-05-26 17:37:07 -07:00
Shantanu and GitHub
6aee098401
fractions: use __new__ instead of __init__ ( #4077 )
...
Tested against some example code.
2020-05-25 15:29:28 -07:00
Shantanu and GitHub
6028226750
plistlib: update for py39 ( #4073 )
2020-05-24 20:38:18 -07:00
Shantanu and GitHub
00a27634b1
threading: fix inheritance ( #4072 )
2020-05-24 18:51:30 -07:00
8cf04f3a74
boto.compat, base64: fix version handling of (en|de)codebytes ( #4070 )
...
Co-authored-by: hauntsaninja <>
2020-05-24 18:44:43 -07:00
e560ce0f57
bisect: hi is Optional ( #4063 )
...
Shows up in 3.9 because of https://github.com/python/cpython/pull/20163
Co-authored-by: hauntsaninja <>
2020-05-24 17:53:03 -07:00
8e03f33d84
difflib: update for py39 ( #4067 )
...
Adds default values, the hi params can now be None
Co-authored-by: hauntsaninja <>
2020-05-24 17:41:45 -07:00
2b3a4e8fbe
wave: openfp is removed in py39 ( #4064 )
...
Co-authored-by: hauntsaninja <>
2020-05-24 17:40:20 -07:00
3910eb1735
argparse: update for py39 ( #4065 )
...
Co-authored-by: hauntsaninja <>
2020-05-24 17:40:06 -07:00
b367799634
sunau: openfp is removed in py39 ( #4066 )
...
Co-authored-by: hauntsaninja <>
2020-05-24 17:34:48 -07:00
karl ding and GitHub
db14610298
Improve undocumented TarFile method type hints ( #4056 )
...
Add type hints for undocumented tarfile.TarFile file methods called via
_extract_member() when extract() is called.
2020-05-23 13:41:07 -07:00
Rebecca Chen and GitHub
5fe6a5ba8b
parser: STType.compile() can be called with no arguments. ( #4034 )
...
The filename parameter is optional:
https://docs.python.org/3/library/parser.html#parser.ST.compile .
2020-05-18 08:30:52 -07:00
Rebecca Chen and GitHub
53f4f68d71
saxutils.XMLGenerator should accept unicode encodings in Python 2. ( #4031 )
2020-05-17 18:05:21 -07:00
a675778140
dis: various fixes to dis.dis ( #4027 )
...
Co-authored-by: hauntsaninja <>
2020-05-17 08:59:11 -07:00
26566af893
bisect: fix availability, consistency, reduce duplication ( #4028 )
...
Co-authored-by: hauntsaninja <>
2020-05-17 08:52:37 -07:00
4405250ed1
pyclbr: add parent argument for py37 on ( #4029 )
...
Co-authored-by: hauntsaninja <>
2020-05-17 08:25:18 -07:00
9c9eae8462
opcode: fix positional-only args ( #4026 )
...
Co-authored-by: hauntsaninja <>
2020-05-17 07:20:28 -07:00
4a9fdcc7fc
uuid: update for py39 ( #4023 )
...
Closing the long loop started in #3715
Co-authored-by: Shantanu <hauntsaninja@users.noreply.github.com >
2020-05-16 21:30:45 -07:00
bedccc7497
fractions: remove gcd in py39 ( #4012 )
...
Co-authored-by: hauntsaninja <>
2020-05-16 16:57:19 -07:00