Description
Issue #55 is striking again. It's now starting to cause real issues for us in Fedora Linux. Projects that depend on unicode-width can now be split into two categories:
- have not adapted to behaviour changes in 0.1.13 and only work correctly with <0.1.13 (usually depend on unicode-width
^0.1.x
wherex < 13
) - have adapted to behaviour changes in 0.1.13 and only work correctly with ^0.1.13 (and depend on unicode-width
^0.1.13
)
Even if we did provide packages for both unicode-width <0.1.13 and >=0.1.13 (which would be unprecedented for two versions that are supposedly semver-compatible), we would need to patch all crates that currently pull in 0.1.* to have a dependency like >=0.1.0,<0.1.13
instead.
This would create situations where multiple crates in the same dependency tree pull in unicode-width at conflicting versions (either >=0.1.13 or <0.1.13), and cargo dependency resolution can't find a solution that satisfies both of these requirements. This is exactly the reason why behaviour changes are important when considering SemVer, not only API changes. So, please reconsider publishing 0.1.13+ as 0.2.x 😢