Commit Graph
100 Commits
Author SHA1 Message Date
Shantanu 076983eec4 PathLike: make runtime_checkable (#4582)
I made PathLike a protocol in #4447, but it should also be
runtime_checkable.

Caught by mypy_primer:
src/werkzeug/utils.py:646: error: Only @runtime_checkable protocols can be used with instance and class checks
2020-09-27 07:50:56 +02:00
Shantanuandhauntsaninja 734d91f90b update-stubtest-whitelist: fix type errors (#4581)
Co-authored-by: hauntsaninja <>
2020-09-26 07:33:57 +02:00
Shantanu d6d2249edc builtins: rename _LT (#4579)
Having an obscure type variable name is causing some pretty inscrutable
errors. For instance:
```
xarray/core/utils.py:466: error: Value of type variable "_LT" of "sorted" cannot be "K"
tornado/simple_httpclient.py:324: error: Value of type variable "_LT" of "min" cannot be "Optional[float]"
```

I think having a more descriptive type variable name here is better for
user experience and helps address the "why" of an error.
2020-09-26 07:33:26 +02:00
Shantanuandhauntsaninja 12e82874d2 upgrade isort (#4576)
Co-authored-by: hauntsaninja <>
2020-09-25 13:57:15 -07:00
Shantanuandhauntsaninja cb6549fa8f markdown: add more stubs (#4574)
Co-authored-by: hauntsaninja <>
2020-09-25 22:29:21 +02:00
Shantanu b33896bcbc asyncio.run: fix type of debug (#4567) 2020-09-22 10:43:35 +02:00
Shantanuandhauntsaninja 8642d2aa97 pkgutil, sys: make types more precise (#4536)
Co-authored-by: hauntsaninja <>
2020-09-16 10:38:27 +02:00
Shantanuandhauntsaninja dc0b4262c3 builtins: minor improvements (#4535)
Co-authored-by: hauntsaninja <>
2020-09-13 18:08:48 +02:00
Shantanuandhauntsaninja 462c830194 codecs: various fixes (#4526)
Co-authored-by: hauntsaninja <>
2020-09-11 14:09:33 -07:00
Shantanuandhauntsaninja 861d6425b4 io: various fixes (#4525)
Co-authored-by: hauntsaninja <>
2020-09-11 08:30:03 +02:00
Shantanuandhauntsaninja 2330083732 stubtest: fix whitelists (#4513)
Downstream of the reintroduction of py39 to CI / running the unused whitelist entry flow in #4512

Co-authored-by: hauntsaninja <>
2020-09-05 01:10:52 -07:00
Shantanuandhauntsaninja ccfc1850e9 platform: update for py39 (#4506)
platform.DEVNULL seemed undocumented, but is eg, still mentioned in the
header comment of platform.py. So feels surprising this was removed
without much warning.

Co-authored-by: hauntsaninja <>
2020-08-31 15:28:37 -07:00
Shantanu 2d476d091b hmac: minor improvements (#4500) 2020-08-31 15:24:45 -07:00
Shantanuandhauntsaninja 5884ee2977 inspect: minor improvements (#4499)
Co-authored-by: hauntsaninja <>
2020-08-31 14:23:01 -07:00
Shantanuandhauntsaninja c8c62b32ac socket: fix platform availability (#4507)
also fix another CI merge race issue

Co-authored-by: hauntsaninja <>
2020-08-31 14:20:46 -07:00
Shantanuandhauntsaninja e9becf1da6 py39: enable in CI (#4494)
Github Actions now supports prerelease builds
https://github.com/actions/setup-python/issues/20

Co-authored-by: hauntsaninja <>
2020-08-31 22:05:57 +02:00
Shantanuandhauntsaninja 48c8939ce6 concurrent.futures: update for py39, minor fixes (#4503)
Note the new parameter doesn't actually exist on the base class, even
though it's documented as that being the case. Asked about it in https://bugs.python.org/issue39349

Co-authored-by: hauntsaninja <>
2020-08-31 22:04:49 +02:00
Shantanu 846e858bdc socket: add send_fds, recv_fds (#4501) 2020-08-31 22:03:30 +02:00
Shantanu fdd01b0036 os._AddedDllDirectory: add __init__ (#4498) 2020-08-31 11:52:28 +02:00
Shantanuandhauntsaninja d07e65c53e weakref: small improvements (#4495)
Co-authored-by: hauntsaninja <>
2020-08-30 06:43:58 -07:00
Shantanuandhauntsaninja ad5bc751f3 xml.etree.ElementTree: mark some removals (#4496)
Co-authored-by: hauntsaninja <>
2020-08-30 06:41:50 -07:00
Shantanuandhauntsaninja 193c7cb932 asyncio.tasks: update for py39 removals (#4493)
Co-authored-by: hauntsaninja <>
2020-08-29 22:07:20 -07:00
Shantanuandhauntsaninja 48c922e54a functools: use protocol for cmp_to_key return type (#4492)
Co-authored-by: hauntsaninja <>
2020-08-29 17:25:11 -07:00
Shantanu 723fcb368a pathlib.Path.open: bring on the overloads (#4407) 2020-08-21 20:36:43 -07:00
ShantanuandAkuli f23ce60668 stubtest: fix on windows (#4455)
Co-authored-by: Akuli
2020-08-17 14:55:58 -07:00
Shantanuandhauntsaninja b438ccc3bc PathLike: change to Protocol (#4447)
Co-authored-by: hauntsaninja <>
2020-08-16 05:15:51 -07:00
Shantanuandhauntsaninja 3be7918eb2 deprecated: support use as decorator (#4449)
As opposed to just a decorator factory

Co-authored-by: hauntsaninja <>
2020-08-15 21:25:13 -07:00
Shantanuandhauntsaninja bc6da51495 asyncio: export submodules (#4346)
Resolves #4345

Co-authored-by: hauntsaninja <>
2020-07-21 09:34:00 +02:00
Shantanu d998d37954 multiprocessing: revert changes to queue classes (#4314)
Partial revert of #4289. Fixes #4313
2020-07-16 15:03:25 -07:00
Shantanuandhauntsaninja 5ecdc08bb1 tarfile: fix arg name (#4326)
And update whitelist since #4322 fixed a thing

Co-authored-by: hauntsaninja <>
2020-07-12 20:27:43 +02:00
Shantanu fe58699ca5 collections/typing: fix various arg names (#4258)
This feels nervous, but if it passes unit tests it's unlikely to break
anything
2020-06-28 12:27:21 -07:00
Shantanu 64327e02e9 keyword: update for py39 (#4272) 2020-06-26 20:50:16 +02:00
Shantanuandhauntsaninja afcb46655a graphlib: add in py39 (#4268)
Co-authored-by: hauntsaninja <>
2020-06-26 20:49:50 +02:00
Shantanuandhauntsaninja 9a16b02187 argparse: fix for latest py39 (#4267)
https://github.com/python/typeshed/pull/4144 and
https://github.com/python/cpython/pull/11478#pullrequestreview-423968410
resulted in the issue being fixed upstream.


Co-authored-by: hauntsaninja <>
2020-06-26 12:55:23 +02:00
Shantanuandhauntsaninja cc150f1d76 compileall: update for py39 again (#4269)
Co-authored-by: hauntsaninja <>
2020-06-26 12:46:18 +02:00
Shantanuandhauntsaninja fc8b0ed94e builtins: remove __class_getitem__ from type (#4270)
Co-authored-by: hauntsaninja <>
2020-06-26 12:45:22 +02:00
Shantanu 2ba6939788 imaplib: update for py39 (#4271) 2020-06-26 12:40:27 +02:00
Shantanuandhauntsaninja 1c3f526fbf pickle: improve positional-arg accuracy in py39 and others (#4273)
Although technically data in loads is not positional-only in py38, but
we decided that that doesn't matter

Co-authored-by: hauntsaninja <>
2020-06-26 12:29:47 +02:00
Shantanuandhauntsaninja 70459abb44 Revert "zip: add some overloads for heterogeneous tuples (#3830)" (#4254)
This reverts commit e857ad6ba9.

Co-authored-by: hauntsaninja <>
2020-06-25 08:46:02 -07:00
Shantanuandhauntsaninja 9723afef8a stubtest whitelists: update (#4257)
Co-authored-by: hauntsaninja <>
2020-06-23 08:55:40 +02:00
Shantanuandhauntsaninja ecb43149f7 builtins: NotImplemented is not callable (#4222)
Fixes #3315

Co-authored-by: hauntsaninja <>
2020-06-10 22:05:16 -07:00
Shantanuandhauntsaninja 86f03f2d7b stubtest: remove unused whitelist entries (#4217)
Co-authored-by: hauntsaninja <>
2020-06-11 01:32:42 +02:00
Shantanuandhauntsaninja 72c8907760 tkinter: fix version availability (#4207)
Co-authored-by: hauntsaninja <>
2020-06-09 12:20:48 +02:00
Shantanuandhauntsaninja f2f65bcf8d profile/cProfile: minor improvements (#4202)
Co-authored-by: hauntsaninja <>
2020-06-08 11:45:55 +02:00
Shantanuandhauntsaninja 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
Shantanuandhauntsaninja 7c5a4c96ca stubtest_unused: fix for py36 and earlier (#4187)
Co-authored-by: hauntsaninja <>
2020-06-06 16:50:50 +02:00
Shantanuandhauntsaninja 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
Shantanu 7aabfcc65a array: update for py39 (#4180) 2020-06-04 18:32:24 -07:00
Shantanu 5369e813a9 argparse: fix error __init__, add BooleanOptionalAction for py39 (#4144) 2020-06-04 16:00:52 -07:00
Shantanuandhauntsaninja c879392b02 CI: remove py39 (#4154)
I can't find a way to pin it to beta, and if they're going to make
changes that will break typeshed CI we shouldn't run it in CI.

I would like to make this run with Travis' allow_failures, but I can't
seem to make it work.

Co-authored-by: hauntsaninja <>
2020-06-01 22:42:23 -07:00
Shantanuandhauntsaninja de2c2947fe windows: fix splitunc param name (#4143)
Co-authored-by: hauntsaninja <>
2020-05-29 20:37:19 -04:00
Shantanuandhauntsaninja 6590a36776 stubtest whitelists: clean up duplicate entries (#4142)
Co-authored-by: hauntsaninja <>
2020-05-29 18:32:26 -04:00
Shantanuandhauntsaninja 62304eb02f asyncio: update cancels for py39 (#4135)
Co-authored-by: hauntsaninja <>
2020-05-28 13:42:31 -07:00
Shantanuandhauntsaninja da2aa297a2 pathlib: update for py39 (#4134)
Co-authored-by: hauntsaninja <>
2020-05-28 13:41:53 -07:00
Shantanu feb43f7237 asyncio: add asyncio.threads for py39 (#4136) 2020-05-28 13:37:46 -07:00
Shantanuandhauntsaninja 2f0e3dbed2 statistics: add zscore in py39 (#4130)
Co-authored-by: hauntsaninja <>
2020-05-27 22:09:46 -07:00
Shantanuandhauntsaninja 1c0403cf83 random: various fixes (#4128)
* random.sample: make counts keyword-only

* random: mark positional-only args

* random.triangular: fix type of mode

* random: add randbytes

Co-authored-by: hauntsaninja <>
2020-05-27 22:05:55 -07:00
Shantanu eca19f00fb bdb: various fixes (#4127) 2020-05-27 21:42:45 -07:00
Shantanuandhauntsaninja e8d0cadf7b aifc: update for py39 (#4126)
Co-authored-by: hauntsaninja <>
2020-05-27 21:42:32 -07:00
Shantanu c3c6abc153 gettext: various fixes (#4125) 2020-05-27 21:26:58 -07:00
Shantanuandhauntsaninja 22fd5e916a wsgiref: fix arg name, make close an instance variable (#4123)
Co-authored-by: hauntsaninja <>
2020-05-27 21:06:11 -07:00
Shantanu e9531e0c18 _tracemalloc: precise types, deduplicate tracemalloc (#4083) 2020-05-27 20:36:21 -07:00
Shantanuandhauntsaninja 5cf2fb703a tempfile: fix TemporaryFile on Windows (#4112)
Co-authored-by: hauntsaninja <>
2020-05-27 20:22:01 -07:00
Shantanuandhauntsaninja c988348179 ctypes: fix arg name on windows (#4111)
Co-authored-by: hauntsaninja <>
2020-05-27 20:21:45 -07:00
Shantanuandhauntsaninja 2a13ba9415 compileall: update for py39 (#3956)
* compileall: add stripdir, prependdir and limit_sl_dest

* compileall: compile_dir's default value is now None

* compileall: update for current py39 (as of beta1)

Co-authored-by: hauntsaninja <>
2020-05-27 20:18:19 -07:00
Shantanu fd203e663e py39: add PEP 616 methods (#4090) 2020-05-27 19:24:25 -07:00
Shantanuandhauntsaninja 02e1a68a56 argparse: add Action.format_usage (#4114)
Co-authored-by: hauntsaninja <>
2020-05-27 18:36:01 -07:00
Shantanuandhauntsaninja 54c99ff75f asyncio: add shutdown_default_executor (#4115)
There are a couple other py39 changes to be made in asyncio, but I'm
trying to avoid merge issues with whitelists / Windows for now.

Co-authored-by: hauntsaninja <>
2020-05-27 18:35:39 -07:00
Shantanuandhauntsaninja 6575bd06bb stubtest: run on py39 (#4110)
I've made mistakes in #4069 and #4010 that would have been caught by
this, so seems worth it to add now, and continue to remove from
whitelists.
Note that we run with --ignore-missing-stub in CI, so this whitelist
isn't all the changes we'd need to fully support Python 3.9

Co-authored-by: hauntsaninja <>
2020-05-27 12:31:16 -07:00
Shantanu bdb149da78 stubtest: update version, whitelists (#4088)
This is for https://github.com/python/mypy/pull/8886
2020-05-27 10:11:52 +02:00
Shantanuandhauntsaninja a94d6511fd xml.etree.ElementInclude: update include for py39 (#4086)
Co-authored-by: hauntsaninja <>
2020-05-26 17:39:36 -07:00
Shantanu d313e170b7 threading: update for py39 (#4087) 2020-05-26 17:37:07 -07:00
Shantanuandhauntsaninja 3eb6fb8714 functools: add cache (#4089)
Co-authored-by: hauntsaninja <>
2020-05-26 17:36:01 -07:00
Shantanuandhauntsaninja 448c4e1fa7 asyncio.protocols: fix version availability (#4081)
Co-authored-by: hauntsaninja <>
2020-05-25 21:54:05 -07:00
Shantanuandhauntsaninja 18121d71c8 concurrent.futures: fix top level available objects, add InvalidStateError (#4021)
* concurrent.futures: add InvalidStateError

* concurrent.futures: fix package imports

* asyncio.futures: fix import

* concurrent.futures: fix version availability for BrokenExecutor

* concurrent.futures: make consistent

* concurrent.futures: update whitelist

Co-authored-by: hauntsaninja <>
2020-05-25 15:38:09 -07:00
Shantanuandhauntsaninja 4daf0df929 tracemalloc: a number of fixes (#4078)
* tracemalloc.Frame: add __init__

* tracemalloc.Snapshot: add __init__

* tracemalloc.Snapshot: fix a staticmethod

* tracemalloc.Statistic: add __init__

* tracemalloc.StatisticDiff: add __init__

* tracemalloc.Trace: add __init__

* tracemalloc.Traceback: add __init__

* tracemalloc: fix version availability, Trace __init__

* tracemalloc.Traceback: add total_nframe property

* tracemalloc.Trace: add properties

* tracemalloc.Traceback.format: add parameter

* tracemalloc.start: make positional-only

* tracemalloc.Filter: fix version availability

* update whitelists

Co-authored-by: hauntsaninja <>
2020-05-25 15:36:35 -07:00
Shantanuandhauntsaninja 4b007a50b4 signal: improve version availability (#4079)
Co-authored-by: hauntsaninja <>
2020-05-25 15:29:52 -07:00
Shantanu 6aee098401 fractions: use __new__ instead of __init__ (#4077)
Tested against some example code.
2020-05-25 15:29:28 -07:00
Shantanu 6028226750 plistlib: update for py39 (#4073) 2020-05-24 20:38:18 -07:00
Shantanu 00a27634b1 threading: fix inheritance (#4072) 2020-05-24 18:51:30 -07:00
Shantanuandhauntsaninja 9b89423f02 chardet: add default value (#4074)
Co-authored-by: hauntsaninja <>
2020-05-24 18:48:24 -07:00
Shantanuandhauntsaninja 997c73ae79 travis: start testing 3.9 somewhat (#4071)
* travis: run stubtest on py39, allowing failures

* travis: run mypy with python version 3.9

* boto.compat, base64: fix version handling of (en|de)codebytes

* venv: fix #4010

Co-authored-by: hauntsaninja <>
2020-05-24 18:45:16 -07:00
Shantanuandhauntsaninja 8cf04f3a74 boto.compat, base64: fix version handling of (en|de)codebytes (#4070)
Co-authored-by: hauntsaninja <>
2020-05-24 18:44:43 -07:00
Shantanuandhauntsaninja 8f6fd0e05a functools: add TopologicalSorter for py39 (#4068)
* functools: add TopologicalSorter for py39

* fix flake8 error

Co-authored-by: hauntsaninja <>
2020-05-24 18:44:28 -07:00
Shantanuandhauntsaninja e560ce0f57 bisect: hi is Optional (#4063)
Shows up in 3.9 because of https://github.com/python/cpython/pull/20163

Co-authored-by: hauntsaninja <>
2020-05-24 17:53:03 -07:00
Shantanuandhauntsaninja 9c53756f9c random: update for py39 (#4069)
Co-authored-by: hauntsaninja <>
2020-05-24 17:51:53 -07:00
Shantanuandhauntsaninja 070be22f7e venv: fix #4010 (#4062)
Co-authored-by: hauntsaninja <>
2020-05-24 17:51:43 -07:00
Shantanuandhauntsaninja 8e03f33d84 difflib: update for py39 (#4067)
Adds default values, the hi params can now be None

Co-authored-by: hauntsaninja <>
2020-05-24 17:41:45 -07:00
Shantanuandhauntsaninja 2b3a4e8fbe wave: openfp is removed in py39 (#4064)
Co-authored-by: hauntsaninja <>
2020-05-24 17:40:20 -07:00
Shantanuandhauntsaninja 3910eb1735 argparse: update for py39 (#4065)
Co-authored-by: hauntsaninja <>
2020-05-24 17:40:06 -07:00
Shantanuandhauntsaninja b367799634 sunau: openfp is removed in py39 (#4066)
Co-authored-by: hauntsaninja <>
2020-05-24 17:34:48 -07:00
Shantanuandhauntsaninja 9a5ba013a1 python3: remove _subprocess (#4022)
This doesn't seem to exist in Python 3.5, which is the earliest Python3
we support, and this folder is in stdlib/3

Co-authored-by: hauntsaninja <>
2020-05-18 14:07:08 -07:00
Shantanu 1f7023b957 subprocess: mark arg keyword-only, fix name, add property (#4024) 2020-05-18 18:59:34 +02:00
Shantanuandhauntsaninja a675778140 dis: various fixes to dis.dis (#4027)
Co-authored-by: hauntsaninja <>
2020-05-17 08:59:11 -07:00
Shantanuandhauntsaninja 26566af893 bisect: fix availability, consistency, reduce duplication (#4028)
Co-authored-by: hauntsaninja <>
2020-05-17 08:52:37 -07:00
Shantanuandhauntsaninja 462a3e9dcd asyncio: fix signature of set_write_buffer_limits (#4025)
Co-authored-by: hauntsaninja <>
2020-05-17 08:50:31 -07:00
Shantanuandhauntsaninja 4405250ed1 pyclbr: add parent argument for py37 on (#4029)
Co-authored-by: hauntsaninja <>
2020-05-17 08:25:18 -07:00
Shantanuandhauntsaninja 9c9eae8462 opcode: fix positional-only args (#4026)
Co-authored-by: hauntsaninja <>
2020-05-17 07:20:28 -07:00
Shantanuandhauntsaninja 5a3a47264f ast: add indent to dump in py39 (#4007)
Co-authored-by: hauntsaninja <>
2020-05-16 17:03:03 -07:00
Shantanu 061e58deb8 _ast: fix version availability for py39, fix up some visit_ methods (#4008) 2020-05-16 17:02:08 -07:00