|
2 | 2 |
|
3 | 3 | ## Next release |
4 | 4 |
|
5 | | -Stubgen will now include `__all__` in its output if it is in the input file (PR [16356](https://github.com/python/mypy/pull/16356)). |
| 5 | +## Mypy 1.8 |
| 6 | + |
| 7 | +We’ve just uploaded mypy 1.8 to the Python Package Index ([PyPI](https://pypi.org/project/mypy/)). Mypy is a static type checker for Python. This release includes new features, performance improvements and bug fixes. You can install it as follows: |
| 8 | + |
| 9 | + python3 -m pip install -U mypy |
| 10 | + |
| 11 | +You can read the full documentation for this release on [Read the Docs](http://mypy.readthedocs.io). |
| 12 | + |
| 13 | +#### Typechecking Improvements |
| 14 | + * Do not intersect types in isinstance checks if at least one is final (Christoph Tyralla, PR [16330](https://github.com/python/mypy/pull/16330)) |
| 15 | + * Detect that @final class without __bool__ cannot have falsey instances (Ilya Priven, PR [16566](https://github.com/python/mypy/pull/16566)) |
| 16 | + * Do not allow `TypedDict` classes with extra keywords (Nikita Sobolev, PR [16438](https://github.com/python/mypy/pull/16438)) |
| 17 | + * Do not allow class-level keywords for `NamedTuple` (Nikita Sobolev, PR [16526](https://github.com/python/mypy/pull/16526)) |
| 18 | + * Make imprecise constraints handling more robust (Ivan Levkivskyi, PR [16502](https://github.com/python/mypy/pull/16502)) |
| 19 | + * Fix strict-optional in extending generic TypedDict (Ivan Levkivskyi, PR [16398](https://github.com/python/mypy/pull/16398)) |
| 20 | + * Allow type ignores of PEP 695 constructs (Shantanu, PR [16608](https://github.com/python/mypy/pull/16608)) |
| 21 | + * Refactor class decorator: this enables `type_check_only` support for `TypedDict` and `NamedTuple` (Nikita Sobolev, PR [16469](https://github.com/python/mypy/pull/16469)) |
| 22 | + |
| 23 | +#### Performance Improvements |
| 24 | + * Add fast path to analyzing special form assignments (Jukka Lehtosalo, PR [16561](https://github.com/python/mypy/pull/16561)) |
| 25 | + |
| 26 | +#### Improvements to Error Reporting |
| 27 | + * Don't show docs links for plugin error codes (Ivan Levkivskyi, PR [16383](https://github.com/python/mypy/pull/16383)) |
| 28 | + * Improve error messages for `super` checks and add more tests (Nikita Sobolev, PR [16393](https://github.com/python/mypy/pull/16393)) |
| 29 | + * Add error code for mutable covariant override (Ivan Levkivskyi, PR [16399](https://github.com/python/mypy/pull/16399)) |
| 30 | + |
| 31 | +#### Stubgen Improvements |
| 32 | + * Preserve simple defaults in function signatures (Ali Hamdan, PR [15355](https://github.com/python/mypy/pull/15355)) |
| 33 | + * Include __all__ in output (Jelle Zijlstra, PR [16356](https://github.com/python/mypy/pull/16356)) |
| 34 | + * Fix stubgen regressions with pybind11 and mypy 1.7 (Chad Dombrova, PR [16504](https://github.com/python/mypy/pull/16504)) |
| 35 | + |
| 36 | +#### Stubtest Improvements |
| 37 | + * Improve handling of unrepresentable defaults (Jelle Zijlstra, PR [16433](https://github.com/python/mypy/pull/16433)) |
| 38 | + * Print more helpful errors if a function is missing from stub (Alex Waygood, PR [16517](https://github.com/python/mypy/pull/16517)) |
| 39 | + * Support `@type_check_only` decorator (Nikita Sobolev, PR [16422](https://github.com/python/mypy/pull/16422)) |
| 40 | + * Warn about missing __del__ (Shantanu, PR [16456](https://github.com/python/mypy/pull/16456)) |
| 41 | + * Fix crashes with some uses of final and deprecated (Shantanu, PR [16457](https://github.com/python/mypy/pull/16457)) |
| 42 | + |
| 43 | +#### Fixes to Crashes |
| 44 | + * Fix crash with type alias to `Callable[[Unpack[Tuple[Any, ...]]], Any]` (Alex Waygood, PR [16541](https://github.com/python/mypy/pull/16541)) |
| 45 | + * Fix crash on TypeGuard in __call__ (Ivan Levkivskyi, PR [16516](https://github.com/python/mypy/pull/16516)) |
| 46 | + * Fix crash on invalid enum in method (Ivan Levkivskyi, PR [16511](https://github.com/python/mypy/pull/16511)) |
| 47 | + * Fix crash on unimported Any in TypedDict (Ivan Levkivskyi, PR [16510](https://github.com/python/mypy/pull/16510)) |
| 48 | + |
| 49 | +#### Documentation Updates |
| 50 | + * Update soft-error-limit default value to -1 (Sveinung Gundersen, PR [16542](https://github.com/python/mypy/pull/16542)) |
| 51 | + * Support Sphinx 7.x (Michael R. Crusoe, PR [16460](https://github.com/python/mypy/pull/16460)) |
| 52 | + |
| 53 | +#### Other Notable Changes and Fixes |
| 54 | + * Allow mypy to output a junit file with per-file results (Matthew Wright, PR [16388](https://github.com/python/mypy/pull/16388)) |
| 55 | + |
| 56 | +#### Typeshed Updates |
| 57 | + |
| 58 | +Please see [git log](https://github.com/python/typeshed/commits/main?after=4a854366e03dee700109f8e758a08b2457ea2f51+0&branch=main&path=stdlib) for full list of standard library typeshed stub changes. |
| 59 | + |
| 60 | +#### Acknowledgements |
| 61 | + |
| 62 | +Thanks to all mypy contributors who contributed to this release: |
| 63 | + |
| 64 | +- Alex Waygood |
| 65 | +- Ali Hamdan |
| 66 | +- Chad Dombrova |
| 67 | +- Christoph Tyralla |
| 68 | +- Ilya Priven |
| 69 | +- Ivan Levkivskyi |
| 70 | +- Jelle Zijlstra |
| 71 | +- Jukka Lehtosalo |
| 72 | +- Marcel Telka |
| 73 | +- Matthew Wright |
| 74 | +- Michael R. Crusoe |
| 75 | +- Nikita Sobolev |
| 76 | +- Ole Peder Brandtzæg |
| 77 | +- robjhornby |
| 78 | +- Shantanu |
| 79 | +- Sveinung Gundersen |
| 80 | +- Valentin Stanciu |
| 81 | + |
| 82 | +I’d also like to thank my employer, Dropbox, for supporting mypy development. |
| 83 | + |
| 84 | +Posted by Wesley Collin Wright |
6 | 85 |
|
7 | 86 | ## Mypy 1.7 |
8 | 87 |
|
|
0 commit comments