Commit Graph

2622 Commits

Author SHA1 Message Date
Jukka Lehtosalo
5162c536c8 Make attributes of inspect.ArgSpec optional in Python 3 (#3838)
This makes them consistent with Python 2 stubs.

The attributes are documented here:
https://docs.python.org/3/library/inspect.html#inspect.getargspec
2020-03-10 13:15:20 +01:00
Shantanu
d8b081130d email.mime: add policy arguments (#3827) 2020-03-08 16:06:55 +01:00
Shantanu
60c59a560e select: various fixes (#3833) 2020-03-07 13:06:16 +01:00
Shantanu
2d3635f10d os: fix platform availability (#3832) 2020-03-07 12:59:55 +01:00
Rebecca Chen
37051ec699 Have datetime.{date,datetime} define __new__ instead of __init__. (#3829)
This is more faithful to the implementation:
https://github.com/python/cpython/blob/3.5/Lib/datetime.py.

When these classes define __init__, pytype has trouble type-checking
classes that inherit from datetime.datetime (done in, e.g., the third party
datetime_tz library) because it gets confused about what arguments the
constructor expects.
2020-03-07 12:52:04 +01:00
Shantanu
de4305760d configparser: add undocumented parameter to SectionProxy.get (#3826) 2020-03-07 12:46:32 +01:00
Shantanu
c478d3aa98 asyncio: add arguments to subprocess_shell (#3825) 2020-03-07 12:45:30 +01:00
Shantanu
2d82e1fb8b zipfile.ZipFile: fix fp, extract (#3828)
* zipfile: fp is None in a lot of error cases

* zipfile: pwd can be None in extract

Co-authored-by: hauntsaninja <>
2020-03-06 14:57:06 -08:00
Rune Tynan
e5a276c94f Add parser stubs (#3822) 2020-03-06 20:34:05 +01:00
Ran Benita
92d53086be stdlib/3/ast: add visit_* methods to NodeVisitor (#3796)
NodeVisitor recurses over an AST tree. When encountering a node, it
checks if a method called `visit_{node.__class__.__name__}` exists, and
calls it if so, otherwise calls the generic visitor.

Add the possible methods to NodeVisitor. This is not exactly correct,
since the methods don't *actually* exist on NodeVisitor, e.g.
`NodeVisitor().visit_Module(...)` doesn't work. But it's nice for
subclasses to know which methods they can override and which type they
should have.
2020-03-06 13:15:04 +01:00
Lawrence
337051501b Update imghdr's what() to broadly accept readable binaries instead of BinaryIO (#3811)
* Run isort over imghdr.pyi
2020-03-06 12:51:37 +01:00
Shantanu
89afe1e014 statistics: fix median_grouped, NormalDist.samples (#3818) 2020-03-06 11:34:04 +01:00
Shantanu
98c6bf8272 argparse: allow passing a callable to ArgumentParser (#3821)
Fixes #3806
2020-03-06 11:24:50 +01:00
Shantanu
e2a409291d asyncore: various fixes (#3820) 2020-03-06 11:23:03 +01:00
Shantanu
af09df9b48 textwrap: various fixes (#3819) 2020-03-06 11:12:24 +01:00
Shantanu
3c770a7a17 pdb: various fixes (#3817) 2020-03-06 11:07:52 +01:00
Shantanu
6b4fd79808 builtins: add mod to various power functions (#3816) 2020-03-06 11:07:05 +01:00
Shantanu
b208f21fbd imghdr: h can be None (#3815) 2020-03-06 11:03:11 +01:00
Shantanu
009e650a1d string: various fixes (#3814) 2020-03-06 11:02:18 +01:00
Shantanu
11d300587e urllib: various fixes (#3813) 2020-03-06 11:01:19 +01:00
Jelle Zijlstra
e9a9103afc bring back attribute types in warnings.WarningMessage (#3810)
Signed-off-by: Oleg Höfling <oleg.hoefling@gmail.com>
2020-03-05 17:15:13 -08:00
Jelle Zijlstra
6a4044fd9b Make frozenset covariant (#3808)
The convariance was lost in #1057
2020-03-04 19:24:03 -08:00
Ivan Levkivskyi
8b28b49c61 Mark some obviously incomplete stubs as incomplete (#3807) 2020-03-04 17:02:14 +00:00
Rune Tynan
efebe6bcec Add venv module stub (#3783) 2020-03-03 10:48:52 +01:00
Ran Benita
36c6f94de4 stdlib/2and3/builtins: change dict.fromkeys to classmethod (#3798)
The referenced issue in mypy is fixed.
2020-03-01 23:25:52 -08:00
petsuter
95002966ec Annotations for Py3.6 tkinter additions (#3778) (#3797)
* Add tkinter.Variable.trace_add()
* Add tkinter.Variable.trace_remove()
* Add tkinter.Variable.trace_info()
https://docs.python.org/3.6/whatsnew/3.6.html#tkinter
2020-03-01 08:53:01 -08:00
Rune Tynan
3926e88d13 Add macurl2path stub (#3785)
* Add macurl2path stub, types based on urllib

* Fix types, remove undocumented

The whole module is undocumented, no reason to just mention it on one call

* Module was removed in 3.7, stubtest shouldn't care about it

* Module was removed in 3.7, stubtest shouldn't care about it
2020-02-29 22:03:50 -08:00
Shantanu
b94d23c608 struct: fix arg names, mark positional-only args (#3792) 2020-02-29 14:42:04 +01:00
Ran Benita
0705cd6435 stdlib/3/importlib/metadata: add missing "group" attribute to EntryPoint (#3795) 2020-02-29 14:26:24 +01:00
Shantanu
83833116bd datetime: mark positional-only args (#3791) 2020-02-29 14:18:34 +01:00
Shantanu
558d88ef92 cgi: various improvements (#3790)
- add max_num_fields to FieldStorage
- fix various types based on default values
2020-02-29 14:18:06 +01:00
Shantanu
e4b4cd99c0 ssl: various fixes (#3789)
* ssl: fix arg names, mark positional-only args
* ssl: add undocumented parameter to do_handshake
* ssl: fix type of password in load_cert_chain
* ssl: add session parameter to wrap_socket, wrap_bio in py36 on
* ssl: update whitelists
2020-02-29 14:08:47 +01:00
PGijsbers
16ba411434 Change annotation of 'function' in Timer.__init__ from Callable[..., None] to Callable[..., Any] (#3788)
The return value is ignored, but calling a function with a return value should still be valid.

Closes: #3782
2020-02-29 14:05:23 +01:00
Rune Tynan
070a4da85d Add this module (#3784) 2020-02-27 19:18:54 -08:00
Sebastian Rittau
ca9505c8f4 Improve imaplib return types (#3670)
* Improve imaplib return types

Mark CommandResults as obsolete.

Also fix types of tagged_commands and untagged_responses.

Based on a discussion in #3655.

* Fix type of tagged_commands

* Fix IMAP4.tagged_commands type

* Mark CommandResults as private

* Fix
2020-02-22 09:58:14 -08:00
Alex Willmer
84c6e679f5 stdlib: Remove duplicated Pickler.reducer_override() (#3772) 2020-02-22 18:22:54 +01:00
Shantanu
ab36ecb784 io: add open_code for py38 (#3769) 2020-02-22 12:53:16 +01:00
lazytype
cfe69831e9 Include typing for Enum __order__ attribute (#3541)
Based on the behavior here: 0b41a922f9/Lib/enum.py (L91)
the `__order__` attribute should be treated the same as `_order_`
2020-02-21 21:40:33 -08:00
Rune Tynan
7d8e2c8546 Add missing argument types for xml.sax stubs (#3706)
* Add missing argument types for xml.sax stubs

* Fix xml typings
2020-02-21 21:38:11 -08:00
Rune Tynan
9425e359fc Add missing parameter types for _json (#3710)
* Add missing parameter types for _json make_encoder

* Fix json typings
2020-02-21 21:37:24 -08:00
Shantanu
ed2d3543c7 functools: add singledispatchmethod (#3764) 2020-02-21 21:36:47 -08:00
Shantanu
1b7eadce95 fcntl: various improvements (#3680)
* fcntl: mark positional-only args

* fcntl: use overload for fcntl.fcntl

The comment about depending on the type of arg seems incorrect
bf501353a0

I checked the docs and examples, CPython implementation and CPython tests, but
I might be missing something

* fcntl: use overload for fcntl.ioctl

Based off of docs and examples

* fcntl: type buffers better

Follows the approach in #2610
2020-02-21 21:31:58 -08:00
Shantanu
af2767d9d5 modulefinder: fix types for __init__, remove scan_opcodes from py35 (#3765)
* modulefinder: fix types

* modulefinder: scan_opcodes isn't present in py35

* modulefinder: update whitelists

* modulefinder: restore previous __init__ for py37 and below
2020-02-21 21:27:56 -08:00
Shantanu
0435be3432 curses: various fixes (#3771)
- fix arg names
- fix types based on default value
- mark positional-only args
2020-02-21 21:27:42 -08:00
Shantanu
b1071639b9 sre_parse: various fixes (#3758)
* sre_parse: NIC is stub implementation detail

* sre_parse: add missing arg to Tokenizer.getuntil

* sre_parse: fix types for parse

* sre_parse: fix types for SubPattern.__init__

* sre_parse: fix arg name for fix_flags

* sre_parse: update whitelists

* sre_parse: fix some availability for py35
2020-02-21 21:23:34 -08:00
Shantanu
ff7680cbfe inspect: various fixes (#3757)
* inspect: fix BlockFinder.tokeneater args

* inspect: fix formatargspec

* inspect: fix formatargvalues

* inspect: fix various arg names

* inspect: update whitelists
2020-02-21 21:23:21 -08:00
Shantanu
003fc6fa31 json: mark keyword-only args, remove deprecated arg (#3756)
* json: mark keyword-only args

Technically only true for Python 3.6+, but I didn't feel like copying
over the whole file just for Python 3.5. Let me know and I can.

* json: remove encoding from loads

This has been ignored and deprecated since 3.1 and will be removed in 3.9
It no longer even shows up in inspect.signature (in 3.8 it emits the
deprecation warning based on kwargs)

* json: update whitelists
2020-02-21 21:21:32 -08:00
Shantanu
d104386b40 difflib: fix various types (#3755) 2020-02-21 21:20:15 -08:00
Shantanu
d8d755d054 binascii: fix arg names, mark positional-only args (#3754) 2020-02-21 21:19:08 -08:00
Shantanu
5a2f4c8cde sys: various fixes (#3762)
* sys: simplify _getframe

* sys: mark positional-only args

* sys: fix platform availability

* sys: remove settscdump

This function is no longer documented in 3.6 and above (and doesn't
exist on master, was removed in 4fd64b9a6aba9e6e1a5d).
In 3.5 documentation it's mentioned that it's only available if Python
was compiled with a special flag:
https://docs.python.org/3.5/library/sys.html#sys.settscdump

* sys: update whitelists
2020-02-21 20:58:42 -08:00