Update to wgpu 25 (#6744)

Co-authored-by: Andreas Reich <r_andreas2@web.de>
This commit is contained in:
TÖRÖK Attila 2025-05-10 13:16:49 +02:00 committed by GitHub
parent e9609ac94e
commit 773232b139
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
7 changed files with 154 additions and 102 deletions

View File

@ -174,7 +174,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ef6978589202a00cd7e118380c448a08b6ed394c3a8df3a430d0898e3a42d046" checksum = "ef6978589202a00cd7e118380c448a08b6ed394c3a8df3a430d0898e3a42d046"
dependencies = [ dependencies = [
"android-properties", "android-properties",
"bitflags 2.8.0", "bitflags 2.9.0",
"cc", "cc",
"cesu8", "cesu8",
"jni", "jni",
@ -592,9 +592,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
[[package]] [[package]]
name = "bitflags" name = "bitflags"
version = "2.8.0" version = "2.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8f68f53c83ab957f72c32642f3868eec03eb974d1fb82e453128456482613d36" checksum = "5c8214115b7bf84099f1309324e63141d4c5d7cc26862f97a0a857dbefe165bd"
dependencies = [ dependencies = [
"serde", "serde",
] ]
@ -655,9 +655,9 @@ checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
[[package]] [[package]]
name = "bytemuck" name = "bytemuck"
version = "1.21.0" version = "1.22.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ef657dfab802224e671f5818e9a4935f9b1957ed18e58292690cc39e7a4092a3" checksum = "b6b1fc10dbac614ebc03540c9dbd60e83887fda27794998c6528f1782047d540"
dependencies = [ dependencies = [
"bytemuck_derive", "bytemuck_derive",
] ]
@ -697,7 +697,7 @@ version = "0.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b99da2f8558ca23c71f4fd15dc57c906239752dd27ff3c00a1d56b685b7cbfec" checksum = "b99da2f8558ca23c71f4fd15dc57c906239752dd27ff3c00a1d56b685b7cbfec"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"log", "log",
"polling", "polling",
"rustix", "rustix",
@ -844,10 +844,11 @@ dependencies = [
[[package]] [[package]]
name = "codespan-reporting" name = "codespan-reporting"
version = "0.11.1" version = "0.12.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e" checksum = "fe6d2e5af09e8c8ad56c969f2157a3d4238cebc7c55f0a517728c38f7b200f81"
dependencies = [ dependencies = [
"serde",
"termcolor", "termcolor",
"unicode-width", "unicode-width",
] ]
@ -1164,7 +1165,7 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1a0d569e003ff27784e0e14e4a594048698e0c0f0b66cabcb51511be55a7caa0" checksum = "1a0d569e003ff27784e0e14e4a594048698e0c0f0b66cabcb51511be55a7caa0"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"block2 0.6.0", "block2 0.6.0",
"libc", "libc",
"objc2 0.6.0", "objc2 0.6.0",
@ -1192,9 +1193,9 @@ dependencies = [
[[package]] [[package]]
name = "document-features" name = "document-features"
version = "0.2.10" version = "0.2.11"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cb6969eaabd2421f8a2775cfd2471a2b634372b4a25d41e3bd647b79912850a0" checksum = "95249b50c6c185bee49034bcb378a49dc2b5dff0be90ff6616d31d64febab05d"
dependencies = [ dependencies = [
"litrs", "litrs",
] ]
@ -1270,7 +1271,7 @@ dependencies = [
"accesskit", "accesskit",
"ahash", "ahash",
"backtrace", "backtrace",
"bitflags 2.8.0", "bitflags 2.9.0",
"document-features", "document-features",
"emath", "emath",
"epaint", "epaint",
@ -1911,7 +1912,7 @@ version = "0.32.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ec69412a0bf07ea7607e638b415447857a808846c2b685a43c8aa18bc6d5e499" checksum = "ec69412a0bf07ea7607e638b415447857a808846c2b685a43c8aa18bc6d5e499"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"cfg_aliases", "cfg_aliases",
"cgl", "cgl",
"core-foundation", "core-foundation",
@ -1977,7 +1978,7 @@ version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fbcd2dba93594b227a1f57ee09b8b9da8892c34d55aa332e034a228d0fe6a171" checksum = "fbcd2dba93594b227a1f57ee09b8b9da8892c34d55aa332e034a228d0fe6a171"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"gpu-alloc-types", "gpu-alloc-types",
] ]
@ -1987,7 +1988,7 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "98ff03b468aa837d70984d55f5d3f846f6ec31fe34bbb97c4f85219caeee1ca4" checksum = "98ff03b468aa837d70984d55f5d3f846f6ec31fe34bbb97c4f85219caeee1ca4"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
] ]
[[package]] [[package]]
@ -2008,7 +2009,7 @@ version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dcf29e94d6d243368b7a56caa16bc213e4f9f8ed38c4d9557069527b5d5281ca" checksum = "dcf29e94d6d243368b7a56caa16bc213e4f9f8ed38c4d9557069527b5d5281ca"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"gpu-descriptor-types", "gpu-descriptor-types",
"hashbrown", "hashbrown",
] ]
@ -2019,17 +2020,18 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fdf242682df893b86f33a73828fb09ca4b2d3bb6cc95249707fc684d27484b91" checksum = "fdf242682df893b86f33a73828fb09ca4b2d3bb6cc95249707fc684d27484b91"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
] ]
[[package]] [[package]]
name = "half" name = "half"
version = "2.4.1" version = "2.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888" checksum = "459196ed295495a68f7d7fe1d84f6c4b7ff0e21fe3017b2f283c6fac3ad803c9"
dependencies = [ dependencies = [
"cfg-if", "cfg-if",
"crunchy", "crunchy",
"num-traits",
] ]
[[package]] [[package]]
@ -2505,7 +2507,7 @@ version = "0.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"libc", "libc",
"redox_syscall 0.5.7", "redox_syscall 0.5.7",
] ]
@ -2595,7 +2597,7 @@ version = "0.31.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f569fb946490b5743ad69813cb19629130ce9374034abe31614a36402d18f99e" checksum = "f569fb946490b5743ad69813cb19629130ce9374034abe31614a36402d18f99e"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"block", "block",
"core-graphics-types", "core-graphics-types",
"foreign-types", "foreign-types",
@ -2666,24 +2668,27 @@ dependencies = [
[[package]] [[package]]
name = "naga" name = "naga"
version = "24.0.0" version = "25.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e380993072e52eef724eddfcde0ed013b0c023c3f0417336ed041aa9f076994e" checksum = "2b977c445f26e49757f9aca3631c3b8b836942cb278d69a92e7b80d3b24da632"
dependencies = [ dependencies = [
"arrayvec", "arrayvec",
"bit-set 0.8.0", "bit-set 0.8.0",
"bitflags 2.8.0", "bitflags 2.9.0",
"cfg_aliases", "cfg_aliases",
"codespan-reporting", "codespan-reporting",
"half",
"hashbrown",
"hexf-parse", "hexf-parse",
"indexmap", "indexmap",
"log", "log",
"num-traits",
"once_cell",
"rustc-hash", "rustc-hash",
"spirv", "spirv",
"strum", "strum",
"termcolor",
"thiserror 2.0.11", "thiserror 2.0.11",
"unicode-xid", "unicode-ident",
] ]
[[package]] [[package]]
@ -2692,7 +2697,7 @@ version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c3f42e7bbe13d351b6bead8286a43aac9534b82bd3cc43e47037f012ebfd62d4" checksum = "c3f42e7bbe13d351b6bead8286a43aac9534b82bd3cc43e47037f012ebfd62d4"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"jni-sys", "jni-sys",
"log", "log",
"ndk-sys 0.6.0+11769913", "ndk-sys 0.6.0+11769913",
@ -2731,7 +2736,7 @@ version = "0.29.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46" checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"cfg-if", "cfg-if",
"cfg_aliases", "cfg_aliases",
"libc", "libc",
@ -2757,6 +2762,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
dependencies = [ dependencies = [
"autocfg", "autocfg",
"libm",
] ]
[[package]] [[package]]
@ -2820,7 +2826,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e4e89ad9e3d7d297152b17d39ed92cd50ca8063a89a9fa569046d41568891eff" checksum = "e4e89ad9e3d7d297152b17d39ed92cd50ca8063a89a9fa569046d41568891eff"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"block2 0.5.1", "block2 0.5.1",
"libc", "libc",
"objc2 0.5.2", "objc2 0.5.2",
@ -2836,7 +2842,7 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5906f93257178e2f7ae069efb89fbd6ee94f0592740b5f8a1512ca498814d0fb" checksum = "5906f93257178e2f7ae069efb89fbd6ee94f0592740b5f8a1512ca498814d0fb"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"block2 0.6.0", "block2 0.6.0",
"objc2 0.6.0", "objc2 0.6.0",
"objc2-foundation 0.3.0", "objc2-foundation 0.3.0",
@ -2848,7 +2854,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "74dd3b56391c7a0596a295029734d3c1c5e7e510a4cb30245f8221ccea96b009" checksum = "74dd3b56391c7a0596a295029734d3c1c5e7e510a4cb30245f8221ccea96b009"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"block2 0.5.1", "block2 0.5.1",
"objc2 0.5.2", "objc2 0.5.2",
"objc2-core-location", "objc2-core-location",
@ -2872,7 +2878,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "617fbf49e071c178c0b24c080767db52958f716d9eabdf0890523aeae54773ef" checksum = "617fbf49e071c178c0b24c080767db52958f716d9eabdf0890523aeae54773ef"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"block2 0.5.1", "block2 0.5.1",
"objc2 0.5.2", "objc2 0.5.2",
"objc2-foundation 0.2.2", "objc2-foundation 0.2.2",
@ -2884,7 +2890,7 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "daeaf60f25471d26948a1c2f840e3f7d86f4109e3af4e8e4b5cd70c39690d925" checksum = "daeaf60f25471d26948a1c2f840e3f7d86f4109e3af4e8e4b5cd70c39690d925"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"objc2 0.6.0", "objc2 0.6.0",
] ]
@ -2924,7 +2930,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0ee638a5da3799329310ad4cfa62fbf045d5f56e3ef5ba4149e7452dcf89d5a8" checksum = "0ee638a5da3799329310ad4cfa62fbf045d5f56e3ef5ba4149e7452dcf89d5a8"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"block2 0.5.1", "block2 0.5.1",
"dispatch", "dispatch",
"libc", "libc",
@ -2937,7 +2943,7 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3a21c6c9014b82c39515db5b396f91645182611c97d24637cf56ac01e5f8d998" checksum = "3a21c6c9014b82c39515db5b396f91645182611c97d24637cf56ac01e5f8d998"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"objc2 0.6.0", "objc2 0.6.0",
"objc2-core-foundation", "objc2-core-foundation",
] ]
@ -2960,7 +2966,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dd0cba1276f6023976a406a14ffa85e1fdd19df6b0f737b063b95f6c8c7aadd6" checksum = "dd0cba1276f6023976a406a14ffa85e1fdd19df6b0f737b063b95f6c8c7aadd6"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"block2 0.5.1", "block2 0.5.1",
"objc2 0.5.2", "objc2 0.5.2",
"objc2-foundation 0.2.2", "objc2-foundation 0.2.2",
@ -2972,7 +2978,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e42bee7bff906b14b167da2bac5efe6b6a07e6f7c0a21a7308d40c960242dc7a" checksum = "e42bee7bff906b14b167da2bac5efe6b6a07e6f7c0a21a7308d40c960242dc7a"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"block2 0.5.1", "block2 0.5.1",
"objc2 0.5.2", "objc2 0.5.2",
"objc2-foundation 0.2.2", "objc2-foundation 0.2.2",
@ -2995,7 +3001,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b8bb46798b20cd6b91cbd113524c490f1686f4c4e8f49502431415f3512e2b6f" checksum = "b8bb46798b20cd6b91cbd113524c490f1686f4c4e8f49502431415f3512e2b6f"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"block2 0.5.1", "block2 0.5.1",
"objc2 0.5.2", "objc2 0.5.2",
"objc2-cloud-kit", "objc2-cloud-kit",
@ -3027,7 +3033,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "76cfcbf642358e8689af64cee815d139339f3ed8ad05103ed5eaf73db8d84cb3" checksum = "76cfcbf642358e8689af64cee815d139339f3ed8ad05103ed5eaf73db8d84cb3"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"block2 0.5.1", "block2 0.5.1",
"objc2 0.5.2", "objc2 0.5.2",
"objc2-core-location", "objc2-core-location",
@ -3045,9 +3051,9 @@ dependencies = [
[[package]] [[package]]
name = "once_cell" name = "once_cell"
version = "1.20.2" version = "1.21.3"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d"
[[package]] [[package]]
name = "oorandom" name = "oorandom"
@ -3259,6 +3265,12 @@ dependencies = [
"env_logger", "env_logger",
] ]
[[package]]
name = "portable-atomic"
version = "1.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e"
[[package]] [[package]]
name = "powerfmt" name = "powerfmt"
version = "0.2.0" version = "0.2.0"
@ -3477,7 +3489,7 @@ version = "0.5.7"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9b6dfecf2c74bce2466cabf93f6664d6998a69eb21e39f4207930065b27b771f" checksum = "9b6dfecf2c74bce2466cabf93f6664d6998a69eb21e39f4207930065b27b771f"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
] ]
[[package]] [[package]]
@ -3594,7 +3606,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "beceb6f7bf81c73e73aeef6dd1356d9a1b2b4909e1f0fc3e59b034f9572d7b7f" checksum = "beceb6f7bf81c73e73aeef6dd1356d9a1b2b4909e1f0fc3e59b034f9572d7b7f"
dependencies = [ dependencies = [
"base64", "base64",
"bitflags 2.8.0", "bitflags 2.9.0",
"serde", "serde",
"serde_derive", "serde_derive",
"unicode-ident", "unicode-ident",
@ -3624,7 +3636,7 @@ version = "0.38.38"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "aa260229e6538e52293eeb577aabd09945a09d6d9cc0fc550ed7529056c2e32a" checksum = "aa260229e6538e52293eeb577aabd09945a09d6d9cc0fc550ed7529056c2e32a"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"errno", "errno",
"libc", "libc",
"linux-raw-sys", "linux-raw-sys",
@ -3675,7 +3687,7 @@ version = "0.20.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fd3c7c96f8a08ee34eff8857b11b49b07d71d1c3f4e88f8a88d4c9e9f90b1702" checksum = "fd3c7c96f8a08ee34eff8857b11b49b07d71d1c3f4e88f8a88d4c9e9f90b1702"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"bytemuck", "bytemuck",
"core_maths", "core_maths",
"log", "log",
@ -3874,7 +3886,7 @@ version = "0.19.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3457dea1f0eb631b4034d61d4d8c32074caa6cd1ab2d59f2327bd8461e2c0016" checksum = "3457dea1f0eb631b4034d61d4d8c32074caa6cd1ab2d59f2327bd8461e2c0016"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"calloop", "calloop",
"calloop-wayland-source", "calloop-wayland-source",
"cursor-icon", "cursor-icon",
@ -3929,7 +3941,7 @@ version = "0.3.0+sdk-1.3.268.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eda41003dc44290527a59b13432d4a0379379fa074b70174882adfbdfd917844" checksum = "eda41003dc44290527a59b13432d4a0379379fa074b70174882adfbdfd917844"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
] ]
[[package]] [[package]]
@ -4392,12 +4404,6 @@ version = "0.1.14"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af"
[[package]]
name = "unicode-xid"
version = "0.2.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853"
[[package]] [[package]]
name = "unicode_names2" name = "unicode_names2"
version = "0.6.0" version = "0.6.0"
@ -4609,7 +4615,7 @@ version = "0.31.7"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b66249d3fc69f76fd74c82cc319300faa554e9d865dab1f7cd66cc20db10b280" checksum = "b66249d3fc69f76fd74c82cc319300faa554e9d865dab1f7cd66cc20db10b280"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"rustix", "rustix",
"wayland-backend", "wayland-backend",
"wayland-scanner", "wayland-scanner",
@ -4621,7 +4627,7 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "625c5029dbd43d25e6aa9615e88b829a5cad13b2819c4ae129fdbb7c31ab4c7e" checksum = "625c5029dbd43d25e6aa9615e88b829a5cad13b2819c4ae129fdbb7c31ab4c7e"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"cursor-icon", "cursor-icon",
"wayland-backend", "wayland-backend",
] ]
@ -4643,7 +4649,7 @@ version = "0.32.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7cd0ade57c4e6e9a8952741325c30bf82f4246885dca8bf561898b86d0c1f58e" checksum = "7cd0ade57c4e6e9a8952741325c30bf82f4246885dca8bf561898b86d0c1f58e"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"wayland-backend", "wayland-backend",
"wayland-client", "wayland-client",
"wayland-scanner", "wayland-scanner",
@ -4655,7 +4661,7 @@ version = "0.3.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9b31cab548ee68c7eb155517f2212049dc151f7cd7910c2b66abfd31c3ee12bd" checksum = "9b31cab548ee68c7eb155517f2212049dc151f7cd7910c2b66abfd31c3ee12bd"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"wayland-backend", "wayland-backend",
"wayland-client", "wayland-client",
"wayland-protocols", "wayland-protocols",
@ -4668,7 +4674,7 @@ version = "0.3.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "782e12f6cd923c3c316130d56205ebab53f55d6666b7faddfad36cecaeeb4022" checksum = "782e12f6cd923c3c316130d56205ebab53f55d6666b7faddfad36cecaeeb4022"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"wayland-backend", "wayland-backend",
"wayland-client", "wayland-client",
"wayland-protocols", "wayland-protocols",
@ -4752,18 +4758,20 @@ checksum = "53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082"
[[package]] [[package]]
name = "wgpu" name = "wgpu"
version = "24.0.0" version = "25.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e41253fc7b660735e2a2d9a58c563f2a047d3cc3445293d8f4095538c9e8afbe" checksum = "ca6049eb2014a0e0d8689f9b787605dd71d5bbfdc74095ead499f3cff705c229"
dependencies = [ dependencies = [
"arrayvec", "arrayvec",
"bitflags 2.8.0", "bitflags 2.9.0",
"cfg_aliases", "cfg_aliases",
"document-features", "document-features",
"hashbrown",
"js-sys", "js-sys",
"log", "log",
"naga", "naga",
"parking_lot", "parking_lot",
"portable-atomic",
"profiling", "profiling",
"raw-window-handle 0.6.2", "raw-window-handle 0.6.2",
"smallvec", "smallvec",
@ -4778,42 +4786,86 @@ dependencies = [
[[package]] [[package]]
name = "wgpu-core" name = "wgpu-core"
version = "24.0.0" version = "25.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "82a39b8842dc9ffcbe34346e3ab6d496b32a47f6497e119d762c97fcaae3cb37" checksum = "a19813e647da7aa3cdaa84f5846e2c64114970ea7c86b1e6aae8be08091f4bdc"
dependencies = [ dependencies = [
"arrayvec", "arrayvec",
"bit-set 0.8.0",
"bit-vec 0.8.0", "bit-vec 0.8.0",
"bitflags 2.8.0", "bitflags 2.9.0",
"cfg_aliases", "cfg_aliases",
"document-features", "document-features",
"hashbrown",
"indexmap", "indexmap",
"log", "log",
"naga", "naga",
"once_cell", "once_cell",
"parking_lot", "parking_lot",
"portable-atomic",
"profiling", "profiling",
"raw-window-handle 0.6.2", "raw-window-handle 0.6.2",
"rustc-hash", "rustc-hash",
"smallvec", "smallvec",
"thiserror 2.0.11", "thiserror 2.0.11",
"wgpu-core-deps-apple",
"wgpu-core-deps-emscripten",
"wgpu-core-deps-wasm",
"wgpu-core-deps-windows-linux-android",
"wgpu-hal", "wgpu-hal",
"wgpu-types", "wgpu-types",
] ]
[[package]] [[package]]
name = "wgpu-hal" name = "wgpu-core-deps-apple"
version = "24.0.0" version = "25.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5a782e5056b060b0b4010881d1decddd059e44f2ecd01e2db2971b48ad3627e5" checksum = "cfd488b3239b6b7b185c3b045c39ca6bf8af34467a4c5de4e0b1a564135d093d"
dependencies = [
"wgpu-hal",
]
[[package]]
name = "wgpu-core-deps-emscripten"
version = "25.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f09ad7aceb3818e52539acc679f049d3475775586f3f4e311c30165cf2c00445"
dependencies = [
"wgpu-hal",
]
[[package]]
name = "wgpu-core-deps-wasm"
version = "25.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eca8809ad123f6c7f2c5e01a2c7117c4fdfd02f70bd422ee2533f69dfa98756c"
dependencies = [
"wgpu-hal",
]
[[package]]
name = "wgpu-core-deps-windows-linux-android"
version = "25.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cba5fb5f7f9c98baa7c889d444f63ace25574833df56f5b817985f641af58e46"
dependencies = [
"wgpu-hal",
]
[[package]]
name = "wgpu-hal"
version = "25.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fb7c4a1dc42ff14c23c9b11ebf1ee85cde661a9b1cf0392f79c1faca5bc559fb"
dependencies = [ dependencies = [
"android_system_properties", "android_system_properties",
"arrayvec", "arrayvec",
"ash", "ash",
"bit-set 0.8.0", "bit-set 0.8.0",
"bitflags 2.8.0", "bitflags 2.9.0",
"block", "block",
"bytemuck", "bytemuck",
"cfg-if",
"cfg_aliases", "cfg_aliases",
"core-graphics-types", "core-graphics-types",
"glow", "glow",
@ -4821,6 +4873,7 @@ dependencies = [
"gpu-alloc", "gpu-alloc",
"gpu-allocator", "gpu-allocator",
"gpu-descriptor", "gpu-descriptor",
"hashbrown",
"js-sys", "js-sys",
"khronos-egl", "khronos-egl",
"libc", "libc",
@ -4830,14 +4883,13 @@ dependencies = [
"naga", "naga",
"ndk-sys 0.5.0+25.2.9519653", "ndk-sys 0.5.0+25.2.9519653",
"objc", "objc",
"once_cell",
"ordered-float", "ordered-float",
"parking_lot", "parking_lot",
"portable-atomic",
"profiling", "profiling",
"range-alloc", "range-alloc",
"raw-window-handle 0.6.2", "raw-window-handle 0.6.2",
"renderdoc-sys", "renderdoc-sys",
"rustc-hash",
"smallvec", "smallvec",
"thiserror 2.0.11", "thiserror 2.0.11",
"wasm-bindgen", "wasm-bindgen",
@ -4849,13 +4901,15 @@ dependencies = [
[[package]] [[package]]
name = "wgpu-types" name = "wgpu-types"
version = "24.0.0" version = "25.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "50ac044c0e76c03a0378e7786ac505d010a873665e2d51383dcff8dd227dc69c" checksum = "2aa49460c2a8ee8edba3fca54325540d904dd85b2e086ada762767e17d06e8bc"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"bytemuck",
"js-sys", "js-sys",
"log", "log",
"thiserror 2.0.11",
"web-sys", "web-sys",
] ]
@ -5186,7 +5240,7 @@ dependencies = [
"ahash", "ahash",
"android-activity", "android-activity",
"atomic-waker", "atomic-waker",
"bitflags 2.8.0", "bitflags 2.9.0",
"block2 0.5.1", "block2 0.5.1",
"bytemuck", "bytemuck",
"calloop", "calloop",
@ -5253,7 +5307,7 @@ version = "0.33.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3268f3d866458b787f390cf61f4bbb563b922d091359f9608842999eaee3943c" checksum = "3268f3d866458b787f390cf61f4bbb563b922d091359f9608842999eaee3943c"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
] ]
[[package]] [[package]]
@ -5322,7 +5376,7 @@ version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d039de8032a9a8856a6be89cea3e5d12fdd82306ab7c94d74e6deab2460651c5" checksum = "d039de8032a9a8856a6be89cea3e5d12fdd82306ab7c94d74e6deab2460651c5"
dependencies = [ dependencies = [
"bitflags 2.8.0", "bitflags 2.9.0",
"dlib", "dlib",
"log", "log",
"once_cell", "once_cell",

View File

@ -105,7 +105,7 @@ wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4" wasm-bindgen-futures = "0.4"
web-sys = "0.3.73" web-sys = "0.3.73"
web-time = "1.1.0" # Timekeeping for native and web web-time = "1.1.0" # Timekeeping for native and web
wgpu = { version = "24.0.0", default-features = false } wgpu = { version = "25.0.0", default-features = false }
windows-sys = "0.59" windows-sys = "0.59"
winit = { version = "0.30.7", default-features = false } winit = { version = "0.30.7", default-features = false }

View File

@ -42,8 +42,11 @@ use epaint::mutex::RwLock;
/// An error produced by egui-wgpu. /// An error produced by egui-wgpu.
#[derive(thiserror::Error, Debug)] #[derive(thiserror::Error, Debug)]
pub enum WgpuError { pub enum WgpuError {
#[error("Failed to create wgpu adapter, no suitable adapter found: {0}")] #[error(transparent)]
NoSuitableAdapterFound(String), RequestAdapterError(#[from] wgpu::RequestAdapterError),
#[error("Adapter selection failed: {0}")]
CustomNativeAdapterSelectionError(String),
#[error("There was no valid format for the surface at all.")] #[error("There was no valid format for the surface at all.")]
NoSurfaceFormatsAvailable, NoSurfaceFormatsAvailable,
@ -104,7 +107,7 @@ async fn request_adapter(
force_fallback_adapter: false, force_fallback_adapter: false,
}) })
.await .await
.ok_or_else(|| { .inspect_err(|_err| {
#[cfg(not(target_arch = "wasm32"))] #[cfg(not(target_arch = "wasm32"))]
if _available_adapters.is_empty() { if _available_adapters.is_empty() {
log::info!("No wgpu adapters found"); log::info!("No wgpu adapters found");
@ -120,8 +123,6 @@ async fn request_adapter(
describe_adapters(_available_adapters) describe_adapters(_available_adapters)
); );
} }
WgpuError::NoSuitableAdapterFound("`request_adapters` returned `None`".to_owned())
})?; })?;
#[cfg(target_arch = "wasm32")] #[cfg(target_arch = "wasm32")]
@ -184,7 +185,6 @@ impl RenderState {
power_preference, power_preference,
native_adapter_selector: _native_adapter_selector, native_adapter_selector: _native_adapter_selector,
device_descriptor, device_descriptor,
trace_path,
}) => { }) => {
let adapter = { let adapter = {
#[cfg(target_arch = "wasm32")] #[cfg(target_arch = "wasm32")]
@ -194,7 +194,7 @@ impl RenderState {
#[cfg(not(target_arch = "wasm32"))] #[cfg(not(target_arch = "wasm32"))]
if let Some(native_adapter_selector) = _native_adapter_selector { if let Some(native_adapter_selector) = _native_adapter_selector {
native_adapter_selector(&available_adapters, compatible_surface) native_adapter_selector(&available_adapters, compatible_surface)
.map_err(WgpuError::NoSuitableAdapterFound) .map_err(WgpuError::CustomNativeAdapterSelectionError)
} else { } else {
request_adapter( request_adapter(
instance, instance,
@ -209,7 +209,7 @@ impl RenderState {
let (device, queue) = { let (device, queue) = {
profiling::scope!("request_device"); profiling::scope!("request_device");
adapter adapter
.request_device(&(*device_descriptor)(&adapter), trace_path.as_deref()) .request_device(&(*device_descriptor)(&adapter))
.await? .await?
}; };

View File

@ -126,13 +126,6 @@ pub struct WgpuSetupCreateNew {
/// Configuration passed on device request, given an adapter /// Configuration passed on device request, given an adapter
pub device_descriptor: pub device_descriptor:
Arc<dyn Fn(&wgpu::Adapter) -> wgpu::DeviceDescriptor<'static> + Send + Sync>, Arc<dyn Fn(&wgpu::Adapter) -> wgpu::DeviceDescriptor<'static> + Send + Sync>,
/// Option path to output a wgpu trace file.
///
/// This only works if this feature is enabled in `wgpu-core`.
/// Does not work when running with WebGPU.
/// Defaults to the path set in the `WGPU_TRACE` environment variable.
pub trace_path: Option<std::path::PathBuf>,
} }
impl Clone for WgpuSetupCreateNew { impl Clone for WgpuSetupCreateNew {
@ -142,7 +135,6 @@ impl Clone for WgpuSetupCreateNew {
power_preference: self.power_preference, power_preference: self.power_preference,
native_adapter_selector: self.native_adapter_selector.clone(), native_adapter_selector: self.native_adapter_selector.clone(),
device_descriptor: self.device_descriptor.clone(), device_descriptor: self.device_descriptor.clone(),
trace_path: self.trace_path.clone(),
} }
} }
} }
@ -156,7 +148,6 @@ impl std::fmt::Debug for WgpuSetupCreateNew {
"native_adapter_selector", "native_adapter_selector",
&self.native_adapter_selector.is_some(), &self.native_adapter_selector.is_some(),
) )
.field("trace_path", &self.trace_path)
.finish() .finish()
} }
} }
@ -195,12 +186,9 @@ impl Default for WgpuSetupCreateNew {
..base_limits ..base_limits
}, },
memory_hints: wgpu::MemoryHints::default(), memory_hints: wgpu::MemoryHints::default(),
trace: wgpu::Trace::Off,
} }
}), }),
trace_path: std::env::var("WGPU_TRACE")
.ok()
.map(std::path::PathBuf::from),
} }
} }
} }

