github astral-sh/ty 0.0.36

5 hours ago

Release Notes

Released on 2026-05-14.

Bug fixes

  • Fix Go To-Definition for self-imported submodules (#25106)
  • Fix ClassVar[Self] assignment checks for class objects (#24657)
  • Fix attribute access on Callable-bounded TypeVars (#24793)
  • Fix panic from TypedDict schema cycle with Self fields (#25094)
  • Fix panic from accessing args[0] for static_assert (#25149)
  • Fix panic from non-name walrus target access (#25121)
  • Fix singleton classification for runtime typing objects (#25099)
  • Guard self-referential TypeOf recursion in generic callables (#24668)
  • Preserve lexical ParamSpec scope for returned Callable annotations (#24909)
  • Preserve walrus bindings through negated short-circuit conditions (#25163)
  • Run full iteration analysis on narrowed typevars (#25143)

LSP server

  • Classify TypeVar semantic tokens as type parameters (#24891)
  • Emit folding ranges for an entire block (#25113)
  • Respect the includeDeclaration request parameter (#24960)
  • Support TypedDict key completions in incomplete, anonymous contexts (#25147)

Performance

  • Bound loop-header analysis for large loops (#24972)
  • Convert inference hash maps to boxed slices on finish (#25102)

Core type checking

  • Add support for sentinel values (PEP 661) (#25082)
  • Hoist path assignment implication checks (#25107)
  • Preserve TypedDict keys through dict unpacking (#24523)
  • Treat custom enum __new__ values as dynamic (#25136)

Contributors

Install ty 0.0.36

Install prebuilt binaries via shell script

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

Download ty 0.0.36

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-powerpc64-unknown-linux-gnu.tar.gz PPC64 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.