Commit Graph
2696 Commits
Author SHA1 Message Date
Sebastian RittauandGitHub 206bff44ed Remove BinaryIO.write() (#4203)
write() is inherited from IO[bytes], where it's defined as
`def write(self, s: AnyStr) -> int: ...`. If AnyStr is bytes,
this should accept bytes, bytearray, and memoryview, so the
overload is unnecessary.

Closes: #4201
2020-06-08 13:40:41 -07:00
Christopher HeadandGitHub 51267a4b12 Add tkinter Event class (#4200) 2020-06-08 12:46:16 -07:00
ShantanuGitHubhauntsaninja <>
f2f65bcf8d profile/cProfile: minor improvements (#4202)
Co-authored-by: hauntsaninja <>
2020-06-08 11:45:55 +02:00
ShantanuGitHubhauntsaninja <>
df6136c4ac logging: various fixes (#4196)
* logging.disable: update for py37

* RootLogger: fix __init__

* shutdown: add undocumented parameter

* MemoryHandler: add flushOnClose in py36

* NTEventLogHandler: fix dllname type

* makeSocket: add undocumented parameter

* SysLogHandler: fix socktype type

Co-authored-by: hauntsaninja <>
2020-06-07 14:05:29 -07:00
Jaromir LatalandGitHub 4ab1d6f0ae [stdlib][logging] Make level default in logging.disable for 3.7+ (#4197) 2020-06-07 13:09:22 -07:00
Jaromir LatalandGitHub c36e4517f7 [stdlib][asyncio] Accept optional context in (Timer)Handle (#4190) 2020-06-07 06:33:46 -07:00
Christopher HeadandGitHub 948c1a63e6 Relax asyncio.TimerHandle.__init__ args parameter (#4193)
Just like the Handle class, the TimerHandle class can take any sequence
here, not just a list.
2020-06-06 18:33:23 -07:00
Luciano RamalhoandGitHub bb9e1a649c using type var to work around List invariance (#4192) 2020-06-06 18:32:15 -07:00
Christopher HeadandGitHub 7931635b52 Add sys.{get,set}_asyncgen_hooks (#4195) 2020-06-06 15:44:48 -07:00
Christopher HeadandGitHub 5b36051f77 tkinter: fix variable parameter to wait_variable (#4194)
The tkinter `wait_variable` function can be called with either the name
of a variable (a `str`) or an actual variable object (a `Variable`).
2020-06-06 14:41:42 -07:00
Vegard StikbakkeandGitHub 34b9cfcdcf curses.bkgset -> bkgdset (#4191) 2020-06-06 08:45:37 -07:00
Eric N. Vander WeeleandGitHub 4199352287 Fix typing.ForwardRef.__eq__ stub (#4177)
The return type of `__eq___` should be `bool`.

Otherwise, `mypy --disallow-any-unimported --no-silence-site-packages`
fails because the return type becomes `Union[bool, Any]` due to an
unfollowed import.
2020-06-06 08:04:05 -07:00
9ab4ec568d [stdlib][asyncio] Widen asyncio.events.handle arguments type (#4188)
Co-authored-by: Jaromir Latal <jaro@fb.com>
2020-06-06 16:48:02 +02:00
52bf411f2b [stdlib][asyncio] Allow optional policy in (#4189)
Co-authored-by: Jaromir Latal <jaro@fb.com>
2020-06-06 16:47:04 +02:00
karl dingandGitHub 3f141751d7 cProfile: Fix Profile __init__ keyword arguments (#4183)
The CPython _lsprof module implementation uses the keyword arguments
'timer' and 'timeunit' instead of 'custom_timer' and 'time_unit' for
__init__. In profiler_init, the keyword argument parsing looks like the
following:

    static char *kwlist[] = {"timer", "timeunit",
                                   "subcalls", "builtins", 0};

This is the case ever since _lsprof was added in version 2.5.
2020-06-05 07:40:51 -07:00
ShantanuGitHubhauntsaninja <>
db819480a5 logging: fix argument names (#4181)
* logging: fix argument names

* logging: filter method improvements

Co-authored-by: hauntsaninja <>
2020-06-04 19:32:03 -07:00
ShantanuandGitHub 7aabfcc65a array: update for py39 (#4180) 2020-06-04 18:32:24 -07:00
ShantanuandGitHub 5369e813a9 argparse: fix error __init__, add BooleanOptionalAction for py39 (#4144) 2020-06-04 16:00:52 -07:00
Sebastian RittauandGitHub 1f82564ee2 Move wsgiref.types to _typeshed.wsgi (#4175)
Re-export the types from wsgiref.types for now to avoid breaking
existing code. wsgiref.types should be removed eventually.

Also, reduce the boilerplate description in _typeshed/wsgi.pyi as it
mirrors the description in _typeshed/__init__.pyi.
2020-06-04 15:38:45 -07:00
Sam BullandGitHub 5b66868156 Allow Path in create_subprocess_* (#4159) 2020-06-04 17:11:53 +02:00
Sebastian RittauandGitHub eea9be6e73 Add a _typeshed.pyi file and a PathLike alias (#4161) 2020-06-04 14:06:43 +02:00
DakkaronandGitHub 3438cb92e1 pipes.quote takes AnyStr (#4173) 2020-06-04 12:37:57 +02:00
Sam BullandGitHub bd35cd6bf8 Fixes for ssl (#4164) 2020-06-03 21:42:31 +02:00
Sam BullandGitHub dd5ef5ed1e Add hostname_checks_common_name attribute to SSLContext (#4160) 2020-06-03 11:19:02 +02:00
Sebastian RittauandGitHub a913af9523 flake8: Enable F811 (#4158) 2020-06-02 14:08:54 -07:00
karl dingandGitHub 43cf0ec870 ssl: Improve SSLContext.options stub (#4152)
In Python 3.6, the SSLContext.options flags were converted from int to
EnumFlag values.

In addition, add the missing OP_ENABLE_MIDDLEBOX_COMPAT constant
introduced in version 3.6.

In addition, add the missing OP_NO_RENEGOTIATION constant introduced in
version 3.7.
2020-06-02 09:19:18 +02:00
Kevin WojniakGitHubhauntsaninja <>
17aa20cd95 Add st_file_attributes to stat_result for Windows (#4156)
This member is documented at https://docs.python.org/3/library/os.html#os.stat_result.st_file_attributes and https://docs.python.org/3/whatsnew/3.5.html#os

Co-authored-by: hauntsaninja <>
2020-06-01 23:53:11 -07:00
Rune TynanandGitHub 342ce69f88 Add missing asyncio modules (#4149) 2020-06-01 02:05:16 +02:00
karl dingandGitHub 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 ZijlstraandGitHub 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 TynanandGitHub d863210335 Improve TypeVar stub (#4150) 2020-05-30 20:27:59 -07:00
Markus PielmeierandGitHub b7d9a4a584 Add support for __pow__ with pow() builtin (#4109) 2020-05-30 15:38:19 -07:00
Jelle ZijlstraandGitHub 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
ShantanuGitHubhauntsaninja <>
de2c2947fe windows: fix splitunc param name (#4143)
Co-authored-by: hauntsaninja <>
2020-05-29 20:37:19 -04:00
Rune TynanandGitHub 4381eba6f4 Add _sitebuiltins stubs (#4139) 2020-05-29 22:33:06 +02:00
karl dingandGitHub 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 TynanandGitHub 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 TynanandGitHub a1953431ff Move oem_(decode, encode) to be 3.6+ (#4140) 2020-05-28 18:57:32 -07:00
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
Rune TynanandGitHub a9e4ddaf29 Add _py_abc stubs (#4129) 2020-05-29 00:26:18 +02:00
ShantanuGitHubhauntsaninja <>
62304eb02f asyncio: update cancels for py39 (#4135)
Co-authored-by: hauntsaninja <>
2020-05-28 13:42:31 -07:00
ShantanuGitHubhauntsaninja <>
da2aa297a2 pathlib: update for py39 (#4134)
Co-authored-by: hauntsaninja <>
2020-05-28 13:41:53 -07:00
ShantanuandGitHub feb43f7237 asyncio: add asyncio.threads for py39 (#4136) 2020-05-28 13:37:46 -07:00
Brian WellingtonandGitHub 0bed1d3956 socket.create_connection source_address is optional. (#4133) 2020-05-28 19:56:11 +02:00
Jelle ZijlstraandGitHub 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
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 ZijlstraandGitHub 0cffa59e57 use a Protocol for str.format_map() (#4122)
Fixes #3824
2020-05-28 13:27:57 +02:00
Jelle ZijlstraandGitHub ca553cd589 fix type for ipaddress._BaseNetwork.overlaps (#4124) 2020-05-28 13:22:50 +02:00
Gregory P. SmithandGitHub a9d5a1ed99 hmac digestmod is no longer Optional as of 3.8. (#3367) 2020-05-28 09:24:32 +02:00