rapidfuzz / strsim-rs

:abc: Rust implementations of string similarity metrics

Home Page:https://crates.io/crates/strsim

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Consider following crates.io's own semver flavour

nox opened this issue · comments

I see in the changelog file that this crate attempts to follow semver.

AFAIK, 0.10.0 was released with no breaking changes, only a new feature.

Filing this only in case you are not aware of a couple of facts.

Semantic Versioning itself says that 0.y.z has no rules at all, and that you should not expect any 0.y.z version to be compatible with another 0.y.z version.

On the other hand, the crates ecosystem and cargo both state that it considers the leftmost non-zero number to be the major version. So 0.1.1 is compatible with 0.1.0, but 0.2.0 is not compatible with 0.1.1.

So for example, AFAIK 0.10.0 should have been 0.9.4, if the changelog file is correct.

AFAIK the important part about this is that for cargo event before version 1 patch versions shouldn't introduce breaking changes. This part is already followed by the project.

While changing the minor version is treated like a major version by cargo, this doesn't particularly hurt either.
Anyways thank you for bringing this to attention. I think we will probably update to 1.y.z in the foreseeable future at which point this all becomes irrelevant anyways.