ty · PyPI Skip to main content

An extremely fast Python type checker, written in Rust.

Project description

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.

FAQ

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.

Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ty-0.0.32.tar.gz (5.5 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

ty-0.0.32-py3-none-win_arm64.whl (10.7 MB view details)

Uploaded Python 3Windows ARM64

ty-0.0.32-py3-none-win_amd64.whl (11.3 MB view details)

Uploaded Python 3Windows x86-64

ty-0.0.32-py3-none-win32.whl (10.3 MB view details)

Uploaded Python 3Windows x86

ty-0.0.32-py3-none-musllinux_1_2_x86_64.whl (11.4 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

ty-0.0.32-py3-none-musllinux_1_2_i686.whl (10.9 MB view details)

Uploaded Python 3musllinux: musl 1.2+ i686

ty-0.0.32-py3-none-musllinux_1_2_armv7l.whl (10.7 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARMv7l

ty-0.0.32-py3-none-musllinux_1_2_aarch64.whl (10.6 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

ty-0.0.32-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.3 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

ty-0.0.32-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl (11.3 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ s390x

ty-0.0.32-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (11.7 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ppc64le

ty-0.0.32-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl (11.2 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ i686

ty-0.0.32-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (10.7 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARMv7l

ty-0.0.32-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.7 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

ty-0.0.32-py3-none-macosx_11_0_arm64.whl (10.2 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

ty-0.0.32-py3-none-macosx_10_12_x86_64.whl (10.7 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

ty-0.0.32-py3-none-linux_armv6l.whl (10.9 MB view details)

Uploaded Python 3

File details

Details for the file ty-0.0.32.tar.gz.

File metadata

  • Download URL: ty-0.0.32.tar.gz
  • Upload date:
  • Size: 5.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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}

File hashes

See more details on using hashes here.

File details

Details for the file ty-0.0.32-py3-none-win_arm64.whl.

File metadata

  • Download URL: ty-0.0.32-py3-none-win_arm64.whl
  • Upload date:
  • Size: 10.7 MB
  • Tags: Python 3, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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}

File hashes

Hashes for ty-0.0.32-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 7e10aadbdbda989a7d567ee6a37f8b98d4d542e31e3b190a2879fd581f75d658
MD5 b7f9cdfafc5e1e0ca84eebd382f26d65
BLAKE2b-256 4301beffec56d71ca25b343ede63adb076456b5b3e211f1c066452a44cd120b3

See more details on using hashes here.

File details

Details for the file ty-0.0.32-py3-none-win_amd64.whl.

File metadata

  • Download URL: ty-0.0.32-py3-none-win_amd64.whl
  • Upload date:
  • Size: 11.3 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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}

File hashes

Hashes for ty-0.0.32-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 ba7284a4a954b598c1b31500352b3ec1f89bff533825592b5958848226fdc7ee
MD5 7c26f9a2acad7507796194171a3fd26a
BLAKE2b-256 1461dc86acea899349d2579cb8419aecedd83dc504d7d6a10df65eef546c8300

See more details on using hashes here.

File details

Details for the file ty-0.0.32-py3-none-win32.whl.

File metadata

  • Download URL: ty-0.0.32-py3-none-win32.whl
  • Upload date:
  • Size: 10.3 MB
  • Tags: Python 3, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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}

File hashes

Hashes for ty-0.0.32-py3-none-win32.whl
Algorithm Hash digest
SHA256 2ff2ebb4986b24aebcf1444db7db5ca41b36086040e95eea9f8fb851c11e805c
MD5 f8053fec44bca4e133d29adffd76353f
BLAKE2b-256 df92be9abf4d3e589ad5023e2ea965b93e204ec856420d46adf73c5c36c04678

See more details on using hashes here.

File details

Details for the file ty-0.0.32-py3-none-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: ty-0.0.32-py3-none-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 11.4 MB
  • Tags: Python 3, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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}

File hashes

Hashes for ty-0.0.32-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 e96e60fa556cec04f15d7ea62d2ceee5982bd389233e961ab9fd42304e278175
MD5 bcc5be77fe76cc9c3d96693df0aad0dd
BLAKE2b-256 ba6842293f9248106dd51875120971a5cc6ea315c2c4dcfb8e59aa063aa0af26

See more details on using hashes here.

File details

Details for the file ty-0.0.32-py3-none-musllinux_1_2_i686.whl.

File metadata

  • Download URL: ty-0.0.32-py3-none-musllinux_1_2_i686.whl
  • Upload date:
  • Size: 10.9 MB
  • Tags: Python 3, musllinux: musl 1.2+ i686
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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}

File hashes

Hashes for ty-0.0.32-py3-none-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 06f17ada3e069cba6148342ef88e9929156beca8473e8d4f101b68f66c75643e
MD5 85756ed24110302292ab075dc31b58f1
BLAKE2b-256 32ad2c8a97f91f06311f4367400f7d13534bbda2522c73c99a3e4c0757dff9b8

See more details on using hashes here.

File details

Details for the file ty-0.0.32-py3-none-musllinux_1_2_armv7l.whl.

File metadata

  • Download URL: ty-0.0.32-py3-none-musllinux_1_2_armv7l.whl
  • Upload date:
  • Size: 10.7 MB
  • Tags: Python 3, musllinux: musl 1.2+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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}

File hashes

Hashes for ty-0.0.32-py3-none-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 e44ebe1bb4143a5628bc4db67ac0dfebe14594af671e4ee66f6f2e983da56501
MD5 f5a014031962d9ae8d1055eeb29c55be
BLAKE2b-256 4ed40cefcbd2ad0f3d51762ccf58e652ec7da146eb6ae34f87228f6254bbb8be

See more details on using hashes here.

File details

Details for the file ty-0.0.32-py3-none-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: ty-0.0.32-py3-none-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 10.6 MB
  • Tags: Python 3, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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}

File hashes

Hashes for ty-0.0.32-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 583c7094f4574b02f724db924f98b804d1387a0bd9405ecb5e078cc0f47fbcfb
MD5 5a66ef94667ce603c62b4d03e2ece83e
BLAKE2b-256 da9bc6813987edf4816a40e0c8e408b555f97d3f267c7b3a1688c8bbdf65609c

See more details on using hashes here.

File details

Details for the file ty-0.0.32-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: ty-0.0.32-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 11.3 MB
  • Tags: Python 3, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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}

File hashes

Hashes for ty-0.0.32-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8300caf35345498e9b9b03e550bba03cee8f5f5f8ab4c83c3b1ff1b7403b7d3a
MD5 4e1a509e36d40aafbdd4c84c3f82df95
BLAKE2b-256 7adaed6f772339cf29bd9a46def9d6db5084689eb574ee4d150ff704224c1ed8

See more details on using hashes here.

File details

Details for the file ty-0.0.32-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

  • Download URL: ty-0.0.32-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
  • Upload date:
  • Size: 11.3 MB
  • Tags: Python 3, manylinux: glibc 2.17+ s390x
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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}

