Importa la versione della dipendenza richiesta da un'altra dipendenza [duplicato]

Aug 19 2020

Ho due casse Xe Zvoglio usarle entrambe, ma Xdipende Zda una versione specifica. Ad esempio, mongodb dipende da tokio 0.2 e io stavo usando tokio 0.3.

Xnon riesportare Zquindi (penso) devo specificare manualmente Zin Cargo.toml. Se specifico la versione sbagliata, potrebbe rompersi. Come posso dire a cargo di utilizzare qualsiasi versione di Zciò Xrichieda?

Risposte

2 Emoun Aug 19 2020 at 09:03

Cargo ha alcune funzionalità di risoluzione automatica della versione delle dipendenze. Dovresti essere in grado di specificare i requisiti di versione di cui Zhai bisogno e cargo capirà come scegliere la versione corretta da (potenzialmente) utilizzare sia nel tuo codice che X. Ciò presuppone che entrambe le casse utilizzino correttamente il controllo delle versioni semantico.

Se Xnon espone Zin alcun modo, non è davvero necessario utilizzare la stessa versione di Z. Se utilizzi una versione principale diversa Zda X, Cargo utilizzerà entrambe le versioni di Z, una volta per te e una volta per X.

Vedi i commenti di alexcrichton su questo per un po 'più di dettaglio.