diff --git a/.github/workflows/deploy_web_demo.yml b/.github/workflows/deploy_web_demo.yml
index 6eb54696139..6c9d8096239 100644
--- a/.github/workflows/deploy_web_demo.yml
+++ b/.github/workflows/deploy_web_demo.yml
@@ -39,7 +39,7 @@ jobs:
with:
profile: minimal
target: wasm32-unknown-unknown
- toolchain: 1.80.0
+ toolchain: 1.81.0
override: true
- uses: Swatinem/rust-cache@v2
diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml
index b1f5a5a370b..f1514cf2f9a 100644
--- a/.github/workflows/rust.yml
+++ b/.github/workflows/rust.yml
@@ -18,7 +18,7 @@ jobs:
- uses: dtolnay/rust-toolchain@master
with:
- toolchain: 1.80.0
+ toolchain: 1.81.0
- name: Install packages (Linux)
if: runner.os == 'Linux'
@@ -83,7 +83,7 @@ jobs:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@master
with:
- toolchain: 1.80.0
+ toolchain: 1.81.0
targets: wasm32-unknown-unknown
- run: sudo apt-get update && sudo apt-get install libgtk-3-dev libatk1.0-dev
@@ -103,7 +103,7 @@ jobs:
- name: wasm-bindgen
uses: jetli/wasm-bindgen-action@v0.1.0
with:
- version: "0.2.95"
+ version: "0.2.97"
- run: ./scripts/wasm_bindgen_check.sh --skip-setup
@@ -155,7 +155,7 @@ jobs:
- uses: actions/checkout@v4
- uses: EmbarkStudios/cargo-deny-action@v1
with:
- rust-version: "1.80.0"
+ rust-version: "1.81.0"
log-level: error
command: check
arguments: --target ${{ matrix.target }}
@@ -170,7 +170,7 @@ jobs:
- uses: dtolnay/rust-toolchain@master
with:
- toolchain: 1.80.0
+ toolchain: 1.81.0
targets: aarch64-linux-android
- name: Set up cargo cache
@@ -189,7 +189,7 @@ jobs:
- uses: dtolnay/rust-toolchain@master
with:
- toolchain: 1.80.0
+ toolchain: 1.81.0
targets: aarch64-apple-ios
- name: Set up cargo cache
@@ -208,7 +208,7 @@ jobs:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@master
with:
- toolchain: 1.80.0
+ toolchain: 1.81.0
- name: Set up cargo cache
uses: Swatinem/rust-cache@v2
@@ -232,7 +232,7 @@ jobs:
lfs: true
- uses: dtolnay/rust-toolchain@master
with:
- toolchain: 1.80.0
+ toolchain: 1.81.0
- name: Set up cargo cache
uses: Swatinem/rust-cache@v2
diff --git a/Cargo.lock b/Cargo.lock
index 930cf332691..709b7b77a09 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -38,7 +38,7 @@ dependencies = [
"accesskit_consumer",
"atspi-common",
"serde",
- "thiserror",
+ "thiserror 1.0.66",
"zvariant 4.2.0",
]
@@ -163,7 +163,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ef6978589202a00cd7e118380c448a08b6ed394c3a8df3a430d0898e3a42d046"
dependencies = [
"android-properties",
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"cc",
"cesu8",
"jni",
@@ -174,7 +174,7 @@ dependencies = [
"ndk-context",
"ndk-sys 0.6.0+11769913",
"num_enum",
- "thiserror",
+ "thiserror 1.0.66",
]
[[package]]
@@ -591,9 +591,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
[[package]]
name = "bitflags"
-version = "2.6.0"
+version = "2.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de"
+checksum = "8f68f53c83ab957f72c32642f3868eec03eb974d1fb82e453128456482613d36"
dependencies = [
"serde",
]
@@ -643,9 +643,9 @@ checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
[[package]]
name = "bytemuck"
-version = "1.19.0"
+version = "1.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8334215b81e418a0a7bdb8ef0849474f40bb10c8b71f1c4ed315cff49f32494d"
+checksum = "ef657dfab802224e671f5818e9a4935f9b1957ed18e58292690cc39e7a4092a3"
dependencies = [
"bytemuck_derive",
]
@@ -685,12 +685,12 @@ version = "0.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b99da2f8558ca23c71f4fd15dc57c906239752dd27ff3c00a1d56b685b7cbfec"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"log",
"polling",
"rustix",
"slab",
- "thiserror",
+ "thiserror 1.0.66",
]
[[package]]
@@ -734,12 +734,6 @@ version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
-[[package]]
-name = "cfg_aliases"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e"
-
[[package]]
name = "cfg_aliases"
version = "0.2.1"
@@ -1225,7 +1219,7 @@ dependencies = [
"egui-wgpu",
"egui-winit",
"egui_glow",
- "glow 0.16.0",
+ "glow",
"glutin",
"glutin-winit",
"home",
@@ -1260,7 +1254,7 @@ dependencies = [
"accesskit",
"ahash",
"backtrace",
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"document-features",
"emath",
"epaint",
@@ -1282,7 +1276,7 @@ dependencies = [
"epaint",
"log",
"profiling",
- "thiserror",
+ "thiserror 1.0.66",
"type-map",
"web-time",
"wgpu",
@@ -1379,7 +1373,7 @@ dependencies = [
"document-features",
"egui",
"egui-winit",
- "glow 0.16.0",
+ "glow",
"glutin",
"glutin-winit",
"log",
@@ -1817,18 +1811,6 @@ dependencies = [
"xml-rs",
]
-[[package]]
-name = "glow"
-version = "0.14.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d51fa363f025f5c111e03f13eda21162faeacb6911fe8caa0c0349f9cf0c4483"
-dependencies = [
- "js-sys",
- "slotmap",
- "wasm-bindgen",
- "web-sys",
-]
-
[[package]]
name = "glow"
version = "0.16.0"
@@ -1847,8 +1829,8 @@ version = "0.32.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ec69412a0bf07ea7607e638b415447857a808846c2b685a43c8aa18bc6d5e499"
dependencies = [
- "bitflags 2.6.0",
- "cfg_aliases 0.2.1",
+ "bitflags 2.8.0",
+ "cfg_aliases",
"cgl",
"core-foundation",
"dispatch",
@@ -1872,7 +1854,7 @@ version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "85edca7075f8fc728f28cb8fbb111a96c3b89e930574369e3e9c27eb75d3788f"
dependencies = [
- "cfg_aliases 0.2.1",
+ "cfg_aliases",
"glutin",
"raw-window-handle 0.6.2",
"winit",
@@ -1913,7 +1895,7 @@ version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fbcd2dba93594b227a1f57ee09b8b9da8892c34d55aa332e034a228d0fe6a171"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"gpu-alloc-types",
]
@@ -1923,7 +1905,7 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "98ff03b468aa837d70984d55f5d3f846f6ec31fe34bbb97c4f85219caeee1ca4"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
]
[[package]]
@@ -1934,7 +1916,7 @@ checksum = "c151a2a5ef800297b4e79efa4f4bec035c5f51d5ae587287c9b952bdf734cacd"
dependencies = [
"log",
"presser",
- "thiserror",
+ "thiserror 1.0.66",
"windows",
]
@@ -1944,7 +1926,7 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9c08c1f623a8d0b722b8b99f821eb0ba672a1618f0d3b16ddbee1cedd2dd8557"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"gpu-descriptor-types",
"hashbrown",
]
@@ -1955,7 +1937,7 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fdf242682df893b86f33a73828fb09ca4b2d3bb6cc95249707fc684d27484b91"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
]
[[package]]
@@ -1978,6 +1960,12 @@ dependencies = [
"allocator-api2",
]
+[[package]]
+name = "heck"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
+
[[package]]
name = "hello_android"
version = "0.1.0"
@@ -2310,7 +2298,7 @@ dependencies = [
"combine",
"jni-sys",
"log",
- "thiserror",
+ "thiserror 1.0.66",
"walkdir",
"windows-sys 0.45.0",
]
@@ -2338,10 +2326,11 @@ checksum = "f5d4a7da358eff58addd2877a45865158f0d78c911d43a5784ceb7bbf52833b0"
[[package]]
name = "js-sys"
-version = "0.3.72"
+version = "0.3.74"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9"
+checksum = "a865e038f7f6ed956f788f0d7d60c541fff74c7bd74272c5d4cf15c63743e705"
dependencies = [
+ "once_cell",
"wasm-bindgen",
]
@@ -2418,7 +2407,7 @@ version = "0.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"libc",
"redox_syscall 0.5.7",
]
@@ -2504,11 +2493,11 @@ dependencies = [
[[package]]
name = "metal"
-version = "0.29.0"
+version = "0.31.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ecfd3296f8c56b7c1f6fbac3c71cefa9d78ce009850c45000015f206dc7fa21"
+checksum = "f569fb946490b5743ad69813cb19629130ce9374034abe31614a36402d18f99e"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"block",
"core-graphics-types",
"foreign-types",
@@ -2559,22 +2548,23 @@ dependencies = [
[[package]]
name = "naga"
-version = "23.0.0"
+version = "24.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d5941e45a15b53aad4375eedf02033adb7a28931eedc31117faffa52e6a857e"
+checksum = "e380993072e52eef724eddfcde0ed013b0c023c3f0417336ed041aa9f076994e"
dependencies = [
"arrayvec",
"bit-set 0.8.0",
- "bitflags 2.6.0",
- "cfg_aliases 0.1.1",
+ "bitflags 2.8.0",
+ "cfg_aliases",
"codespan-reporting",
"hexf-parse",
"indexmap",
"log",
"rustc-hash",
"spirv",
+ "strum",
"termcolor",
- "thiserror",
+ "thiserror 2.0.11",
"unicode-xid",
]
@@ -2584,13 +2574,13 @@ version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c3f42e7bbe13d351b6bead8286a43aac9534b82bd3cc43e47037f012ebfd62d4"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"jni-sys",
"log",
"ndk-sys 0.6.0+11769913",
"num_enum",
"raw-window-handle 0.6.2",
- "thiserror",
+ "thiserror 1.0.66",
]
[[package]]
@@ -2623,9 +2613,9 @@ version = "0.29.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"cfg-if",
- "cfg_aliases 0.2.1",
+ "cfg_aliases",
"libc",
"memoffset",
]
@@ -2703,7 +2693,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e4e89ad9e3d7d297152b17d39ed92cd50ca8063a89a9fa569046d41568891eff"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"block2",
"libc",
"objc2",
@@ -2719,7 +2709,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "74dd3b56391c7a0596a295029734d3c1c5e7e510a4cb30245f8221ccea96b009"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"block2",
"objc2",
"objc2-core-location",
@@ -2743,7 +2733,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "617fbf49e071c178c0b24c080767db52958f716d9eabdf0890523aeae54773ef"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"block2",
"objc2",
"objc2-foundation",
@@ -2785,7 +2775,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0ee638a5da3799329310ad4cfa62fbf045d5f56e3ef5ba4149e7452dcf89d5a8"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"block2",
"dispatch",
"libc",
@@ -2810,7 +2800,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dd0cba1276f6023976a406a14ffa85e1fdd19df6b0f737b063b95f6c8c7aadd6"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"block2",
"objc2",
"objc2-foundation",
@@ -2822,7 +2812,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e42bee7bff906b14b167da2bac5efe6b6a07e6f7c0a21a7308d40c960242dc7a"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"block2",
"objc2",
"objc2-foundation",
@@ -2845,7 +2835,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b8bb46798b20cd6b91cbd113524c490f1686f4c4e8f49502431415f3512e2b6f"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"block2",
"objc2",
"objc2-cloud-kit",
@@ -2877,7 +2867,7 @@ version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "76cfcbf642358e8689af64cee815d139339f3ed8ad05103ed5eaf73db8d84cb3"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"block2",
"objc2",
"objc2-core-location",
@@ -2920,6 +2910,15 @@ dependencies = [
"libredox",
]
+[[package]]
+name = "ordered-float"
+version = "4.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7bb71e1b3fa6ca1c61f383464aaf2bb0e2f8e772a1f01d486832464de363b951"
+dependencies = [
+ "num-traits",
+]
+
[[package]]
name = "ordered-stream"
version = "0.2.0"
@@ -3138,9 +3137,9 @@ dependencies = [
[[package]]
name = "proc-macro2"
-version = "1.0.89"
+version = "1.0.93"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e"
+checksum = "60946a68e5f9d28b0dc1c21bb8a97ee7d018a8b322fa57838ba31cc878e22d99"
dependencies = [
"unicode-ident",
]
@@ -3339,7 +3338,7 @@ version = "0.5.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9b6dfecf2c74bce2466cabf93f6664d6998a69eb21e39f4207930065b27b771f"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
]
[[package]]
@@ -3350,7 +3349,7 @@ checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43"
dependencies = [
"getrandom",
"libredox",
- "thiserror",
+ "thiserror 1.0.66",
]
[[package]]
@@ -3455,7 +3454,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b91f7eff05f748767f183df4320a63d6936e9c6107d97c9e6bdd9784f4289c94"
dependencies = [
"base64 0.21.7",
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"serde",
"serde_derive",
]
@@ -3484,7 +3483,7 @@ version = "0.38.38"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "aa260229e6538e52293eeb577aabd09945a09d6d9cc0fc550ed7529056c2e32a"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"errno",
"libc",
"linux-raw-sys",
@@ -3523,6 +3522,12 @@ dependencies = [
"untrusted",
]
+[[package]]
+name = "rustversion"
+version = "1.0.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4"
+
[[package]]
name = "ryu"
version = "1.0.18"
@@ -3701,7 +3706,7 @@ version = "0.19.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3457dea1f0eb631b4034d61d4d8c32074caa6cd1ab2d59f2327bd8461e2c0016"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"calloop",
"calloop-wayland-source",
"cursor-icon",
@@ -3709,7 +3714,7 @@ dependencies = [
"log",
"memmap2",
"rustix",
- "thiserror",
+ "thiserror 1.0.66",
"wayland-backend",
"wayland-client",
"wayland-csd-frame",
@@ -3752,7 +3757,7 @@ version = "0.3.0+sdk-1.3.268.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eda41003dc44290527a59b13432d4a0379379fa074b70174882adfbdfd917844"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
]
[[package]]
@@ -3776,6 +3781,28 @@ dependencies = [
"float-cmp",
]
+[[package]]
+name = "strum"
+version = "0.26.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06"
+dependencies = [
+ "strum_macros",
+]
+
+[[package]]
+name = "strum_macros"
+version = "0.26.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be"
+dependencies = [
+ "heck",
+ "proc-macro2",
+ "quote",
+ "rustversion",
+ "syn",
+]
+
[[package]]
name = "subtle"
version = "2.6.1"
@@ -3794,9 +3821,9 @@ dependencies = [
[[package]]
name = "syn"
-version = "2.0.86"
+version = "2.0.96"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e89275301d38033efb81a6e60e3497e734dfcc62571f2854bf4b16690398824c"
+checksum = "d5d0adab1ae378d7f53bdebc67a39f1f151407ef230f0ce2883572f5d8985c80"
dependencies = [
"proc-macro2",
"quote",
@@ -3831,7 +3858,7 @@ dependencies = [
"serde",
"serde_derive",
"serde_json",
- "thiserror",
+ "thiserror 1.0.66",
"walkdir",
"yaml-rust",
]
@@ -3905,7 +3932,16 @@ version = "1.0.66"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5d171f59dbaa811dbbb1aee1e73db92ec2b122911a48e1390dfe327a821ddede"
dependencies = [
- "thiserror-impl",
+ "thiserror-impl 1.0.66",
+]
+
+[[package]]
+name = "thiserror"
+version = "2.0.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d452f284b73e6d76dd36758a0c8684b1d5be31f92b89d07fd5822175732206fc"
+dependencies = [
+ "thiserror-impl 2.0.11",
]
[[package]]
@@ -3919,6 +3955,17 @@ dependencies = [
"syn",
]
+[[package]]
+name = "thiserror-impl"
+version = "2.0.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "26afc1baea8a989337eeb52b6e72a039780ce45c3edfcc9c5b9d112feeb173c2"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
[[package]]
name = "tiff"
version = "0.9.1"
@@ -4251,9 +4298,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
[[package]]
name = "wasm-bindgen"
-version = "0.2.95"
+version = "0.2.97"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e"
+checksum = "d15e63b4482863c109d70a7b8706c1e364eb6ea449b201a76c5b89cedcec2d5c"
dependencies = [
"cfg-if",
"once_cell",
@@ -4262,9 +4309,9 @@ dependencies = [
[[package]]
name = "wasm-bindgen-backend"
-version = "0.2.95"
+version = "0.2.97"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358"
+checksum = "8d36ef12e3aaca16ddd3f67922bc63e48e953f126de60bd33ccc0101ef9998cd"
dependencies = [
"bumpalo",
"log",
@@ -4289,9 +4336,9 @@ dependencies = [
[[package]]
name = "wasm-bindgen-macro"
-version = "0.2.95"
+version = "0.2.97"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56"
+checksum = "705440e08b42d3e4b36de7d66c944be628d579796b8090bfa3471478a2260051"
dependencies = [
"quote",
"wasm-bindgen-macro-support",
@@ -4299,9 +4346,9 @@ dependencies = [
[[package]]
name = "wasm-bindgen-macro-support"
-version = "0.2.95"
+version = "0.2.97"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68"
+checksum = "98c9ae5a76e46f4deecd0f0255cc223cfa18dc9b261213b8aa0c7b36f61b3f1d"
dependencies = [
"proc-macro2",
"quote",
@@ -4312,9 +4359,9 @@ dependencies = [
[[package]]
name = "wasm-bindgen-shared"
-version = "0.2.95"
+version = "0.2.97"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d"
+checksum = "6ee99da9c5ba11bd675621338ef6fa52296b76b83305e9b6e5c77d4c286d6d49"
[[package]]
name = "wayland-backend"
@@ -4336,7 +4383,7 @@ version = "0.31.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b66249d3fc69f76fd74c82cc319300faa554e9d865dab1f7cd66cc20db10b280"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"rustix",
"wayland-backend",
"wayland-scanner",
@@ -4348,7 +4395,7 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "625c5029dbd43d25e6aa9615e88b829a5cad13b2819c4ae129fdbb7c31ab4c7e"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"cursor-icon",
"wayland-backend",
]
@@ -4370,7 +4417,7 @@ version = "0.32.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7cd0ade57c4e6e9a8952741325c30bf82f4246885dca8bf561898b86d0c1f58e"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"wayland-backend",
"wayland-client",
"wayland-scanner",
@@ -4382,7 +4429,7 @@ version = "0.3.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9b31cab548ee68c7eb155517f2212049dc151f7cd7910c2b66abfd31c3ee12bd"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"wayland-backend",
"wayland-client",
"wayland-protocols",
@@ -4395,7 +4442,7 @@ version = "0.3.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "782e12f6cd923c3c316130d56205ebab53f55d6666b7faddfad36cecaeeb4022"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"wayland-backend",
"wayland-client",
"wayland-protocols",
@@ -4427,9 +4474,9 @@ dependencies = [
[[package]]
name = "web-sys"
-version = "0.3.72"
+version = "0.3.74"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6488b90108c040df0fe62fa815cbdee25124641df01814dd7282749234c6112"
+checksum = "a98bc3c33f0fe7e59ad7cd041b89034fa82a7c2d4365ca538dda6cdaf513863c"
dependencies = [
"js-sys",
"wasm-bindgen",
@@ -4479,12 +4526,13 @@ checksum = "53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082"
[[package]]
name = "wgpu"
-version = "23.0.1"
+version = "24.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "80f70000db37c469ea9d67defdc13024ddf9a5f1b89cb2941b812ad7cde1735a"
+checksum = "e41253fc7b660735e2a2d9a58c563f2a047d3cc3445293d8f4095538c9e8afbe"
dependencies = [
"arrayvec",
- "cfg_aliases 0.1.1",
+ "bitflags 2.8.0",
+ "cfg_aliases",
"document-features",
"js-sys",
"log",
@@ -4504,14 +4552,14 @@ dependencies = [
[[package]]
name = "wgpu-core"
-version = "23.0.1"
+version = "24.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d63c3c478de8e7e01786479919c8769f62a22eec16788d8c2ac77ce2c132778a"
+checksum = "82a39b8842dc9ffcbe34346e3ab6d496b32a47f6497e119d762c97fcaae3cb37"
dependencies = [
"arrayvec",
"bit-vec 0.8.0",
- "bitflags 2.6.0",
- "cfg_aliases 0.1.1",
+ "bitflags 2.8.0",
+ "cfg_aliases",
"document-features",
"indexmap",
"log",
@@ -4522,27 +4570,27 @@ dependencies = [
"raw-window-handle 0.6.2",
"rustc-hash",
"smallvec",
- "thiserror",
+ "thiserror 2.0.11",
"wgpu-hal",
"wgpu-types",
]
[[package]]
name = "wgpu-hal"
-version = "23.0.1"
+version = "24.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89364b8a0b211adc7b16aeaf1bd5ad4a919c1154b44c9ce27838213ba05fd821"
+checksum = "5a782e5056b060b0b4010881d1decddd059e44f2ecd01e2db2971b48ad3627e5"
dependencies = [
"android_system_properties",
"arrayvec",
"ash",
"bit-set 0.8.0",
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"block",
"bytemuck",
- "cfg_aliases 0.1.1",
+ "cfg_aliases",
"core-graphics-types",
- "glow 0.14.2",
+ "glow",
"glutin_wgl_sys",
"gpu-alloc",
"gpu-allocator",
@@ -4557,6 +4605,7 @@ dependencies = [
"ndk-sys 0.5.0+25.2.9519653",
"objc",
"once_cell",
+ "ordered-float",
"parking_lot",
"profiling",
"range-alloc",
@@ -4564,7 +4613,7 @@ dependencies = [
"renderdoc-sys",
"rustc-hash",
"smallvec",
- "thiserror",
+ "thiserror 2.0.11",
"wasm-bindgen",
"web-sys",
"wgpu-types",
@@ -4574,12 +4623,13 @@ dependencies = [
[[package]]
name = "wgpu-types"
-version = "23.0.0"
+version = "24.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "610f6ff27778148c31093f3b03abc4840f9636d58d597ca2f5977433acfe0068"
+checksum = "50ac044c0e76c03a0378e7786ac505d010a873665e2d51383dcff8dd227dc69c"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"js-sys",
+ "log",
"web-sys",
]
@@ -4605,7 +4655,7 @@ version = "0.1.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb"
dependencies = [
- "windows-sys 0.48.0",
+ "windows-sys 0.59.0",
]
[[package]]
@@ -4910,11 +4960,11 @@ dependencies = [
"ahash",
"android-activity",
"atomic-waker",
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"block2",
"bytemuck",
"calloop",
- "cfg_aliases 0.2.1",
+ "cfg_aliases",
"concurrent-queue",
"core-foundation",
"core-graphics",
@@ -5028,7 +5078,7 @@ version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d039de8032a9a8856a6be89cea3e5d12fdd82306ab7c94d74e6deab2460651c5"
dependencies = [
- "bitflags 2.6.0",
+ "bitflags 2.8.0",
"dlib",
"log",
"once_cell",
diff --git a/Cargo.toml b/Cargo.toml
index 71655115166..3ce59e66842 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -23,7 +23,7 @@ members = [
[workspace.package]
edition = "2021"
license = "MIT OR Apache-2.0"
-rust-version = "1.80"
+rust-version = "1.81"
version = "0.30.0"
@@ -100,7 +100,7 @@ wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"
web-sys = "0.3.70"
web-time = "1.1.0" # Timekeeping for native and web
-wgpu = { version = "23.0.0", default-features = false }
+wgpu = { version = "24.0.0", default-features = false }
windows-sys = "0.59"
winit = { version = "0.30.7", default-features = false }
diff --git a/clippy.toml b/clippy.toml
index 9e5fdd1e593..f349943a9d3 100644
--- a/clippy.toml
+++ b/clippy.toml
@@ -3,7 +3,7 @@
# -----------------------------------------------------------------------------
# Section identical to scripts/clippy_wasm/clippy.toml:
-msrv = "1.80"
+msrv = "1.81"
allow-unwrap-in-tests = true
diff --git a/crates/eframe/src/web/panic_handler.rs b/crates/eframe/src/web/panic_handler.rs
index b379f775d17..ce9ba844c7d 100644
--- a/crates/eframe/src/web/panic_handler.rs
+++ b/crates/eframe/src/web/panic_handler.rs
@@ -56,7 +56,7 @@ struct PanicHandlerInner {
/// Contains a summary about a panics.
///
-/// This is basically a human-readable version of [`std::panic::PanicInfo`]
+/// This is basically a human-readable version of [`std::panic::PanicHookInfo`]
/// with an added callstack.
#[derive(Clone, Debug)]
pub struct PanicSummary {
@@ -66,7 +66,7 @@ pub struct PanicSummary {
impl PanicSummary {
/// Construct a summary from a panic.
- pub fn new(info: &std::panic::PanicInfo<'_>) -> Self {
+ pub fn new(info: &std::panic::PanicHookInfo<'_>) -> Self {
let message = info.to_string();
let callstack = Error::new().stack();
Self { message, callstack }
diff --git a/crates/eframe/src/web/text_agent.rs b/crates/eframe/src/web/text_agent.rs
index f0eb67d60e8..db47df2ae2e 100644
--- a/crates/eframe/src/web/text_agent.rs
+++ b/crates/eframe/src/web/text_agent.rs
@@ -20,9 +20,10 @@ impl TextAgent {
// create an `` element
let input = document
.create_element("input")?
- .dyn_into::()?;
+ .dyn_into::()?;
+ input.set_autofocus(true)?;
+ let input = input.dyn_into::()?;
input.set_type("text");
- input.set_autofocus(true);
input.set_attribute("autocapitalize", "off")?;
// append it to `` and hide it outside of the viewport
diff --git a/crates/egui-wgpu/src/capture.rs b/crates/egui-wgpu/src/capture.rs
index 1ce780d054f..40cf5484f13 100644
--- a/crates/egui-wgpu/src/capture.rs
+++ b/crates/egui-wgpu/src/capture.rs
@@ -139,9 +139,9 @@ impl CaptureState {
encoder.copy_texture_to_buffer(
tex.as_image_copy(),
- wgpu::ImageCopyBuffer {
+ wgpu::TexelCopyBufferInfo {
buffer: &buffer,
- layout: wgpu::ImageDataLayout {
+ layout: wgpu::TexelCopyBufferLayout {
offset: 0,
bytes_per_row: Some(padding.padded_bytes_per_row),
rows_per_image: None,
diff --git a/crates/egui-wgpu/src/renderer.rs b/crates/egui-wgpu/src/renderer.rs
index 2c1fa0428f1..5a5c953bbab 100644
--- a/crates/egui-wgpu/src/renderer.rs
+++ b/crates/egui-wgpu/src/renderer.rs
@@ -579,14 +579,14 @@ impl Renderer {
let queue_write_data_to_texture = |texture, origin| {
profiling::scope!("write_texture");
queue.write_texture(
- wgpu::ImageCopyTexture {
+ wgpu::TexelCopyTextureInfo {
texture,
mip_level: 0,
origin,
aspect: wgpu::TextureAspect::All,
},
data_bytes,
- wgpu::ImageDataLayout {
+ wgpu::TexelCopyBufferLayout {
offset: 0,
bytes_per_row: Some(4 * width),
rows_per_image: Some(height),
diff --git a/crates/egui-wgpu/src/setup.rs b/crates/egui-wgpu/src/setup.rs
index 876b0c8e3b4..45e15ea22cc 100644
--- a/crates/egui-wgpu/src/setup.rs
+++ b/crates/egui-wgpu/src/setup.rs
@@ -68,16 +68,8 @@ impl WgpuSetup {
#[allow(clippy::arc_with_non_send_sync)]
Arc::new(
- wgpu::util::new_instance_with_webgpu_detection(wgpu::InstanceDescriptor {
- backends: create_new.instance_descriptor.backends,
- flags: create_new.instance_descriptor.flags,
- dx12_shader_compiler: create_new
- .instance_descriptor
- .dx12_shader_compiler
- .clone(),
- gles_minor_version: create_new.instance_descriptor.gles_minor_version,
- })
- .await,
+ wgpu::util::new_instance_with_webgpu_detection(&create_new.instance_descriptor)
+ .await,
)
}
Self::Existing(existing) => existing.instance.clone(),
@@ -151,13 +143,7 @@ pub struct WgpuSetupCreateNew {
impl Clone for WgpuSetupCreateNew {
fn clone(&self) -> Self {
Self {
- // TODO(gfx-rs/wgpu/#6849): use .clone()
- instance_descriptor: wgpu::InstanceDescriptor {
- backends: self.instance_descriptor.backends,
- flags: self.instance_descriptor.flags,
- dx12_shader_compiler: self.instance_descriptor.dx12_shader_compiler.clone(),
- gles_minor_version: self.instance_descriptor.gles_minor_version,
- },
+ instance_descriptor: self.instance_descriptor.clone(),
power_preference: self.power_preference,
native_adapter_selector: self.native_adapter_selector.clone(),
device_descriptor: self.device_descriptor.clone(),
@@ -186,14 +172,13 @@ impl Default for WgpuSetupCreateNew {
instance_descriptor: wgpu::InstanceDescriptor {
// Add GL backend, primarily because WebGPU is not stable enough yet.
// (note however, that the GL backend needs to be opted-in via the wgpu feature flag "webgl")
- backends: wgpu::util::backend_bits_from_env()
+ backends: wgpu::Backends::from_env()
.unwrap_or(wgpu::Backends::PRIMARY | wgpu::Backends::GL),
flags: wgpu::InstanceFlags::from_build_config().with_env(),
- dx12_shader_compiler: wgpu::Dx12Compiler::default(),
- gles_minor_version: wgpu::Gles3MinorVersion::Automatic,
+ backend_options: wgpu::BackendOptions::from_env_or_default(),
},
- power_preference: wgpu::util::power_preference_from_env()
+ power_preference: wgpu::PowerPreference::from_env()
.unwrap_or(wgpu::PowerPreference::HighPerformance),
native_adapter_selector: None,
diff --git a/crates/egui/src/lib.rs b/crates/egui/src/lib.rs
index 85e12cb8a39..8d085842564 100644
--- a/crates/egui/src/lib.rs
+++ b/crates/egui/src/lib.rs
@@ -3,7 +3,7 @@
//! Try the live web demo: . Read more about egui at .
//!
//! `egui` is in heavy development, with each new version having breaking changes.
-//! You need to have rust 1.80.0 or later to use `egui`.
+//! You need to have rust 1.81.0 or later to use `egui`.
//!
//! To quickly get started with egui, you can take a look at [`eframe_template`](https://github.com/emilk/eframe_template)
//! which uses [`eframe`](https://docs.rs/eframe).
diff --git a/crates/egui_demo_app/Cargo.toml b/crates/egui_demo_app/Cargo.toml
index 3115c845e3d..6ed74efab29 100644
--- a/crates/egui_demo_app/Cargo.toml
+++ b/crates/egui_demo_app/Cargo.toml
@@ -90,7 +90,7 @@ rfd = { version = "0.15", optional = true }
# web:
[target.'cfg(target_arch = "wasm32")'.dependencies]
-wasm-bindgen = "=0.2.95"
+wasm-bindgen = "=0.2.97"
wasm-bindgen-futures.workspace = true
web-sys.workspace = true
diff --git a/crates/egui_kittest/src/texture_to_image.rs b/crates/egui_kittest/src/texture_to_image.rs
index 98803ac8a37..8f7cb72a5ed 100644
--- a/crates/egui_kittest/src/texture_to_image.rs
+++ b/crates/egui_kittest/src/texture_to_image.rs
@@ -23,9 +23,9 @@ pub(crate) fn texture_to_image(device: &Device, queue: &Queue, texture: &Texture
// Copy the data from the texture to the buffer
encoder.copy_texture_to_buffer(
texture.as_image_copy(),
- wgpu::ImageCopyBuffer {
+ wgpu::TexelCopyBufferInfo {
buffer: &output_buffer,
- layout: wgpu::ImageDataLayout {
+ layout: wgpu::TexelCopyBufferLayout {
offset: 0,
bytes_per_row: Some(buffer_dimensions.padded_bytes_per_row as u32),
rows_per_image: None,
diff --git a/deny.toml b/deny.toml
index ede37dea405..4db5246a7e1 100644
--- a/deny.toml
+++ b/deny.toml
@@ -48,14 +48,14 @@ skip = [
{ name = "bit-set" }, # wgpu's naga depends on 0.8, syntect's (used by egui_extras) fancy-regex depends on 0.5
{ name = "bit-vec" }, # dependency of bit-set in turn, different between 0.6 and 0.5
{ name = "bitflags" }, # old 1.0 version via glutin, png, spirv, …
- { name = "cfg_aliases" }, # old version via wgpu
{ name = "event-listener" }, # TODO(emilk): rustls pulls in two versions of this 😭
{ name = "futures-lite" }, # old version via accesskit_unix and zbus
- { name = "glow" }, # old version via wgpu
{ name = "memoffset" }, # tiny dependency
{ name = "ndk-sys" }, # old version via wgpu, winit uses newer version
{ name = "quick-xml" }, # old version via wayland-scanner
{ name = "redox_syscall" }, # old version via winit
+ { name = "thiserror" }, # ecosystem is in the process of migrating from 1.x to 2.x
+ { name = "thiserror-impl" }, # same as above
{ name = "time" }, # old version pulled in by unmaintianed crate 'chrono'
{ name = "windows-core" }, # Chrono pulls in 0.51, accesskit uses 0.58.0
{ name = "windows-sys" }, # glutin pulls in 0.52.0, accesskit pulls in 0.59.0, rfd pulls 0.48, webbrowser pulls 0.45.0 (via jni)
diff --git a/examples/confirm_exit/Cargo.toml b/examples/confirm_exit/Cargo.toml
index 62e8bc29c14..c3050c32de9 100644
--- a/examples/confirm_exit/Cargo.toml
+++ b/examples/confirm_exit/Cargo.toml
@@ -4,7 +4,7 @@ version = "0.1.0"
authors = ["Emil Ernerfeldt "]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]
diff --git a/examples/custom_3d_glow/Cargo.toml b/examples/custom_3d_glow/Cargo.toml
index 1ddec02f5f8..3ed54df786f 100644
--- a/examples/custom_3d_glow/Cargo.toml
+++ b/examples/custom_3d_glow/Cargo.toml
@@ -4,7 +4,7 @@ version = "0.1.0"
authors = ["Emil Ernerfeldt "]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]
diff --git a/examples/custom_font/Cargo.toml b/examples/custom_font/Cargo.toml
index 5214bdc1f5f..afaeb411735 100644
--- a/examples/custom_font/Cargo.toml
+++ b/examples/custom_font/Cargo.toml
@@ -4,7 +4,7 @@ version = "0.1.0"
authors = ["Emil Ernerfeldt "]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]
diff --git a/examples/custom_font_style/Cargo.toml b/examples/custom_font_style/Cargo.toml
index 241b893401d..f64a4880309 100644
--- a/examples/custom_font_style/Cargo.toml
+++ b/examples/custom_font_style/Cargo.toml
@@ -4,7 +4,7 @@ version = "0.1.0"
authors = ["tami5 "]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]
diff --git a/examples/custom_keypad/Cargo.toml b/examples/custom_keypad/Cargo.toml
index 73c6b0e7aa8..7e765e4ecb3 100644
--- a/examples/custom_keypad/Cargo.toml
+++ b/examples/custom_keypad/Cargo.toml
@@ -4,7 +4,7 @@ version = "0.1.0"
authors = ["Varphone Wong "]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]
diff --git a/examples/custom_style/Cargo.toml b/examples/custom_style/Cargo.toml
index f87ce0bf82a..423179aaa73 100644
--- a/examples/custom_style/Cargo.toml
+++ b/examples/custom_style/Cargo.toml
@@ -3,7 +3,7 @@ name = "custom_style"
version = "0.1.0"
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]
diff --git a/examples/custom_window_frame/Cargo.toml b/examples/custom_window_frame/Cargo.toml
index 4a53ee48745..b0e89c8a622 100644
--- a/examples/custom_window_frame/Cargo.toml
+++ b/examples/custom_window_frame/Cargo.toml
@@ -4,7 +4,7 @@ version = "0.1.0"
authors = ["Emil Ernerfeldt "]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]
diff --git a/examples/file_dialog/Cargo.toml b/examples/file_dialog/Cargo.toml
index 1a9f86c40c0..cf61cd45ffa 100644
--- a/examples/file_dialog/Cargo.toml
+++ b/examples/file_dialog/Cargo.toml
@@ -4,7 +4,7 @@ version = "0.1.0"
authors = ["Emil Ernerfeldt "]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]
diff --git a/examples/hello_android/Cargo.toml b/examples/hello_android/Cargo.toml
index a7d27277359..b3bf4407efe 100644
--- a/examples/hello_android/Cargo.toml
+++ b/examples/hello_android/Cargo.toml
@@ -4,7 +4,7 @@ version = "0.1.0"
authors = ["Emil Ernerfeldt "]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
# `unsafe_code` is required for `#[no_mangle]`, disable workspace lints to workaround lint error.
diff --git a/examples/hello_world/Cargo.toml b/examples/hello_world/Cargo.toml
index 8816b425598..1e4b553db85 100644
--- a/examples/hello_world/Cargo.toml
+++ b/examples/hello_world/Cargo.toml
@@ -4,7 +4,7 @@ version = "0.1.0"
authors = ["Emil Ernerfeldt "]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]
diff --git a/examples/hello_world_par/Cargo.toml b/examples/hello_world_par/Cargo.toml
index b3e00b20897..541b220f7d3 100644
--- a/examples/hello_world_par/Cargo.toml
+++ b/examples/hello_world_par/Cargo.toml
@@ -4,7 +4,7 @@ version = "0.1.0"
authors = ["Maxim Osipenko "]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]
diff --git a/examples/hello_world_simple/Cargo.toml b/examples/hello_world_simple/Cargo.toml
index 7197c60337b..db1d7906de5 100644
--- a/examples/hello_world_simple/Cargo.toml
+++ b/examples/hello_world_simple/Cargo.toml
@@ -4,7 +4,7 @@ version = "0.1.0"
authors = ["Emil Ernerfeldt "]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]
diff --git a/examples/images/Cargo.toml b/examples/images/Cargo.toml
index f1b4f97ddf2..c013e7b4357 100644
--- a/examples/images/Cargo.toml
+++ b/examples/images/Cargo.toml
@@ -4,7 +4,7 @@ version = "0.1.0"
authors = ["Jan Procházka "]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]
diff --git a/examples/keyboard_events/Cargo.toml b/examples/keyboard_events/Cargo.toml
index 1af09849319..d57f17193fc 100644
--- a/examples/keyboard_events/Cargo.toml
+++ b/examples/keyboard_events/Cargo.toml
@@ -4,7 +4,7 @@ version = "0.1.0"
authors = ["Jose Palazon "]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]
diff --git a/examples/multiple_viewports/Cargo.toml b/examples/multiple_viewports/Cargo.toml
index 1644d6a72a5..d5efc23df98 100644
--- a/examples/multiple_viewports/Cargo.toml
+++ b/examples/multiple_viewports/Cargo.toml
@@ -4,7 +4,7 @@ version = "0.1.0"
authors = ["Emil Ernerfeldt "]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]
diff --git a/examples/puffin_profiler/Cargo.toml b/examples/puffin_profiler/Cargo.toml
index d0e9e485a8d..d26d8a6cb5f 100644
--- a/examples/puffin_profiler/Cargo.toml
+++ b/examples/puffin_profiler/Cargo.toml
@@ -4,7 +4,7 @@ version = "0.1.0"
authors = ["Emil Ernerfeldt "]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[package.metadata.cargo-machete]
diff --git a/examples/screenshot/Cargo.toml b/examples/screenshot/Cargo.toml
index 5963ea3ad71..b5a22ce7b11 100644
--- a/examples/screenshot/Cargo.toml
+++ b/examples/screenshot/Cargo.toml
@@ -7,7 +7,7 @@ authors = [
]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]
diff --git a/examples/serial_windows/Cargo.toml b/examples/serial_windows/Cargo.toml
index 1f6d5ea431e..c18a6029d59 100644
--- a/examples/serial_windows/Cargo.toml
+++ b/examples/serial_windows/Cargo.toml
@@ -4,7 +4,7 @@ version = "0.1.0"
authors = ["Emil Ernerfeldt "]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]
diff --git a/examples/user_attention/Cargo.toml b/examples/user_attention/Cargo.toml
index 25aa473486c..3ae28d69371 100644
--- a/examples/user_attention/Cargo.toml
+++ b/examples/user_attention/Cargo.toml
@@ -4,7 +4,7 @@ version = "0.1.0"
authors = ["TicClick "]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]
diff --git a/rust-toolchain b/rust-toolchain
index 38e5e90f3ac..0eefd31bc5a 100644
--- a/rust-toolchain
+++ b/rust-toolchain
@@ -5,6 +5,6 @@
# to the user in the error, instead of "error: invalid channel name '[toolchain]'".
[toolchain]
-channel = "1.80.0"
+channel = "1.81.0"
components = ["rustfmt", "clippy"]
targets = ["wasm32-unknown-unknown"]
diff --git a/scripts/check.sh b/scripts/check.sh
index 8c0f0af9750..0d835617bf7 100755
--- a/scripts/check.sh
+++ b/scripts/check.sh
@@ -9,7 +9,7 @@ set -x
# Checks all tests, lints etc.
# Basically does what the CI does.
-cargo +1.80.0 install --quiet typos-cli
+cargo +1.81.0 install --quiet typos-cli
export RUSTFLAGS="-D warnings"
export RUSTDOCFLAGS="-D warnings" # https://github.com/emilk/egui/pull/1454
diff --git a/scripts/clippy_wasm/clippy.toml b/scripts/clippy_wasm/clippy.toml
index f06033c71b9..2d34d64fce7 100644
--- a/scripts/clippy_wasm/clippy.toml
+++ b/scripts/clippy_wasm/clippy.toml
@@ -6,7 +6,7 @@
# -----------------------------------------------------------------------------
# Section identical to the root clippy.toml:
-msrv = "1.80"
+msrv = "1.81"
allow-unwrap-in-tests = true
diff --git a/scripts/setup_web.sh b/scripts/setup_web.sh
index d4166a3af2d..a49f8205937 100755
--- a/scripts/setup_web.sh
+++ b/scripts/setup_web.sh
@@ -9,6 +9,6 @@ set -x
rustup target add wasm32-unknown-unknown
# For generating JS bindings:
-if ! cargo install --list | grep -q 'wasm-bindgen-cli v0.2.95'; then
- cargo install --force --quiet wasm-bindgen-cli --version 0.2.95
+if ! cargo install --list | grep -q 'wasm-bindgen-cli v0.2.97'; then
+ cargo install --force --quiet wasm-bindgen-cli --version 0.2.97
fi
diff --git a/tests/test_egui_extras_compilation/Cargo.toml b/tests/test_egui_extras_compilation/Cargo.toml
index f1d67f4bb8b..9f1aeca52c9 100644
--- a/tests/test_egui_extras_compilation/Cargo.toml
+++ b/tests/test_egui_extras_compilation/Cargo.toml
@@ -3,7 +3,7 @@ name = "test_egui_extras_compilation"
version = "0.1.0"
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]
diff --git a/tests/test_inline_glow_paint/Cargo.toml b/tests/test_inline_glow_paint/Cargo.toml
index bcda5b3ddea..15cb21640a4 100644
--- a/tests/test_inline_glow_paint/Cargo.toml
+++ b/tests/test_inline_glow_paint/Cargo.toml
@@ -4,7 +4,7 @@ version = "0.1.0"
authors = ["Emil Ernerfeldt "]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]
diff --git a/tests/test_size_pass/Cargo.toml b/tests/test_size_pass/Cargo.toml
index e3819a107e9..a44f2cc0b67 100644
--- a/tests/test_size_pass/Cargo.toml
+++ b/tests/test_size_pass/Cargo.toml
@@ -4,7 +4,7 @@ version = "0.1.0"
authors = ["Emil Ernerfeldt "]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]
diff --git a/tests/test_ui_stack/Cargo.toml b/tests/test_ui_stack/Cargo.toml
index 12ba9961be7..dd8bdb5de38 100644
--- a/tests/test_ui_stack/Cargo.toml
+++ b/tests/test_ui_stack/Cargo.toml
@@ -4,7 +4,7 @@ version = "0.1.0"
authors = ["Antoine Beyeler "]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]
diff --git a/tests/test_viewports/Cargo.toml b/tests/test_viewports/Cargo.toml
index cb877a7107a..2636b51774e 100644
--- a/tests/test_viewports/Cargo.toml
+++ b/tests/test_viewports/Cargo.toml
@@ -4,7 +4,7 @@ version = "0.1.0"
authors = ["konkitoman"]
license = "MIT OR Apache-2.0"
edition = "2021"
-rust-version = "1.80"
+rust-version = "1.81"
publish = false
[lints]