You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+122-8Lines changed: 122 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,15 +1,30 @@
1
1
# Mypy Release Notes
2
2
3
-
## Next release
3
+
## Next Release
4
4
5
-
### Performance improvements
5
+
...
6
+
7
+
## Mypy 1.15 (Unreleased)
8
+
9
+
We’ve just uploaded mypy 1.15 to the Python Package Index ([PyPI](https://pypi.org/project/mypy/)).
10
+
Mypy is a static type checker for Python. This release includes new features and bug fixes.
11
+
You can install it as follows:
12
+
13
+
python3 -m pip install -U mypy
14
+
15
+
You can read the full documentation for this release on [Read the Docs](http://mypy.readthedocs.io).
16
+
17
+
### Performance Improvements
6
18
7
19
Mypy may be 5-30% faster. This improvement comes largely from tuning the performance of the
8
-
garbage collector.
20
+
garbage collector. Additionally, the release includes several micro-optimizations that may be
21
+
impactful for very large projects.
9
22
10
-
Contributed by Jukka Lehtosalo (PR [18306](https://github.com/python/mypy/pull/18306)).
23
+
Contributed by Jukka Lehtosalo (PR [18306](https://github.com/python/mypy/pull/18306),
### Better line numbers for decorators and slice expressions
69
+
### Better Line Numbers for Decorators and Slice Expressions
55
70
56
71
Mypy now uses more correct line numbers for decorators and slice expressions. In some cases, this
57
72
may necessitate changing the location of a `# type: ignore` comment.
@@ -68,6 +83,105 @@ Support for this will be dropped in the first half of 2025!
68
83
69
84
Contributed by Marc Mueller (PR [17492](https://github.com/python/mypy/pull/17492)).
70
85
86
+
### Mypyc Improvements
87
+
88
+
* Fix `__init__` for classes with `@attr.s(slots=True)` (Advait Dixit, PR [18447](https://github.com/python/mypy/pull/18447))
89
+
* Report error for nested class instead of crashing (Valentin Stanciu, PR [18460](https://github.com/python/mypy/pull/18460))
90
+
* Fix `InitVar` for dataclasses (Advait Dixit, PR [18319](https://github.com/python/mypy/pull/18319))
* Get capsule pointer from module instead of `PyCapsule_Import` (Advait Dixit, PR [18286](https://github.com/python/mypy/pull/18286))
93
+
* Add lowered primitive for unsafe list get item op (Jukka Lehtosalo, PR [18136](https://github.com/python/mypy/pull/18136))
94
+
* Fix iteration over `NamedTuple` objects (Advait Dixit, PR [18254](https://github.com/python/mypy/pull/18254))
95
+
* Mark mypyc package with `py.typed` (bzoracler, PR [18253](https://github.com/python/mypy/pull/18253))
96
+
* Update docstrings of IR builder classes (Jukka Lehtosalo, PR [18246](https://github.com/python/mypy/pull/18246))
97
+
* Fix list index while checking for `Enum` class (Advait Dixit, PR [18426](https://github.com/python/mypy/pull/18426))
* Print `InspectError` traceback in stubgen `walk_packages` when verbose is specified (Gareth, PR [18224](https://github.com/python/mypy/pull/18224))
107
+
108
+
### Stubtest Improvements
109
+
110
+
* Fix crash with numpy array default values (Ali Hamdan, PR [18353](https://github.com/python/mypy/pull/18353))
111
+
* Distinguish metaclass attributes from class attributes (Stephen Morton, PR [18314](https://github.com/python/mypy/pull/18314))
112
+
113
+
### Fixes to Crashes
114
+
115
+
* Prevent crash with `Unpack` of a fixed tuple in PEP695 type alias (Stanislav Terliakov, PR [18451](https://github.com/python/mypy/pull/18451))
116
+
* Fix crash with `--cache-fine-grained --cache-dir=/dev/null` (Shantanu, PR [18457](https://github.com/python/mypy/pull/18457))
117
+
* Prevent crashing when `match` arms use name of existing callable (Stanislav Terliakov, PR [18449](https://github.com/python/mypy/pull/18449))
118
+
* Gracefully handle encoding errors when writing to stdout (Brian Schubert, PR [18292](https://github.com/python/mypy/pull/18292))
119
+
120
+
### Documentation Updates
121
+
122
+
* Add `sphinx_inline_tabs` to docs (Marc Mueller, PR [18262](https://github.com/python/mypy/pull/18262))
123
+
* Document any `TYPE_CHECKING` name works (Shantanu, PR [18443](https://github.com/python/mypy/pull/18443))
124
+
* Update docs not to mention 3.8 where possible (sobolevn, PR [18455](https://github.com/python/mypy/pull/18455))
125
+
* Mention `ignore_errors` in exclude docs (Shantanu, PR [18412](https://github.com/python/mypy/pull/18412))
126
+
* Add `Self` misuse to common issues (Shantanu, PR [18261](https://github.com/python/mypy/pull/18261))
* Bind `self` to the class being defined when checking multiple inheritance (Stanislav Terliakov, PR [18465](https://github.com/python/mypy/pull/18465))
133
+
* Fix attribute type resolution with multiple inheritance (Stanislav Terliakov, PR [18415](https://github.com/python/mypy/pull/18415))
134
+
* Improve security of our GitHub Actions (sobolevn, PR [18413](https://github.com/python/mypy/pull/18413))
* Allow `Any` to match sequence patterns in match/case (Stanislav Terliakov, PR [18448](https://github.com/python/mypy/pull/18448))
137
+
* Fix parent generics mapping when overriding generic attribute with property (Stanislav Terliakov, PR [18441](https://github.com/python/mypy/pull/18441))
138
+
* Dedicated error code for explicit `Any` (Shantanu, PR [18398](https://github.com/python/mypy/pull/18398))
* Remove stubs no longer in typeshed (Shantanu, PR [18373](https://github.com/python/mypy/pull/18373))
* Allow to use `Final` and `ClassVar` after Python 3.13 (정승원, PR [18358](https://github.com/python/mypy/pull/18358))
143
+
* Update to include latest stubs in typeshed (Shantanu, PR [18366](https://github.com/python/mypy/pull/18366))
* Reject promotions when checking against protocols (Christoph Tyralla, PR [18360](https://github.com/python/mypy/pull/18360))
146
+
* Don't erase type object args in diagnostics (Shantanu, PR [18352](https://github.com/python/mypy/pull/18352))
147
+
* Clarify status in `dmypy status` output (Kcornw, PR [18331](https://github.com/python/mypy/pull/18331))
148
+
* Disallow no-args generic aliases when using PEP 613 explicit aliases (Brian Schubert, PR [18173](https://github.com/python/mypy/pull/18173))
149
+
* Suppress errors for unreachable branches in conditional expressions (Brian Schubert, PR [18295](https://github.com/python/mypy/pull/18295))
150
+
* Do not allow `ClassVar` and `Final` in `TypedDict` and `NamedTuple` (sobolevn, PR [18281](https://github.com/python/mypy/pull/18281))
151
+
* Fail typecheck if not enough or too many types provided to `TypeAliasType` (bzoracler, PR [18308](https://github.com/python/mypy/pull/18308))
152
+
* Use more precise context for `TypedDict` plugin errors (Brian Schubert, PR [18293](https://github.com/python/mypy/pull/18293))
153
+
* Use more precise context for invalid type argument errors (Brian Schubert, PR [18290](https://github.com/python/mypy/pull/18290))
154
+
* Do not allow `type[]` to contain `Literal` types (sobolevn, PR [18276](https://github.com/python/mypy/pull/18276))
155
+
* Allow bytearray/bytes comparisons with --disable-bytearray-promotion (Jukka Lehtosalo, PR [18255](https://github.com/python/mypy/pull/18255))
156
+
* More LSP compatibility on arg names (Shantanu, PR [18363](https://github.com/python/mypy/pull/18363))
157
+
158
+
### Acknowledgements
159
+
160
+
Thanks to all mypy contributors who contributed to this release:
161
+
162
+
- Advait Dixit
163
+
- Ali Hamdan
164
+
- Brian Schubert
165
+
- bzoracler
166
+
- Cameron Matsui
167
+
- Christoph Tyralla
168
+
- Gareth
169
+
- Ivan Levkivskyi
170
+
- Jukka Lehtosalo
171
+
- Kcornw
172
+
- Marc Mueller
173
+
- Mikhail f. Shiryaev
174
+
- Shantanu
175
+
- sobolevn
176
+
- Stanislav Terliakov
177
+
- Stephen Morton
178
+
- Valentin Stanciu
179
+
- Viktor Szépe
180
+
- wyattscarpenter
181
+
- 정승원
182
+
183
+
I’d also like to thank my employer, Dropbox, for supporting mypy development.
184
+
71
185
## Mypy 1.14
72
186
73
187
We’ve just uploaded mypy 1.14 to the Python Package Index ([PyPI](https://pypi.org/project/mypy/)).
0 commit comments