Ty
Astral’s ty undertaking can also be nonetheless in its early levels, and it exhibits. Its documentation isn’t as fleshed-out as Pyrefly’s, and its function set is much less spectacular. To be truthful, the undertaking was solely lately made public and is admittedly in its early levels.
You may set up Ty from pip
or run it from uvx
. It intelligently detects a supply listing in a pyproject.toml
-configured undertaking, so it doesn’t mistakenly chew via Python recordsdata in your undertaking’s digital setting. However its configuration choices are extra minimal than Pyrefly’s; as an illustration, excluding recordsdata from checks is finished through .gitignore
or different exterior recordsdata somewhat than from configuration guidelines.
Ty’s ruleset for checking recordsdata appears extra condensed than Pyrefly or present instruments, though it covers some instances not discovered elsewhere. As an illustration, whereas it doesn’t test for async errors, Ty does detect if class definitions have conflicting usages of __slots__
, though the previous looks like a much more frequent drawback than the latter.