Release Notes
Released on 2026-02-13.
Bug fixes
- Avoid
Literalpromotion for constrainedTypeVars withLiteralbounds (#23209) - Fix false positives in
TypeVarshadowing checks (#23222)
Core type checking
- Support generic protocols (#21902)
- Perform control-flow analysis in loops (#22794)
- Support
typing.Selfin attribute annotations (#23108) - Support type narrowing in situations with calls to
NoReturnfunctions (#23109) - Support type narrowing and reachability analysis based on
os.namechecks (#23230) - Detect overrides of
Finalclass variables in subclasses (#23180) - Fix bound method access on
None(#23246) - Fix method calls on subclasses of
Any(#23248) - Disallow type variables within PEP-695 type variable bounds and constraints (#22982)
- Emit error for attribute access on union where some elements lack the attribute (#23042)
- Emit error for invalid typevar defaults (#23194)
- Improve display of
ParamSpecs in some situations (#23211)
LSP server
- Add hover and go-to-declaration support for subscript literals (#22837)
- Assign lower completion ranking to deprecated names in auto import (#23188)
- Improve spans of references to submodules imported in an
__init__.py(#21795) - Include conditional symbols (like
datetime.UTC) in auto-import in more cases (#23249) - Support auto-import for symbols in inlay hints (#22111)
- Include overload declarations in find-references (#23215)
Performance
- Avoid
UnionBuilderoverhead when creating a new union from the filtered elements of an existing union (#22352)
Other changes
- Allow discovering dependencies in system Python environments (#22994)
- Apply workspace settings to virtual files (#23228)
- Add support for
--output-format=junit(#22125) - Use a smaller diagnostic range for
inconsistent-mrodiagnostics (#23213)
Contributors
- @carljm
- @BurntSushi
- @charliermarsh
- @Glyphack
- @cetanu
- @AlexWaygood
- @joelostblom
- @Gankra
- @mtshiba
- @MatthewMckee4
- @Hugo-Polloli
- @sharkdp
- @alex
- @dcreager
- @oconnor663
Install ty 0.0.17
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/ty/releases/download/0.0.17/ty-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/astral-sh/ty/releases/download/0.0.17/ty-installer.ps1 | iex"