From 8b2098bd4eaf1a4e4793cd4684f7b2e4ec64b39d Mon Sep 17 00:00:00 2001 From: Connor Fitzgerald Date: Wed, 17 Jan 2024 14:42:11 -0500 Subject: [PATCH] Release 0.19 (#5082) --- CHANGELOG.md | 35 ++++++++++++++++++++++++++++++++++- Cargo.lock | 28 ++++++++++++++-------------- Cargo.toml | 22 +++++++++++----------- d3d12/Cargo.toml | 2 +- deno_webgpu/Cargo.toml | 2 +- naga-cli/Cargo.toml | 4 ++-- naga/Cargo.toml | 2 +- naga/fuzz/Cargo.toml | 2 +- wgpu-core/Cargo.toml | 8 ++++---- wgpu-hal/Cargo.toml | 10 +++++----- wgpu-types/Cargo.toml | 2 +- 11 files changed, 75 insertions(+), 42 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5ec8568774..c4361ea48a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -37,7 +37,17 @@ Bottom level categories: - Hal --> -## Unreleased +## v0.19.0 (2024-01-17) + +This release includes: +- `wgpu` +- `wgpu-core` +- `wgpu-hal` +- `wgpu-types` +- `wgpu-info` +- `naga` (skipped from 0.14 to 0.19) +- `naga-cli` (skipped from 0.14 to 0.19) +- `d3d12` (skipped from 0.7 to 0.19) ### Improved Multithreading through internal use of Reference Counting @@ -181,6 +191,29 @@ As part of this work, the public types `naga::ScalarKind` and By @jimblandy in [#4743](https://github.com/gfx-rs/wgpu/pull/4743), [#4755](https://github.com/gfx-rs/wgpu/pull/4755). +### `Instance::enumerate_adapters` now returns `Vec` instead of an `ExactSizeIterator` + +This allows us to support WebGPU and WebGL in the same binary. + +```diff +- let adapters: Vec = instance.enumerate_adapters(wgpu::Backends::all()).collect(); ++ let adapters: Vec = instance.enumerate_adapters(wgpu::Backends::all()); +``` + +By @wumpf in [#5044](https://github.com/gfx-rs/wgpu/pull/5044) + +### `device.poll()` now returns a `MaintainResult` instead of a `bool` + +This is a forward looking change, as we plan to add more information to the `MaintainResult` in the future. +This enum has the same data as the boolean, but with some useful helper functions. + +```diff +- let queue_finished: bool = device.poll(wgpu::Maintain::Wait); ++ let queue_finished: bool = device.poll(wgpu::Maintain::Wait).is_queue_empty(); +``` + +By @cwfitzgerald in [#5053](https://github.com/gfx-rs/wgpu/pull/5053) + ### New Features #### General diff --git a/Cargo.lock b/Cargo.lock index 0d317e1476..41fb4c90e2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -895,10 +895,10 @@ checksum = "96a6ac251f4a2aca6b3f91340350eab87ae57c3f127ffeb585e92bd336717991" [[package]] name = "d3d12" -version = "0.7.0" +version = "0.19.0" dependencies = [ "bitflags 2.4.1", - "libloading 0.8.1", + "libloading 0.7.4", "winapi", ] @@ -2051,7 +2051,7 @@ dependencies = [ [[package]] name = "naga" -version = "0.14.2" +version = "0.19.0" dependencies = [ "arbitrary", "bincode", @@ -2080,7 +2080,7 @@ dependencies = [ [[package]] name = "naga-cli" -version = "0.14.0" +version = "0.19.0" dependencies = [ "argh", "bincode", @@ -2554,7 +2554,7 @@ checksum = "69d3587f8a9e599cc7ec2c00e331f71c4e69a5f9a4b8a6efd5b07466b9736f9a" [[package]] name = "player" -version = "0.18.0" +version = "0.19.0" dependencies = [ "env_logger", "log", @@ -3960,7 +3960,7 @@ dependencies = [ [[package]] name = "wgpu" -version = "0.18.0" +version = "0.19.0" dependencies = [ "arrayvec 0.7.4", "cfg-if", @@ -3984,7 +3984,7 @@ dependencies = [ [[package]] name = "wgpu-core" -version = "0.18.0" +version = "0.19.0" dependencies = [ "arrayvec 0.7.4", "bit-vec", @@ -4010,7 +4010,7 @@ dependencies = [ [[package]] name = "wgpu-examples" -version = "0.18.0" +version = "0.19.0" dependencies = [ "bytemuck", "cfg-if", @@ -4043,7 +4043,7 @@ dependencies = [ [[package]] name = "wgpu-hal" -version = "0.18.0" +version = "0.19.0" dependencies = [ "android_system_properties", "arrayvec 0.7.4", @@ -4067,7 +4067,7 @@ dependencies = [ "js-sys", "khronos-egl", "libc", - "libloading 0.8.1", + "libloading 0.7.4", "log", "metal", "naga", @@ -4090,7 +4090,7 @@ dependencies = [ [[package]] name = "wgpu-info" -version = "0.18.0" +version = "0.19.0" dependencies = [ "anyhow", "bitflags 2.4.1", @@ -4104,7 +4104,7 @@ dependencies = [ [[package]] name = "wgpu-macros" -version = "0.18.0" +version = "0.19.0" dependencies = [ "heck", "quote", @@ -4113,7 +4113,7 @@ dependencies = [ [[package]] name = "wgpu-test" -version = "0.18.0" +version = "0.19.0" dependencies = [ "anyhow", "arrayvec 0.7.4", @@ -4149,7 +4149,7 @@ dependencies = [ [[package]] name = "wgpu-types" -version = "0.18.0" +version = "0.19.0" dependencies = [ "bitflags 2.4.1", "js-sys", diff --git a/Cargo.toml b/Cargo.toml index 8c9c056803..ebc5b8f72b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -45,27 +45,27 @@ keywords = ["graphics"] license = "MIT OR Apache-2.0" homepage = "https://wgpu.rs/" repository = "https://github.com/gfx-rs/wgpu" -version = "0.18.0" +version = "0.19.0" authors = ["gfx-rs developers"] [workspace.dependencies.wgc] package = "wgpu-core" path = "./wgpu-core" -version = "0.18.0" +version = "0.19.0" [workspace.dependencies.wgt] package = "wgpu-types" path = "./wgpu-types" -version = "0.18.0" +version = "0.19.0" [workspace.dependencies.hal] package = "wgpu-hal" path = "./wgpu-hal" -version = "0.18.0" +version = "0.19.0" [workspace.dependencies.naga] path = "./naga" -version = "0.14.0" +version = "0.19.0" [workspace.dependencies] anyhow = "1.0" @@ -117,12 +117,12 @@ serde_json = "1.0.111" smallvec = "1" static_assertions = "1.1.0" thiserror = "1" -wgpu = { version = "0.18.0", path = "./wgpu" } -wgpu-core = { version = "0.18.0", path = "./wgpu-core" } -wgpu-example = { version = "0.18.0", path = "./examples/common" } -wgpu-macros = { version = "0.18.0", path = "./wgpu-macros" } -wgpu-test = { version = "0.18.0", path = "./tests" } -wgpu-types = { version = "0.18.0", path = "./wgpu-types" } +wgpu = { version = "0.19.0", path = "./wgpu" } +wgpu-core = { version = "0.19.0", path = "./wgpu-core" } +wgpu-example = { version = "0.19.0", path = "./examples/common" } +wgpu-macros = { version = "0.19.0", path = "./wgpu-macros" } +wgpu-test = { version = "0.19.0", path = "./tests" } +wgpu-types = { version = "0.19.0", path = "./wgpu-types" } winit = { version = "0.29", features = ["android-native-activity"] } # Metal dependencies diff --git a/d3d12/Cargo.toml b/d3d12/Cargo.toml index 91f3542948..10c68eab77 100644 --- a/d3d12/Cargo.toml +++ b/d3d12/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "d3d12" -version = "0.7.0" +version = "0.19.0" authors = ["gfx-rs developers"] description = "Low level D3D12 API wrapper" repository = "https://github.com/gfx-rs/wgpu/tree/trunk/d3d12" diff --git a/deno_webgpu/Cargo.toml b/deno_webgpu/Cargo.toml index b9d281f04d..d1097c658d 100644 --- a/deno_webgpu/Cargo.toml +++ b/deno_webgpu/Cargo.toml @@ -40,7 +40,7 @@ workspace = true features = ["dx12"] [target.'cfg(windows)'.dependencies.wgpu-hal] -version = "0.18.0" +version = "0.19.0" path = "../wgpu-hal" features = ["windows_rs"] diff --git a/naga-cli/Cargo.toml b/naga-cli/Cargo.toml index 7b8c3024f1..9fe22e3461 100644 --- a/naga-cli/Cargo.toml +++ b/naga-cli/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "naga-cli" -version = "0.14.0" +version = "0.19.0" authors = ["gfx-rs developers"] edition = "2021" description = "Shader translation command line tool" @@ -25,7 +25,7 @@ env_logger = "0.10" argh = "0.1.5" [dependencies.naga] -version = "0.14" +version = "0.19" path = "../naga" features = [ "compact", diff --git a/naga/Cargo.toml b/naga/Cargo.toml index 094c4779a5..1d44729c9f 100644 --- a/naga/Cargo.toml +++ b/naga/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "naga" -version = "0.14.2" +version = "0.19.0" authors = ["gfx-rs developers"] edition = "2021" description = "Shader translation infrastructure" diff --git a/naga/fuzz/Cargo.toml b/naga/fuzz/Cargo.toml index 4285142c06..1f1c1814ba 100644 --- a/naga/fuzz/Cargo.toml +++ b/naga/fuzz/Cargo.toml @@ -15,7 +15,7 @@ libfuzzer-sys = "0.4" [target.'cfg(not(any(target_arch = "wasm32", target_os = "ios")))'.dependencies.naga] path = ".." -version = "0.14.0" +version = "0.19.0" features = ["arbitrary", "spv-in", "wgsl-in", "glsl-in"] [[bin]] diff --git a/wgpu-core/Cargo.toml b/wgpu-core/Cargo.toml index 5c2b430338..28edac35b5 100644 --- a/wgpu-core/Cargo.toml +++ b/wgpu-core/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wgpu-core" -version = "0.18.0" +version = "0.19.0" authors = ["gfx-rs developers"] edition = "2021" description = "WebGPU core logic on wgpu-hal" @@ -109,18 +109,18 @@ thiserror = "1" [dependencies.naga] path = "../naga" -version = "0.14.0" +version = "0.19.0" features = ["clone"] [dependencies.wgt] package = "wgpu-types" path = "../wgpu-types" -version = "0.18.0" +version = "0.19.0" [dependencies.hal] package = "wgpu-hal" path = "../wgpu-hal" -version = "0.18.0" +version = "0.19.0" default_features = false [target.'cfg(all(target_arch = "wasm32", not(target_os = "emscripten")))'.dependencies] diff --git a/wgpu-hal/Cargo.toml b/wgpu-hal/Cargo.toml index b85a518dc4..4d542afed7 100644 --- a/wgpu-hal/Cargo.toml +++ b/wgpu-hal/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wgpu-hal" -version = "0.18.0" +version = "0.19.0" authors = ["gfx-rs developers"] edition = "2021" description = "WebGPU hardware abstraction layer" @@ -90,7 +90,7 @@ glow = { version = "0.13", git = "https://github.com/grovesNL/glow.git", rev = " [dependencies.wgt] package = "wgpu-types" path = "../wgpu-types" -version = "0.18.0" +version = "0.19.0" [target.'cfg(not(target_arch = "wasm32"))'.dependencies] # backend: Vulkan @@ -127,7 +127,7 @@ winapi = { version = "0.3", features = [ "winuser", "dcomp", ] } -d3d12 = { path = "../d3d12/", version = "0.7.0", optional = true, features = [ +d3d12 = { path = "../d3d12/", version = "0.19.0", optional = true, features = [ "libloading", ] } @@ -157,7 +157,7 @@ android_system_properties = "0.1.1" [dependencies.naga] path = "../naga" -version = "0.14.0" +version = "0.19.0" features = ["clone"] [build-dependencies] @@ -166,7 +166,7 @@ cfg_aliases.workspace = true # DEV dependencies [dev-dependencies.naga] path = "../naga" -version = "0.14.0" +version = "0.19.0" features = ["wgsl-in"] [dev-dependencies] diff --git a/wgpu-types/Cargo.toml b/wgpu-types/Cargo.toml index 90846873b2..7528b18c0a 100644 --- a/wgpu-types/Cargo.toml +++ b/wgpu-types/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wgpu-types" -version = "0.18.0" +version = "0.19.0" authors = ["gfx-rs developers"] edition = "2021" description = "WebGPU types"