Announcing the Beta release of ty
Adoption and First Impressions
- Many are excited that ty has reached beta, especially as a fast Rust-based type checker and language server that can replace both mypy and Pyright in editors.
- Early users report smooth editor integration (Neovim, VS Code, Emacs) and appreciate that it “just works” with little or no configuration.
- Some ran into extension installation issues in Cursor due to delayed VS Code marketplace sync, but pre-release versions worked.
Comparison to Existing Type Checkers
- Ty is viewed as entering a crowded space with Pyright, mypy, basedpyright, Pyrefly, and Zuban.
- Several commenters regard Pyright as extremely strong (especially on conformance and general quality), with mypy seen by some as weaker and by others as battle-tested and still preferred for inference and fewer false positives.
- Some want clear guidance on ty vs Pyrefly vs Pyright, especially regarding strictness, soundness, and real-world bug catching.
Conformance vs Practical Usability
- Multiple comments reference the official typing conformance table and ask how ty compares.
- People involved with the typing spec stress that conformance scores are a poor proxy for choosing a checker:
- The spec mainly defines semantics of annotations, not inference, diagnostics, error messages, or performance.
- Important differences include how unannotated collections are inferred, what diagnostics are emitted, configuration options, and incremental behavior.
Features, Gaps, and Ecosystem Support
- Missing/partial support areas noted:
- Django (no support yet, no plugin system, only “planned” in the longer term).
- Pydantic and some TypedDict behaviors and completions, though issues are being tracked.
- Respect for
pyright: ignore[...]pragmas in pyright-focused codebases.
- Intersection types and inline display of inferred types are seen as standout features.
Performance and UX
- Speed is a major draw; Pyright and other tools are perceived as too slow on large projects, and ty’s low latency LSP behavior is framed as materially improving the editor experience.
- Some dislike Pyright’s Node/npm dependency on principle.
Astral Ecosystem and Trust
- Ty is understood as part of Astral’s stack with uv, ruff, and the commercial pyx.
- Many praise Astral’s impact on Python tooling, but some worry:
- Their tools don’t fully replicate incumbents’ feature sets, so “replacement” claims feel overstated.
- Long‑term monetization could lead to license or ownership shifts; HashiCorp and bun are cited as cautionary analogies.
- Confusion about ty’s repo being “empty” is clarified: the Rust code lives in the Ruff repo as a submodule and is MIT-licensed.
Broader Typing Debates
- Questions arise about why multiple type checkers with differing behavior exist; replies point to optional typing, inference ambiguity, and different philosophies about strictness.
- There’s disagreement over whether Python typing significantly improves quality or mainly adds noise, and whether Python should be treated as a “prototyping” language or a full-scale typed language.