Skip to content

build(deps): bump the winit-wgpu-egui group with 3 updates#23171

Closed
dependabot[bot] wants to merge 1 commit intomasterfrom
dependabot/cargo/winit-wgpu-egui-14c0ad56cd
Closed

build(deps): bump the winit-wgpu-egui group with 3 updates#23171
dependabot[bot] wants to merge 1 commit intomasterfrom
dependabot/cargo/winit-wgpu-egui-14c0ad56cd

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot bot commented on behalf of github Mar 2, 2026

Bumps the winit-wgpu-egui group with 3 updates: naga, wgpu and winit.

Updates naga from 27.0.3 to 28.0.0

Release notes

Sourced from naga's releases.

v28.0.0 - Mesh Shaders, Immediates, and More!

Major Changes

Mesh Shaders

This has been a long time coming. See the tracking issue for more information. They are now fully supported on Vulkan, and supported on Metal and DX12 with passthrough shaders. WGSL parsing and rewriting is supported, meaning they can be used through WESL or naga_oil.

Mesh shader pipelines replace the standard vertex shader pipelines and allow new ways to render meshes. They are ideal for meshlet rendering, a form of rendering where small groups of triangles are handled together, for both culling and rendering.

They are compute-like shaders, and generate primitives which are passed directly to the rasterizer, rather than having a list of vertices generated individually and then using a static index buffer. This means that certain computations on nearby groups of triangles can be done together, the relationship between vertices and primitives is more programmable, and you can even pass non-interpolated per-primitive data to the fragment shader, independent of vertices.

Mesh shaders are very versatile, and are powerful enough to replace vertex shaders, tesselation shaders, and geometry shaders on their own or with task shaders.

A full example of mesh shaders in use can be seen in the mesh_shader example. For the full specification of mesh shaders in wgpu, go to https://github.com/gfx-rs/wgpu/blob/HEAD/docs/api-specs/mesh_shading.md. Below is a small snippet of shader code demonstrating their usage:

