- Update to 1.14.1
* Mypyc Improvements
- Document optimized bytes operations and additional str operations (Jukka Lehtosalo, PR 18242)
- Add primitives and specialization for ord() (Jukka Lehtosalo, PR 18240)
- Optimize str.encode with specializations for common used encodings (Valentin Stanciu, PR 18232)
- Fix fall back to generic operation for staticmethod and classmethod (Advait Dixit, PR 18228)
- Support unicode surrogates in string literals (Jukka Lehtosalo, PR 18209)
- Fix index variable in for loop with builtins.enumerate (Advait Dixit, PR 18202)
- Fix check for enum classes (Advait Dixit, PR 18178)
- Fix loading type from imported modules (Advait Dixit, PR 18158)
- Fix initializers of final attributes in class body (Jared Hance, PR 18031)
- Fix name generation for modules with similar full names (aatle, PR 18001)
- Fix relative imports in __init__.py (Shantanu, PR 17979)
- Optimize dunder methods (jairov4, PR 17934)
- Replace deprecated _PyDict_GetItemStringWithError (Marc Mueller, PR 17930)
- Fix wheel build for cp313-win (Marc Mueller, PR 17941)
- Use public PyGen_GetCode instead of vendored implementation (Marc Mueller, PR 17931)
- Optimize calls to final classes (jairov4, PR 17886)
- Support ellipsis (...) expressions in class bodies (Newbyte, PR 17923)
- Sync pythoncapi_compat.h (Marc Mueller, PR 17929)
- Add runtests.py mypyc-fast for running fast mypyc tests (Jukka Lehtosalo, PR 17906)
* Stubgen Improvements
- Do not include mypy generated symbols (Ali Hamdan, PR 18137)
- Fix FunctionContext.fullname for nested classes (Chad Dombrova, PR 17963)
- Add flagfile support (Ruslan Sayfutdinov, PR 18061)
- Add support for PEP 695 and PEP 696 syntax (Ali Hamdan, PR 18054)
* Stubtest Improvements
- Allow the use of --show-traceback and --pdb with stubtest (Stephen Morton, PR 18037)
- Verify __all__ exists in stub (Sebastian Rittau, PR 18005)
- Stop telling people to use double underscores (Jelle Zijlstra, PR 17897)
* Documentation Updates
- Update config file documentation (sobolevn, PR 18103)
- Improve contributor documentation for Windows (ag-tafe, PR 18097)
- Correct note about --disallow-any-generics flag in documentation (Abel Sen, PR 18055)
- Further caution against --follow-imports=skip (Shantanu, PR 18048)
- Fix the edit page buttton link in documentation (Kanishk Pachauri, PR 17933)
* Other Notables Fixes and Improvements
- Show Protocol __call__ for arguments with incompatible types (MechanicalConstruct, PR 18214)
- Make join and meet symmetric with strict_optional (MechanicalConstruct, PR 18227)
- Preserve block unreachablility when checking function definitions with constrained TypeVars (Brian Schubert, PR 18217)
- Do not include non-init fields in the synthesized __replace__ method for dataclasses (Victorien, PR 18221)
- Disallow TypeVar constraints parameterized by type variables (Brian Schubert, PR 18186)
- Always complain about invalid varargs and varkwargs (Shantanu, PR 18207)
- Set default strict_optional state to True (Shantanu, PR 18198)
- Preserve type variable default None in type alias (Sukhorosov Aleksey, PR 18197)
- Add checks for invalid usage of continue/break/return in except* block (coldwolverine, PR 18132)
- Do not consider bare TypeVar not overlapping with None for reachability analysis (Stanislav Terliakov, PR 18138)
- Special case types.DynamicClassAttribute as property-like (Stephen Morton, PR 18150)
- Disallow bare ParamSpec in type aliases (Brian Schubert, PR 18174)
- Move long_description metadata to pyproject.toml (Marc Mueller, PR 18172)
- Support ==-based narrowing of Optional (Christoph Tyralla, PR 18163)
- Allow TypedDict assignment of Required item to NotRequired ReadOnly item (Brian Schubert, PR 18164)
- Allow nesting of Annotated with TypedDict special forms inside TypedDicts (Brian Schubert, PR 18165)
- Infer generic type arguments for slice expressions (Brian Schubert, PR 18160)
- Fix checking of match sequence pattern against bounded type variables (Brian Schubert, PR 18091)
- Fix incorrect truthyness for Enum types and literals (David Salvisberg, PR 17337)
- Move static project metadata to pyproject.toml (Marc Mueller, PR 18146)
- Fallback to stdlib json if integer exceeds 64-bit range (q0w, PR 18148)
- Fix 'or' pattern structural matching exhaustiveness (yihong, PR 18119)
- Fix type inference of positional parameter in class pattern involving builtin subtype (Brian Schubert, PR 18141)
- Fix [override] error with no line number when argument node has no line number (Brian Schubert, PR 18122)
- Fix some dmypy crashes (Ivan Levkivskyi, PR 18098)
- Fix subtyping between instance type and overloaded (Shantanu, PR 18102)
- Clean up new_semantic_analyzer config (Shantanu, PR 18071)
- Issue warning for enum with no members in stub (Shantanu, PR 18068)
- Fix enum attributes are not members (Terence Honles, PR 17207)
- Fix crash when checking slice expression with step 0 in tuple index (Brian Schubert, PR 18063)
- Allow union-with-callable attributes to be overridden by methods (Brian Schubert, PR 18018)
- Emit [mutable-override] for covariant override of attribute with method (Brian Schubert, PR 18058)
- Support ParamSpec mapping with functools.partial (Stanislav Terliakov, PR 17355)
- Fix approved stub ignore, remove normpath (Shantanu, PR 18045)
- Make disallow-any-unimported flag invertible (Séamus Ó Ceanainn, PR 18030)
- Filter to possible package paths before trying to resolve a module (falsedrow, PR 18038)
- Fix overlap check for ParamSpec types (Jukka Lehtosalo, PR 18040)
- Do not prioritize ParamSpec signatures during overload resolution (Stanislav Terliakov, PR 18033)
- Fix ternary union for literals (Ivan Levkivskyi, PR 18023)
- Fix compatibility checks for conditional function definitions using decorators (Brian Schubert, PR 18020)
- TypeGuard should be bool not Any when matching TypeVar (Evgeniy Slobodkin, PR 17145)
- Fix convert-cache tool (Shantanu, PR 17974)
- Fix generator comprehension with mypyc (Shantanu, PR 17969)
- Fix crash issue when using shadowfile with pretty (Max Chang, PR 17894)
- Fix multiple nested classes with new generics syntax (Max Chang, PR 17820)
- Better error for mypy -p package without py.typed (Joe Gordon, PR 17908)
- Emit error for raise NotImplemented (Brian Schubert, PR 17890)
- Add is_lvalue attribute to AttributeContext (Brian Schubert, PR 17881)
- Changes from 1.13
- Significantly speed up file handling error paths (Shantanu, PR 17920)
- Use fast path in modulefinder more often (Shantanu, PR 17950)
- Let mypyc optimise os.path.join (Shantanu, PR 17949)
- Make is_sub_path faster (Shantanu, PR 17962)
- Speed up stubs suggestions (Shantanu, PR 17965)
- Use sha1 for hashing (Shantanu, PR 17953)
- Use orjson instead of json, when available (Shantanu, PR 17955)
- Add faster-cache extra, test in CI (Shantanu, PR 17978)
OBS-URL: https://build.opensuse.org/request/show/1240190
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-mypy?expand=0&rev=28
- Support Python 3.12 Syntax for Generics (PEP 695)
- Related improvements are included:
- Document Python 3.12 type parameter syntax (Jukka
Lehtosalo, PR 17816)
- Further documentation updates (Jukka Lehtosalo, PR 17826)
- Allow Self return types with contravariance (Jukka
Lehtosalo, PR 17786)
- Enable new type parameter syntax by default (Jukka
Lehtosalo, PR 17798)
- Generate error if new-style type alias used as base class
(Jukka Lehtosalo, PR 17789)
- Inherit variance if base class has explicit variance (Jukka
Lehtosalo, PR 17787)
- Fix crash on invalid type var reference (Jukka Lehtosalo,
PR 17788)
- Fix covariance of frozen dataclasses (Jukka Lehtosalo, PR
17783)
- Allow covariance with attribute that has "_" name prefix
(Jukka Lehtosalo, PR 17782)
- Support Annotated[...] in new-style type aliases (Jukka
Lehtosalo, PR 17777)
- Fix nested generic classes (Jukka Lehtosalo, PR 17776)
- Add detection and error reporting for the use of incorrect
expressions within the scope of a type parameter and a type
alias (Kirill Podoprigora, PR 17560)
- Basic Support for Python 3.13 This release adds partial
support for Python 3.13 features and compiled binaries for
Python 3.13. Mypyc now also supports Python 3.13.
- Various new stdlib features and changes (through typeshed
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-mypy?expand=0&rev=24
with 3.13.0 compatibility are fixed.
- Update to version 1.11.2+git.1728499967.eca206d:
* Fix union callees with functools.partial (#17903)
* [mypyc] Add "runtests.py mypyc-fast" for running fast mypyc tests (#17906)
* Emit error for "raise NotImplemented" (#17890)
* Document ReadOnly (PEP 705) (#17905)
* Make ReadOnly TypedDict items covariant (#17904)
* documentation for TypeIs (#17821)
* Improvements to functools.partial of types (#17898)
* Use 3.13.0 for ci tests (#17900)
* stubtest: Stop telling people to use double underscores (#17897)
* Add changelog for mypy 1.12 (#17889)
- Remove upstreamed latest-pythons.patch
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-mypy?expand=0&rev=22
- Update to 1.11.2
* Support Python 3.12 Syntax for Generics (PEP 695)
* Support for `functools.partial`
* Stricter Checks for Untyped Overrides
* Type Inference Improvements
* Improvements to Detection of Overlapping Overloads
* Better Support for Type Hints in Expressions
* Mypyc Improvements
+ Support Python 3.12 syntax for generic functions and classes
+ Support Python 3.12 type alias syntax
+ Fix ParamSpec
+ Inline fast paths of integer unboxing operations
+ Inline tagged integer arithmetic and bitwise operations
+ Allow specifying primitives as pure
* Changes to Stubtest
+ Ignore `_ios_support`
+ Improve support for Python 3.13
* Changes to Stubgen
+ Gracefully handle invalid `Optional` and recognize aliases to PEP 604 unions
+ Fix for Python 3.13
+ Preserve enum value initialisers
* Miscellaneous New Features
+ Add error format support and JSON output option via `--output json`
+ Support `enum.member` in Python 3.11+
+ Support `enum.nonmember` in Python 3.11+
+ Support `namedtuple.__replace__` in Python 3.13
+ Support `rename=True` in collections.namedtuple
+ Add support for `__spec__`
* Changes to Error Reporting
+ Mention `--enable-incomplete-feature=NewGenericSyntax` in messages
OBS-URL: https://build.opensuse.org/request/show/1199903
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-mypy?expand=0&rev=18
* Support TypeIs (PEP 742)
* Support TypeVar Defaults (PEP 696)
* Support TypeAliasType (PEP 695)
* Detect Additional Unsafe Uses of super()
* Fix incorrect inferred type when accessing descriptor on union type
* Fix crash when expanding invalid Unpack in a Callable alias
* Fix false positive when string formatting with string enum
* Narrow individual items when matching a tuple to a sequence pattern
* Fix false positive from type variable within TypeGuard or TypeIs
* Improve yield from inference for unions of generators
* Fix emulating hash method logic in attrs classes
* Add reverted typeshed commit that uses ParamSpec for functools.wraps
* Fix type narrowing for types.EllipsisType
* Fix single item enum match type exhaustion
* Improve type inference with empty collections
* Fix override checking for decorated property
* Fix narrowing on match with function subject
- Drop including types-ast, no longer required.
- Drop patch workaround-parenthesized-context-managers.patch, now
included upstream.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-mypy?expand=0&rev=16
* https://mypy-lang.blogspot.com/2023/12/mypy-18-released.html
* https://mypy-lang.blogspot.com/2023/11/mypy-17-released.html
* https://mypy-lang.blogspot.com/2023/10/mypy-16-released.html
- fix dependencies
- Support better __post_init__ method signature for dataclasses (Nikita Sobolev, PR 15503)
- Don't explicitly assign NULL values in setup functions (Logan Hunt, PR 15379)
- Fix crash on non-str docstring (Ali Hamdan, PR 15623)
- Remove confusing instance variable example in cheat sheet (Adel Atallah, PR 15441)
- Check for abstract class objects in tuples (Nikita Sobolev, PR 15366)
- Fix frozen behavior for base classes with direct metaclasses (Wesley Collin Wright, PR 14878)
- Fixes to float to int conversion (Jukka Lehtosalo, PR 14936)
- Faster classmethod calls via cls (Jukka Lehtosalo, PR 14789)
- Fix crash on ParamSpec in incremental mode (Ivan Levkivskyi, PR 14885)
- Improve documentation of top level mypy: disable-error-code comment (Nikita Sobolev, PR 14810)
- Add suggestions for pandas-stubs and lxml-stubs (Shantanu, PR 14737)
- Honor NoReturn as __setitem__ return type to mark unreachable code (sterliakov, PR 12572)
- Sadly, six is still required for tests, re-add to BuildRequires.
The full release notes can be found here:
- Fix types of inherited attributes in generic dataclasses (Jukka Lehtosalo, PR 12656)
- add missing g++ compiler for tests
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-mypy?expand=0&rev=6