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

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.90
File Size Uploaded Provenance
ty-0.0.90.tar.gz 8.0 MB Without provenance Details

Built distributions (wheels)

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

Total release size: 248.7 MB

Release files / ty-0.0.90.tar.gz

Download URL ty-0.0.90.tar.gz
Size 8.0 MB
Tags Source
SHA-256 checksum
How to use checksums
25cef63ec07a0254c2f5d885a63b001d0bfa437b20caa0a408f4f52e66b133e7
BLAKE2b-256 checksum
How to use checksums
68b1613b5534624442a9118828d7a9e54d50b16f0f5c8b67c80eb6623f33b921
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","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.90-py3-none-win_arm64.whl

Download URL ty-0.0.90-py3-none-win_arm64.whl
Size 13.3 MB
Tags Python 3 Windows ARM64
SHA-256 checksum
How to use checksums
bfb63e74eeedb0a29d49cf58d611c540bfdfc0975dfce26efc6575bcf439208d
BLAKE2b-256 checksum
How to use checksums
33686dea089a897e8b314504eecc2633de3c8fe14f70e71a35606d14a2ba169e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","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.90-py3-none-win_amd64.whl

Download URL ty-0.0.90-py3-none-win_amd64.whl
Size 13.9 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
8d77c16d20201b7a07ccaafb610eaf60488783dbba9865c4f9182e584f1426f8
BLAKE2b-256 checksum
How to use checksums
d254be5cd6b17d8087a5e4c26892311c07e39d42b66c925b0f06cfc51a9ce83b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","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.90-py3-none-win32.whl

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

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

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

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

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

Download URL ty-0.0.90-py3-none-manylinux_2_31_riscv64.whl
Size 14.8 MB
Tags Linux glibc 2.31+ RISC-V 64 Python 3
SHA-256 checksum
How to use checksums
e2405206533dc896a2b711e781f2955d5883d85536f4df0ac262fca6517103c2
BLAKE2b-256 checksum
How to use checksums
f42e3f65f61f4545f75255373be7646a606e004bb4cdc851e236bf17ca94bdc2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","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.90-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

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

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

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

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

Download URL ty-0.0.90-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Size 14.0 MB
Tags Linux glibc 2.17+ ARMv7l Python 3
SHA-256 checksum
How to use checksums
4e24a8aa07c05d9d14648289e79a88b7c7c2c522c58b53bb5f466a6ba4704e22
BLAKE2b-256 checksum
How to use checksums
b93e693049f93653d2f6412bb0c2c0af1d01675e31643af29bef7177d3ff7e79
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","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.90-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL ty-0.0.90-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
76c4a095a86a132df374e652894fe08392aeb1601d6347e1eb4b58808094a302
BLAKE2b-256 checksum
How to use checksums
e47770658f6b80c345ae0c12f2192a5cc89b8ca13eccfe06616b0fac3806c261
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","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.90-py3-none-macosx_11_0_arm64.whl

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

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

Download URL ty-0.0.90-py3-none-linux_armv6l.whl
Size 14.3 MB
Tags Python 3 linux armv6l
SHA-256 checksum
How to use checksums
0dedb54977b40bc86638fec2c90eefd593f3a6683003a86b7e6cb67c17bcc476
BLAKE2b-256 checksum
How to use checksums
b2330e3395afa2c31c0e8e91547629858d2a5de213c69af237e6e50f37545565
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","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}

Security for ty 0.0.90

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.0.90 This release

18 release files No provenance

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