@task
@payload(taskPayload)
@workgroup_size(1)
fn ts_main() -> @builtin(mesh_task_size) vec3<u32> {
    // Task shaders can use workgroup variables like compute shaders
    workgroupData = 1.0;
    // Pass some data to all mesh shaders dispatched by this workgroup
    taskPayload.colorMask = vec4(1.0, 1.0, 0.0, 1.0);
    taskPayload.visible = 1;
    // Dispatch a mesh shader grid with one workgroup
    return vec3(1, 1, 1);
}
@​mesh(mesh_output)
@​payload(taskPayload)
@​workgroup_size(1)
fn ms_main(@​builtin(local_invocation_index) index: u32, @​builtin(global_invocation_id) id: vec3<u32>) {
// Set how many outputs this workgroup will generate
mesh_output.vertex_count = 3;
mesh_output.primitive_count = 1;
// Can also use workgroup variables
workgroupData = 2.0;
// Set vertex outputs
mesh_output.vertices[0].position = positions[0];
mesh_output.vertices[0].color = colors[0] * taskPayload.colorMask;

</tr></table>

... (truncated)

Changelog

Sourced from naga's changelog.

v28.0.0 (2025-12-17)

Major Changes

Mesh Shaders

This has been a long time coming. See the tracking issue for more information. They are now fully supported on Vulkan, and supported on Metal and DX12 with passthrough shaders. WGSL parsing and rewriting is supported, meaning they can be used through WESL or naga_oil.

Mesh shader pipelines replace the standard vertex shader pipelines and allow new ways to render meshes. They are ideal for meshlet rendering, a form of rendering where small groups of triangles are handled together, for both culling and rendering.

They are compute-like shaders, and generate primitives which are passed directly to the rasterizer, rather than having a list of vertices generated individually and then using a static index buffer. This means that certain computations on nearby groups of triangles can be done together, the relationship between vertices and primitives is more programmable, and you can even pass non-interpolated per-primitive data to the fragment shader, independent of vertices.

Mesh shaders are very versatile, and are powerful enough to replace vertex shaders, tesselation shaders, and geometry shaders on their own or with task shaders.

A full example of mesh shaders in use can be seen in the mesh_shader example. For the full specification of mesh shaders in wgpu, go to https://github.com/gfx-rs/wgpu/blob/trunk/docs/api-specs/mesh_shading.md. Below is a small snippet of shader code demonstrating their usage:

@task
@payload(taskPayload)
@workgroup_size(1)
fn ts_main() -> @builtin(mesh_task_size) vec3<u32> {
    // Task shaders can use workgroup variables like compute shaders
    workgroupData = 1.0;
    // Pass some data to all mesh shaders dispatched by this workgroup
    taskPayload.colorMask = vec4(1.0, 1.0, 0.0, 1.0);
    taskPayload.visible = 1;
    // Dispatch a mesh shader grid with one workgroup
    return vec3(1, 1, 1);
}
@​mesh(mesh_output)
@​payload(taskPayload)
@​workgroup_size(1)
fn ms_main(@​builtin(local_invocation_index) index: u32, @​builtin(global_invocation_id) id: vec3<u32>) {
// Set how many outputs this workgroup will generate
mesh_output.vertex_count = 3;
mesh_output.primitive_count = 1;
// Can also use workgroup variables
workgroupData = 2.0;
// Set vertex outputs
mesh_output.vertices[0].position = positions[0];

</tr></table>

... (truncated)

Commits

Updates wgpu from 27.0.1 to 28.0.0

Changelog

Sourced from wgpu's changelog.

v28.0.0 (2025-12-17)

Major Changes

Mesh Shaders

This has been a long time coming. See the tracking issue for more information. They are now fully supported on Vulkan, and supported on Metal and DX12 with passthrough shaders. WGSL parsing and rewriting is supported, meaning they can be used through WESL or naga_oil.

Mesh shader pipelines replace the standard vertex shader pipelines and allow new ways to render meshes. They are ideal for meshlet rendering, a form of rendering where small groups of triangles are handled together, for both culling and rendering.

They are compute-like shaders, and generate primitives which are passed directly to the rasterizer, rather than having a list of vertices generated individually and then using a static index buffer. This means that certain computations on nearby groups of triangles can be done together, the relationship between vertices and primitives is more programmable, and you can even pass non-interpolated per-primitive data to the fragment shader, independent of vertices.

Mesh shaders are very versatile, and are powerful enough to replace vertex shaders, tesselation shaders, and geometry shaders on their own or with task shaders.

A full example of mesh shaders in use can be seen in the mesh_shader example. For the full specification of mesh shaders in wgpu, go to https://github.com/gfx-rs/wgpu/blob/trunk/docs/api-specs/mesh_shading.md. Below is a small snippet of shader code demonstrating their usage:

@task
@payload(taskPayload)
@workgroup_size(1)
fn ts_main() -> @builtin(mesh_task_size) vec3<u32> {
    // Task shaders can use workgroup variables like compute shaders
    workgroupData = 1.0;
    // Pass some data to all mesh shaders dispatched by this workgroup
    taskPayload.colorMask = vec4(1.0, 1.0, 0.0, 1.0);
    taskPayload.visible = 1;
    // Dispatch a mesh shader grid with one workgroup
    return vec3(1, 1, 1);
}
@​mesh(mesh_output)
@​payload(taskPayload)
@​workgroup_size(1)
fn ms_main(@​builtin(local_invocation_index) index: u32, @​builtin(global_invocation_id) id: vec3<u32>) {
// Set how many outputs this workgroup will generate
mesh_output.vertex_count = 3;
mesh_output.primitive_count = 1;
// Can also use workgroup variables
workgroupData = 2.0;
// Set vertex outputs
mesh_output.vertices[0].position = positions[0];

</tr></table>

... (truncated)

Commits

Updates winit from 0.30.12 to 0.30.13

Release notes

Sourced from winit's releases.

Winit version 0.30.13

Added

  • On Wayland, add Window::set_resize_increments.

Fixed

  • On macOS, fixed crash when dragging non-file content onto window.
  • On X11, fix set_hittest not working on some window managers.
  • On X11, fix debug mode overflow panic in set_timestamp.
  • On macOS, fix crash in set_marked_text when native Pinyin IME sends out-of-bounds selected_range.
  • On Windows, fix WM_IME_SETCONTEXT IME UI flag masking on lParam.
  • On Android, populate KeyEvent::text and KeyEvent::text_with_all_modifiers via Key::to_text().
Commits
  • e9809ef Winit version 0.30.13
  • efb5b37 chore: fix ci
  • a9baf5e fix(android): Populate KeyEvent.text via Key::to_text()
  • 6bb43fd wayland: implement resize increments
  • 17a73f4 win32: fix ime setcontext lparam
  • bccc568 fix(macOS): clamp IME selected_range to prevent substringToIndex crash
  • 69b8a07 winit-x11: fix debug mode overflow panic in set_timestamp
  • 3eb731f winit-x11: replace xfixes with x11rb in set_hittest
  • 7035dd5 winit-win32: Fix ABI mismatch in INIT_MAIN_THREAD_ID
  • ab4c6bf macOS: fix a crash when dragging non-file content onto window
  • See full diff 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 show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

@dependabot dependabot bot added A-deps Area: Dependencies T-chore Type: Chore (like updating a dependency, it's gotta be done) labels Mar 2, 2026
Bumps the winit-wgpu-egui group with 3 updates: [naga](https://github.com/gfx-rs/wgpu), [wgpu](https://github.com/gfx-rs/wgpu) and [winit](https://github.com/rust-windowing/winit).


Updates `naga` from 27.0.3 to 28.0.0
- [Release notes](https://github.com/gfx-rs/wgpu/releases)
- [Changelog](https://github.com/gfx-rs/wgpu/blob/trunk/CHANGELOG.md)
- [Commits](gfx-rs/wgpu@naga-v27.0.3...v28.0.0)

Updates `wgpu` from 27.0.1 to 28.0.0
- [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-v27.0.1...v28.0.0)

Updates `winit` from 0.30.12 to 0.30.13
- [Release notes](https://github.com/rust-windowing/winit/releases)
- [Changelog](https://github.com/rust-windowing/winit/blob/master/CHANGELOG.md)
- [Commits](rust-windowing/winit@v0.30.12...v0.30.13)

---
updated-dependencies:
- dependency-name: naga
  dependency-version: 28.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: winit-wgpu-egui
- dependency-name: wgpu
  dependency-version: 28.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: winit-wgpu-egui
- dependency-name: winit
  dependency-version: 0.30.13
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: winit-wgpu-egui
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot force-pushed the dependabot/cargo/winit-wgpu-egui-14c0ad56cd branch from 1ec09be to ec36fc4 Compare March 3, 2026 09:03
@dependabot @github
Copy link
Copy Markdown
Contributor Author

dependabot bot commented on behalf of github Mar 3, 2026

Looks like these dependencies are updatable in another way, so this is no longer needed.

@dependabot dependabot bot closed this Mar 3, 2026
@dependabot dependabot bot deleted the dependabot/cargo/winit-wgpu-egui-14c0ad56cd branch March 3, 2026 16:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-deps Area: Dependencies T-chore Type: Chore (like updating a dependency, it's gotta be done)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants