MCPcopy
hub / github.com/astral-sh/ty

github.com/astral-sh/ty @0.0.56 sqlite

repository ↗ · DeepWiki ↗ · release 0.0.56 ↗
19 symbols 64 edges 6 files 3 documented · 16%
README

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

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.

Made by Astral

Core symbols most depended-on inside this repo

_module_path
called by 3
python/ty/_find_ty.py
_matching_parents
called by 3
python/ty/_find_ty.py
_join
called by 3
python/ty/_find_ty.py
update_schemastore
called by 2
scripts/update_schemastore.py
_run
called by 1
python/ty/__main__.py
find_ty_bin
called by 1
python/ty/_find_ty.py
_user_scheme
called by 1
python/ty/_find_ty.py
schemastore_repos
called by 1
scripts/update_schemastore.py

Shape

Function 15
Class 3
Method 1

Languages

Python84%
TypeScript16%

Modules by API surface

scripts/update_schemastore.py6 symbols
python/ty/_find_ty.py6 symbols
scripts/transform_readme.py3 symbols
docs/js/extra.js3 symbols
python/ty/__main__.py1 symbols

Used by 2 indexed graphs manifest dependencies, hub-wide

Dependencies from manifests, versioned

babel2.15.0 · 1×
backrefs6.1 · 1×
beautifulsoup44.13.4 · 1×
black24.4.2 · 1×
certifi2024.7.4 · 1×
charset-normalizer3.3.2 · 1×
click8.1.7 · 1×
colorama0.4.6 · 1×
ghp-import2.1.0 · 1×
gitdb4.0.12 · 1×
gitpython3.1.44 · 1×
idna3.7 · 1×

For agents

$ claude mcp add ty \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact