News for hackers. Stuff that matters.
Re:An Update on Pytype by rhaps0dy on Wednesday August 20, 2025 @02:04PM (#44964464)
I've heard of `ty` too but recently I learned about Pyrefly, which is not in pre-production alpha, and is also Rust: https://pyrefly.org/

Is there a good reason to avoid using Pyrefly?

Re:An Update on Pytype by diggan on Wednesday August 20, 2025 @02:09PM (#44964513)
> Is there a good reason to avoid using Pyrefly?

Wouldn't the other way around be easier for finding good tools? Figure out what matters to you, inspect if the project fulfills those needs and then go with it after making sure it works well for you.

Regardless, a comparison between the two was posted to HN not too long time ago: https://news.ycombinator.com/item?id=44107655

Re:An Update on Pytype by rhaps0dy on Wednesday August 20, 2025 @06:52PM (#44967349)
> Wouldn't the other way around be easier for finding good tools?

I agree, and Pyrefly seemed good; I was just wondering why people don't mention it.

Thank you for the comparison thread and post, I've read it and found it useful! Thanks to that post I know ty has a "gradual typing" philosophy, which I disprefer.

Re:An Update on Pytype by veber-alex on Wednesday August 20, 2025 @02:10PM (#44964528)
Re:An Update on Pytype by rhaps0dy on Wednesday August 20, 2025 @06:37PM (#44967247)
Hah, I stand corrected. In my defense, Ty make it a lot more obvious and ominous on their github (https://github.com/astral-sh/ty):

> /!\ Warning

> ty is in preview and is not ready for production use.

> We're working hard to make ty stable and feature-complete, but until then, expect to encounter bugs, missing features, and fatal errors.

Re:An Update on Pytype by jolux on Wednesday August 20, 2025 @02:07PM (#44964498)
I believe Pyrefly is stricter, so it may be a better choice for new projects but harder to integrate into existing ones without type-checking.
Re:An Update on Pytype by denis- on Wednesday August 20, 2025 @03:55PM (#44965728)
I have a medium-sized codebase that is all green when running mypy with the strictest configuration possible.

Pyrefly spits put around 200 errors for the same codebase.

Most errors are related to SQLAlchemy.

Re:An Update on Pytype by rhaps0dy on Wednesday August 20, 2025 @06:40PM (#44967262)
I mean, sqlalchemy until very recently needed a mypy plugin to type correctly (https://docs.sqlalchemy.org/en/20/orm/extensions/mypy.html), which was just deprecated in 2.0.0.

Perhaps you should do the upgrade (https://docs.sqlalchemy.org/en/20/changelog/whatsnew_20.html...) and try again?

Re:An Update on Pytype by samwgoldman on Thursday August 21, 2025 @01:52PM (#44975884)
(Pyrefly dev here) Thanks for trying it out! If you have any feedback or bug reports, please don't hesitate to file issues on GitHub or find us on Discord. We have some open issues for SQLAlchemy (like [1]). I'm definitely curious to hear if there are any gaps from your perspective, having an already strictly-typed codebase.

1. https://github.com/facebook/pyrefly/issues/954

Re:An Update on Pytype by samwgoldman on Thursday August 21, 2025 @01:57PM (#44975933)
(Pyrefly dev here) As another commenter mentioned, Pyrefly is still in alpha. Sorry we don't make that more clear!

While we are in alpha, and there are plenty of open issues we are still working through, I think Pyrefly is actually pretty usable already, especially for code navigation.