* Accept `#[rust_gpu::spirv()]` attributes rather than `#[spirv()]` in backend
* Implemented `#[spirv(..)]` proc macro attribute for all platforms that conditionally translates to `#[rust_gpu::spirv()]` based on platform
* Changed `SpirvBuilder` to always apply `register_tool(rust_gpu)` attribute to shader crates
* Updated docs
* Added changelog
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* Updated versions in local dependencies as well
* Split out a new `-types` crate so `spirv-builder` stops loading LLVM via dylibs.
* example-wgpu-runner: halve `max_push_constant_size` so it works on RADV/Fiji.
* Clean up the interface of the watching support
This allows us to avoid the seperate thread just for looping through
the graphics rx to the eventloop, for example
In almost all cases, intial results are blocked on the first result, and
then needs notifications for later changes
* Fix test failures
* fmt
* Remove the comment again
* Update builder to use a shared validation method
* Add the error for using print_metadata and watching
We cannot use print_metadata with watching
because print_metadata only makes sense
in build scripts, but watching does not
and would instead stall the script
* Add the initial implementation of watching
* Make hot reloading work in the wgpu example
* Attempt to address CI failures
* Add exception for notify CC0-1.0 license
* Address review comments
Co-authored-by: khyperia <github@khyperia.com>
`v0` mangling mangles generics, but can only handle const generic
arguments of simple types. As `Image!` types use const generic enums,
things break horribly and compiler panics.
`legacy` doesn't even attempt to mangle generics, which is probably
fine.
This adds the initial support for basic bindless types into rust-gpu. Using this requires a compilation with the `-Ctarget-features=+bindless` flag, or through `.bindless` in the `SpirvBuilder`.