build(bar): enable eframe's wgpu feature for the Windows bar

komorebi-bar gets a second renderer, wgpu, for machines without OpenGL 2.0
(the Windows e2e guest is one: egui_glow refuses its generic OpenGL 1.1).
wgpu draws through Direct3D 12 on Windows, which has the software adapter
WARP, so it needs no driver. The feature is on only in the
`[target.cfg(windows)]` table of komorebi-bar, so the macOS bar and the
shared bar-core are untouched and nothing here compiles for them.

Cargo.lock gains exactly one entry, `pollster` 0.4.0 (eframe's optional
block_on helper) and two dependency lines of eframe and nothing else: the
wgpu stack (wgpu 27, naga, wgpu-hal, egui-wgpu, ash, gpu-allocator ...) was
already locked as optional dependencies. pollster was not in the offline
registry, so `cargo metadata` fetched it from crates.io; no other version
changed.

Cost measured with `cargo tree -e normal --target x86_64-pc-windows-msvc -p
komorebi-bar`: 622 -> 664 distinct crate versions (+42) for the Windows bar.
With both features compiled, eframe's default renderer becomes Wgpu, so the
next revision names the renderer explicitly.

Verified: lock diff reviewed; not built yet (the next revision builds).
This commit is contained in:
LGUG2Z committed 2026-11-05 15:03:26 -08:00
1 parent 176dc0a8ba
commit c424c03e34
2 files changed
+11

No files matched your search

Generated
+8
View File
@@ -1728,6 +1728,7 @@ dependencies = [
"objc2-foundation 0.2.2",
"parking_lot 0.12.5",
"percent-encoding",
"pollster",
"profiling",
"raw-window-handle",
"static_assertions",
@@ -1735,6 +1736,7 @@ dependencies = [
"wasm-bindgen-futures",
"web-sys",
"web-time",
"wgpu",
"windows-sys 0.61.2",
"winit",
]
@@ -5771,6 +5773,12 @@ dependencies = [
"windows-sys 0.61.2",
]
[[package]]
name = "pollster"
version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2f3a9f18d041e6d0e102a0a46750538147e5e8992d3b4873aaafee2520b00ce3"
[[package]]
name = "portable-atomic"
version = "1.15.0"
+3
View File
@@ -40,6 +40,9 @@ tracing-subscriber = { workspace = true }
[target.'cfg(windows)'.dependencies]
komorebi-themes = { path = "../komorebi-themes", default-features = false }
egui_extras = { workspace = true }
# a second renderer, wgpu (Direct3D 12, which has the software adapter WARP), for a machine where OpenGL 2.0 is not
# there; glow stays the first (see `renderer_attempts` in windows/mod.rs). Windows only: the macOS bar has no use for it
eframe = { workspace = true, features = ["wgpu"] }
netdev = "0.46"
regex = "1"
sysinfo = { workspace = true }