Commit Graph
100 Commits
Author SHA1 Message Date
Shantanuandhauntsaninja e380432825 comment on memoryview.cast (#5118)
Co-authored-by: hauntsaninja <>
2021-03-15 17:26:47 -07:00
Shantanuandhauntsaninja 38a1c344c9 Small fixes for Python 3.10 (#5044)
This is enough to get stubtest working (note that it's a little annoying
to install mypy currently since typed-ast seems to have broken again on
Python 3.10)

Co-authored-by: hauntsaninja <>
2021-02-20 18:44:36 -08:00
Shantanuandhauntsaninja 1959669aa4 mypy_primer: don't fail silently on comment failure (#5002)
Co-authored-by: hauntsaninja <>
2021-02-03 08:35:38 +01:00
Shantanu c39f8b942b Run mypy_primer with a newer mypy (#4980) 2021-01-28 20:03:16 -08:00
Shantanu d7bbc9ea67 Re-enable stubtest (#4979) 2021-01-28 05:22:55 -08:00
Shantanuandhauntsaninja bcba4f4fce runpy: return globals dict (#4965)
Fixes #4964

Co-authored-by: hauntsaninja <>
2021-01-23 13:06:26 +01:00
Shantanuandhauntsaninja eb9d995362 allowlist ctypes.wintypes (#4961)
The unused cronjob removed this for unclear reasons in #4935

Co-authored-by: hauntsaninja <>
2021-01-21 18:46:10 -08:00
Shantanu 053e0df0a5 Stub for ossaudiodev (#4944) 2021-01-19 20:25:02 +01:00
Shantanu b4e447d70a builtins: complex doesn't define __complex__ (#4945) 2021-01-18 12:01:37 +01:00
Shantanuandhauntsaninja 8a46859e0b multiprocessing.pool: fix constants (#4938)
Co-authored-by: hauntsaninja <>
2021-01-17 17:07:59 -08:00
Shantanu c4f3207437 functools: fix singledispatch (#4942)
This is tricky, but should match the runtime logic better.

Fixes #4408
2021-01-17 17:01:17 -08:00
Shantanu 5df4c3d275 dataclasses: various fixes (#4937) 2021-01-17 16:54:08 -08:00
Shantanu 8de9b856e4 itertools: fix postional-only args, stubtest whitelist (#4936) 2021-01-16 13:31:11 +01:00
Shantanuandhauntsaninja c3854d26f6 migrate_script: prefix @ to python2 (#4931)
As suggested by Jukka in https://github.com/python/typeshed/issues/2491

Co-authored-by: hauntsaninja <>
2021-01-15 09:27:30 -08:00
Shantanu c893857f46 itertools: fix signature of accumulate (#4933)
Resolves #4888
2021-01-14 21:07:14 +01:00
Shantanuandhauntsaninja 6a53e992fe itertools.tee: use positional-only args (#4934)
Co-authored-by: hauntsaninja <>
2021-01-14 08:41:39 +01:00
Shantanuandhauntsaninja 484c014665 Suffix T to type variable names (#4898)
* _MessageType to _MessageT

* _default to _T

* _TConnection to _ConnectionT, _TListener to _ListenerT

* _Number to _NumberT

* _MessageVar to _MessageT

* _Type to _TypeT

* _ArgType to _T

* _Ch to _CharT

Co-authored-by: hauntsaninja <>
2021-01-04 09:03:32 +01:00
Shantanuandhauntsaninja 781430fdf1 multiprocessing: improve Server (#4886)
Co-authored-by: hauntsaninja <>
2021-01-02 00:54:28 +01:00
Shantanuandhauntsaninja 0a8fd098ca ast: remove docstring attribute (#4868)
As mentioned in #4760

Co-authored-by: hauntsaninja <>
2020-12-29 08:43:15 +01:00
Shantanuandhauntsaninja 12f0be025f mypy_primer: shard across two CI jobs (#4865)
Co-authored-by: hauntsaninja <>
2020-12-28 11:17:39 +01:00
Shantanuandhauntsaninja bc3ed283df ctypes.wintypes can be imported on linux in 3.9.1 (#4858)
See https://bugs.python.org/issue16396

Co-authored-by: hauntsaninja <>
2020-12-26 16:01:23 +01:00
Shantanuandhauntsaninja 32420769cd Revert "Remove unused stubtest whitelist entries (#4839)" (#4842)
This reverts commit fcc2416d43.

Co-authored-by: hauntsaninja <>
2020-12-19 23:24:35 -05:00
Shantanuandhauntsaninja e035760d62 Return mypy_primer to CI (#4806)
Much of the comment script is based off of https://github.com/dawidd6/action-download-artifact

Co-authored-by: hauntsaninja <>
2020-12-14 18:31:30 +01:00
Shantanuandhauntsaninja a93fa6120e mypy_test: fix for stub deletions (#4816)
I think this should helps prevent issues like #4815

Co-authored-by: hauntsaninja <>
2020-12-13 23:41:20 -08:00
Shantanuandhauntsaninja 74147313cd Remove mypy_primer (#4795)
Co-authored-by: hauntsaninja <>
2020-11-29 23:03:42 -08:00
Shantanuandhauntsaninja 20446030c5 Fix stubtest unused cron job (#4782)
Co-authored-by: hauntsaninja <>
2020-11-21 19:36:27 +01:00
Shantanuandhauntsaninja c3e04054cf README.md: update for the times (#4757)
Fixes #4754

Co-authored-by: hauntsaninja <>
2020-11-10 20:52:57 +01:00
Shantanuandhauntsaninja 27c16169f3 typing: remove __class_getitem__ from Protocols (#4741)
Co-authored-by: hauntsaninja <>
2020-11-03 08:13:43 +01:00
Shantanu 65603f829f xxlimited: add stubs (#4736) 2020-11-01 12:54:17 -08:00
Shantanuandhauntsaninja 620989bac5 typeshed: update stubtest version (#4739)
* typeshed: update stubtest version

Includes changes from https://github.com/python/mypy/pull/9680
I've already fixed all the true positives on typeshed.

* attempt to fix windows' _WarnFunction

Co-authored-by: hauntsaninja <>
2020-11-01 12:35:21 +01:00
Shantanuandhauntsaninja d379d4ce48 posix: fix WIF* definitions (#4737)
Co-authored-by: hauntsaninja <>
2020-10-31 18:36:34 -07:00
Shantanuandhauntsaninja 2702f8c32e ctypes: fix argument names (#4735)
Co-authored-by: hauntsaninja <>
2020-10-31 18:34:25 -07:00
Shantanuandhauntsaninja c58a93b928 mypy_primer: speed up, clean up (#4730)
We use tee and no longer try to delete the file based on exit code,
since we use data.trim now.
mypy_primer started failing silently because of changes in aiohttp, so
now we'll fail if the exit codes are not 0 or 1.
Note mypy_primer has --project-date to get around the problem of
breaking changes in projects, but I want to try and keep mypy_primer up
to date / get a feel for how bad this problem actually is.

Co-authored-by: hauntsaninja <>
2020-10-30 09:16:11 +01:00
Shantanuandhauntsaninja 3f35c92e7f concurrent.futures: use DoneAndNotDoneFutures (#4729)
Fixes #1976

Co-authored-by: hauntsaninja <>
2020-10-29 22:56:30 +01:00
Shantanuandhauntsaninja 96d7d77a04 mypy_test_suite: run a subset of tests (#4723)
Only a subset of mypy's test suite should be relevant to typeshed:
https://github.com/python/mypy/pull/9638
This should make things faster.
(Also the -n12 argument to pytest is weird; note mypy's pytest.ini
automatically specificies -nauto which is what we should want)

Resolves https://github.com/python/typeshed/issues/4333

Co-authored-by: hauntsaninja <>
2020-10-28 08:44:19 +01:00
Shantanuandhauntsaninja 25b3004ad8 mypy_primer: post a more informative message (#4719)
Co-authored-by: hauntsaninja <>
2020-10-27 07:47:59 +01:00
Shantanuandhauntsaninja fc171339ce mypy_primer: attempt to fix workflow (#4718)
This will take some merge and debug...

Co-authored-by: hauntsaninja <>
2020-10-26 13:03:08 -07:00
Shantanuandhauntsaninja 1bd808a458 mypy_primer: post failures as comments (#4672)
Co-authored-by: hauntsaninja <>
2020-10-26 10:58:49 +01:00
Shantanuandhauntsaninja 8581da07fe builtins: remove unused imports (#4715)
Co-authored-by: hauntsaninja <>
2020-10-26 08:06:34 +01:00
Shantanuandhauntsaninja 1dd1b701c9 _typeshed: add SupportsLessThan, SupportsLessThanT (#4711)
And use it everywhere. Note there seemed to be a discrepancy between
heapq in Python 2 and 3, so I changed that. It should probably be more
widely used within heapq, but leaving that out of scope for this PR.

Co-authored-by: hauntsaninja <>
2020-10-25 15:04:43 -07:00
Shantanuandhauntsaninja 8d4a4f9e74 mypy_selftest: rename to mypy_self_check (#4712)
This better disambiguates it from mypy_test_suite and is more inline
with how mypy refers to it internally.

Co-authored-by: hauntsaninja <>
2020-10-25 21:31:43 +01:00
Shantanuandhauntsaninja 48970d31de tests / scripts: blacken and isort (#4704)
I often run black and isort in typeshed root and then have to undo these
changes.

Co-authored-by: hauntsaninja <>
2020-10-25 11:21:03 +01:00
Shantanuandhauntsaninja 2f1367332b stubtest unused: match stubtest version, add fix (#4705)
In #4696 I bumped stubtest to a commit that hasn't been released. We
should have these stubtest versions match. In
https://github.com/python/mypy/pull/9426 I changed the output of
stubtest here; it's good to get this change in before I forget and this
action silently stops working.

Co-authored-by: hauntsaninja <>
2020-10-25 11:19:15 +01:00
Shantanuandhauntsaninja 6ff5b88ca7 typeshed: remove crufty comments (#4699)
Co-authored-by: hauntsaninja <>
2020-10-23 09:40:06 +02:00
Shantanuandhauntsaninja b0f4900c9f fractions: make Fraction satisfy SupportsRound (#4697)
Helps with https://github.com/python/mypy/issues/9628

Co-authored-by: hauntsaninja <>
2020-10-22 12:12:27 -07:00
Shantanuandhauntsaninja 74bb849789 update stubtest (#4696)
Co-authored-by: hauntsaninja <>
2020-10-22 11:09:39 -07:00
Shantanuandhauntsaninja faf827bc36 mark some positional-only arguments (#4693)
https://github.com/python/mypy/pull/9626 will make stubtest a little bit
stricter about positional-only arguments for dunders like __init__

Co-authored-by: hauntsaninja <>
2020-10-22 13:31:23 +02:00
Shantanuandhauntsaninja 10d3c6c325 Remove bad namedtuple to fix CI (#4684)
Co-authored-by: hauntsaninja <>
2020-10-18 00:25:09 -07:00
Shantanuandhauntsaninja 7603acd8b8 Upgrade flake8-pyi to fix CI (#4683)
This fixes things on Python 3.9, which we've started using since #4656

Co-authored-by: hauntsaninja <>
2020-10-17 23:43:00 -07:00
Shantanuandhauntsaninja 7e378a7554 PEP 584: add or operators to dict (#4671)
Co-authored-by: hauntsaninja <>
2020-10-15 13:42:01 +02:00
Shantanuandhauntsaninja 3a16ebb463 builtins: int can accept __trunc__-able (#4665)
Refer to https://docs.python.org/3/reference/datamodel.html#object.__trunc__
Fixes https://github.com/python/mypy/issues/9588

Co-authored-by: hauntsaninja <>
2020-10-14 09:47:47 +02:00
Shantanuandhauntsaninja 86ca46fa0a mypy_primer: add to CI (#4629)
Co-authored-by: hauntsaninja <>
2020-10-12 14:41:51 -07:00
Shantanuandhauntsaninja 228f74d76a io: loosen writelines type to iterable (#4642)
This came up in https://github.com/python/mypy/pull/9275

Co-authored-by: hauntsaninja <>
2020-10-09 21:25:33 -07:00
Shantanuandhauntsaninja e428f2d479 pep 484: last reexports (#4609)
Co-authored-by: hauntsaninja <>
2020-10-04 23:51:04 +02:00
Shantanuandhauntsaninja 723a23abfc contextlib: get rid of a TODO (#4610)
This dates back three years to https://github.com/python/typeshed/pull/1249

It seems pretty unused in practice, so I think this is fine:
https://grep.app/search?q=from%20contextlib%20import%20ContextManager&case=true
https://grep.app/search?q=contextlib.ContextManager&case=true

Co-authored-by: hauntsaninja <>
2020-10-04 23:49:49 +02:00
Shantanuandhauntsaninja cca6e53d86 crypto: delete stubs (#4606)
Crypto is a package that comes from pycrypto, which was last updated in
2013. It proudly supports Python 2.1 through 3.3.
There's a near drop-in replacement from pycryptodome, which seems well
maintained. pycryptodome has provided stubs for the last two years.

I propose we get rid of the whole thing. pycrypto seems about as dead as
software can get. These stubs have received two fixes since 2016.

https://github.com/python/typeshed/issues/2952
https://pycryptodome.readthedocs.io/en/latest/src/vs_pycrypto.html
https://github.com/Legrandin/pycryptodome/blob/master/Changelog.rst#371-25-november-2018

Co-authored-by: hauntsaninja <>
2020-10-04 13:05:47 -07:00
Shantanuandhauntsaninja 52974e0a2b asyncio.Semaphore: type some internals (#4605)
Co-authored-by: hauntsaninja <>
2020-10-04 12:53:02 +02:00
Shantanuandhauntsaninja 7afc733054 pep 484: more reexports (#4607)
There are still a couple more, but hopefully this fixes CI. It's a
little bit of a chore to track down some of these; it looks like master
differs from latest release for a number of them.

Co-authored-by: hauntsaninja <>
2020-10-03 20:22:31 -07:00
Shantanuandhauntsaninja e0a3644850 py39.txt: remove no longer needed comment (#4603)
See #4598

Co-authored-by: hauntsaninja <>
2020-10-03 13:56:56 -07:00
Shantanuandhauntsaninja 76cd654987 stubtest whitelist: fix (#4599)
This should take care of #4598

Co-authored-by: hauntsaninja <>
2020-10-02 21:38:59 -07:00
Shantanuandhauntsaninja d140885898 statvfs_result: type structseq better (#4587)
Fixes #4572

Co-authored-by: hauntsaninja <>
2020-10-02 03:02:36 -07:00
Shantanu 8879858871 markdown: improve preprocessors type (#4588)
* markdown: improve preprocessors type

https://github.com/Python-Markdown/markdown/blob/b701c34ebd7b2d0eb319517b9a275ddf0c89608d/markdown/preprocessors.py#L46

* Apply suggestions from code review
2020-09-30 14:34:24 -07:00
Shantanuandhauntsaninja e3889c776e pep 484: explicit reexport as intended (#4586)
See discussion on typing-sig.
This doesn't take care of some third_party libraries, will follow up on
those.

Co-authored-by: hauntsaninja <>
2020-09-30 10:04:23 -07:00
Shantanuandhauntsaninja bf48bfd37c retry: loosen delay to float (#4583)
Caught by mypy_primer:
paasta_tools/mesos/master.py:150: error: Argument "delay" to "retry" has incompatible type "float"; expected "int"

Co-authored-by: hauntsaninja <>
2020-09-27 07:51:18 +02:00
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