diff --git a/CHANGELOG.md b/CHANGELOG.md index 6fa8bd6303..b56985facb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -40,20 +40,26 @@ Bottom level categories: ## Unreleased -#### 'wgpu::Instance::enumerate_adapters` is now `async` & available on WebGPU +### Major changes -Making `enumerate_adapters` async allows custom backends to use it along with elimnating some native/non-native distinctions +#### 'wgpu::Instance::enumerate_adapters` is now `async` & available on WebGPU -This is a breaking change +BREAKING CHANGE: `enumerate_adapters` is now `async`: ```diff - pub fn enumerate_adapters(&self, backends: Backends) -> Vec { + pub fn enumerate_adapters(&self, backends: Backends) -> impl Future> { - ``` +This yields ([kek]) two benefits: + +- This method is now implemented on non-native using the standard `Adapter::request_adapter(…)`, making `enumerate_adapters` a portable surface. This was previous a nontrivial pain point when an application wanted to do some of its own filtering of adapters. +- This method can now be implemented in custom backends. + By @R-Cramer4 in [#8230](https://github.com/gfx-rs/wgpu/pull/8230) +[kek]: https://web.archive.org/web/20250923122958/https://knowyourmeme.com/memes/kek + ## v27.0.2 (2025-10-03) ### Bug Fixes