Shantanu and hauntsaninja
e380432825
comment on memoryview.cast ( #5118 )
...
Co-authored-by: hauntsaninja <>
2021-03-15 17:26:47 -07:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
bcba4f4fce
runpy: return globals dict ( #4965 )
...
Fixes #4964
Co-authored-by: hauntsaninja <>
2021-01-23 13:06:26 +01:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
6a53e992fe
itertools.tee: use positional-only args ( #4934 )
...
Co-authored-by: hauntsaninja <>
2021-01-14 08:41:39 +01:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
781430fdf1
multiprocessing: improve Server ( #4886 )
...
Co-authored-by: hauntsaninja <>
2021-01-02 00:54:28 +01:00
Shantanu and hauntsaninja
0a8fd098ca
ast: remove docstring attribute ( #4868 )
...
As mentioned in #4760
Co-authored-by: hauntsaninja <>
2020-12-29 08:43:15 +01:00
Shantanu and hauntsaninja
12f0be025f
mypy_primer: shard across two CI jobs ( #4865 )
...
Co-authored-by: hauntsaninja <>
2020-12-28 11:17:39 +01:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
74147313cd
Remove mypy_primer ( #4795 )
...
Co-authored-by: hauntsaninja <>
2020-11-29 23:03:42 -08:00
Shantanu and hauntsaninja
20446030c5
Fix stubtest unused cron job ( #4782 )
...
Co-authored-by: hauntsaninja <>
2020-11-21 19:36:27 +01:00
Shantanu and hauntsaninja
c3e04054cf
README.md: update for the times ( #4757 )
...
Fixes #4754
Co-authored-by: hauntsaninja <>
2020-11-10 20:52:57 +01:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
d379d4ce48
posix: fix WIF* definitions ( #4737 )
...
Co-authored-by: hauntsaninja <>
2020-10-31 18:36:34 -07:00
Shantanu and hauntsaninja
2702f8c32e
ctypes: fix argument names ( #4735 )
...
Co-authored-by: hauntsaninja <>
2020-10-31 18:34:25 -07:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
3f35c92e7f
concurrent.futures: use DoneAndNotDoneFutures ( #4729 )
...
Fixes #1976
Co-authored-by: hauntsaninja <>
2020-10-29 22:56:30 +01:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
25b3004ad8
mypy_primer: post a more informative message ( #4719 )
...
Co-authored-by: hauntsaninja <>
2020-10-27 07:47:59 +01:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
1bd808a458
mypy_primer: post failures as comments ( #4672 )
...
Co-authored-by: hauntsaninja <>
2020-10-26 10:58:49 +01:00
Shantanu and hauntsaninja
8581da07fe
builtins: remove unused imports ( #4715 )
...
Co-authored-by: hauntsaninja <>
2020-10-26 08:06:34 +01:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
6ff5b88ca7
typeshed: remove crufty comments ( #4699 )
...
Co-authored-by: hauntsaninja <>
2020-10-23 09:40:06 +02:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
74bb849789
update stubtest ( #4696 )
...
Co-authored-by: hauntsaninja <>
2020-10-22 11:09:39 -07:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
10d3c6c325
Remove bad namedtuple to fix CI ( #4684 )
...
Co-authored-by: hauntsaninja <>
2020-10-18 00:25:09 -07:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
7e378a7554
PEP 584: add or operators to dict ( #4671 )
...
Co-authored-by: hauntsaninja <>
2020-10-15 13:42:01 +02:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
86ca46fa0a
mypy_primer: add to CI ( #4629 )
...
Co-authored-by: hauntsaninja <>
2020-10-12 14:41:51 -07:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
e428f2d479
pep 484: last reexports ( #4609 )
...
Co-authored-by: hauntsaninja <>
2020-10-04 23:51:04 +02:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
52974e0a2b
asyncio.Semaphore: type some internals ( #4605 )
...
Co-authored-by: hauntsaninja <>
2020-10-04 12:53:02 +02:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
e0a3644850
py39.txt: remove no longer needed comment ( #4603 )
...
See #4598
Co-authored-by: hauntsaninja <>
2020-10-03 13:56:56 -07:00
Shantanu and hauntsaninja
76cd654987
stubtest whitelist: fix ( #4599 )
...
This should take care of #4598
Co-authored-by: hauntsaninja <>
2020-10-02 21:38:59 -07:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
12e82874d2
upgrade isort ( #4576 )
...
Co-authored-by: hauntsaninja <>
2020-09-25 13:57:15 -07:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
8642d2aa97
pkgutil, sys: make types more precise ( #4536 )
...
Co-authored-by: hauntsaninja <>
2020-09-16 10:38:27 +02:00
Shantanu and hauntsaninja
dc0b4262c3
builtins: minor improvements ( #4535 )
...
Co-authored-by: hauntsaninja <>
2020-09-13 18:08:48 +02:00
Shantanu and hauntsaninja
462c830194
codecs: various fixes ( #4526 )
...
Co-authored-by: hauntsaninja <>
2020-09-11 14:09:33 -07:00
Shantanu and hauntsaninja
861d6425b4
io: various fixes ( #4525 )
...
Co-authored-by: hauntsaninja <>
2020-09-11 08:30:03 +02:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
5884ee2977
inspect: minor improvements ( #4499 )
...
Co-authored-by: hauntsaninja <>
2020-08-31 14:23:01 -07:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
d07e65c53e
weakref: small improvements ( #4495 )
...
Co-authored-by: hauntsaninja <>
2020-08-30 06:43:58 -07:00
Shantanu and hauntsaninja
ad5bc751f3
xml.etree.ElementTree: mark some removals ( #4496 )
...
Co-authored-by: hauntsaninja <>
2020-08-30 06:41:50 -07:00
Shantanu and hauntsaninja
193c7cb932
asyncio.tasks: update for py39 removals ( #4493 )
...
Co-authored-by: hauntsaninja <>
2020-08-29 22:07:20 -07:00
Shantanu and hauntsaninja
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
Shantanu and Akuli
f23ce60668
stubtest: fix on windows ( #4455 )
...
Co-authored-by: Akuli
2020-08-17 14:55:58 -07:00
Shantanu and hauntsaninja
b438ccc3bc
PathLike: change to Protocol ( #4447 )
...
Co-authored-by: hauntsaninja <>
2020-08-16 05:15:51 -07:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
afcb46655a
graphlib: add in py39 ( #4268 )
...
Co-authored-by: hauntsaninja <>
2020-06-26 20:49:50 +02:00
Shantanu and hauntsaninja
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
Shantanu and hauntsaninja
cc150f1d76
compileall: update for py39 again ( #4269 )
...
Co-authored-by: hauntsaninja <>
2020-06-26 12:46:18 +02:00
Shantanu and hauntsaninja
fc8b0ed94e
builtins: remove __class_getitem__ from type ( #4270 )
...
Co-authored-by: hauntsaninja <>
2020-06-26 12:45:22 +02:00