Skip to main content

ty-extended

PyPI

A fork of Astral's ty with support for semantic plugins. It keeps the ty command and language server.

Getting started

Run with uvx:

uvx --from ty-extended ty check

Or add it to your project:

uv add --dev ty-extended
uv run ty check

Plugins

flowchart LR
    subgraph host["ty-extended"]
        checker["ty semantic checker"] -->|claimed hook| router["Plugin router"]
        router -->|validated patch| checker
    end

    project["Python project"] --> checker
    config["ty.toml + plugin manifest"] --> router
    router -->|JSON request| wasm["WASM plugin<br/>inside Wasmtime"]
    wasm -->|declarative patch| router
    router -->|JSON request| monty["Python plugin inside Monty<br/>embedded by default, optional worker"]
    monty -->|declarative patch| router
    checker --> output["Types + diagnostics"]
  • Rust plugins compile to WebAssembly and run in Wasmtime, using ty_plugin_sdk.
  • Python plugins run in Monty, using the bundled ty.plugin_sdk. No compilation is needed.

Monty runs in-process by default, with no external runtime dependency. Separate worker processes are opt-in through the monty-workers extra and project configuration.

Enable installed plugins in ty.toml:

[plugins]
auto-discover = true

Existing plugins

Documentation

Report fork or plugin issues in the issue tracker.

Contributing

Rust implementation changes belong in ruff-extended, which is pinned by the ruff submodule. See CONTRIBUTING.md.

Version policy

Versions track the upstream ty base: ty-extended 0.84.4 builds on ty 0.0.84, with fork-only releases incrementing the patch. SDK and protocol crates are versioned independently; breaking changes may occur between their pre-1.0 releases.

License

MIT (LICENSE).

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-extended 0.84.5

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-extended 0.84.5
File Size Uploaded Provenance
ty_extended-0.84.5.tar.gz 7.6 MB Without provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for ty-extended 0.84.5
File
ty_extended-0.84.5-py3-none-win_arm64.whl Python 3 none Windows ARM64 Details
ty_extended-0.84.5-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
ty_extended-0.84.5-py3-none-musllinux_1_2_x86_64.whl Python 3 none Linux musl 1.2+ x86-64 Details
ty_extended-0.84.5-py3-none-musllinux_1_2_aarch64.whl Python 3 none Linux musl 1.2+ ARM64 Details
ty_extended-0.84.5-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64 Details
ty_extended-0.84.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
ty_extended-0.84.5-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details
ty_extended-0.84.5-py3-none-macosx_10_12_x86_64.whl Python 3 none macOS 10.12+ x86-64 Details

Total release size: 187.5 MB

Release files / ty_extended-0.84.5.tar.gz

Download URL ty_extended-0.84.5.tar.gz
Size 7.6 MB
Tags Source
SHA-256 checksum
How to use checksums
0367a098cadf0d63eff6642b807dc0ab2a956b75765f89cd875ffd5eb971fa35
BLAKE2b-256 checksum
How to use checksums
320544d8cdd1d553c0f66dccd552fec786a0738302d215d91a5536b5427c60f2
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_extended-0.84.5-py3-none-win_arm64.whl

Download URL ty_extended-0.84.5-py3-none-win_arm64.whl
Size 22.0 MB
Tags Python 3 Windows ARM64
SHA-256 checksum
How to use checksums
dac44727adfaccc032d11637157cd4c2cf5e958fa36b17389b865ab97ed11abd
BLAKE2b-256 checksum
How to use checksums
7da846ad661b4a42907cf282a8c526c2e46f9243adf1f29a9a09976eeb717a75
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_extended-0.84.5-py3-none-win_amd64.whl

Download URL ty_extended-0.84.5-py3-none-win_amd64.whl
Size 23.9 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
5bdd28cca500c32ea6b689f9b51213c72db43d1eb398f9434f6a0d54cc7109d4
BLAKE2b-256 checksum
How to use checksums
aa738780a4a9ed9f4a3f03f83aff318affff37099c59e9e8295b81f74d44cca2
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_extended-0.84.5-py3-none-musllinux_1_2_x86_64.whl

Download URL ty_extended-0.84.5-py3-none-musllinux_1_2_x86_64.whl
Size 23.6 MB
Tags Linux musl 1.2+ x86-64 Python 3
SHA-256 checksum
How to use checksums
1cf7a7a38badd38ea865e0c006a683816498ed566a8be9a7e172e21b4c96e59d
BLAKE2b-256 checksum
How to use checksums
717c1176ca03a2b2f4200ff823619dfa0d8188dbf43eba9b0a1a4009f7b96536
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_extended-0.84.5-py3-none-musllinux_1_2_aarch64.whl

Download URL ty_extended-0.84.5-py3-none-musllinux_1_2_aarch64.whl
Size 21.6 MB
Tags Linux musl 1.2+ ARM64 Python 3
SHA-256 checksum
How to use checksums
25a50bec925b9dcf965087488695efbb59dae6ea7b15997dc2bd624a550f57d2
BLAKE2b-256 checksum
How to use checksums
8e0722421ac71ad963573b339e5e2e53102212ed2be865508bf27e23fc76d663
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_extended-0.84.5-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL ty_extended-0.84.5-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 23.4 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
248bad1756b18e1fefe6a99b34273380e6b5ff2365d8887cf618949558859a00
BLAKE2b-256 checksum
How to use checksums
226507836de165bff3fe86988f0987ddf57478d3d201d3a8ea3ce50235a91713
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_extended-0.84.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL ty_extended-0.84.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 21.8 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
7ce54f37c1c624e210842d022991f71810498fb82a02029692f7459f06acb66b
BLAKE2b-256 checksum
How to use checksums
c5f89b092b9a1aca4e24fb1ed4672cb6ae17c1b9ae47309c279836ef50e9dfcf
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_extended-0.84.5-py3-none-macosx_11_0_arm64.whl

Download URL ty_extended-0.84.5-py3-none-macosx_11_0_arm64.whl
Size 21.0 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
ad31d561e8d1b3d8b62e216bbeac986976fb686e8c1bd4045c4f3352c4d4bb7a
BLAKE2b-256 checksum
How to use checksums
f89f193c80cd5a041b2ef6b46df5faaee6d20a874cfe3e2450cc63241af35c6e
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_extended-0.84.5-py3-none-macosx_10_12_x86_64.whl

Download URL ty_extended-0.84.5-py3-none-macosx_10_12_x86_64.whl
Size 22.4 MB
Tags Python 3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
e8d981606e6bf894ec02566d5a0ace1511fec7075898641d043a9c5492946af5
BLAKE2b-256 checksum
How to use checksums
a0d3a1385fc79d37e44fabab0a71f3e533fbce309c50796181604653502b67c3
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}

Security for ty-extended 0.84.5

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.

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