Commit Graph
100 Commits
Author SHA1 Message Date
Sebastian Rittau aca5952361 Wrap vobject.win32tz in platform check (#5747) 2021-07-09 11:32:57 +02:00
Sebastian Rittau a7446632f7 Add third-party vobject stubs (#5733) 2021-07-08 18:26:24 -07:00
Sebastian Rittau 788b20e326 Upgrade Pillow stubs for Pillow 8.3 (#5731)
* Upgrade Pillow stubs for Pillow 8.3

* stubtest: ignore PIL._tkinter_finder

* Annotate TiffTags.py

* Pillow: stubtest and various other fixes

* Remove tkinter modules from stubtest_allowlist
2021-07-08 18:22:07 -07:00
Sebastian Rittau 1cffceb767 Add httplib2 third-party stubs (#5713) 2021-06-30 07:54:02 -07:00
Sebastian RittauandJelle Zijlstra 2b35ea5f91 Add caldav third-party stubs (#5684)
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
2021-06-30 16:28:40 +02:00
Sebastian Rittau 40b127d46a Add third-party commonmark stubs (#5702) 2021-06-30 07:19:43 -07:00
Sebastian Rittau f260ea2383 Add html5lib third-party stubs (#5701) 2021-06-29 21:15:59 -07:00
Sebastian Rittau 2b64f54008 Support @tests/requirements-stubtest.txt files (#5704) 2021-06-28 19:42:27 +02:00
Sebastian Rittau bda76bb7d8 Re-add python2 keys to METADATA temporarily (#5686) 2021-06-24 00:48:05 +02:00
Sebastian Rittau dd441645ad Make logging.StreamHandler generic over stream (#5681)
Closes #5680
2021-06-23 17:03:18 +03:00
Sebastian Rittau 816a92b8e8 Add Self type var to _typeshed (#5677)
Cf. #5676
2021-06-22 22:15:27 +02:00
Sebastian Rittau 3ec061022a Improve logging.StreamHandler and FileHandler (#5663)
* Use PEP 604, instead of Optional.
* Override FileHandler.stream and setStream to require a TextIOWrapper
  instead of a SupportsWrite object.
* FileHandler._open() now returns a TextIOWrapper instead of IO. Using
  anything but a file opened in text mode would not work.
2021-06-21 22:50:49 +02:00
Sebastian Rittau 68dc2d132b Move Python 2-only stubs to @python2 directory (#5660) 2021-06-21 11:28:25 -07:00
Sebastian Rittau a319ba4604 pkg_resources is part of setuptools (#5669) 2021-06-21 15:19:18 +01:00
Sebastian Rittau b1ef60c9d5 Update a few stub versions (#5670) 2021-06-21 07:15:00 -07:00
Sebastian Rittau 9ec2f87124 Copy args from json.loads() to requests.Response.json() (#5664) 2021-06-20 07:21:20 -07:00
Sebastian Rittau 67087721c5 Update mypy and black (#5665) 2021-06-20 07:14:56 -07:00
Sebastian RittauandAkuli bc2ec748f6 Move routes stubs to @python2 directory (#5637)
* Move routes stubs to @python2 directory

* Ignore Python-2-only stubs for stubtest

* Use standard idiom for re-exporting items

Co-authored-by: Akuli <akuviljanen17@gmail.com>
2021-06-18 17:05:23 +03:00
Sebastian Rittau 64f463172b bleach: Loosen attribute dict type (#5651)
Closes: #5650
2021-06-17 12:53:16 +02:00
Sebastian Rittau a98fceca2f Rename openssl-python to pyOpenSSL (#5649)
Remove stubtest allowlist

Set package version
2021-06-16 08:22:45 -07:00
Sebastian Rittau 4c3e3a68a6 Update bleach stubs (#5631) 2021-06-14 06:50:51 -07:00
Sebastian Rittau beb6891a3b Fix imports in paramiko (#5606) 2021-06-13 12:41:58 -07:00
Sebastian Rittau d3ba8a3858 Pillow: fix errors found by stubtest (#5629)
* Update Pillow stubtest allowlist

* Update cryptography allowlist
2021-06-13 15:15:51 +03:00
Sebastian RittauandAkuli 3368258e4a Add distributions arg to third-party stubtest (#5628)
* Add distributions arg to third-party stubtest

Make stubtest_third_party.py executable

Co-authored-by: Akuli <akuviljanen17@gmail.com>
2021-06-13 14:53:29 +03:00
Sebastian Rittau a3a355433d Add missing Pillow stubs (#5626)
These were generated with stubgen and then slightly hand edited, mostly
by fixing imports and a few other bits and bobs.
2021-06-12 18:38:59 -07:00
Sebastian Rittau f28100af19 Mark cryptography as obsolete (#5619)
Bump version to 3.3 (last version before Python 2 removal)
2021-06-12 10:51:53 +03:00
Sebastian Rittau d143a5d04b Metadata versions field now reflects the latest supported version (#5600) 2021-06-09 20:30:44 +02:00
Sebastian Rittau 6a6d5d8fd2 Fix zincrby argument order (#5608) 2021-06-09 21:16:34 +03:00
Sebastian Rittau d7d3926b2c Fix generate protobuf script and run formatters (#5605)
* Fix generate protobuf script

* Install and run black and isort
2021-06-09 19:13:31 +03:00
Sebastian RittauandJelle Zijlstra 5d811e18b5 Add rudimentary Pillow stubs (#5594)
* Add rudimentary Pillow stubs

Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
2021-06-09 17:36:46 +03:00
Sebastian Rittau 67a2ed7dd7 Fix PyJWT package name (#5604)
The "jwt" package on PyPI is actually a different, incompatible package,
called python-jwt. Fix the name, so that the package name is corrected
from types-jwt to types-PyJWT, matching the upstream name.
2021-06-09 16:36:27 +02:00
Sebastian Rittau 6e153a3a4e Bump versions of obsolete packages (#5601)
To latest version pre obsoletion
2021-06-09 07:24:38 -07:00
Sebastian Rittau 711580722b Enable pyright for all Python 3 stubs (#5597)
* pyright: disable reportUnknownParameterType

Unknown parameter types are preferred over Any annotations for
incomplete stubs. Especially larger stubs are expected to be
incomplete for some time and it would be a shame to lose the
other pyright warnings for those stubs.

* Also disable reportUnknownVariableType

Fix problems with tkinter

* Disable reportUnknownMemberType

Fix pyright problems
2021-06-09 07:14:22 -07:00
Sebastian Rittau c601d5cf3d Use stable mypy (#5595)
Use stable mypy

Pin all package versions

Don't upgrade pip itself
2021-06-09 11:27:45 +02:00
Sebastian Rittau 4edbeff5cc Update black, isort, flake8* (#5596) 2021-06-09 10:51:15 +03:00
Sebastian Rittau 87e805bce6 Remove AnyPath (#5592)
Part of #5470
2021-06-09 00:25:01 +02:00
Sebastian Rittau 52dd232a23 Rework Match.group handling (#5557)
* Rework Match.group handling

Standardize group(), groups(), groupdict(), and __getattr__() to return
Any instead of AnyStr. Also special case group(0) and __getattr__(0) to
always return AnyStr. Use PEP 604 for unions in changed lines.
2021-06-09 00:27:49 +03:00
Sebastian Rittau 746db19c3f Mark attrs stubs as obsolete (#5580) 2021-06-06 18:17:29 +03:00
Sebastian Rittau 7e1b8384a0 Return concrete server from abstract event loop (#5566)
https://docs.python.org/3/library/asyncio-eventloop.html?highlight=abstracteventloop#creating-network-servers
documents the methods as returning a concrete server object.
2021-06-03 07:03:45 -07:00
Sebastian Rittau 6ee67483a3 Rework socket (#5545)
* Extract _socket.pyi from socket.pyi.
* Extract _socket.socket from socket.socket.
* Fix socket.family annotation.
* Annotate SocketIO properly.
* SocketType is an alias of _socket.socket.
* Sort items in socket.pyi in the same order as in socket.py.
* Remove socket.EINTR.
* Use _typeshed.WriteableBuffer instead of custom alias.
* Add errorTab (Windows only).
* Add _socket.dup().
* Mark positional-only argments.
* Remove constructors from socket exceptions.
* socket.timeout is an alias for TimeoutError, starting with Python 3.10.
* Use PEP 604 in changed lines.
* Add alias for fileno arguments.
* getaddrinfo() port can be bytes.
* Explicitly override some SSLSocket methods.
* Allow ReadableBuffer in _CMSG arguments.
2021-05-30 20:17:33 +02:00
Sebastian Rittau f562713939 Use protocols instead of IO for bz2 (#5499) 2021-05-29 09:01:43 -07:00
Sebastian Rittau 9795bae6f7 Remove mypy_test_suite (#5543)
Closes: #5540
2021-05-28 05:00:48 -07:00
Sebastian Rittau ca256b85b9 asyncio.Server.socket fixes (#5538)
* Move socket from AbstractServer to Server.
* Fix Server.socket type on Python 3.7+.
* Use Iterable instead of list for socket argument.

Closes: #5535
2021-05-27 16:14:36 +02:00
Sebastian Rittau acca3181ed Improve dict.fromkeys() with None value (#5514)
Closes: #5512
2021-05-21 20:30:33 +03:00
Sebastian Rittau 21e647a184 Document _typeshed (#5501)
* Document _typeshed

Closes: #5486

* Allow README.md files
2021-05-19 22:15:21 +03:00
Sebastian Rittau 2c7bae6901 Use only literal overloads for ZipFile.__init__() (#5504) 2021-05-19 20:54:03 +02:00
Sebastian Rittau 8d6314b8f3 mypy test suite is broken, disable temporarily (#5505) 2021-05-19 19:33:57 +03:00
Sebastian Rittau 54a0bd80ee Add a comment about _typeshed to VERSIONS (#5447) 2021-05-19 11:01:33 +02:00
Sebastian Rittau 1ea3d0f003 tarfile improvements (#5492)
* Remove explicit Iterable super class
* Use Literals for mode parameters
* Import from collections.abc
* Use protocols for TarFile(fileobj=) and Tarfile.gzopen()
* Use object instead of Any as protocol return types
2021-05-19 10:13:35 +02:00
Sebastian Rittau de0c62ffeb zipfile: Replace an instance of IO with a protocol (#5471) 2021-05-18 18:42:59 -07:00
Sebastian Rittau f0bf6eebbd AnyStr cleanup (#5487)
* Replace all uses of StrPath, BytesPath, and AnyPath in Python 2 stubs.
* Add StrOrBytesPath as preferred alias for AnyPath.
* Replace all remaining AnyPath instances with StrOrBytesPath.
* Mark AnyPath as obsolete.

Part of #5470
2021-05-17 20:45:48 +02:00
Sebastian RittauandAkuli 51b7248154 Try to fix mypy_primer comment permissions (#5478)
Split the workflows again so the comment workflow has write
access to the repository.

Based on https://securitylab.github.com/research/github-actions-preventing-pwn-requests/

Co-authored-by: Akuli <akuviljanen17@gmail.com>
2021-05-17 20:32:14 +02:00
Sebastian RittauandJelle Zijlstra 7a9a107a63 Move IdentityFunction to _typeshed (#5483)
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
2021-05-17 12:04:35 +02:00
Sebastian Rittau 453963b536 Describe METADATA.toml files (#5436) 2021-05-16 22:26:49 +02:00
Sebastian Rittau a7302dc6cb Add aliases for 'function classes' to multiprocessing (#5346)
Part of #4313
2021-05-16 12:46:17 -07:00
Sebastian Rittau e5abd08f93 Replace PathLike unions with aliases from _typeshed (#5467)
Standardize on 'from os import PathLike'
2021-05-16 21:38:00 +02:00
Sebastian Rittau d72b1e8149 Give primer comment task all write permissions (#5475)
Cf. #5459
2021-05-16 12:26:31 -07:00
Sebastian Rittau 35acd2ad6f check_consistent: allow dots in module names (#5472) 2021-05-16 11:01:00 -07:00
Sebastian Rittau 6a9c89e928 Replace 'Text' with 'str' in py3 stdlib (#5466) 2021-05-16 07:10:48 -07:00
Sebastian Rittau dbe77b6ae9 importlib.resources was added in 3.7 (#5468)
Describe sub-module versioning
2021-05-16 07:04:28 -07:00
Sebastian Rittau 4a3b6eb8d8 Update explanation for importing builtins.str (#5465) 2021-05-16 13:55:08 +02:00
Sebastian Rittau 841a365284 Remove compatibility aliases (#5464)
* Remove compatibility aliases

Remove a few instances of Text

Use aliases from _typeshed

* Remove unused imports
2021-05-15 20:49:20 +03:00
Sebastian Rittau 056981b957 Try to fix mypy_primer permissions (#5462)
Cf.  #5459
2021-05-15 14:37:27 +02:00
Sebastian Rittau f94d838814 Fix primer comment permissions (#5452) 2021-05-15 00:15:55 +02:00
Sebastian Rittau 5b739e0ccb Split stdlib into Python 2 and 3 versions (#5442)
All new files in stdlib/@python2 are straight copies of the
corresponding files in stdlib.
2021-05-14 12:04:12 -07:00
Sebastian Rittau 8971c242cb Remove migration script; migration has happened (#5446)
* Remove migration script; migration has happened
2021-05-14 19:33:57 +03:00
Sebastian Rittau 322396bb32 configparser available since Python 3.0 (#5443)
It was called ConfigParser in Python 2.

Split out from #5442.
2021-05-14 05:24:50 -07:00
Sebastian Rittau 3ba35f3552 Split the tests section, extend ToC (#5433)
Move and consolidate venv setup and running isort/black/flake8 into
separate sections and link those sections from the ToC. Also extend
those sections slightly.

Move the tests section into a separate file.

Make venv name in pre-commit match name in CONTRIBUTING.
2021-05-13 15:41:04 +02:00
Sebastian Rittau d98fdd934c Move VERSIONS description to file itself (#5434) 2021-05-13 06:14:44 -07:00
Sebastian Rittau a34e5a36a8 Describe third-party removal process (#5435) 2021-05-13 06:08:55 -07:00
Sebastian Rittau 1b188921fd Move code of conduct to separate file (#5432)
The file CODE_OF_CONDUCT.md is the standard location for it and
is treated specially by GitHub, for example by linking to it directly
when opening issues and PRs.
2021-05-13 06:04:31 -07:00
Sebastian Rittau b1577ad1cb Rework README and CONTRIBUTING (#5429)
This shuffles sections around between README.md and CONTRIBUTING.md. CONTRIBUTING now contains information pertaining to opening PRs, README all other information. I have also moved the list of maintainers to a separate file.

I have kept most information intact for now, with two main exceptions:

I removed duplicated information.
For brevity's sake, I trimmed some explanations from the section about version checks.
I have restructured the CONTRIBUTING file to follow the order of the introductory "contribution process at a glance" section. This now serves as a bit of a table of contents.

Closes: #5422
2021-05-12 16:25:47 -07:00
Sebastian Rittau 2f30adad19 Remove two files from pytype's exclude list (#5427) 2021-05-12 11:58:48 -07:00
Sebastian Rittau 3db20f09ca pyjwt includes annotations since version 2.0.0 (#5426)
Relates to #4856
2021-05-12 19:57:48 +03:00
Sebastian Rittau 6a4583d0a8 Deprecate pallets stubs (#5424)
Part of #5423

* Support new metadata fields in check_consistent
2021-05-12 19:17:42 +03:00
Sebastian Rittau 7372952e29 Upgrade pyptype (#5420) 2021-05-12 07:12:03 -07:00
Sebastian Rittau 8787c7f496 Use newer mypy version for mypy_primer (#5397)
This will hopefully fix the mypy primer errors
2021-05-10 17:23:51 +03:00
Sebastian RittauandAkuli 5f6dbe3d3e Limit mypy primer comment to 30000 chars (#5396)
* Limit mypy primer comment to 30000 chars

GitHub enforces a limit of 64kB

Co-authored-by: Akuli <akuviljanen17@gmail.com>
2021-05-10 16:51:58 +03:00
Sebastian Rittau 1eb64b4372 Mark stdlib modules with upper version bounds (#5394)
* Mark stdlib modules with upper version bounds

* Add minus to all versions and enforce in check_consistent

* Fix check_consistent and mypy_test to work with new VERSIONS format
2021-05-10 16:29:43 +03:00
Sebastian Rittau d16017ba0d Drop mypy self test (#5344)
Closes: #5303
2021-05-06 06:55:49 -07:00
Sebastian Rittau 4ac3ccad45 black: enable skip_magic_trailing_comma (#5252)
* black: enable skip_magic_trailing_comma

* Remove spurious commas
2021-04-27 08:32:32 -07:00
Sebastian Rittau f1cd416dcf Allow comments workflow appropriate permission (#5258) 2021-04-27 00:58:56 -07:00
Sebastian Rittau 7ca219f9c4 Add permissions to all workflows (#5255) 2021-04-26 16:51:35 +02:00
Sebastian Rittau 45916045c8 Upgrade black to 21.4b0 and reformat (#5250)
This introduces newlines before decorators.
2021-04-26 13:58:27 +02:00
Sebastian Rittau 48b060cfa0 mypy self check: Use mypy version from requirements file (#5245) 2021-04-26 12:51:28 +02:00
Sebastian Rittau bac1918b5f PathLike cleanup (#5242)
Copy builtins._PathLike to os.PathLike

Use os.PathLike exclusively outside of builtins
2021-04-23 10:15:07 -07:00
Sebastian Rittau f527e96dc3 Remove docutils.nodes.reference, which has no resemblance to the implementation (#5235) 2021-04-20 14:59:39 +02:00
Sebastian Rittau 4d734e38dd Add docutils definitions and (incomplete) modules (#5192) 2021-04-16 11:50:23 -07:00
Sebastian Rittau ba0f2b929b Always generate a comment for mypy_primer (#5197)
This way, runs without output after runs with output can be clearly
determined. This also makes it easier to recognize when a run was not
completed.
2021-04-15 09:18:13 +02:00
Sebastian RittauandJelle Zijlstra 190e07236f Tighten ensure_future() return type using overloads (#5190)
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
2021-04-08 17:31:45 +02:00
Sebastian Rittau 2b9cd1e342 Suggest splitting Python 2 stubs (#5189)
Closes: #5049
2021-04-08 14:40:46 +02:00
Sebastian Rittau 9fbcc6cf95 Use protocols for gzip and _compression (#5170)
Closes: #5099
2021-04-07 20:06:19 -07:00
Sebastian RittauandAkuli 1906b98a4f Add @Akuli as maintainer (#5156)
* Add @Akuli as maintainer

Co-authored-by: Akuli <akuviljanen17@gmail.com>
2021-03-30 19:36:21 +03: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
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
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