Show HN: A Python Language Server, Mypy-compatible
39 davidhalter 13 6/27/2025, 12:33:25 PM zubanls.com ↗
Having created Jedi in 2012, I started ZubanLS in 2020 to advance Python tooling. It understands Mypy config files and passes >95% of the relevant Mypy tests. AMA.
I did have the same thought as you at first though, and only carried on reading when I spotted that it was from the author of Jedi.
The thing is, both Ty and PyreFly aren’t really close to the level of Mypy or Pyright — neither in terms of features nor stability. ZubanLS already covers the important features, though there are still some bugs I’m working through. So in that sense, yes: At the moment the selling point is that it just works.
The ORM models do not work with typing at all, you basically have to make a lot of magic work if you want to support it in a type checker (especially if you want to work with reverse foreign keys). Generally type checkers do not just support the Django ORM. For Mypy there's a plugin that works pretty well, but uses runtime information, which further slows down Mypy.
it's not just django btw, pretty much any metaprogramming library needs that sort of custom support, including dataclasses - take a look at any python type checker and you will find code specifically replicating what dataclasses does in terms of code generation. for pytype we actually put dataclass and namedtuple support alongside our other third-party plugins in the codebase.
The foreign key stuff and missing reverse relations in types a big issue, but there's other stuff like warning about class Meta: being incompatible because you're inheriting an abstract model.
I'm yet to find a good guide on how to handle typing a django project, even if only to get vscode to do autocomplete.
(Relative maturity wouldn't be a good enough reason as those projects will progress quickly enough and both have great, solid, well backed teams behind them)
Relative maturity can be a reason for quite a while (people overestimate how far Pyrefly and Ty are).