View File

@ -52,7 +52,12 @@ egui-wgpu = { workspace = true, optional = true }
pollster = { workspace = true, optional = true } pollster = { workspace = true, optional = true }
image = { workspace = true, optional = true } image = { workspace = true, optional = true }
# Enable DX12 because it always comes with a software rasterizer. # Enable DX12 because it always comes with a software rasterizer.
wgpu = { workspace = true, features = ["metal", "dx12"], optional = true } wgpu = { workspace = true, features = [
"metal",
"dx12",
"vulkan",
"gles",
], optional = true }
# snapshot dependencies # snapshot dependencies
dify = { workspace = true, optional = true } dify = { workspace = true, optional = true }

View File

@ -47,7 +47,9 @@ pub(crate) fn texture_to_image(device: &Device, queue: &Queue, texture: &Texture
buffer_slice.map_async(wgpu::MapMode::Read, move |v| drop(sender.send(v))); buffer_slice.map_async(wgpu::MapMode::Read, move |v| drop(sender.send(v)));
// Poll the device in a blocking manner so that our future resolves. // Poll the device in a blocking manner so that our future resolves.
device.poll(wgpu::Maintain::WaitForSubmissionIndex(submission_index)); device
.poll(wgpu::PollType::WaitForSubmissionIndex(submission_index))
.expect("Failed to poll device");
receiver.recv().unwrap().unwrap(); receiver.recv().unwrap().unwrap();
let buffer_slice = output_buffer.slice(..); let buffer_slice = output_buffer.slice(..);

View File

@ -28,7 +28,7 @@ pub fn default_wgpu_setup() -> egui_wgpu::WgpuSetup {
wgpu::Backend::Dx12 => 2, wgpu::Backend::Dx12 => 2,
wgpu::Backend::Gl => 4, wgpu::Backend::Gl => 4,
wgpu::Backend::BrowserWebGpu => 6, wgpu::Backend::BrowserWebGpu => 6,
wgpu::Backend::Empty => 7, wgpu::Backend::Noop => 7,
}); });
// Prefer CPU adapters, otherwise if we can't, prefer discrete GPU over integrated GPU. // Prefer CPU adapters, otherwise if we can't, prefer discrete GPU over integrated GPU.
@ -202,7 +202,10 @@ impl crate::TestRenderer for WgpuTestRenderer {
.queue .queue
.submit(user_buffers.into_iter().chain(once(encoder.finish()))); .submit(user_buffers.into_iter().chain(once(encoder.finish())));
self.render_state.device.poll(wgpu::Maintain::Wait); self.render_state
.device
.poll(wgpu::PollType::Wait)
.map_err(|e| format!("{e}"))?;
Ok(texture_to_image( Ok(texture_to_image(
&self.render_state.device, &self.render_state.device,