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

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.84
File Size Uploaded
ty-0.0.84.tar.gz 7.4 MB Details

Built distributions (wheels)

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

Total release size: 244.8 MB

Release files / ty-0.0.84.tar.gz

Download URL ty-0.0.84.tar.gz
Size 7.4 MB
Tags Source
SHA-256 checksum
How to use checksums
0cefdb0cd5d399418dbe83c349ba605047b7dff815ae6f460c80e8522b40be67
BLAKE2b-256 checksum
How to use checksums
e1f634f8869c45ea87fe6a931ffa824b1fe4428167173543d92988d631add355
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","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.84-py3-none-win_arm64.whl

Download URL ty-0.0.84-py3-none-win_arm64.whl
Size 13.7 MB
Tags Python 3 Windows ARM64
SHA-256 checksum
How to use checksums
6c9d3718c4a0d318bc9c92af9b2aa85c3294e7dff54cf1d69ad79568f56516da
BLAKE2b-256 checksum
How to use checksums
6d1ce6e91852b72566b1ab9aca504712857dfb89324c12092a5bd61d42d34427
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","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.84-py3-none-win_amd64.whl

Download URL ty-0.0.84-py3-none-win_amd64.whl
Size 14.0 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
71cc9aa7a7c89d4e12c6a814e9c0c3310ad5bee44efedbd6f5a42d91e9ac0f0d
BLAKE2b-256 checksum
How to use checksums
29ec994d87252f065dda5a500bc8afc726d18f6582d81d6f4ff1feb8a267c800
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","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.84-py3-none-win32.whl

Download URL ty-0.0.84-py3-none-win32.whl
Size 13.2 MB
Tags Python 3 Windows x86-32
SHA-256 checksum
How to use checksums
4bdc85f91cbaae35825f2b17bb4ac5de0563367875cb0f42b2bf07a1bf7ff2ba
BLAKE2b-256 checksum
How to use checksums
9cf4ae7dbd118425c850981d23efb850f0d9d7f6b8d2b852bde2767434f668b4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","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.84-py3-none-musllinux_1_2_x86_64.whl

Download URL ty-0.0.84-py3-none-musllinux_1_2_x86_64.whl
Size 14.4 MB
Tags Linux musl 1.2+ x86-64 Python 3
SHA-256 checksum
How to use checksums
31e96307cf621babe969307dd657783d672e2d8bdbd06493710da635bf63fa07
BLAKE2b-256 checksum
How to use checksums
c90470e289437a67dfd686056ab4fd91880261a8233033a6a95d29393741fb97
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","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.84-py3-none-musllinux_1_2_i686.whl

Download URL ty-0.0.84-py3-none-musllinux_1_2_i686.whl
Size 14.0 MB
Tags Linux musl 1.2+ x86-32 Python 3
SHA-256 checksum
How to use checksums
dee7421451efcbd70f03e95a8f2c8d9e5ec3d35edcd27b4095ee00ee062abfc4
BLAKE2b-256 checksum
How to use checksums
869a1b4ac9ddc34cc0ab4624bc219825d66af52f1ad87f4778ad08ad03fa06d5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","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.84-py3-none-musllinux_1_2_armv7l.whl

Download URL ty-0.0.84-py3-none-musllinux_1_2_armv7l.whl
Size 13.7 MB
Tags Linux musl 1.2+ ARMv7l Python 3
SHA-256 checksum
How to use checksums
8b6562fcc48820c1030e2a4509ef2c14ef93043ca4860280074314ac3a825b95
BLAKE2b-256 checksum
How to use checksums
f683fbe5d1177667ae16d84c3242846b143809c9cc09568b333e5a9b4d5908f6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","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.84-py3-none-musllinux_1_2_aarch64.whl

Download URL ty-0.0.84-py3-none-musllinux_1_2_aarch64.whl
Size 13.5 MB
Tags Linux musl 1.2+ ARM64 Python 3
SHA-256 checksum
How to use checksums
c6e56b443ff9ba462e34bfbc1e582004c2719ed35f8f93a433744b0ba0afb2d9
BLAKE2b-256 checksum
How to use checksums
a6f69ee81c5d8921e5fd5f10889ae563c95cd3272b31df2ada528919ca1cef6b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","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.84-py3-none-manylinux_2_31_riscv64.whl

