Commit Graph

3104 Commits

Author SHA1 Message Date
Edgar Handal
4594164977 Improve PathLike handling for subprocess cmd/env (#5185) 2021-04-05 21:32:48 -07:00
Ryan McCampbell
701e741946 Rename _CursesWindow to window (#5180)
* Rename _CursesWindow to window in Python >= 3.8

The name _CursesWindow is not exposed at runtime which makes explicit type annotation difficult. It has to be wrapped in quotes, and this doesn't seem to work for all type checkers: PyLance's typechecker accepts it but Jedi's doesn't (tested in VS Code). This is especially annoying because with curses.wrapper(callback) there is no way to infer the type of the passed window except with an explicit annotation.
Experimentally, the type is exposed under the name "_curses.window" in Python 3.9 on both Ubuntu and Windows (via [windows-curses](https://pypi.org/project/windows-curses/)). While this is not explicitly documented as public, it is the name used for all the window method docs, and it is probably unlikely to change since some might interpret the lack of underscore as indicating it is public. Unfortunately it doesn't seem to be exposed as such in Python 2, but `¯\_(ツ)_/¯`. Using the runtime name should allow type checking to work with most typecheckers/platforms without quotes, and the old name can be kept as an alias for backwards compatibility.

I discovered the name _curses.window is only actually exported in Python >= 3.8 so I moved the name behind a version check, and reverted the original class name to _CursesWindow

Co-authored-by: Akuli <akuviljanen17@gmail.com>
2021-04-05 23:59:37 +03:00
hatal175
2e703c37e9 Fix importlib stubtest exceptions (#5148)
Co-authored-by: Shantanu <12621235+hauntsaninja@users.noreply.github.com>
2021-04-05 12:01:26 -07:00
hatal175
82130cca56 Fix distutils and difflib stubtest exceptions (#5182) 2021-04-05 12:00:32 -07:00
hatal175
ef9b37ecab codecs stubtest exceptions (#5179) 2021-04-03 22:44:16 -07:00
naglis
6a8b6cc674 Add stub for xml.etree.ElementTree.indent (#5178) 2021-04-03 20:46:13 +03:00
Stanislav Levin
acfaa70aa7 [stdlib] Add MININT and MAXINT for xmlrpc.client (#5173)
These constants are in this module since Python3.0

Signed-off-by: Stanislav Levin <slev@altlinux.org>
2021-04-02 14:20:36 +03:00
Akuli
e98f398abc allow bytes in tkinter.PhotoImage (#5171) 2021-04-01 12:54:49 +02:00
dod-wdwilcox
059ab3868f add stubs for Manager, Logger.root, Logger.manager (#5160)
* add stubs for Manager, Logger.root, Logger.manager
2021-03-31 20:58:51 +03:00
Tigran Kostandyan
1ed1e00046 fix name attribute for Toplevel class (#5146) 2021-03-29 18:40:16 +02:00
hatal175
20a6de8fdd Stubtest exceptions for sys, symtable, sysconfig and tarfile (#5138) 2021-03-26 21:33:19 -07:00
Dominic Davis-Foster
839d711c6f Fix constructor annotation for configparser.DuplicateOptionError (#5142)
Fixes #5141
2021-03-26 18:36:19 +01:00
hatal175
5b730d4ded Fix Shlex stubtest errors (#5135) 2021-03-23 20:56:47 -07:00
hatal175
88a8d0ccbc Explaining/Fixing asyncio allowlist exceptions (#5132) 2021-03-23 17:14:30 -07:00
Eric Traut
f8e70d66e8 Improved overloads for mkstemp and mktemp functions in tempfile.pyi (#5133) 2021-03-23 17:07:46 -07:00
Takumi Kato
75005741e6 Accept complex arguments to cmath functions (#5131) 2021-03-23 11:44:11 +01:00
Sebastian Rittau
5f52e38fdd Use SupportsWrite instead of IO (#5069) 2021-03-22 19:46:45 -07:00
Sebastian Rittau
29061d36ae Fix dict type if constructing with kwargs (#4987)
Closes #4846
2021-03-22 19:30:01 -07:00
Sebastian Rittau
0cea325bc7 Modernize logging (#5068) 2021-03-22 19:26:43 -07:00
Gilad Reti
758224b231 fix ctypes _FuncPointer restype (#5079) 2021-03-22 19:25:10 -07:00
Edgar Handal
45c916e8d2 Type fixes for tempfile.TemporaryDirectory (#5121)
If no arguments are passed to the TemporaryDirectory constructor, then
the class defaults to using str. Overload the __init__ function to
cover this case.
2021-03-22 18:30:22 -07:00
Eric Traut
0ec182227c Added a few missing type arguments for generic types used in stdlib stubs
I just found and fixed a bug in pyright's "missing type arguments" check. When type arguments were omitted for a generic type within a subscript expression, the error was being suppressed. With this bug fixed, I found several new cases where type arguments were missing in stdlib stubs. (#5130)

Co-authored-by: Eric Traut <erictr@microsoft.com>
2021-03-22 18:28:04 -07:00
krouziciorel
a68fb50788 turtle.pyi: Add functions copied from _Screen (#5104)
The turtle module re-exports methods of its classes as top-level functions.
Typeshed includes most of these, but `exitonclick` and others from the
`_Screen` class were missing.
Add them.

Co-authored-by: Petr Viktorin <encukou@gmail.com>
2021-03-19 11:10:28 +01:00
Edgar Handal
5bc6726e3f Set xml.etree iterfind return types to Generator (#5126) 2021-03-18 09:31:00 +01:00
John T. Wodder II
fc2933ca64 Make "addresses" argument to email.headerregistry.Group an Iterable (#5124)
Fixes #5123
2021-03-16 19:07:58 +01:00
hatal175
3de5d893de Add Curses ACS Codes (#5116)
Closes: #5115
2021-03-15 15:24:32 +01:00
Eric Traut
29c3d67626 Improved definition of divmod function in builtins (#5114)
Co-authored-by: Eric Traut <erictr@microsoft.com>
2021-03-15 11:10:09 +01:00
Jelle Zijlstra
30fc2b8cd0 fix positional-only arguments to str and bytes (#5112) 2021-03-12 15:33:25 -08:00
Andrew Crabtree
a3cfb4e507 Add missing msg type to ImportError (#5111)
Fixes #5107
2021-03-12 11:20:46 -08:00
Eric Traut
faa5c70f25 Added missing type information for encodings module (#5106)
Co-authored-by: Eric Traut <erictr@microsoft.com>
2021-03-10 17:18:32 -08:00
Dominic Davis-Foster
8115299ee2 Add "policy" attribute to email.message.Message (#5096)
Fixes #5094
2021-03-08 15:03:10 +01:00
Mark Vismonte
861f0a9844 Use collections.abc.Set in assertSetEqual (#5090) 2021-03-06 21:04:14 +01:00
Eric Traut
c92e3cb228 Update pyright CI test to use the latest version of pyright (1.1.118). (#5092)
Update pyright CI test to use the latest version of pyright (1.1.118). Enable all but one of pyright's strictest checks. Add a "# type: ignore" to `__new__` method in `weakref.KeyRef` because it uses a non-standard name for the `cls` parameter, which is flagged as an error by pyright.

Co-authored-by: Eric Traut <erictr@microsoft.com>
2021-03-05 12:12:18 -08:00
Mark Vismonte
ea7f1f9c2d Use Mapping in assertDictEqual (#5088) 2021-03-04 15:52:21 -08:00
Sebastian Rittau
2b19c761ec Fix build (#5086)
Run the mypy test suite using Ubuntu 18.04. Ubuntu 20.04 doesn't have a package for virtualenv on Python 2.

Also, curses.color_pair() now has a named argument.
2021-03-04 17:11:37 +01:00
Jürgen Gmach
771e872cf6 fix type for xmlrpc.client.Fault.faultCode (#5083)
The type of `faultCode` was declared as `str`, but it has to be an `int`.

See e.g. http://xmlrpc.com/spec.md. See also https://bugs.python.org/issue43354.
2021-03-02 13:57:26 +01:00
Jon Dufresne
b03cd49a87 Type optparse.Option.default attribute (#5080)
1e3c68246e/Lib/optparse.py (L458)
2021-02-28 09:15:38 -08:00
Eric Traut
e2967a8bee Eliminated the use of "bare" TypeVars in stdlib stubs (#5041)
Eliminated the use of "bare" TypeVars (i.e. a TypeVar that appears only once) within generic methods. While not considered an error in PEP 484, these are a common source of bugs in code, and some type checkers (including pytype and pyright) flag them as errors.

Co-authored-by: Eric Traut <erictr@microsoft.com>
2021-02-27 19:43:45 -08:00
Vyom Pathak
3c0f2acdf0 Changed: Name argument type to support None value (#5075)
Closes: #5027
2021-02-27 11:32:31 +01:00
Eric Traut
82cb8c27df Fix conditional imports within collections (#5040)
Co-authored-by: Eric Traut <erictr@microsoft.com>
2021-02-26 20:33:33 -08:00
Eric Traut
4b4ced5fa0 Added missing type annotations and type arguments (#5070)
Co-authored-by: Eric Traut <erictr@microsoft.com>
Co-authored-by: Shantanu <hauntsaninja@users.noreply.github.com>
2021-02-25 15:09:58 -08:00
Sebastian Rittau
08b26b9e8e Split and restore correct Python 2 version of cgi.pyi (#5064)
* Split cgi.pyi into Py2 and 3 versions

* Restore correct Python 2 version of cgi.pyi

* Remove unnecessary version checks in cgi.pyi

* Use collections.abc

* Use List in Python 2 stub
2021-02-24 14:46:03 -08:00
Sebastian Rittau
c152e050f5 Fix stubtest errors (#5063)
A security fix added a "separator" argument to several URL parsing
functions and method in point releases:

* 3.6.13
* 3.7.10
* 3.8.8
* 3.9.2

Until all these versions are available on the GitHub Actions runners,
we need to whitelist the functions in the stubtests.
2021-02-24 14:37:38 +01:00
Sebastian Rittau
c21329b68a Recommend using PEP 585 (#5055)
* Remove conventions enforced by black

Remove old note about optional default arguments (now part of
PEP 484 and enforced by CI)

* Recommend to use PEP 585

Cf. #4820

* Try out using collections.abc

* Reference mypy bug
2021-02-23 16:41:31 -08:00
Eric Traut
a1f16da64e Added some missing parameter annotations and type arguments detected by pyright. (#5061)
Co-authored-by: Eric Traut <erictr@microsoft.com>
2021-02-23 19:46:53 +01:00
Eric Traut
c7c025ae08 Removed a bunch of unused import symbols detected by pyright. (#5060)
Co-authored-by: Eric Traut <erictr@microsoft.com>
2021-02-23 19:46:46 +01:00
Akuli
507ca60ff8 relax call argument type (#5056) 2021-02-23 11:26:27 +01:00
Sebastian Rittau
c8df617726 Use built-in generic (#5050) 2021-02-23 10:04:51 +01:00
Eric Traut
ffcd592aef Added support for | operator for combining two TypedDict instances (#5054)
Co-authored-by: Eric Traut <erictr@microsoft.com>
2021-02-23 10:04:31 +01:00
JonathanMeans
f4c35f1059 assert_has_awaits takes Iterable[_Call] instead of _CallList (#5052) 2021-02-22 22:55:51 +01:00