4 ms·
"ruff" for Python which is displacing the flake8 linter (and in fact the "black" code formatter too) shows that this kind of thing can work fantastically well.
by frou_dh 3y ago
"ruff" for Python which is displacing the flake8 linter (and in fact the "black" code formatter too) shows that this kind of thing can work fantastically well.
- drexlspivey 3y agoI am hoping that ruff goes after type checking next to replace mypy which is pretty slow. One tool to rule them all
- VeejayRampay 3y agothey've successfully replace pylama and black so yeah I really hope it's their next target (though handling types is a whole different beast altogether)
- C-Saunders 3y agoHave you checked out Pyright[1]? It's not one tool to rule then all, but it is nice and fast. [1]https://github.com/microsoft/pyright https://github.com/microsoft/pyright
- sztomi 3y agoPyright is neat but the CLI output makes me want to poke my eyes.
- imron 3y agodmypy [0] (installed when you install mypy) will give you a x10 speedup when running mypy after small regular edits (e.g. during general development). But yeah, I'm also looking forward to the day when I only need a single speedy tool for python linting, type-checking and formatting. 0: https://mypy.readthedocs.io/en/stable/mypy_daemon.html https://mypy.readthedocs.io/en/stable/mypy_daemon.html
- simicd 3y agoHave you by any chance used Pyright? If not, I can highly recommend it. The VS Code extension makes writing Python almost as if it's a statically typed language (+ there is a CLI if you want to check types in CI). The docs are claiming that it's 3-5x faster than mypy - I haven't run performance benchmarks myself, all I can say is that for all my code bases it is very fast after the first cold start. Comparison to mypy: https://github.com/microsoft/pyright/blob/main/docs/mypy-comparison.md https://github.com/microsoft/pyright/blob/main/docs/mypy-com...
- agumonkey 3y agorust gravity field is getting stronger
- deleted 3y ago[deleted]
- ehutch79 3y agoRuff is better than flake8 for reasons other than speed. 1) it works better as an lsp/vscode plugin, so I don't need to save to get errors popping up. 2) it respects pyproject.toml and doesn't need to liter my root dir with another dot file. 3) as an intangible, its errors just feel better.