File hashes

Hashes for ty-0.0.32-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 9b59868ede9b1d69a088f0d695df52a0061f95fa7baa1d5e0dc6fc9cf06e1334
MD5 eeada0a70011b664895bd21d31f3b014
BLAKE2b-256 182c2141c86ed0ce0962b45cefb658a95e734f59759d47f20afdcd9c732910a1

See more details on using hashes here.

File details

Details for the file ty-0.0.32-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

  • Download URL: ty-0.0.32-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
  • Upload date:
  • Size: 11.7 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ppc64le
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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}

File hashes

Hashes for ty-0.0.32-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 2b89969307ab2417d41c9be8059dd79feea577234e1e10d35132f5495e0d42c6
MD5 700519e6c52fb529b81db6c6a6426ef6
BLAKE2b-256 6c46ebcf67a5999421331214aac51a7464db42de2be15bbe929c612a3ed0b039

See more details on using hashes here.

File details

Details for the file ty-0.0.32-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

  • Download URL: ty-0.0.32-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
  • Upload date:
  • Size: 11.2 MB
  • Tags: Python 3, manylinux: glibc 2.17+ i686
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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}

File hashes

Hashes for ty-0.0.32-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 b5fa2fb3c614349ee211d36476b49d88c5ef79a687cdb91b2872ad023b94d2f8
MD5 463f2693cdddf41063882928ab3c0028
BLAKE2b-256 3b5ece5fd4ec803222ae3e69a76d2a2db2eed55e19f5b131702b9789ef45f93d

See more details on using hashes here.

File details

Details for the file ty-0.0.32-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

  • Download URL: ty-0.0.32-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
  • Upload date:
  • Size: 10.7 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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}

File hashes

Hashes for ty-0.0.32-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 2850561f9b018ae33d7e5bbfa0ac414d3c518513edcffe43877dc9801446b9c5
MD5 7ce1aa2cea9391498f3b06b110ce1928
BLAKE2b-256 449f0007da2d35e424debe7e9f86ffbc1ab7f60983cfbc5f0411324ab2de5292

See more details on using hashes here.

File details

Details for the file ty-0.0.32-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

  • Download URL: ty-0.0.32-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
  • Upload date:
  • Size: 10.7 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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}

File hashes

Hashes for ty-0.0.32-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d8ea0a728af99fe40dd744cba6441a2404f80b7f4bde17aa6da393810af5ea57
MD5 c215ea7c97e260b9c489f9f4817a43bd
BLAKE2b-256 ba9e2734478fbdb90c160cb2813a3916a16a2af5c1e231f87d635f6131d781fb

See more details on using hashes here.

File details

Details for the file ty-0.0.32-py3-none-macosx_11_0_arm64.whl.

File metadata

  • Download URL: ty-0.0.32-py3-none-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 10.2 MB
  • Tags: Python 3, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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}

File hashes

Hashes for ty-0.0.32-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4787ac9fe1f86b1f3133f5c6732adbe2df5668b50c679ac6e2d98cd284da812f
MD5 b5cce2f3412e41a1f496caa73935ffed
BLAKE2b-256 9632c827da3ca480456fb02d8cea68a2609273b6c220fea0be9a4c8d8470b86e

See more details on using hashes here.

File details

Details for the file ty-0.0.32-py3-none-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: ty-0.0.32-py3-none-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 10.7 MB
  • Tags: Python 3, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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}

File hashes

Hashes for ty-0.0.32-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 914bbc4f605ce2a9e2a78982e28fae1d3359a169d141f9dc3b4c7749cd5eca81
MD5 d37e4fa0d62f6511c20752acb24b56f0
BLAKE2b-256 33d2c35fc8bc66e98d1ee9b0f8ed319bf743e450e1f1e997574b178fab75670f

See more details on using hashes here.

File details

Details for the file ty-0.0.32-py3-none-linux_armv6l.whl.

File metadata

  • Download URL: ty-0.0.32-py3-none-linux_armv6l.whl
  • Upload date:
  • Size: 10.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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}

File hashes

See more details on using hashes here.