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

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.85
File Size Uploaded
ty-0.0.85.tar.gz 7.5 MB Details

Built distributions (wheels)

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

Total release size: 247.3 MB

Release files / ty-0.0.85.tar.gz

Download URL ty-0.0.85.tar.gz
Size 7.5 MB
Tags Source
SHA-256 checksum
How to use checksums
ef442cbc2fd6dad02eb00dee4213c1e0f18e09bcbeec2cdce6aa802603c5c6bb
BLAKE2b-256 checksum
How to use checksums
668f8de9c4ff90e7131a3c832ea074e123d551fed84c899d37a522f649ca7c6a
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.85-py3-none-win_arm64.whl

Download URL ty-0.0.85-py3-none-win_arm64.whl
Size 13.8 MB
Tags Python 3 Windows ARM64
SHA-256 checksum
How to use checksums
953574167a79d9dba7781238879955fa37fea405393710bfe53069ac82dff4d9
BLAKE2b-256 checksum
How to use checksums
2440110b4f01af47fbb061f03e2f8e85cb30dd3d9ea614b2059dfaa058a044a5
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.85-py3-none-win_amd64.whl

Download URL ty-0.0.85-py3-none-win_amd64.whl
Size 14.1 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
2636f8255b97c357dac1f9f50ca58f58a49642c8adb5c76643f483401a577014
BLAKE2b-256 checksum
How to use checksums
f6a865d865185ecb18ee45b85cd99b34aedb3d8a4a9fe0438dab695e1390dbb7
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.85-py3-none-win32.whl

Download URL ty-0.0.85-py3-none-win32.whl
Size 13.4 MB
Tags Python 3 Windows x86-32
SHA-256 checksum
How to use checksums
0742d21a002481af8d2324b16ce5df210b5bb7673b0ea1096cfc02745c6b7280
BLAKE2b-256 checksum
How to use checksums
b5640fca31db8c48dc72285f17b878e2c6a015279ab04a26e16f62abb384094f
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.85-py3-none-musllinux_1_2_x86_64.whl

Download URL ty-0.0.85-py3-none-musllinux_1_2_x86_64.whl
Size 14.5 MB
Tags Linux musl 1.2+ x86-64 Python 3
SHA-256 checksum
How to use checksums
d622348c05a9fe99ad087dc93f174617a96f9fef23dd7a0acbdb0adaf8bd5ae6
BLAKE2b-256 checksum
How to use checksums
9d310372621051cc807f23d2e9c55bab65818ed131852c05fbe4c65be365895e
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.85-py3-none-musllinux_1_2_i686.whl

Download URL ty-0.0.85-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
0e3a32de0731efce574367fdd680b7524c681909a92e6cf64bb40ad48ccbc110
BLAKE2b-256 checksum
How to use checksums
f25405043adf78fa5c0440fe9b956505b24d2568da256b60e7479c691510bb92
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.85-py3-none-musllinux_1_2_armv7l.whl

Download URL ty-0.0.85-py3-none-musllinux_1_2_armv7l.whl
Size 13.8 MB
Tags Linux musl 1.2+ ARMv7l Python 3
SHA-256 checksum
How to use checksums
4b76c6a2fc5974fc2c5f95156a34f44127be794f4b3dc9793aae5b6a4b774e83
BLAKE2b-256 checksum
How to use checksums
2e60d2dda3a3443d55083429b1eccabed95cbf8769bc61c51831e0ece890780f
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.85-py3-none-musllinux_1_2_aarch64.whl

Download URL ty-0.0.85-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
820eb594b1d30cd6a0776e59449ed6994b03c27af8da0c287ad351de193eb4a7
BLAKE2b-256 checksum
How to use checksums
0816700c730b4978de81bab82974c23db0229e58d852e10767e1f1f8b0e217db
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.85-py3-none-manylinux_2_31_riscv64.whl

