Update to spirv-builder 0.9.0-git, add Cargo.lock #8
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Without
Cargo.lock
the resolver is free to find recent dependencies that aren't supported by therust-toolchain.toml
pins.In particular, as of today (May 24th 2024), the combination of a pinned Rust toolchain and an unpinned Cargo depdency tree resulted in this error:
There are other errors too if that one is fixed.
I've also updated to the latest
spirv-builder
, although I had to pin to the latest HEAD, rather than the latest tag (v0.9.0). That tagged version also fails to build with the "latest"clap
(latest within the pin bounds). I think if we'd had aCargo.lock
here, we could have frozen in time the dependency tree of exact versions that worked with the pinned Rust toolchain at the time of the lastspirv-builder
release.I'd also like to note that this is something like my third time revisiting
rust-gpu
in the last 4 years. And every time it's been an unintuitive challenge building the project.I think this repo should be the defacto way of compilingActually, I don't think it's too much of a burden to depend onrust-gpu
shaders. The unique requirements and indeed separate concern of compiling shaders means that it makes sense to be in its own workspace. It would be wonderful if this project was referenced right there in their README.spirv-builder
and itsrust-toolchain.toml
.