Release Notes
Released on 2026-05-27.
Bug fixes
- Accept complete enum-literal alias unions as enums (#25341)
- Fix diagnostics in ignored folders after adding new files (#25236)
- Show
LiteralStringwhen hovering over an inline of a literal string in an IDE (#25373)
LSP server
- Follow aliases when attempting to map a definition in a stub file to its "real" runtime definition (#25328)
- Treat Python notebook text documents as Python sources (#25393)
- Fix autocompletion for elements inside incomplete list comprehensions (#25326)
Diagnostics
- Add a subdiagnostic help message to
invalid-generic-classdiagnostics regarding incompatible variance (#25385)
Core type checking
- Ignore and reject annotations on non-name targets (#25324)
- Infer class attributes assigned by metaclass initialization (#25342)
- Reject inconsistent generic bases in "dynamic" classes created using
type(...),types.new_type(...), etc. (#25413) - Resolve enum names for all unions arms in
Literalenum subsets (#25379) - Support
typing.TypeForm(#25334) - Fix many issues in the generics solver by using constraint sets more widely to solve type variables (#24540)
Contributors
Install ty 0.0.40
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://releases.astral.sh/github/ty/releases/download/0.0.40/ty-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://releases.astral.sh/github/ty/releases/download/0.0.40/ty-installer.ps1 | iex"Download ty 0.0.40
Verifying GitHub Artifact Attestations
The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:
gh attestation verify <file-path of downloaded artifact> --repo astral-sh/tyYou can also download the attestation from GitHub and verify against that directly:
gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>