News for hackers. Stuff that matters.
Re:Pyrefly: Python type checker and language server in Rust by whalesalad on Tuesday October 14, 2025 @09:34AM (#45579864)
Python is starting to feel a bit like JavaScript circa 2014. Remember grunt, gulp, webpack, coffeescript, babel? Now we've got pyright, mypy, pyrefly, black, ruff, ty, flake8, poetry, uv...

I used to find this kind of tooling explosion exhausting (and back then with JS it truly was), but generally speaking it's a good sign that the community is hungry to push things forward. Choice is good, as long as we keep the Unix spirit alive: small, composable tools that play nicely together and can be interchanged.

Re:Pyrefly: Python type checker and language server in Rust by lenkite on Tuesday October 14, 2025 @12:14PM (#45581810)
"There can be only one" - just need to wait till the deathmatches are over.
Re:Pyrefly: Python type checker and language server in Rust by notatallshaw on Tuesday October 14, 2025 @11:49AM (#45581456)
A lot of the tools you list here are composable, mypy checks type hints, black formats code, because of the purpose and design ethos of those two tools they would never think to merge.

So which is it that you want, to just reach for one tool or have tools that have specific design goals and then have to reach for many tools in a full workflow?

FWIW Astral's long term goal appears to be to just reach for one tool, hence why you can now do "uv format".

Re:Pyrefly: Python type checker and language server in Rust by parhamn on Tuesday October 14, 2025 @09:48AM (#45580002)
Interestingly besides typescript, javascript in 2025 is still super fragmeneted but by a bunch of well-polished tools that all do approximately the same thing. esbuild/vite(rollup)/trubopack(swc), prettier/biome/oxc, npm/bun/pnpm/yarn, bun/node/deno/worker-runtimes
Re:Pyrefly: Python type checker and language server in Rust by pjmlp on Tuesday October 14, 2025 @12:11PM (#45581773)
For me it is easy, Spring/Quarkus/ASP.NET, if it has to be a JavaScript framework, Next.js the way Vercel intended.

Anything whatever the FE team feels like using, and the less I know about it, the better.

Re:Pyrefly: Python type checker and language server in Rust by mixmastamyk on Tuesday October 14, 2025 @01:35PM (#45582690)
Next.js has been called infuriating here recently: https://news.ycombinator.com/item?id=45099922
Re:Pyrefly: Python type checker and language server in Rust by pjmlp on Tuesday October 14, 2025 @01:44PM (#45582764)
I know, search for my nickname and you'll get my point of view across several comments.
Re:Pyrefly: Python type checker and language server in Rust by koakuma-chan on Tuesday October 14, 2025 @11:59AM (#45581609)
It's just people refusing to use new tools. Prettier is so much slower than any Rust formatter, it's painful. `yarn install` takes forever. Why not switch to Bun? It's 5 minutes.
Re:Pyrefly: Python type checker and language server in Rust by koakuma-chan on Tuesday October 14, 2025 @12:07PM (#45581737)
I interviewed at one company a few months ago and they said they don't use TypeScript because the compiler gets in their way, jesus chirst.
Re:Pyrefly: Python type checker and language server in Rust by WesolyKubeczek on Tuesday October 14, 2025 @10:59AM (#45580892)
The fact that you even didn't mention webpack, once a champion, is especially sad.
Re:Pyrefly: Python type checker and language server in Rust by koakuma-chan on Tuesday October 14, 2025 @11:57AM (#45581590)
Doesn't Next.js still use webpack?
Re:Pyrefly: Python type checker and language server in Rust by elsigh on Tuesday October 14, 2025 @03:10PM (#45583613)
Re:Pyrefly: Python type checker and language server in Rust by pjmlp on Tuesday October 14, 2025 @10:35AM (#45580574)
Pity that is all looking like Rewrite in Rust looking for solution, instead of actually improving JIT tooling capabilities.

There is a reason us old timers mostly wait on the sidelines until the dust settles.

We have seen this movie already too many times.

Re:Pyrefly: Python type checker and language server in Rust by strangescript on Tuesday October 14, 2025 @09:46AM (#45579989)
"grunt, gulp, webpack, coffeescript, babel" --- except no one uses these anymore and they are dead outside of legacy software.

The problem with the python tooling is no one can get it right. There aren't clear winners for a lot of the tooling.

Re:Pyrefly: Python type checker and language server in Rust by jon-wood on Tuesday October 14, 2025 @10:01AM (#45580150)
I think that's the point. Every now and then a language will have a small explosion of new tooling, and all you can really do is wait for it to blow over and see what tools people adopted afterwards, it feels like Python is going through a period like that at the moment.
Re:Pyrefly: Python type checker and language server in Rust by IshKebab on Tuesday October 14, 2025 @02:35PM (#45583292)
It's not really that bad. Unless you want to be adventurous you need these tools:

* uv: project management, formatting

* Pyright: type checking

* Pylint: linting (this is probably optional though I would strongly recommend it). Ruff is an option but I don't think it is quite as comprehensive yet.

There are alternatives for those tools but they are pretty clearly the best options at the moment. There's nothing in uv's league, and the only alternatives in Pyright's league is BasedPyright. Hopefully Ty and Pyrefly will be good options in future but I don't think they're ready for production use just yet.

Re:Pyrefly: Python type checker and language server in Rust by dev_l1x_be on Tuesday October 14, 2025 @03:35PM (#45583859)
Is there any meaningful difference between TS and Python?
Re:Pyrefly: Python type checker and language server in Rust by pjmlp on Wednesday October 15, 2025 @04:42AM (#45589679)
One uses runtimes that ship a state of the art JIT compiler, whereas the other is only now giving the first steps.

Yes there are alternatives to CPython, unfortunely they aren't adopted as much as they should.