Impor versi ketergantungan yang memerlukan ketergantungan lain [duplikat]

Aug 19 2020

Saya memiliki dua peti Xdan Zsaya ingin menggunakan keduanya tetapi Xtergantung Zpada beberapa versi tertentu. Misalnya, mongodb bergantung pada tokio 0.2 dan saya menggunakan tokio 0.3.

Xtidak re-ekspor Zjadi saya (berpikir) harus menentukan secara manual Zdi Cargo.toml. Jika saya menentukan versi yang salah, itu mungkin rusak. Bagaimana saya bisa memberi tahu kargo untuk menggunakan versi apa pun Zyang Xdiperlukan?

Jawaban

2 Emoun Aug 19 2020 at 09:03

Cargo memiliki beberapa kemampuan resolusi versi ketergantungan otomatis. Anda harus dapat menentukan persyaratan versi apa pun yang ZAnda butuhkan, dan cargo akan mengetahui cara memilih versi yang benar untuk (berpotensi) digunakan baik dalam kode maupun X. Ini mengasumsikan kedua peti menggunakan versi semantik dengan benar.

Jika Xtidak terekspos Zdengan cara apa pun, Anda tidak perlu menggunakan versi yang sama dari Z. Jika Anda menggunakan versi mayor yang berbeda Zdari X, Cargo hanya akan menggunakan kedua versi Z, sekali untuk Anda dan sekali untuk X.

Lihat komentar alexcrichton tentang ini untuk sedikit lebih detail.