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

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

Built distributions (wheels)

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

Total release size: 185.1 MB

Release files / ty_extended-0.84.3.tar.gz

Download URL ty_extended-0.84.3.tar.gz
Size 7.6 MB
Tags Source
SHA-256 checksum
How to use checksums
9ca473c8021723cc939166b370d45cf92bc2d2f880d697d3e0800e520f6d0b36
BLAKE2b-256 checksum
How to use checksums
674132c3e978badb8e714ee386fc589a42f760147e82f31f1cf861369c7ee80e
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.3-py3-none-win_arm64.whl

Download URL ty_extended-0.84.3-py3-none-win_arm64.whl
Size 21.8 MB
Tags Python 3 Windows ARM64
SHA-256 checksum
How to use checksums
e930f32ba5a6869ae6698bfd7e0a6333c7abe31a36ac8775d509662fac1a2bd3
BLAKE2b-256 checksum
How to use checksums
2747d6128258872a0ed6611f4654f7118488f9d307db515676ba14263115b584
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.3-py3-none-win_amd64.whl

Download URL ty_extended-0.84.3-py3-none-win_amd64.whl
Size 23.7 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
c6a175383c1affb5afa5dca010bc894f7a960a45c06699251c15399db3a5a66b
BLAKE2b-256 checksum
How to use checksums
311bf059a8e2b07c3f5e46f86cfcbff01cbacbd38d08db688596878c27bdda50
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.3-py3-none-musllinux_1_2_x86_64.whl

Download URL ty_extended-0.84.3-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
a9347a275af41431e18ddfbcd76b28a753a0d163e6c2dbfaecb0bee448505e78
BLAKE2b-256 checksum
How to use checksums
db940937d2ba2b101cb9172078770047be5d0bc8d4e8d270a431e38988022f0e
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.3-py3-none-musllinux_1_2_aarch64.whl

Download URL ty_extended-0.84.3-py3-none-musllinux_1_2_aarch64.whl
Size 21.2 MB
Tags Linux musl 1.2+ ARM64 Python 3
SHA-256 checksum
How to use checksums
b17e3d1556179752ed4442db471673a92ae7fe649d52ab0199ac67f14780e301
BLAKE2b-256 checksum
How to use checksums
63dd16fd3017a036bf8e5a11b1f764bde7f87698fcfd768675e10111b9862667
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.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL ty_extended-0.84.3-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
a2490e8351b84b1ffe4c85ef9006ca03052eb81311d4f5dd0c5cff6653450c82
BLAKE2b-256 checksum
How to use checksums
e333c8f6c022fbd2529a722223b71332ee6ac64ec190c324c17edef21cc72cbc
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.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL ty_extended-0.84.3-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
02372dc706e8fc42535adea11a908e3e3104e60245ec8726fc742a3263f498a7
BLAKE2b-256 checksum
How to use checksums
bf6e52deda60cbf73138e35926671f9c93a7161f33038de04af6c5ffc785e41f
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.3-py3-none-macosx_11_0_arm64.whl

Download URL ty_extended-0.84.3-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
526ffe16cea4547c8bb1674edbd0609b05ae3cda5f68b740dbc902e20d4a7069
BLAKE2b-256 checksum
How to use checksums
3404d33b97d5ee0eed027a6c2fe213db0a8d0029829e17e120d5b0b9c390dcc5
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.3-py3-none-macosx_10_12_x86_64.whl

Download URL ty_extended-0.84.3-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
8f776a45aa6c615bbcafcca1c302b2edc9a91debe80dd110ac65331678d9dd40
BLAKE2b-256 checksum
How to use checksums
ec79ce99ed123ebc9dbe716fab874a76ff5c85bcd364619e41700ee174dec058
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.3

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