Commit Graph

2708 Commits

Author SHA1 Message Date
Shantanu
765cd11704 base64: arguments can be None (#4020)
Co-authored-by: hauntsaninja <>
2020-05-16 16:47:45 -07:00
Shantanu
58147cab20 aifc: fix mode default (#4019)
By default, if not specified, these functions use the mode from the file

Co-authored-by: hauntsaninja <>
2020-05-16 16:47:14 -07:00
Rebecca Chen
af01f1f4be uuid: import enum inside version check. (#4009)
Otherwise, pytype tries to import enum in Python 2 and complains that
the library doesn't exist.
2020-05-17 01:32:07 +02:00
Shantanu
0a69743bca hashlib: fix argument kinds, update for py39 (#4006)
* hashlib: add usedforsecurity in py39
* hashlib: fix positional-only args, arg names
* hashlib: fix positional and keyword only args for blake
* hashlib: add usedforsecurity to blake
2020-05-17 01:31:12 +02:00
Rune Tynan
f56fdb99d1 Add _compat_pickle module (#4001)
* Add _compat_pickle module

* Whoops, rename .py to .pyi

* Fix value not existing in 3.5
2020-05-16 06:57:32 -07:00
Steve Dignam
e5dcf06c9e Update array with more precise type for typecodes (#3994)
Fixes #3946
2020-05-15 11:55:40 +02:00
Shantanu
0630c4b1fd unittest.mock: fix MRO of Mock (#3990)
* unittest.mock: fix MRO of Mock

* Make consistent

Co-authored-by: hauntsaninja <>
2020-05-14 08:57:50 +02:00
Shantanu
ad6cf3a314 email.errors: fix aliased class (#3988)
Co-authored-by: hauntsaninja <>
2020-05-13 19:47:53 -07:00
Shantanu
cc0ffb1648 asyncio.protocols: BufferedProtocol inherits from BaseProtocol (#3989)
Co-authored-by: hauntsaninja <>
2020-05-13 19:08:47 -07:00
Shantanu
3662bf89d5 asyncio.locks: fix _ContextManagerMixin base class (#3979) 2020-05-13 17:57:02 -07:00
Rune Tynan
e9c7ef7406 Add private _bootlocale stub (#3985) 2020-05-13 15:19:18 -07:00
Gal Ben David
d1ef2fff7a added multiprocessing.connection.Connection constructor definition (#3974) 2020-05-13 15:13:06 -07:00
Selim Belhaouane
3ac1f86499 Change return annotation of Popen.poll to Optional[int] (#3986)
Fixes #3984
2020-05-13 10:18:25 -07:00
Rune Tynan
65b3ef91fd Remove class variable overrides (#3987) 2020-05-13 10:16:38 -07:00
Rune Tynan
b8045a3fb2 Add xmlrpc package (#3834)
* Add xmlrpc client module

* Add xmlrpc server module, update client

* Fix mypy errors with protocol and Dict fix

* Add Type[] around requestHandler

* Fix docroutine incompatible override

* Whoops, ignored is also missing

* Remove unnecessary str/repr overrides

* Remove unnecessary __eq__ and quotes around Unmarshall. DateTime __eq__ left for now

* Fix problems from review

* Fix various version-specific differences, make request_type conservative (only bytes, guaranteed to have same len as number of bytes)

* Silly misspelling

* Change from IO to ad-hoc minimal protocols
2020-05-13 07:17:17 -07:00
Kazushi Kitaya
d39e58c3bc asyncio.subprocess: returncode is Optional (#3981) 2020-05-13 16:14:42 +02:00
Joost Cassee
09093435c3 Make HTTPPasswordMgrWithDefaultRealm realm optional (#3976)
* Make HTTPPasswordMgrWithDefaultRealm realm optional
* Optional realm in HPMWDefaultRealm.find_password
2020-05-13 15:11:22 +02:00
Shantanu
e0f9242e76 io: StringIO seems happy enough to take None (#3973)
Didn't check C code, but the _pyio implementation explicitly checks for
None

Co-authored-by: hauntsaninja <>
2020-05-12 18:33:48 -07:00
Shantanu
111f3f02ef socket: fix default mode for makefile (#3978)
Fixes #3977

Co-authored-by: hauntsaninja <>
2020-05-12 18:22:25 -07:00
Shantanu
637dba1beb concurrent.futures: fix BrokenProcessPool base (#3972)
Co-authored-by: hauntsaninja <>
2020-05-11 21:52:55 -07:00
Ivan Levkivskyi
5342d66dcc Fix assert_has_calls() signature (#3967)
See the docs https://docs.python.org/3/library/unittest.mock.html#unittest.mock.Mock.assert_has_calls
2020-05-05 19:20:56 +01:00
Ivan Levkivskyi
8c7f489d1b Organize special forms in typing (#3966)
This is an accompanying PR for https://github.com/python/mypy/pull/8779, see https://github.com/python/mypy/pull/8779#issuecomment-624001349

I also noticed that Python 2 and Python 3 versions are a bit out of sync, so I also put them back in sync.
2020-05-05 13:55:31 +01:00
Shantanu
e857ad6ba9 zip: add some overloads for heterogeneous tuples (#3830)
Technically this is a lie, since we return a heterogeneous iterator, not
a tuple. But since we don't have a way of typing heterogeneous
iterators, this is the best we can do.

Fixes https://github.com/python/mypy/issues/8454
2020-05-03 21:02:26 -07:00
Paul Ganssle
3dfc606670 Correct return type of time.dst (#3964)
`time.dst` either returns None or the result of tzinfo.dst(None), which
returns datetime.timedelta
2020-05-03 23:13:22 +02:00
Sam Bull
545be37c40 Allow Path in gettext. (#3958) 2020-05-01 10:43:19 -07:00
Luciano Ramalho
38330702fd Sortable protocol for statistics.median_high/median_low; fix #3894 (#3961) 2020-04-30 22:08:09 -07:00
Shantanu
fec46043ed asyncio: various fixes (#3947)
* asyncio: remove BaseChildWatcher from top level

* asyncio.sleep: loop is keyword-only

* asyncio: remove Server from top level

* asyncio: add FastChildWatcher to top level

* asyncio.constants: fix version availability

* asyncio: fix arg name for _wakeup

* asyncio: fix arg name for wrap_future

* asyncio.streams: add Optional to various arguments

It might be possible to further improve some of these with overloads.

* stubtest: fix whitelist

Co-authored-by: hauntsaninja <>
2020-04-30 17:04:36 -07:00
David T.H. Kao
7766b2d92b Use IO[bytes] instead of BytesIO for wave input signatures as it is t… (#3952)
* Use IO[bytes] instead of BytesIO for wave input signatures as it is the (slightly) more general type.

* add missing import

Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
2020-04-29 21:54:34 -07:00
Shantanu
88440b768c http: add py39 status codes (#3955)
Co-authored-by: hauntsaninja <>
2020-04-29 20:47:28 -07:00
Anthony Sottile
bc90043e54 update Subscript.slice type for python3.9 (#3950) 2020-04-28 17:32:08 -07:00
Javier Honduvilla Coto
f7d240f06e ctypes.CDLL name can be None (#3945) 2020-04-26 15:51:38 +02:00
Kjell Braden
aa06f3bc7b use socket.sendto argument spec for DatagramTransport (#3943) 2020-04-25 13:23:29 +02:00
Max R
31705fca7a Add misc types for mock and unittest.mock (#3923) 2020-04-24 08:51:34 +02:00
Shantanu
aa84ff750e asyncio: remove private methods that don't exist (#3938)
Co-authored-by: hauntsaninja <>
2020-04-23 19:20:57 -07:00
Rune Tynan
19eade5e44 Add msilib and _msi (#3651) 2020-04-22 20:02:19 +02:00
Shantanu
496d758769 typing: minor changes (#3933)
* typing: fix argument names of cast
* typing: use private _Alias class

For py37 and above, this is _GenericAlias, for py36 and below it's
_TypeAlias. I don't think we need to make typing.pyi definitions
correspond more precisely, but we should avoid leaking a
typing.TypeAlias class
2020-04-22 19:38:47 +02:00
Shantanu
0532e72e7f asyncio: mark positional-only args (#3934) 2020-04-22 19:34:30 +02:00
Brian Turek
990e648928 Change run_in_executor to return a Future rather than be a coroutine (#3935) 2020-04-22 19:00:13 +02:00
Alex McGrath Kraak
51e5b98076 Fix ftplib .size return type to be an int (#3937)
Close #3927
2020-04-22 10:06:58 +02:00
Brian Turek
6e9e059f0c Add return type for pathlib.Path.replace on Python >= 3.8 (#3936) 2020-04-22 01:52:33 +02:00
Shantanu
ec57251010 asyncio.events: various fixes (#3931)
- connect_accepted_socket isn't a member of AbstractEventLoop, only
BaseEventLoop
- fix types of arguments with defaults. some of these functions could
have their signatures improved with overloads to reduce false negatives
- correctly mark a positional-only argument
- remove abstractmethod from methods that don't have abstractmethod and
go unimplemented in practice
2020-04-20 17:56:24 -07:00
Shantanu
626a0f3f73 asyncio.subprocess: loop is Optional (#3930) 2020-04-20 12:20:08 +02:00
Anthony Sottile
8e46eb7b85 create_subprocess_shell takes a single positional argument (#3929) 2020-04-19 13:46:37 +02:00
Philipp Hahn
84147ec9cb sockeserver: Add undocumented internals (#3924)
the `rfile` and `wfile` members are already implemented by
StreamRequestHandler. In addition to them several (undocumented)
class and instance variables exist according to
<https://github.com/python/cpython/blob/master/Lib/socketserver.py#L742>:
- `rbufsize`
- `wbufsize`
- `timeout`
- `disable_nagle_algorithm`
- `packet` and `socket` for datagrams

The already exist with Python 2.7
<https://github.com/python/cpython/blob/2.7/Lib/SocketServer.py#L677>

```mermaid
classDiagram
BaseRequestHandler <|-- DatagramRequestHandler
BaseRequestHandler <|-- StreamRequestHandler
StreamRequestHandler <|-- BaseHTTPRequestHandler
```
2020-04-14 13:22:40 -07:00
Denis Laxalde
b3c86bd7ff Fix type of of optparse.Option's _{check,set}_opt_strings() methods (#3895) 2020-04-10 00:17:34 +02:00
Florian Ludwig
00f5240b88 add more constants to tarfile (#3917) 2020-04-09 14:42:11 +02:00
Peter Pentchev
0d7665d7b8 SyntaxError's filename and lineno may be undefined. (#3918)
The Python source (Objects/exceptions.c) explicitly checks for null
pointers before using the filename and lineno members. Some libraries,
e.g. pkg_resources, set filename and lineno to undefined values if
indeed none are appropriate.
2020-04-08 20:50:49 +02:00
Benjamin Poirier
ea919fdce9 email: Fix BytesFeedParser method arg (#3916) 2020-04-08 09:28:02 +02:00
Jocelyn Boullier
60cdee5b2d ftplib: fix all_errors type to tuple of type of exception (#3910) 2020-04-05 09:02:34 -07:00
Debjyoti Biswas
af3596f950 Add array.array type to zlib.crc32 (#3904) 2020-04-05 09:02:02 -07:00