← Back to context

Comment by bbor

2 days ago

  Ruff v0.16 has a small number of breaking changes

Why. Why must my poor semver be hurt so!

I sorta kinda get why `ty` is pre v1.0.0 -- it's a typechecker that doesn't check a huge number of types. But what are we waiting for with `ruff`? Surely it's eaten whatever the old options were (black? maybe a few takes on py+lint?) by now many times over, and is even more dominant than `uv`.

I run this program hundreds of times a day so I'm generally excited for new features, but I guess the OAI acquisition has made me ornery when it comes to these folks. Apologies to kindly nerds who made this release happen, and congrats <3

It's conventional for semver to allow breaking changes for 0.x minor releases (but not for patch releases).

  • Yes but the question is why Ruff has not released v1 yet. They’re clearly used in production and the entire purpose of v0.x is to signal a project is early in development and is expected to have coarse edges.

    • The versioning doc linked elsewhere in the thread explains: There isn't yet a stable API and they want to wait on that before releasing v1.