Commit Graph

3641 Commits

Author SHA1 Message Date
karl ding
2137026681 socket: Add missing CAN_BCM option flag constants (#4151)
The SocketCAN BCM option flag constants were added in version 3.9,
and only backported to version 3.8, despite the documentation's claims
of supporting all BCM-related constants starting from version 3.4.

Note: The CAN_FD_FRAME flag option was only introduced in the 4.8.x
kernel series, while the rest of the constants were available since the
Broadcast Manager was mainlined in the kernel as part of the SocketCAN
patches.
2020-06-01 01:21:54 +02:00
Jelle Zijlstra
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
Rune Tynan
d863210335 Improve TypeVar stub (#4150) 2020-05-30 20:27:59 -07:00
Markus Pielmeier
b7d9a4a584 Add support for __pow__ with pow() builtin (#4109) 2020-05-30 15:38:19 -07:00
Jelle Zijlstra
3058bec873 make io classes inherit from typing IO classes (#4145)
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).
2020-05-30 06:50:49 -07:00
Shantanu
de2c2947fe windows: fix splitunc param name (#4143)
Co-authored-by: hauntsaninja <>
2020-05-29 20:37:19 -04:00
Shantanu
6590a36776 stubtest whitelists: clean up duplicate entries (#4142)
Co-authored-by: hauntsaninja <>
2020-05-29 18:32:26 -04:00
Rune Tynan
4381eba6f4 Add _sitebuiltins stubs (#4139) 2020-05-29 22:33:06 +02:00
karl ding
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
d035ce57e3 Add platform checks for various sys values (#4137)
* Add platform checks for various sys values

* Add windows-only constants
2020-05-28 19:00:31 -07:00
Rune Tynan
a1953431ff Move oem_(decode, encode) to be 3.6+ (#4140) 2020-05-28 18:57:32 -07:00
Tarcisio
b58b8f3b43 Make BytesIO inherit from BufferedIOBase. (#4082)
Co-authored-by: Shantanu <hauntsaninja@users.noreply.github.com>
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
2020-05-28 17:07:00 -07:00
Sebastian Rittau
b2b397c5ce Add @CraftSpider and @hauntsaninja as maintainers (#4138) 2020-05-28 16:34:45 -07:00
Rune Tynan
a9e4ddaf29 Add _py_abc stubs (#4129) 2020-05-29 00:26:18 +02:00
Shantanu
62304eb02f asyncio: update cancels for py39 (#4135)
Co-authored-by: hauntsaninja <>
2020-05-28 13:42:31 -07:00
Shantanu
da2aa297a2 pathlib: update for py39 (#4134)
Co-authored-by: hauntsaninja <>
2020-05-28 13:41:53 -07:00
Shantanu
feb43f7237 asyncio: add asyncio.threads for py39 (#4136) 2020-05-28 13:37:46 -07:00
Brian Wellington
0bed1d3956 socket.create_connection source_address is optional. (#4133) 2020-05-28 19:56:11 +02:00
Jelle Zijlstra
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
Ilaï Deutel
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
Sebastian Rittau
adafaf1964 Add review guidlines (#4132)
Closes: #3448
2020-05-28 15:18:05 +02:00
Teddy Sudol
313a835bea Add missing definitions for urllib/response.pyi (#4118)
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
2020-05-28 13:48:27 +02:00
Jelle Zijlstra
0cffa59e57 use a Protocol for str.format_map() (#4122)
Fixes #3824
2020-05-28 13:27:57 +02:00
Jelle Zijlstra
ca553cd589 fix type for ipaddress._BaseNetwork.overlaps (#4124) 2020-05-28 13:22:50 +02:00
Gregory P. Smith
a9d5a1ed99 hmac digestmod is no longer Optional as of 3.8. (#3367) 2020-05-28 09:24:32 +02:00
Shantanu
2f0e3dbed2 statistics: add zscore in py39 (#4130)
Co-authored-by: hauntsaninja <>
2020-05-27 22:09:46 -07:00
Shantanu
1c0403cf83 random: various fixes (#4128)
* random.sample: make counts keyword-only

* random: mark positional-only args

* random.triangular: fix type of mode

* random: add randbytes

Co-authored-by: hauntsaninja <>
2020-05-27 22:05:55 -07:00
Shantanu
eca19f00fb bdb: various fixes (#4127) 2020-05-27 21:42:45 -07:00
Shantanu
e8d0cadf7b aifc: update for py39 (#4126)
Co-authored-by: hauntsaninja <>
2020-05-27 21:42:32 -07:00
Shantanu
c3c6abc153 gettext: various fixes (#4125) 2020-05-27 21:26:58 -07:00
Shantanu
22fd5e916a wsgiref: fix arg name, make close an instance variable (#4123)
Co-authored-by: hauntsaninja <>
2020-05-27 21:06:11 -07:00
Rune Tynan
0041206765 Fix _winapi version availability (#4120)
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
2020-05-27 20:47:15 -07:00
Shantanu
e9531e0c18 _tracemalloc: precise types, deduplicate tracemalloc (#4083) 2020-05-27 20:36:21 -07:00
Sam Bull
5c1806ab88 Add more annotations to jinja2.utils. (#4004) 2020-05-27 20:28:56 -07:00
Rune Tynan
712f6d3709 Fix winreg pos-only args and parameter names (#4117)
* Fix winreg pos-only args and parameter names

* Fix consistency check
2020-05-27 20:22:32 -07:00
Shantanu
5cf2fb703a tempfile: fix TemporaryFile on Windows (#4112)
Co-authored-by: hauntsaninja <>
2020-05-27 20:22:01 -07:00
Shantanu
c988348179 ctypes: fix arg name on windows (#4111)
Co-authored-by: hauntsaninja <>
2020-05-27 20:21:45 -07:00
Ilya Konstantinov
1dc585385a lru_cache-wrapped function args must be Hashable (#3944) 2020-05-27 20:20:56 -07:00
Shantanu
2a13ba9415 compileall: update for py39 (#3956)
* compileall: add stripdir, prependdir and limit_sl_dest

* compileall: compile_dir's default value is now None

* compileall: update for current py39 (as of beta1)

Co-authored-by: hauntsaninja <>
2020-05-27 20:18:19 -07:00
Rune Tynan
7ba59719b6 Fix asyncio IocpProactor version availability (#4121) 2020-05-27 20:14:00 -07:00
Kunal Arya
639771a22a Broaden _Serialized type in protobufs to ByteString. (#3890) 2020-05-27 19:53:58 -07:00
Brad Solomon
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
Julin S
851efa550e add stubs for language models (#3848)
* add stubs for language models

* fix syntax error in __init__.pyi

* fix syntax error in universaldetector.pyi

* remove erroneous imports

* delete cli directory

* make tuple types variable length
2020-05-27 19:43:04 -07:00
Michael H
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
fd203e663e py39: add PEP 616 methods (#4090) 2020-05-27 19:24:25 -07:00
Sebastian Rittau
694fa80596 Add dateparser module (#4106)
Based on PR 3704 by @xcthulhu (Matthew Doty)
2020-05-27 18:53:16 -07:00
Shantanu
02e1a68a56 argparse: add Action.format_usage (#4114)
Co-authored-by: hauntsaninja <>
2020-05-27 18:36:01 -07:00
Shantanu
54c99ff75f asyncio: add shutdown_default_executor (#4115)
There are a couple other py39 changes to be made in asyncio, but I'm
trying to avoid merge issues with whitelists / Windows for now.

Co-authored-by: hauntsaninja <>
2020-05-27 18:35:39 -07:00
Rune Tynan
d51e13ad80 Add stubtest to Travis for windows (#4113) 2020-05-27 18:33:07 -07:00
Shantanu
6575bd06bb stubtest: run on py39 (#4110)
I've made mistakes in #4069 and #4010 that would have been caught by
this, so seems worth it to add now, and continue to remove from
whitelists.
Note that we run with --ignore-missing-stub in CI, so this whitelist
isn't all the changes we'd need to fully support Python 3.9

Co-authored-by: hauntsaninja <>
2020-05-27 12:31:16 -07:00