Chcę utworzyć plik Cargo.lock w projekcie Rust z Cargo.toml w oparciu o to, co było dostępne w dniu 22 lutego 2017 r. Muszę sprawić, by wybór wersji był zgodny z tym, co wydarzyłoby się tego konkretnego dnia. (Nie, nie mam wersja kontrolowane Cargo.lock gdzieś.)Jak wygenerować Cargo.lock na podstawie ostatniego miesiąca crates.io?
Próbowałem to bezskutecznie:
- Clone indeks crates.io do lokalnego katalogu i sprawdzić starszy popełnić który pasuje do żądanej daty.
Użyj następujących linii w .cargo/config:
[source.mycrates] registry = "file:///path/to/crates.io-index" # contains old checkout [source.crates-io] replace-with = "mycrates"
Niemniej cargo rozwiązuje zależności w Cargo.toml do najnowszych z nich dostępne, a nie te najnowsze w określonej transakcji.
W jaki sposób mogę zmienić wybór wersji Cargo w czasie?
Brzmi trochę jak [Problem XY] (https://meta.stackexchange.com/questions/66377/what-is-the-xy-problem). Co dokładnie chcesz osiągnąć dzięki temu? –
Moim konkretnym przypadkiem jest stworzenie Cargo.lock, który działa z określoną migawką crates.io w infrastrukturze Rusta NixOS. –
Rozumiem, ale dlaczego to musi być migawka? Dlaczego nie można żyć? –