Skip to main content

ty

ty PyPI Discord

An extremely fast Python type checker and language server, written in Rust.


Shows a bar chart with benchmark results.

Type checking the home-assistant project without caching.


ty is backed by Astral, the creators of uv and Ruff.

ty is currently in beta.

Highlights

Getting started

Run ty with uvx to get started quickly:

uvx ty check

Or, check out the ty playground to try it out in your browser.

To learn more about using ty, see the documentation.

Installation

To install ty, see the installation documentation.

To add the ty language server to your editor, see the editor integration guide.

Getting help

If you have questions or want to report a bug, please open an issue in this repository.

You may also join our Discord server.

Contributing

Development of this project takes place in the Ruff repository at this time. Please open pull requests there for changes to anything in the ruff submodule (which includes all of the Rust source code).

See the contributing guide for more details.

Version policy

ty uses 0.0.x versioning. ty does not yet have a stable API; breaking changes, including changes to diagnostics, may occur between any two versions. See the type system support tracking issue for a detailed overview of currently supported features.

For information on the timeline, you can check out the Stable milestone.

FAQ

Which Python versions does ty support?

ty officially supports type checking code that targets Python 3.10 and later. Earlier versions (Python 3.7 through 3.9) can still be selected, but may result in false negatives or false positives due to a lack of bundled standard library stubs.

The target version is independent of the Python version used to install ty. For example, ty installed from PyPI using Python 3.8 or later can type check code targeting Python 3.7; the standalone installer does not require Python at all.

Why is ty doing _____?

See our typing FAQ.

How do you pronounce ty?

It's pronounced as "tee - why" (/tiː waɪ/)

How should I stylize ty?

Just "ty", please.

License

