sarugaku / resolvelib

Resolve abstract dependencies into concrete ones
ISC License
138 stars 31 forks source link

Breaking change in 0.5.5 #76

Closed lkollar closed 3 years ago

lkollar commented 3 years ago

We have a tool using resolvelib which implements the AbstractProvider interface. 0.5.5 broke the API with https://github.com/sarugaku/resolvelib/commit/915363f0339cef36f24090d20a40b2a72b1c85ce changing the signature of identify.

Following semver, technically such changes are to be expected, but I also saw https://github.com/sarugaku/resolvelib/issues/74 warning about upcoming API breakage in 0.6.0, so I'm wondering what the policy around API changes is in resolvelib.

uranusjr commented 3 years ago

I accidentally released the wrong branch (master) with the kwargs change 😞 I realised it just now as well (I’m pulling in changes in pypa/pip#9699).

My rule around versioning for now is to do breaking changes in the second digit (minor version), at least until 1.0 is reached. I think I’ll just yank 0.5.5. Thanks for the report!

uranusjr commented 3 years ago

I encourage people to pin all 0.x versions since the internals are still in much flux at this point, and the behaviour changes may be difficult to keep up even without API breakages.

Anyway, 0.5.5 has been yanked from PyPI. Sorry for the disturbance.