Download URL ty-0.0.84-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
44cf06af0e7ec78ea6d8ff33a3450fc19627756a4fba681f7410d4e3ef63047a
BLAKE2b-256 checksum
How to use checksums
43c4638ac62ca2e8eca1b92e3e16273085744fada728b993500819b5c258ca15
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","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.84-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL ty-0.0.84-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 14.2 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
af17eb391ae3027fed9be1780bea555c2b8a25ba68e184c627b4981b2c9eaab7
BLAKE2b-256 checksum
How to use checksums
60d532cd67aedb271f006e716ad093806c96c5d7e2af86be8255469dbd3d76c8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","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.84-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl

Download URL ty-0.0.84-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
Size 14.7 MB
Tags Linux glibc 2.17+ IBM System/390x Python 3
SHA-256 checksum
How to use checksums
b92400494ab855cfb1204ac1101e3f53b2d09a8e21d171758b2cf9acdab1809e
BLAKE2b-256 checksum
How to use checksums
2017b0099098a560aeb4f9fde6c912f9a81622c3e44e6555e1fbe322b368ec31
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","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.84-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl

Download URL ty-0.0.84-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Size 15.0 MB
Tags Linux glibc 2.17+ PowerPC 64-le Python 3
SHA-256 checksum
How to use checksums
a05d1d53db8b64410ab38c6e32c5898510584869d1d5dd9c0605db81c9aef7df
BLAKE2b-256 checksum
How to use checksums
c8a1da3246e6ef2ae0e842bca4058b25c54bee55ab058ffff4ee54e72517ec01
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","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.84-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl

Download URL ty-0.0.84-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Size 14.5 MB
Tags Linux glibc 2.17+ x86-32 Python 3
SHA-256 checksum
How to use checksums
e06ef117759f654f5379efe9ae79bda8a186016c016f1023d05c34f8e15c1546
BLAKE2b-256 checksum
How to use checksums
448d33702c8f62f05ad45b33644fb914d483de6a0a7bc8e51884e9b8773e6d69
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","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.84-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl

Download URL ty-0.0.84-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Size 13.7 MB
Tags Linux glibc 2.17+ ARMv7l Python 3
SHA-256 checksum
How to use checksums
417c3bf14947ed16b0b92976ab333c27915590354e96d4f581709068d3811355
BLAKE2b-256 checksum
How to use checksums
0532dca630f5f5353fa7bf67eebccf1549df99b16656d21071d0df6677c826a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","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.84-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL ty-0.0.84-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
61155cad0921e890d86d1d911a40b3a0e924ef4bdc3b4f3865a6c89c7e3012dc
BLAKE2b-256 checksum
How to use checksums
4496f012de4b3c1d9a4773326621380d768b4d48c47e620dc012775c5e01c7d7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","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.84-py3-none-macosx_11_0_arm64.whl

Download URL ty-0.0.84-py3-none-macosx_11_0_arm64.whl
Size 13.4 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
8f78c2915567f2ee62ce0c24d86091bc76f81577677755e242d09951db588b9a
BLAKE2b-256 checksum
How to use checksums
fcb6b12dd130e7f30141f0645614f454c925991cd389b1cc6c8284fd6bf32326
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","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.84-py3-none-macosx_10_12_x86_64.whl

Download URL ty-0.0.84-py3-none-macosx_10_12_x86_64.whl
Size 13.5 MB
Tags Python 3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
b00f39b521f0b559cde0f6abf8dd47213b513b04f33d58efeb9b98486a16bb17
BLAKE2b-256 checksum
How to use checksums
c53b27f06f49945c36170765fad82076898039ae3873338e9865f876dd62f12c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","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.84-py3-none-linux_armv6l.whl

Download URL ty-0.0.84-py3-none-linux_armv6l.whl
Size 13.9 MB
Tags Python 3 linux armv6l
SHA-256 checksum
How to use checksums
868438e2b9abfc835dd5b5b07ed693db95d8348ac40e3228252511d63ae87695
BLAKE2b-256 checksum
How to use checksums
aa0c600648778e1c79133ce6b6a5c4c2531ae16b90c9b30f5041b38b574f61b8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.11 {"installer":{"name":"uv","version":"0.12.11","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.84 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