|
36 | 36 | - add missing g++ compiler for tests</comment> |
37 | 37 | <requestid>1136250</requestid> |
38 | 38 | </revision> |
| 39 | + <revision rev="3" vrev="1"> |
| 40 | + <srcmd5>98591dc3ea39b06b415e6a887686e25c</srcmd5> |
| 41 | + <version>1.9.0</version> |
| 42 | + <time>1711397249</time> |
| 43 | + <user>anag+factory</user> |
| 44 | + <comment>- Clean up SPEC file. |
| 45 | +New upstream release 1.9.0 |
| 46 | +#### Breaking Changes |
| 47 | +Because the version of typeshed we use in mypy 1.9 doesn't support 3.7, neither does mypy 1.9. (Jared Hance, PR [16883](https://github.com/python/mypy/pull/16883)) |
| 48 | +We are planning to enable |
| 49 | +[local partial types](https://mypy.readthedocs.io/en/stable/command_line.html#cmdoption-mypy-local-partial-types) (enabled via the |
| 50 | +`--local-partial-types` flag) later this year by default. This change |
| 51 | +was announced years ago, but now it's finally happening. This is a |
| 52 | +major backward-incompatible change, so we'll probably include it as |
| 53 | +part of the upcoming mypy 2.0 release. This makes daemon and |
| 54 | +non-daemon mypy runs have the same behavior by default. |
| 55 | +Local partial types can also be enabled in the mypy config file: |
| 56 | +``` |
| 57 | +local_partial_types = True |
| 58 | +``` |
| 59 | +We are looking at providing a tool to make it easier to migrate |
| 60 | +projects to use `--local-partial-types`, but it's not yet clear whether |
| 61 | +this is practical. The migration usually involves adding some |
| 62 | +explicit type annotations to module-level and class-level variables. |
| 63 | +#### Basic Support for Type Parameter Defaults (PEP 696) |
| 64 | +This release contains new experimental support for type parameter |
| 65 | +defaults ([PEP 696](https://peps.python.org/pep-0696)). Please try it |
| 66 | +out! This feature was contributed by Marc Mueller. |
| 67 | +Since this feature will be officially introduced in the next Python |
| 68 | +feature release (3.13), you will need to import `TypeVar`, `ParamSpec` |
| 69 | +or `TypeVarTuple` from `typing_extensions` to use defaults for now. |
| 70 | +This example adapted from the PEP defines a default for `BotT`: |
| 71 | +```python |
| 72 | +from typing import Generic |
| 73 | +from typing_extensions import TypeVar |
| 74 | +class Bot: ... |
| 75 | +BotT = TypeVar("BotT", bound=Bot, default=Bot) |
| 76 | +class Context(Generic[BotT]): |
| 77 | + bot: BotT |
| 78 | +class MyBot(Bot): ... |
| 79 | +# type is Bot (the default) |
| 80 | +reveal_type(Context().bot) |
| 81 | +# type is MyBot |
| 82 | +reveal_type(Context[MyBot]().bot) |
| 83 | +``` |
| 84 | +#### Type-checking Improvements |
| 85 | + * Fix missing type store for overloads (Marc Mueller, PR [16803](https://github.com/python/mypy/pull/16803)) |
| 86 | + * Fix `'WriteToConn' object has no attribute 'flush'` (Charlie Denton, PR [16801](https://github.com/python/mypy/pull/16801)) |
| 87 | + * Improve TypeAlias error messages (Marc Mueller, PR [16831](https://github.com/python/mypy/pull/16831)) |
| 88 | + * Support narrowing unions that include `type[None]` (Christoph Tyralla, PR [16315](https://github.com/python/mypy/pull/16315)) |
| 89 | + * Support TypedDict functional syntax as class base type (anniel-stripe, PR [16703](https://github.com/python/mypy/pull/16703)) |
| 90 | + * Accept multiline quoted annotations (Shantanu, PR [16765](https://github.com/python/mypy/pull/16765)) |
| 91 | + * Allow unary + in `Literal` (Jelle Zijlstra, PR [16729](https://github.com/python/mypy/pull/16729)) |
| 92 | + * Substitute type variables in return type of static methods (Kouroche Bouchiat, PR [16670](https://github.com/python/mypy/pull/16670)) |
| 93 | + * Consider TypeVarTuple to be invariant (Marc Mueller, PR [16759](https://github.com/python/mypy/pull/16759)) |
| 94 | + * Add `alias` support to `field()` in `attrs` plugin (Nikita Sobolev, PR [16610](https://github.com/python/mypy/pull/16610)) |
| 95 | + * Improve attrs hashability detection (Tin Tvrtković, PR [16556](https://github.com/python/mypy/pull/16556)) |
| 96 | +#### Performance Improvements |
| 97 | + * Speed up finding function type variables (Jukka Lehtosalo, PR [16562](https://github.com/python/mypy/pull/16562)) |
| 98 | +#### Documentation Updates |
| 99 | + * Document supported values for `--enable-incomplete-feature` in "mypy --help" (Froger David, PR [16661](https://github.com/python/mypy/pull/16661)) |
| 100 | + * Update new type system discussion links (thomaswhaley, PR [16841](https://github.com/python/mypy/pull/16841)) |
| 101 | + * Add missing class instantiation to cheat sheet (Aleksi Tarvainen, PR [16817](https://github.com/python/mypy/pull/16817)) |
| 102 | + * Document how evil `--no-strict-optional` is (Shantanu, PR [16731](https://github.com/python/mypy/pull/16731)) |
| 103 | + * Improve mypy daemon documentation note about local partial types (Makonnen Makonnen, PR [16782](https://github.com/python/mypy/pull/16782)) |
| 104 | + * Fix numbering error (Stefanie Molin, PR [16838](https://github.com/python/mypy/pull/16838)) |
| 105 | + * Various documentation improvements (Shantanu, PR [16836](https://github.com/python/mypy/pull/16836)) |
| 106 | +#### Stubtest Improvements |
| 107 | + * Ignore private function/method parameters when they are missing from the stub (private parameter names start with a single underscore and have a default) (PR [16507](https://github.com/python/mypy/pull/16507)) |
| 108 | + * Ignore a new protocol dunder (Alex Waygood, PR [16895](https://github.com/python/mypy/pull/16895)) |
| 109 | + * Private parameters can be omitted (Sebastian Rittau, PR [16507](https://github.com/python/mypy/pull/16507)) |
| 110 | + * Add support for setting enum members to "..." (Jelle Zijlstra, PR [16807](https://github.com/python/mypy/pull/16807)) |
| 111 | + * Adjust symbol table logic (Shantanu, PR [16823](https://github.com/python/mypy/pull/16823)) |
| 112 | + * Fix posisitional-only handling in overload resolution (Shantanu, PR [16750](https://github.com/python/mypy/pull/16750)) |
| 113 | +#### Stubgen Improvements |
| 114 | + * Fix crash on star unpack of TypeVarTuple (Ali Hamdan, PR [16869](https://github.com/python/mypy/pull/16869)) |
| 115 | + * Use PEP 604 unions everywhere (Ali Hamdan, PR [16519](https://github.com/python/mypy/pull/16519)) |
| 116 | + * Do not ignore property deleter (Ali Hamdan, PR [16781](https://github.com/python/mypy/pull/16781)) |
| 117 | + * Support type stub generation for `staticmethod` (WeilerMarcel, PR [14934](https://github.com/python/mypy/pull/14934)) |
| 118 | +</comment> |
| 119 | + <requestid>1160713</requestid> |
| 120 | + </revision> |
39 | 121 | </revisionlist> |
0 commit comments