basedmypy
basedmypy copied to clipboard
Based Python static type checker with baseline, sane default settings and based typing features
1.6 will be based on mypy 0.980 and will include: - #371 - #369 - #375 - #370 - #381 - #363 - #353 Timeline: - alpha1: 15/08/2022 - will...
```py from typing import overload from basedtyping import T @overload def foo(t: str): ... @overload def foo(t: T, b: bool): ... def foo(t, b=True): c: T = t # error:...
```py if True: foo: Let = 1 bar: Let[int] = 1 foo # error bar # error ``` Could this instead be default and have a `FuncScope` annotation?
https://github.com/KotlinIsland/basedmypy/pull/356#discussion_r934472865 When `UNSAFE_VARIANCE` was only annotated with `Final` mypy couldn't determine it's type in the "Test suite with X, mypyc-compiled" jobs. https://github.com/KotlinIsland/basedmypy/runs/7428344970?check_suite_focus=true ``` pip install -r test-requirements.txt CC=clang MYPYC_OPT_LEVEL=0 python3...
Due to the sussy-ness of future annotations, this should be opt in. Due to it getting canceled maybe this isn't a good one then.
Type checking `raise` statements sounds based, despite what the peps say ```py def foo(b: bool) -> Raises[ZeroDivisionError]: 5 / 0 if b else ... ``` What would the full form...
**Feature** We could use `...`, but that might cause trouble with `tuple` and `Callable` so idk. ```py def foo(l: list[...]): print(l) ``` https://kotlinlang.org/docs/generics.html#star-projections ```py T = TypeVar(bound=TUpper) T_co = TypeVar(bound=TUpper,...
After `remove_duplicates` I think Also add column check to duplicate filter
Despite the fact that 3.7 won't be 'officially' deprecated till '2023-06', it's dead in my eyes.