sarekt
sarekt copied to clipboard
Commit a Cargo.lock
If this repo is cloned + built, rustc emits a large number of errors that look like:
error[E0308]: mismatched types
--> src\renderer\vulkan\vulkan_renderer\mod.rs:606:7
|
606 | instance,
| ^^^^^^^^ expected struct `ash::instance::Instance`, found a different struct `ash::instance::Instance`
|
= note: perhaps two different versions of crate `ash` are being used?
This is because the Cargo.toml
in this repo lists ash = "0.30.0"
as a dependency, vk-mem 0.2.2
lists ash >= "0.27.1"
, and there is no Cargo.lock
file in this repo. Cargo doesn't know that the two Ash dependencies must be the same, so Ash versions 0.30.0
and 0.31.0
both get included.
I manually fiddled with the generated Cargo.lock
to confirm this was the only issue (by editing the entry for vk-mem
to lock its Ash to ash 0.30.0
). To fix this properly the canonical Cargo.lock
file should be added to this repo.
cargo 1.42.0 (86334295e 2020-01-31) rustc 1.42.0 (b8cedc004 2020-03-09) Microsoft Windows 10 Pro, Version 10.0.18363 Build 18363
I've known about this issue for a bit and I don't think I want to commit the lock file but instead use patch to restrict the ash version.
Does that work for you? If so I'll do it or take that pr :)
If not I'll look into it. Thanks for lighting a fire under my butt on this.