Release Notes
Released on 2026-05-10.
Bug fixes
- Allow ParamSpec specialization through unioned generic classes (#24826)
- Fix cross-file find-references for keyword arguments (#25043)
- Fix comparison between negative and positive literal integers (#25023)
- Reject dataclass decorator parameters based on supported Python version (#25029)
LSP server
- Adjust start of block folding range to preserve visible header for character-precise LSP clients. (#24917)
- Emit folding ranges from the language server for multi-line block headers. (#24978)
- Skip global search for references if identifier is not externally visible (#25033)
- Speed-up find-references by using multithreading for cross-file searches (#25042)
CLI
- Include severity in JUnit diagnostics (#25080)
Core type checking
- Check non-generic overload implementations (#24936)
- Expand support for narrowing within walruses (#24968)
- Filter overloads based on return type for ParamSpec mapping (#24769)
- Improve support for recursive types (#24773)
- Include TypedDict type context when inferring mixed constructors (#25039)
- Include TypedDict type context when inferring string keys (#25037)
- Preserve NewType and TypeAliasType in implicit aliases (#25072)
- Provide type cntext for generator expression yields (#25069)
- Provide type context for boolean operands (#25070)
- Selectively promote a union of homogeneous fixed-length tuples to a single variadic tuple (#24705)
- Support narrowing on
__class__checks (#24997) - Use more precise exception types when catching a union (#25076)
Diagnostics
- Include error context for overload consistency diagnostics (#24950)
Performance
- Cache results in desperate module resolution (#24977)
- Lazily initialize builder when transforming a union type (#24929)
- Project reachability constraints before narrowing (#24982)
- Skip parameter accumulation for object variadics (#24976)
Contributors
Install ty 0.0.35
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://releases.astral.sh/github/ty/releases/download/0.0.35/ty-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://releases.astral.sh/github/ty/releases/download/0.0.35/ty-installer.ps1 | iex"Download ty 0.0.35
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>