Download URL ty-0.0.85-py3-none-manylinux_2_31_riscv64.whl
Size 14.6 MB
Tags Linux glibc 2.31+ RISC-V 64 Python 3
SHA-256 checksum
How to use checksums
453dcb85b5f2486ddc6ade57a50698e9a8d8e3aae34e50f0b20bc5e8c2a3bc2b
BLAKE2b-256 checksum
How to use checksums
3638866054d20e12e72a76a37eaf60f1374f7ad4d0b973c145685782065d84cf
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.85-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL ty-0.0.85-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 14.3 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
cc1fff0eab4e73fcc66df761a7a4759da04d3e9c2b82d57c628c50434e2ff0d7
BLAKE2b-256 checksum
How to use checksums
7b4f6ebfe4f14c399856fc80c448ab442521072f688dfde72b075d8a90d7cafa
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.85-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl

Download URL ty-0.0.85-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
2280d31c369ef61ed9a4c2399cd663340d85a5fd7965a8ad881203ea6b8b130e
BLAKE2b-256 checksum
How to use checksums
f028fd471f2edc0f38a70f0494f9949d1983591073555d254031542c0ed29454
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.85-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl

Download URL ty-0.0.85-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Size 15.1 MB
Tags Linux glibc 2.17+ PowerPC 64-le Python 3
SHA-256 checksum
How to use checksums
d06c9aa616672e9f9856ff7b539be5c3a4719702e5636e58b4196a8c850a884b
BLAKE2b-256 checksum
How to use checksums
2026cdd96e45c33079174d5cd70649a5ae77758bc209f0685e8a4fecee9b7094
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.85-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl

Download URL ty-0.0.85-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Size 14.7 MB
Tags Linux glibc 2.17+ x86-32 Python 3
SHA-256 checksum
How to use checksums
5fada6d10172b4c88d44b1f9697c9f5f40d34f8fb40fe716da0366f094268c9b
BLAKE2b-256 checksum
How to use checksums
475d1210c1f59e8c8c970807a2f13c180fa953ce58a6ddf28e90564db6f8890d
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.85-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl

Download URL ty-0.0.85-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Size 13.8 MB
Tags Linux glibc 2.17+ ARMv7l Python 3
SHA-256 checksum
How to use checksums
a0971dc7b2f9e9cabdf654f53c8a40e563921227d05567b670f171cba2b3e385
BLAKE2b-256 checksum
How to use checksums
bae5f6f2d279ef810d89b688425a72150bbbd84a2d6bf54eb9a5ae172f13e3a5
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.85-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL ty-0.0.85-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 13.5 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
311c131f735bf76be8852305817d5fd10165d6289c76350f6188b0749a66a7f8
BLAKE2b-256 checksum
How to use checksums
ff9c6c4fc7badf3e1e2e160d0b5c68632d85eb48dd0341422ac44fdd855d1eaf
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.85-py3-none-macosx_11_0_arm64.whl

Download URL ty-0.0.85-py3-none-macosx_11_0_arm64.whl
Size 13.3 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
90e1bb090348cb560c7ba6109f2c898735b0520fd3114cd316d8bd80439aabb7
BLAKE2b-256 checksum
How to use checksums
e77add1e2e1c54551d61451c18eeb918db833fdbc0a48022fd2bffc93c755735
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.85-py3-none-macosx_10_12_x86_64.whl

Download URL ty-0.0.85-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
391d1993ea3b26509ddb3878dbe79e4cb92487c73109893ee2e51394846e0a69
BLAKE2b-256 checksum
How to use checksums
4a26d6b2c7221096c3fa36a0afd4aa8134ffd450df63635ec3862a5a8cf6c9fd
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.85-py3-none-linux_armv6l.whl

Download URL ty-0.0.85-py3-none-linux_armv6l.whl
Size 14.1 MB
Tags Python 3 linux armv6l
SHA-256 checksum
How to use checksums
012d71e0dcb51e74599adfb0e5c1416bdac3bf983115e42230545c782b06cfca
BLAKE2b-256 checksum
How to use checksums
1f061716c1778088c5c8f96b248f0e0304e839ca69c096bde82b827bc00e4194
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.85 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