pypi ty 0.0.93

4 hours ago

Release Notes

Released on 2026-10-28.

Preview features

  • Add diagnostic baselines to help adopt ty in projects with existing errors (#27636). Configure a baseline in pyproject.toml:

    [tool.ty]
    baseline = "ty-baseline.json"

    Run ty check --update-baseline to record existing diagnostics. Subsequent checks filter matching diagnostics from CLI output and show them as hints in the language server. The baseline format may change while the feature is in preview.

Bug fixes

  • Fix a panic when checking truthiness in a loop (#29759)
  • Fix hang when negating recursive unions of instance types (#29652)

Core type checking

  • Avoid synthesizing primary keys for abstract Django models (#29744)
  • Combine constraints from repeated ParamSpecs (#29172)
  • Fix narrowing of strings and integers compared with enum members (#29743)
  • Honor @override on overload implementations in stubs (#29470)
  • Preserve caller type variables in nested union inference (#29611)
  • Preserve generic callback specializations during return refinement (#29667)
  • Preserve mapping capture types on narrowed subjects (#29749)
  • Preserve narrowing after guarded match subject captures (#29558)
  • Preserve string literals in comparisons with LiteralString (#29741)
  • Remove covered exclusions from unions (#29615)

Performance

  • Avoid replaying conditions in long boolean expressions (#29754)
  • Index nominal union alternatives (#29196)
  • Normalize runtime unions on demand (#29727)
  • Optimize Linux x86-64 ty releases with LLVM BOLT (#4833)
  • Record predicate truthiness alongside expression inference (#29706)
  • Reuse exception checkpoints when a new place is read (#29750)
  • Reuse runtime operands in eager union annotations (#29770)
  • Reuse tuple pattern analysis work (#29197)
  • Skip predicates that cannot affect narrowing (#29736)
  • Speed up match narrowing over large unions (#29733)

Contributors

Install ty 0.0.93

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://releases.astral.sh/github/ty/releases/download/0.0.93/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.93/ty-installer.ps1 | iex"

Download ty 0.0.93

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.