Skip to content

Update wgpu-hal requirement from 0.14.1 to 26.0.0#211

Closed
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/cargo/wgpu-hal-26.0.0
Closed

Update wgpu-hal requirement from 0.14.1 to 26.0.0#211
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/cargo/wgpu-hal-26.0.0

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot bot commented on behalf of github Jul 10, 2025

Updates the requirements on wgpu-hal to permit the latest version.

Release notes

Sourced from wgpu-hal's releases.

v26.0.0

Major Features

New method TextureView::texture

You can now call texture_view.texture() to get access to the texture that a given texture view points to.

By @​cwfitzgerald and @​Wumpf in #7907.

as_hal calls now return guards instead of using callbacks.

Previously, if you wanted to get access to the wgpu-hal or underlying api types, you would call as_hal and get the hal type as a callback. Now the function returns a guard which dereferences to the hal type.

- device.as_hal::<hal::api::Vulkan>(|hal_device| {...});
+ let hal_device: impl Deref<Item = hal::vulkan::Device> = device.as_hal::<hal::api::Vulkan>();

By @​cwfitzgerald in #7863.

Enabling Vulkan Features/Extensions

For those who are doing vulkan/wgpu interop or passthrough and need to enable features/extensions that wgpu does not expose, there is a new wgpu_hal::vulkan::Adapter::open_with_callback that allows the user to modify the pnext chains and extension lists populated by wgpu before we create a vulkan device. This should vastly simplify the experience, as previously you needed to create a device yourself.

Underlying api interop is a quickly evolving space, so we welcome all feedback!

type VkApi = wgpu::hal::api::Vulkan;
let adapter: wgpu::Adapter = ...;
let mut buffer_device_address_create_info = ash::vk::PhysicalDeviceBufferDeviceAddressFeatures { .. };
let hal_device: wgpu::hal::OpenDevice<VkApi> = adapter
.as_hal::<VkApi>()
.unwrap()
.open_with_callback(
wgpu::Features::empty(),
&wgpu::MemoryHints::Performance,
Some(Box::new(|args| {
// Add the buffer device address extension.
args.extensions.push(ash::khr::buffer_device_address::NAME);
// Extend the create info with the buffer device address create info.
*args.create_info = args
.create_info
.push_next(&mut buffer_device_address_create_info);
// We also have access to the queue create infos if we need them.
let _ = args.queue_create_infos;
})),
)
.unwrap();
</tr></table>

... (truncated)

Changelog

Sourced from wgpu-hal's changelog.

v26.0.0 (2025-07-09)

Major Features

New method TextureView::texture

You can now call texture_view.texture() to get access to the texture that a given texture view points to.

By @​cwfitzgerald and @​Wumpf in #7907.

as_hal calls now return guards instead of using callbacks.

Previously, if you wanted to get access to the wgpu-hal or underlying api types, you would call as_hal and get the hal type as a callback. Now the function returns a guard which dereferences to the hal type.

- device.as_hal::<hal::api::Vulkan>(|hal_device| {...});
+ let hal_device: impl Deref<Item = hal::vulkan::Device> = device.as_hal::<hal::api::Vulkan>();

By @​cwfitzgerald in #7863.

Enabling Vulkan Features/Extensions

For those who are doing vulkan/wgpu interop or passthrough and need to enable features/extensions that wgpu does not expose, there is a new wgpu_hal::vulkan::Adapter::open_with_callback that allows the user to modify the pnext chains and extension lists populated by wgpu before we create a vulkan device. This should vastly simplify the experience, as previously you needed to create a device yourself.

Underlying api interop is a quickly evolving space, so we welcome all feedback!

type VkApi = wgpu::hal::api::Vulkan;
let adapter: wgpu::Adapter = ...;
let mut buffer_device_address_create_info = ash::vk::PhysicalDeviceBufferDeviceAddressFeatures { .. };
let hal_device: wgpu::hal::OpenDevice<VkApi> = adapter
.as_hal::<VkApi>()
.unwrap()
.open_with_callback(
wgpu::Features::empty(),
&wgpu::MemoryHints::Performance,
Some(Box::new(|args| {
// Add the buffer device address extension.
args.extensions.push(ash::khr::buffer_device_address::NAME);
// Extend the create info with the buffer device address create info.
*args.create_info = args
.create_info
.push_next(&mut buffer_device_address_create_info);
// We also have access to the queue create infos if we need them.
let _ = args.queue_create_infos;
})),
)
</tr></table>

... (truncated)

Commits
  • 03f1b53 Bump version to v26
  • 8ee66bd Update changelog for v26
  • a851eba Add TextureView::texture (#7907)
  • 13fec87 Added mesh shading spec (#7885)
  • f0d13b0 fix(cts): use correct comparison direction for Git version check (#7909)
  • 4f15635 Switch as_hal to return a guard
  • a6a3804 [core] Add force_unlock_read methods to lock primitives
  • a248b8c [core] Add RawResourceAccess trait
  • 795fe3b [core] Move as_hal methods to their own file
  • 8148ac6 chore(deps): update rust crate indicatif to 0.18 (#7890)
  • Additional commits viewable in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Updates the requirements on [wgpu-hal](https://github.com/gfx-rs/wgpu) to permit the latest version.
- [Release notes](https://github.com/gfx-rs/wgpu/releases)
- [Changelog](https://github.com/gfx-rs/wgpu/blob/trunk/CHANGELOG.md)
- [Commits](gfx-rs/wgpu@wgpu-hal-v0.14.1...v26.0.0)

---
updated-dependencies:
- dependency-name: wgpu-hal
  dependency-version: 26.0.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot requested a review from KDahir247 July 10, 2025 15:27
@dependabot @github
Copy link
Copy Markdown
Contributor Author

dependabot bot commented on behalf of github Jul 10, 2025

Labels

The following labels could not be found: dependences. Please create it before Dependabot can add it to a pull request.

Please fix the above issues or remove invalid values from dependabot.yml.

@dependabot @github
Copy link
Copy Markdown
Contributor Author

dependabot bot commented on behalf of github Jul 10, 2025

The reviewers field in the dependabot.yml file will be removed soon. Please use the code owners file to specify reviewers for Dependabot PRs. For more information, see this blog post.

@dependabot @github
Copy link
Copy Markdown
Contributor Author

dependabot bot commented on behalf of github Jul 24, 2025

Superseded by #212.

@dependabot dependabot bot closed this Jul 24, 2025
@dependabot dependabot bot deleted the dependabot/cargo/wgpu-hal-26.0.0 branch July 24, 2025 15:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants