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

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

Built distributions (wheels)

Table of built distributions (wheels) for ty-extended 0.84.4
File
ty_extended-0.84.4-py3-none-win_arm64.whl Python 3 none Windows ARM64 Details
ty_extended-0.84.4-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
ty_extended-0.84.4-py3-none-musllinux_1_2_x86_64.whl Python 3 none Linux musl 1.2+ x86-64 Details
ty_extended-0.84.4-py3-none-musllinux_1_2_aarch64.whl Python 3 none Linux musl 1.2+ ARM64 Details
ty_extended-0.84.4-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.4-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
ty_extended-0.84.4-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details
ty_extended-0.84.4-py3-none-macosx_10_12_x86_64.whl Python 3 none macOS 10.12+ x86-64 Details

Total release size: 185.3 MB

Release files / ty_extended-0.84.4.tar.gz

Download URL ty_extended-0.84.4.tar.gz
Size 7.6 MB
Tags Source
SHA-256 checksum
How to use checksums
23a7c3bf38146944e498450c909f83410acee20d45846bd2eaf0d6f8311536da
BLAKE2b-256 checksum
How to use checksums
5e31e8afe6b67b9f789c4b3bb642083939c8e4b0c47fc828576195ec964240d4
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.4-py3-none-win_arm64.whl

Download URL ty_extended-0.84.4-py3-none-win_arm64.whl
Size 21.8 MB
Tags Python 3 Windows ARM64
SHA-256 checksum
How to use checksums
018bdfcae13a170090ea6dca89eeec12089c752fc5d7836e8e393e00c6b64e66
BLAKE2b-256 checksum
How to use checksums
e238bc99a5f40c4586193397842ef3d69b12ebc9b8ffbdf55fbc76b14cb71397
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.4-py3-none-win_amd64.whl

Download URL ty_extended-0.84.4-py3-none-win_amd64.whl
Size 23.7 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
c71cb01659cb0ec067ab51732b1bd7e5e92a48ae46dc8fbe686ce4d1399b3008
BLAKE2b-256 checksum
How to use checksums
393464ae9b87803b45295de5695d202049e0effd1ad835313947ce6fa3e2f6f1
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.4-py3-none-musllinux_1_2_x86_64.whl

Download URL ty_extended-0.84.4-py3-none-musllinux_1_2_x86_64.whl
Size 23.3 MB
Tags Linux musl 1.2+ x86-64 Python 3
SHA-256 checksum
How to use checksums
b3d5f959a39d25a4d127c89aee36a02c11386cd3b902275c98973df728d35718
BLAKE2b-256 checksum
How to use checksums
07c7138dd9ddf93cf588bedadcdae5a15e727329e1825244561489b2413ea14b
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.4-py3-none-musllinux_1_2_aarch64.whl

Download URL ty_extended-0.84.4-py3-none-musllinux_1_2_aarch64.whl
Size 21.3 MB
Tags Linux musl 1.2+ ARM64 Python 3
SHA-256 checksum
How to use checksums
8124a1e843856551eb22efbd4c69aa940859be8727f1189e55cc84cd77fc7bee
BLAKE2b-256 checksum
How to use checksums
393ab447dbec55810ebfc762d019ed90e0c68909162124a28bb4cf3e9a7099fa
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.4-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL ty_extended-0.84.4-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 23.1 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
fb6aa8c4d431b54dc5cd9663250a24c75b0f466c00ddcd59fdc70bd7681c4e69
BLAKE2b-256 checksum
How to use checksums
3e78e785a4a0b6ea7591f44f0272cb87f8da928523716d68ac77bffa58246b64
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.4-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL ty_extended-0.84.4-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 21.5 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
bc770ef751a27b909ab121d316af2ceac129b4f6f6dae773279c8026ac0a4dfb
BLAKE2b-256 checksum
How to use checksums
ccc2fd1cf1693b51e02abcd55e6d9d3c46221e58cce4e49c30ad5070331046b4
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.4-py3-none-macosx_11_0_arm64.whl

Download URL ty_extended-0.84.4-py3-none-macosx_11_0_arm64.whl
Size 20.8 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
8186d2c3c5552075b01260bd5cc6e5b33224a71f49629c072cadf3bdec620df3
BLAKE2b-256 checksum
How to use checksums
c0bcf96d36b45c355fce5dfe5d7884e6a323fa738bd39977c181407dccf21404
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.4-py3-none-macosx_10_12_x86_64.whl

Download URL ty_extended-0.84.4-py3-none-macosx_10_12_x86_64.whl
Size 22.2 MB
Tags Python 3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
a6b2558a1c4e0e2c2bcd5456f4688ebd229be4198539c1db75f055bf1a4854c7
BLAKE2b-256 checksum
How to use checksums
5198b0ba23ffcb3cb0d4fbda8385a518a63889b702260933341be72ed401906f
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.4

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