mirror of
https://github.com/renovatebot/renovate.git
synced 2026-10-25 15:01:49 +00:00
0d5d7a8669
Refactors `getNewValue` logic to replace it with an optional `getPinnedValue()` where rangeStrategy=pin. This way each versioning module doesn't need to add and test extensive "pin" logic. This should not be breaking, but out of an abundance of caution, we'll mark it as such.
Cargo versioning uses Semantic Versioning 2.0.
Cargo supports ranges in a similar manner to npm, but not identical. The important differences are:
Use of commas
Multiple version requirements can also be separated with a comma, e.g. >= 1.2, < 1.5. We interpret this to mean AND.
No exact versions unless using equals =
In Cargo, 1.2.3 doesn't mean "exactly 1.2.3", it actually means >=1.2.3 <2.0.0. So this is like the equivalent of ^1.2.3 in npm.