pypi ty 0.0.27

6 hours ago

Release Notes

Released on 2026-03-31.

Bug fixes

  • Fix panic on debug builds when attempting to provide autocomplete suggestions for list[int]<CURSOR>() (#24167)
  • Fix instance-attribute lookup in methods of protocol classes (#24213)
  • Fix nested global and nonlocal lookups through forwarding scopes (#24279)
  • Fix panic on list[Annotated[()]] (#24303)
  • Fix stack overflow on type A = TypeIs[Callable[[], A]] (#24245)
  • Use _cls as the name of the first argument for synthesized collections.namedtuple constructor methods (#24333)

LSP server

  • Fix semantic token classification for properties accessed on instances (#24065)
  • Grey out unused bindings in the editor (#23305)

Core type checking

  • Add bidirectional type context for TypedDict get() defaults (#24231)
  • Add bidirectional type context for TypedDict pop() defaults (#24229)
  • Add support for functional TypedDict (#24174, #24331, #24295)
  • Ban type qualifiers in PEP-695 type aliases (#24242)
  • Enforce Final attribute assignment rules for annotated and augmented writes (#23880)
  • Improve support for Callable type context (#23888)
  • Infer lambda expressions with Callable type context (#22633)
  • Don't incorrectly infer the type of a method as being a singleton type when it's accessed off an instance (#24039)
  • Propagate type context through await expressions (#24256)
  • Resolve union-likes in emitting union attribute errors (#24263)
  • Show the user where the variable was declared as Final when emitting a diagnostic about a Final variable being reassigned (#24194)

Contributors

Install ty 0.0.27

Install prebuilt binaries via shell script

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

Download ty 0.0.27

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