ty is licensed under the MIT license (LICENSE or https://opensource.org/licenses/MIT).

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in ty by you, as defined in the MIT license, shall be licensed as above, without any additional terms or conditions.

Metadata

Release files for ty 0.0.86

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ty 0.0.86
File Size Uploaded
ty-0.0.86.tar.gz 7.9 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for ty 0.0.86
File
ty-0.0.86-py3-none-win_arm64.whl Python 3 none Windows ARM64 Details
ty-0.0.86-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
ty-0.0.86-py3-none-win32.whl Python 3 none Windows x86-32 Details
ty-0.0.86-py3-none-musllinux_1_2_x86_64.whl Python 3 none Linux musl 1.2+ x86-64 Details
ty-0.0.86-py3-none-musllinux_1_2_i686.whl Python 3 none Linux musl 1.2+ x86-32 Details
ty-0.0.86-py3-none-musllinux_1_2_armv7l.whl Python 3 none Linux musl 1.2+ ARMv7l Details
ty-0.0.86-py3-none-musllinux_1_2_aarch64.whl Python 3 none Linux musl 1.2+ ARM64 Details
ty-0.0.86-py3-none-manylinux_2_31_riscv64.whl Python 3 none Linux glibc 2.31+ RISC-V 64 Details
ty-0.0.86-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64 Details
ty-0.0.86-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl Python 3 none Linux glibc 2.17+ IBM System/390x Details
ty-0.0.86-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl Python 3 none Linux glibc 2.17+ PowerPC 64-le Details
ty-0.0.86-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl Python 3 none Linux glibc 2.17+ x86-32 Details
ty-0.0.86-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl Python 3 none Linux glibc 2.17+ ARMv7l Details
ty-0.0.86-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
ty-0.0.86-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details
ty-0.0.86-py3-none-macosx_10_12_x86_64.whl Python 3 none macOS 10.12+ x86-64 Details
ty-0.0.86-py3-none-linux_armv6l.whl Python 3 none linux armv6l Details

Total release size: 246.7 MB

Release files / ty-0.0.86.tar.gz

Download URL ty-0.0.86.tar.gz
Size 7.9 MB
Tags Source
SHA-256 checksum
How to use checksums
6edcaf52e207d653873d5f495c1a8470075b232030714c981f07f0a1075bc343
BLAKE2b-256 checksum
How to use checksums
f1fa9b35728cc3c04d64f434c656836fa3c5f6e384a7813e48e63245510d5c69
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ty-0.0.86-py3-none-win_arm64.whl

Download URL ty-0.0.86-py3-none-win_arm64.whl
Size 13.2 MB
Tags Python 3 Windows ARM64
SHA-256 checksum
How to use checksums
0df36f494c5d07f68ebec3edb74fc719c4c959db7061c2018f1dff2dfe62150b
BLAKE2b-256 checksum
How to use checksums
2a7ed9811358bce1e54ac1b93bd44f4c45eba5e2e92672c5410248776c54319e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ty-0.0.86-py3-none-win_amd64.whl

Download URL ty-0.0.86-py3-none-win_amd64.whl
Size 13.7 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
6fe4116fb1a7ad3c4f7804d9241dc81187717fbd9f5fed5b50e2752a20e17a67
BLAKE2b-256 checksum
How to use checksums
c7a0c9d585fa1c5bf4ed2727f576f1542bc13e268f036451a79d057c249fc26f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ty-0.0.86-py3-none-win32.whl

Download URL ty-0.0.86-py3-none-win32.whl
Size 13.1 MB
Tags Python 3 Windows x86-32
SHA-256 checksum
How to use checksums
1ac3d8fe9efae04fbf1407583ed4118e0364a45b49a020d62b202846695a2ba1
BLAKE2b-256 checksum
How to use checksums
474aa798be4aee4ea0bb427c22f157945d0ac41310f4d6e058b3758dfb859451
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ty-0.0.86-py3-none-musllinux_1_2_x86_64.whl

Download URL ty-0.0.86-py3-none-musllinux_1_2_x86_64.whl
Size 14.6 MB
Tags Linux musl 1.2+ x86-64 Python 3
SHA-256 checksum
How to use checksums
d863f8f190e96878ed1900a8a6d5093f37761c0c47409e2bdb3d9370e37471e1
BLAKE2b-256 checksum
How to use checksums
b41d72fa2347b641143b0440296144a65f424fe047302cb13af059988f1de7a4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ty-0.0.86-py3-none-musllinux_1_2_i686.whl

Download URL ty-0.0.86-py3-none-musllinux_1_2_i686.whl
Size 14.2 MB
Tags Linux musl 1.2+ x86-32 Python 3
SHA-256 checksum
How to use checksums
7c16d22857bad1da56b147bf53ef0ed2252d7677dc5e7ee51c757b2e52ab6351
BLAKE2b-256 checksum
How to use checksums
59862f0e3c9a055f8606911a80311763a089784b66af22dd80fd3290e3b167c6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ty-0.0.86-py3-none-musllinux_1_2_armv7l.whl

Download URL ty-0.0.86-py3-none-musllinux_1_2_armv7l.whl
Size 13.9 MB
Tags Linux musl 1.2+ ARMv7l Python 3
SHA-256 checksum
How to use checksums
ccad053ce880a1f8c0850d9dd1f277f3ee559a98bded3f93472268376ceccc2d
BLAKE2b-256 checksum
How to use checksums
2258f1700176e6ae4d0a3d25e447734c60ca464d6e76ed2e8a32920ebd41e523
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ty-0.0.86-py3-none-musllinux_1_2_aarch64.whl

Download URL ty-0.0.86-py3-none-musllinux_1_2_aarch64.whl
Size 13.6 MB
Tags Linux musl 1.2+ ARM64 Python 3
SHA-256 checksum
How to use checksums
561a4eae98f6ff05395e8d7be8151fdb328eeaead1ac63dc721ca891623f7924
BLAKE2b-256 checksum
How to use checksums
7a18a820553ad3206d0cdfad5866dd64939c7e3be73e891d88c73f7fd3acb5d6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ty-0.0.86-py3-none-manylinux_2_31_riscv64.whl

Download URL ty-0.0.86-py3-none-manylinux_2_31_riscv64.whl
Size 14.7 MB
Tags Linux glibc 2.31+ RISC-V 64 Python 3
SHA-256 checksum
How to use checksums
0a48967c8adba6b12035243f225a0585b0bc5f0bf940a4829876bc455ebf3d2f
BLAKE2b-256 checksum
How to use checksums
b22a518cc7ef2586384345be675d470e0087591810304b5d994d0a2194c7d68e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ty-0.0.86-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL ty-0.0.86-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 14.4 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
a5c18501c54874149d05e5199211146876afeaeee2af234042e56dccc9d5812a
BLAKE2b-256 checksum
How to use checksums
d1b8211781d3c8de5fa88437412b7a8c0d7a632596033cff51d5004b08e94e1c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ty-0.0.86-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl

Download URL ty-0.0.86-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
Size 15.1 MB
Tags Linux glibc 2.17+ IBM System/390x Python 3
SHA-256 checksum
How to use checksums
fe7f2721746c9ee64626c69da9245faedc0f375024bf41458e45eb7b28fe5f63
BLAKE2b-256 checksum
How to use checksums
a72342f6ad5d4bb7091d70a0e96d7d436d6bc9a490210a928727dde5d883ed26
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ty-0.0.86-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl

Download URL ty-0.0.86-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Size 15.2 MB
Tags Linux glibc 2.17+ PowerPC 64-le Python 3
SHA-256 checksum
How to use checksums
087bad6ae8fa7248a16c01f5646c121dccaacbaf320ff544eed4e8c5c1fd7555
BLAKE2b-256 checksum
How to use checksums
a114a7f3b88cc76156feaf5d48601bd5da96a116f846ad0abc526df03a735bcc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ty-0.0.86-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl

Download URL ty-0.0.86-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Size 14.8 MB
Tags Linux glibc 2.17+ x86-32 Python 3
SHA-256 checksum
How to use checksums
ea3848f3cab206e9798e5a9f7c4ce8a80297b0a88ba9aa8a091360a298e97424
BLAKE2b-256 checksum
How to use checksums
3a7567e8e7bf89a6be7535768380cb20569b460b89cb09d5c82ce27411782786
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ty-0.0.86-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl

Download URL ty-0.0.86-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Size 13.9 MB
Tags Linux glibc 2.17+ ARMv7l Python 3
SHA-256 checksum
How to use checksums
a000ddcc0b99bd1ab8c8277630711061a36ae83395780fdb935bad540ebe7103
BLAKE2b-256 checksum
How to use checksums
e7c8977594e024d154f0e064b48a6f7e39a0e1e55a524349dba22146f01e02db
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ty-0.0.86-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL ty-0.0.86-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 13.7 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
c4b525ce4feb60aa2dd6becae4c470daea889149ba9dc7699ffbcf41448f69a9
BLAKE2b-256 checksum
How to use checksums
47b27e0e7ffc8b3961f5f74893ba9b98433b922d3f1ae6621d1e3e3e20663e1d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ty-0.0.86-py3-none-macosx_11_0_arm64.whl

Download URL ty-0.0.86-py3-none-macosx_11_0_arm64.whl
Size 12.8 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
40e5fc602af41b0ea89dd1d19fe8da7e75322e6e0db95ea23340a858b409ac2b
BLAKE2b-256 checksum
How to use checksums
bc62dfde84ffab702545f866350675b16f8df6555d3c41123c25e7a509fe857e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ty-0.0.86-py3-none-macosx_10_12_x86_64.whl

Download URL ty-0.0.86-py3-none-macosx_10_12_x86_64.whl
Size 13.7 MB
Tags Python 3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
27a8a7cf26a1cd17d93586eb20aadbcc535fa6ad4b535813ee8fc52560c31efd
BLAKE2b-256 checksum
How to use checksums
57e3838ea547c177983976103d3a54b346afc22d0ff97943ab58c7b7aff1f753
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ty-0.0.86-py3-none-linux_armv6l.whl

Download URL ty-0.0.86-py3-none-linux_armv6l.whl
Size 14.2 MB
Tags Python 3 linux armv6l
SHA-256 checksum
How to use checksums
305c238df5dedf97f1b65e52d2c446a41d11551291e37054858c00c5627bf15b
BLAKE2b-256 checksum
How to use checksums
9527dd422283667ce10d60af57edc3ccab078084282ee304a5c22b5ed79390c6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

0.0.86 This release

18 release files

0.0.8

18 release files

0.0.7

18 release files

0.0.6

18 release files

0.0.5

18 release files

0.0.4

18 release files

0.0.3

18 release files

0.0.2

18 release files

0.0.1

11 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page