renovate/lib/modules/versioning/cargo
Rhys Arkins 73c8227132
fix(versioning)!: bump short ranges to version (#20494)
When rangeStrategy=bump, and the existing range is "short" (e.g. `^1`), and a bump is required, the new result will be a version range (e.g. `^1.0.7`).

Closes #20488
2023-03-10 09:34:40 +01:00
..
index.spec.ts fix(versioning)!: bump short ranges to version (#20494) 2023-03-10 09:34:40 +01:00
index.ts fix(versioning/cargo): Disable support for rangeStrategy: widen (#20357) 2023-02-12 20:25:30 +02:00
readme.md refactor: lib/modules (#14488) 2022-03-04 09:04:02 +01:00

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.