Open Zac-HD opened 1 year ago
Strong agree. Once mypy supports TypeVarTuple we can probably do it without a plugin.
Cross-linking, that's python/mypy/labels/topic-pep-646 and in particular https://github.com/python/mypy/issues/12280.
On the Trio side, we've considered this before and should take an incremental approach over multiple small PRs.
Well, trio==0.23.0
has type hints so I think this issue is done? Reopen if I'm misinterpreting!
I think it is! It looks like we've also released a type-annotated version of outcome
, and async_generator
is not needed on supported Python versions, so maybe we can archive this whole repo?
🤔 maybe we want to make one last release to emit warnings and tag with Development Status :: 7 - Inactive
?
I think some people might still want the plugin while mypy doesn't have TypeVarTuple
... and I haven't used this much so idk if there's much else here, but maybe other stuff.
Ah, right, that's been merged but not released yet - https://github.com/python/mypy/pull/16354 will be in mypy 1.7 🙂
I agree we want a warning release at some point, and would be nice with an open issue to track that, so I'll reopen this for now and we can then revisit it once we've incorporated TypeVarTuple
in trio
.
Looking through https://github.com/python-trio/trio-typing#whats-in-the-box I think trio
implements everything other than the stuff that needs TypeVarTuple
. We could probably copy over some tests from here
mypy 1.7 (and 1.8) is released, so I'll try and get around to making a final release and maybe run some tests to double check.
I ran the test suite without the plugin installed, which caught https://github.com/python-trio/trio/pull/3022
But otherwise the only properly missing thing is Nursery.start
not being properly typed due to https://github.com/python/mypy/issues/16522
It's been a while since https://github.com/python-trio/trio/issues/543 was opened, and the typing ecosystem has matured considerably.
I think we should aim to distribute type annotations as part of Trio directly, and retire this package.