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

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

Built distributions (wheels)

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

Total release size: 248.9 MB

Release files / ty-0.0.91.tar.gz

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

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

Download URL ty-0.0.91-py3-none-win_amd64.whl
Size 13.8 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
5ac9eaf938e7fba4dd6c3358f852e6eb3127aa7bde0a76d9807c41f60ad73a29
BLAKE2b-256 checksum
How to use checksums
fc6327c8051a72328ee81f47dace5e2c63e7db43bcae935db25a9dbd4d0e59b2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.4 {"installer":{"name":"uv","version":"0.13.4","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.91-py3-none-win32.whl

Download URL ty-0.0.91-py3-none-win32.whl
Size 13.3 MB
Tags Python 3 Windows x86-32
SHA-256 checksum
How to use checksums
b9f4bba8486a3d13babc11f8115369d0a0dc8bef127b7cf4f4c5eed9d4dbfa01
BLAKE2b-256 checksum
How to use checksums
086f8a7701adf1f539a893274358f12ba62773d5bb40920bfc53e0d852bfd576
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.4 {"installer":{"name":"uv","version":"0.13.4","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.91-py3-none-musllinux_1_2_x86_64.whl

Download URL ty-0.0.91-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
a6d93ab988c4c5ed92b52389b888d46ddede78e4646fe28db615bbeff89cdf82
BLAKE2b-256 checksum
How to use checksums
8940ccebba145dd244b2f6058ce2e4a6ff34dea36d4a5b38dd7a6ae983b65a3b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.4 {"installer":{"name":"uv","version":"0.13.4","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.91-py3-none-musllinux_1_2_i686.whl

Download URL ty-0.0.91-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
f8bf4514a383b13d7cf86eddb55f0eb9f356fc7efeae0de714ad4fe5fc54fee8
BLAKE2b-256 checksum
How to use checksums
fa2653dddd4f927dfaa73ea14cd71d97b4d92d685e365b5b037bac457e271403
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.4 {"installer":{"name":"uv","version":"0.13.4","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.91-py3-none-musllinux_1_2_armv7l.whl

Download URL ty-0.0.91-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
e62f8bbc17d481e01cce39bdfbe36beefda0478cb210e8045ef618d3f674a731
BLAKE2b-256 checksum
How to use checksums
47acfd6d20d00202949d775043c5f70679f38d0e48ea30eeacbffaf6e0a9754e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.4 {"installer":{"name":"uv","version":"0.13.4","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.91-py3-none-musllinux_1_2_aarch64.whl

Download URL ty-0.0.91-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
b0f34630aa92e222d7754d66222d116f027025cb2b9ed66e1b4b73623de74e84
BLAKE2b-256 checksum
How to use checksums
9d5a63c0eae2d5b02cef98a9b327b1a16b36287c140b3a7d2306ff7560177f9c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.4 {"installer":{"name":"uv","version":"0.13.4","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.91-py3-none-manylinux_2_31_riscv64.whl

Download URL ty-0.0.91-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
63f268c80697d614d18e988476d2517177d66ec732ae104d86e57b60f197a416
BLAKE2b-256 checksum
How to use checksums
1e7183dd28e628698059ba6fe7081acafa7a8f65cfd90fe6573907ca8219d561
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.4 {"installer":{"name":"uv","version":"0.13.4","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.91-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL ty-0.0.91-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
f68bb6bfc8171910335a47c7e84070f28bbbc0326bcd6ef08fe3690d0509556b
BLAKE2b-256 checksum
How to use checksums
8306dc28cea0796ee0268bf987d1d6f0f168605bec8898dbdbc7676049d2667b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.4 {"installer":{"name":"uv","version":"0.13.4","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.91-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl

Download URL ty-0.0.91-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
b8bb2784572fa22f77e417844936f6a9f831a6b0ba64749ca1065c407aefcd23
BLAKE2b-256 checksum
How to use checksums
0b85e2419b19577ead84b8afa9137c12eb4bde19f926423bfe01e615db12c52c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.4 {"installer":{"name":"uv","version":"0.13.4","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.91-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl

Download URL ty-0.0.91-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
fc683f49197d63ec47b2eaa9763ddb32dafb2a31190d938b9bb8ebecc5b25173
BLAKE2b-256 checksum
How to use checksums
b72c82f29ee86f4171807af8ab2feaf4e51211143118a3e53e9da2c2e77eca7d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.4 {"installer":{"name":"uv","version":"0.13.4","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.91-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl

Download URL ty-0.0.91-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
577701ec2a9cf7a50f6059069399b9437bb8af7a99df24012776e95d8a55831f
BLAKE2b-256 checksum
How to use checksums
09b0fb3edee2857e97d85b6c735901469fd523cf6792382e4fbbb00b065c186c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.4 {"installer":{"name":"uv","version":"0.13.4","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.91-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl

Download URL ty-0.0.91-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
0ec8fe4243aab445abece38a2b8e9b3010230d5e6b3f4e15bfa811a914d99e73
BLAKE2b-256 checksum
How to use checksums
5aa03eecf8717cbe4e05d6e02b53679aebad79f1bfcff6c9c03d7601cb7df5f9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.4 {"installer":{"name":"uv","version":"0.13.4","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.91-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL ty-0.0.91-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
89ecaf87b3d7b508f9ea1ef8715d4cf47942719659028c92fad819d82a82ccfa
BLAKE2b-256 checksum
How to use checksums
319fa742f273c065c4f5a054cc2b44076207136ff1cd346adfb23da38d8894d8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.4 {"installer":{"name":"uv","version":"0.13.4","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.91-py3-none-macosx_11_0_arm64.whl

Download URL ty-0.0.91-py3-none-macosx_11_0_arm64.whl
Size 13.0 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
78e3e66e88a9ae903afe0981ff9bd225d452ade2aeb070715842510dfcbf6de4
BLAKE2b-256 checksum
How to use checksums
1333be8f62444c7840d1b0928c6d174540c0fe6b1b193ae9324c8249e8ed52b9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.4 {"installer":{"name":"uv","version":"0.13.4","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.91-py3-none-macosx_10_12_x86_64.whl

Download URL ty-0.0.91-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
dcf953e25f90fbccf6cc27ef43fc4ef0961c89f54866e32cd1d7f24891b96084
BLAKE2b-256 checksum
How to use checksums
33879ccfa2d97b8b043e4d6fab10febc50ac7856b02cf7cd64910085db806bbe
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.4 {"installer":{"name":"uv","version":"0.13.4","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.91-py3-none-linux_armv6l.whl

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

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