Pyright is the Microsoft provided lsp: does anyone else feel uneasy about using this? Especially given the EEE playbook "that we definitely won't do this time" - would love to have a discussion on this if someone could talk me into using it. I just use a combination of black, flake, and mypy. Apparently ruff is quite good as well. For lsp I use Jedi, which actually worked faster on my company's code base than pyright…
Ask HN: Which Python type checker should I use?
31–40 of 83 posts
Re: Ask HN: Which Python type checker should I use?
#32Re: Ask HN: Which Python type checker should I use?
#33I would not personally use any of them. Typed python in previous workplace was pretty much shitshow, and if starting from scratch instead of untyped codebase it might be worth it, maybe, for some specific cases, but in general combination of bad library typing and bad type checking tools leads to horrible user experience. So going forward my personal projects continue to be ducktyped, and if I care about types, I use…
I'm moving away from Python for my large projects...
Re: Ask HN: Which Python type checker should I use?
#34I would not personally use any of them. Typed python in previous workplace was pretty much shitshow, and if starting from scratch instead of untyped codebase it might be worth it, maybe, for some specific cases, but in general combination of bad library typing and bad type checking tools leads to horrible user experience. So going forward my personal projects continue to be ducktyped, and if I care about types, I use…
Re: Ask HN: Which Python type checker should I use?
#35Pyright is the Microsoft provided lsp: does anyone else feel uneasy about using this? Especially given the EEE playbook "that we definitely won't do this time" - would love to have a discussion on this if someone could talk me into using it. I just use a combination of black, flake, and mypy. Apparently ruff is quite good as well. For lsp I use Jedi, which actually worked faster on my company's code base than pyright…
Re: Ask HN: Which Python type checker should I use?
#36Would also be interested in what is friendly with Django. Using VSCode + the Python extension, the default checker (Pylance?) just pukes on the ORM magic.
To get the type checker to work with Django you need to install django-stubs[1]. It works great with mypy, but should also work well with pyright. [1]: https://github.com/typeddjango/django-stubs
I'm considering switching to pyright, probably by rewriting code that uses this magic.
Or running both in ci with different configurations.
Re: Ask HN: Which Python type checker should I use?
#37Re: Ask HN: Which Python type checker should I use?
#38Pyright is the Microsoft provided lsp: does anyone else feel uneasy about using this? Especially given the EEE playbook "that we definitely won't do this time" - would love to have a discussion on this if someone could talk me into using it. I just use a combination of black, flake, and mypy. Apparently ruff is quite good as well. For lsp I use Jedi, which actually worked faster on my company's code base than pyright…
Can the extension be used on VSCodium builds? If memory serves, C# tooling extensions are proprietary and are subject to unfortunate treatment when using open-source builds of VSCode.
Re: Ask HN: Which Python type checker should I use?
#39Earlier quoted context omitted.
You are correct. It is not supported on vscodium.
Yea, and if you're a company making more than $1M in revenue or have over 250 PCs, then you need a commercial license. Microsoft definitely seems to be pushing proprietary VSCode extensions where it's free to get users hooked on the product (and kill competitors) and then charge companies lots of money for the tools they got everyone hooked on because they appeared to be free.
Re: Ask HN: Which Python type checker should I use?
#40Earlier quoted context omitted.
Yea, and if you're a company making more than $1M in revenue or have over 250 PCs, then you need a commercial license. Microsoft definitely seems to be pushing proprietary VSCode extensions where it's free to get users hooked on the product (and kill competitors) and then charge companies lots of money for the tools they got everyone hooked on because they appeared to be free.
are you talking about Pyright or Pylance?