pypi ty 0.0.92

4 hours ago

Release Notes

Released on 2026-10-26.

Core type checking

  • Infer the types of Django model primary keys (pk and the automatic id) with django-types (#29642)
  • Infer Django foreign key <field>_id types from the referenced field (#29664)
  • Recognize get_<field>_display() on Django model fields with choices (#29651)
  • Recognize get_next_by_<field>() and get_previous_by_<field>() on non-nullable Django date and datetime fields (#29653)

Bug fixes

  • Preserve generic callback parameters when forwarding overloaded functions through a ParamSpec (#29649)
  • Check implicit and PEP 613 type aliases as type expressions at their definitions (#29200)

CLI

  • Emit SARIF reports with ty check --output-format sarif (#29635)

LSP server

  • Skip scanning for scripts at startup and reload when uv script environments are disabled (#29697)

Diagnostic improvements

  • Abbreviate large nested tuple types in diagnostics and inlay hints (#29691)
  • Point to the expression that makes a type alias invalid, even when the alias is imported (#29654)

Performance

  • Avoid redundant work when checking inherited attributes (#29699)
  • Check for instance storage without inferring method assignments (#29709)
  • Collect receiver annotations once per class (#29703)
  • Check non-recursive protocol members before recursive ones (#29542)
  • Reuse class member lookups when checking overrides (#29716)
  • Reuse each generic context's inferable type variables (#29700)
  • Short-circuit comparisons involving top and bottom callable signatures (#29537)
  • Skip inferred writes when a declaration determines an instance member (#29702)
  • Skip method signature inference for concrete decorator results (#29708)

Contributors

Install ty 0.0.92

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://releases.astral.sh/github/ty/releases/download/0.0.92/ty-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://releases.astral.sh/github/ty/releases/download/0.0.92/ty-installer.ps1 | iex"

Download ty 0.0.92

File Platform Checksum
ty-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
ty-x86_64-apple-darwin.tar.gz Intel macOS checksum
ty-aarch64-pc-windows-msvc.zip ARM64 Windows checksum
ty-i686-pc-windows-msvc.zip x86 Windows checksum
ty-x86_64-pc-windows-msvc.zip x64 Windows checksum
ty-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
ty-i686-unknown-linux-gnu.tar.gz x86 Linux checksum
ty-powerpc64le-unknown-linux-gnu.tar.gz PPC64LE Linux checksum
ty-riscv64gc-unknown-linux-gnu.tar.gz RISCV Linux checksum
ty-s390x-unknown-linux-gnu.tar.gz S390x Linux checksum
ty-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
ty-armv7-unknown-linux-gnueabihf.tar.gz ARMv7 Linux checksum
ty-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
ty-i686-unknown-linux-musl.tar.gz x86 MUSL Linux checksum
ty-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum
ty-arm-unknown-linux-musleabihf.tar.gz ARMv6 MUSL Linux (Hardfloat) checksum
ty-armv7-unknown-linux-musleabihf.tar.gz ARMv7 MUSL Linux checksum

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/ty

You 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>

Don't miss a new ty release

NewReleases is sending notifications on new releases.