ship dependency rust rust-cargo

rust - dependency - ¿Cuál es la sintaxis para especificar versiones de dependencia en Cargo?



rust cargo ship (1)

Hasta ahora he visto tres ...

[dependencies] crate = "1.0.0" # I think this is an exact version match crate = "^1.0.0" # I think this means "use that latest 1.x.x" crate = "*" # I think this means "use the latest"

Me encantaría saber con certeza cómo usar la lista de dependencias. Sería bueno tener una fuente autorizada que documente las diferentes sintaxis de las dependencias.


Consulte la página de documentación de crates.io en "Especificar dependencias" . Resumir:

  • Nada o una careta ( ^ ) significa "al menos esta versión, hasta la próxima versión incompatible".

  • Una tilde ( ~ ) significa "al menos esta versión, hasta (pero excluyendo) la próxima versión menor / mayor". Es decir, ~1.2.3 aceptará 1.2. X 1.2. X donde X es al menos 3, ~1.2 aceptará 1.2.* , Y ~1 aceptará 1.*.* .

  • Un comodín ( * ) significa "cualquier cosa que se vea así". Es decir, 1.2.* Aceptará 1.2. anything 1.2. anything ( 1.2.0 , 1.2.7-beta , 1.2.93-dev.foo , etc. pero no 1.3.0 ).

  • Las desigualdades ( >= , > , < , = ) significan lo obvio: la versión que utiliza Cargo debe satisfacer la desigualdad dada.