Skip to content

Commit fdb9aa2

Browse files
authored
Raise MSRV to 1.84 (#6848)
Prerequisite of #6744. See: gfx-rs/wgpu#7218, gfx-rs/wgpu#7425 Please be aware that Rust 1.84 enables some (more) WASM extensions by default, and ships with an `std` built with them enabled: https://blog.rust-lang.org/2024/09/24/webassembly-targets-change-in-default-target-features/ According to `rustc +1.84 --print=cfg --target wasm32-unknown-unknown`, these are: `multivalue`, `mutable-globals`, `reference-types`, and `sign-ext`. (c.f. `rustc +1.84 --print=cfg --target wasm32-unknown-unknown -C target-cpu=mvp` enabling none.) For reference: https://webassembly.org/features/ ---- If support is desired for ancient/esoteric browsers that don't have these implemented, there are two ways to get around this: - Target `wasm32v1-none` instead, but that's a `no-std` target, and I suppose a lot of dependencies don't work that way (e.g. gfx-rs/wgpu#6826) - Using the `-Ctarget-cpu=mvp` and `-Zbuild-std=panic_abort,std` flags, and the `RUSTC_BOOTSTRAP=1` escape hatch to allow using the latter with non-`nightly` toolchains - until https://github.com/rust-lang/wg-cargo-std-aware is stabilized. (For reference: https://github.com/ruffle-rs/ruffle/pull/18528/files#diff-fb2896d189d77b35ace9a079c1ba9b55777d16e0f11ce79f776475a451b1825a) I don't think either of these is particularly advantageous, so I suggest just accepting that browsers will have to have some extensions implemented to run `egui`.
1 parent 3dd8d34 commit fdb9aa2

File tree

33 files changed

+40
-40
lines changed

33 files changed

+40
-40
lines changed

.github/workflows/deploy_web_demo.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ jobs:
3939
with:
4040
profile: minimal
4141
target: wasm32-unknown-unknown
42-
toolchain: 1.81.0
42+
toolchain: 1.84.0
4343
override: true
4444

4545
- uses: Swatinem/rust-cache@v2

.github/workflows/preview_build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
- uses: actions/checkout@v4
2020
- uses: dtolnay/rust-toolchain@master
2121
with:
22-
toolchain: 1.81.0
22+
toolchain: 1.84.0
2323
targets: wasm32-unknown-unknown
2424
- uses: Swatinem/rust-cache@v2
2525
with:

.github/workflows/rust.yml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ name: Rust
55
env:
66
RUSTFLAGS: -D warnings
77
RUSTDOCFLAGS: -D warnings
8-
NIGHTLY_VERSION: nightly-2024-09-11
8+
NIGHTLY_VERSION: nightly-2025-04-22
99

1010
jobs:
1111
fmt-crank-check-test:
@@ -18,7 +18,7 @@ jobs:
1818

1919
- uses: dtolnay/rust-toolchain@master
2020
with:
21-
toolchain: 1.81.0
21+
toolchain: 1.84.0
2222

2323
- name: Install packages (Linux)
2424
if: runner.os == 'Linux'
@@ -83,7 +83,7 @@ jobs:
8383
- uses: actions/checkout@v4
8484
- uses: dtolnay/rust-toolchain@master
8585
with:
86-
toolchain: 1.81.0
86+
toolchain: 1.84.0
8787
targets: wasm32-unknown-unknown
8888

8989
- run: sudo apt-get update && sudo apt-get install libgtk-3-dev libatk1.0-dev
@@ -155,7 +155,7 @@ jobs:
155155
- uses: actions/checkout@v4
156156
- uses: EmbarkStudios/cargo-deny-action@v2
157157
with:
158-
rust-version: "1.81.0"
158+
rust-version: "1.84.0"
159159
log-level: error
160160
command: check
161161
arguments: --target ${{ matrix.target }}
@@ -170,7 +170,7 @@ jobs:
170170

171171
- uses: dtolnay/rust-toolchain@master
172172
with:
173-
toolchain: 1.81.0
173+
toolchain: 1.84.0
174174
targets: aarch64-linux-android
175175

176176
- name: Set up cargo cache
@@ -189,7 +189,7 @@ jobs:
189189

190190
- uses: dtolnay/rust-toolchain@master
191191
with:
192-
toolchain: 1.81.0
192+
toolchain: 1.84.0
193193
targets: aarch64-apple-ios
194194

195195
- name: Set up cargo cache
@@ -208,7 +208,7 @@ jobs:
208208
- uses: actions/checkout@v4
209209
- uses: dtolnay/rust-toolchain@master
210210
with:
211-
toolchain: 1.81.0
211+
toolchain: 1.84.0
212212

213213
- name: Set up cargo cache
214214
uses: Swatinem/rust-cache@v2
@@ -232,7 +232,7 @@ jobs:
232232
lfs: true
233233
- uses: dtolnay/rust-toolchain@master
234234
with:
235-
toolchain: 1.81.0
235+
toolchain: 1.84.0
236236

237237
- name: Set up cargo cache
238238
uses: Swatinem/rust-cache@v2

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ members = [
2323
[workspace.package]
2424
edition = "2021"
2525
license = "MIT OR Apache-2.0"
26-
rust-version = "1.81"
26+
rust-version = "1.84"
2727
version = "0.31.1"
2828

2929

clippy.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# -----------------------------------------------------------------------------
44
# Section identical to scripts/clippy_wasm/clippy.toml:
55

6-
msrv = "1.81"
6+
msrv = "1.84"
77

88
allow-unwrap-in-tests = true
99

crates/egui/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
//! Try the live web demo: <https://www.egui.rs/#demo>. Read more about egui at <https://github.com/emilk/egui>.
44
//!
55
//! `egui` is in heavy development, with each new version having breaking changes.
6-
//! You need to have rust 1.81.0 or later to use `egui`.
6+
//! You need to have rust 1.84.0 or later to use `egui`.
77
//!
88
//! To quickly get started with egui, you can take a look at [`eframe_template`](https://github.com/emilk/eframe_template)
99
//! which uses [`eframe`](https://docs.rs/eframe).

examples/confirm_exit/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
authors = ["Emil Ernerfeldt <[email protected]>"]
55
license = "MIT OR Apache-2.0"
66
edition = "2021"
7-
rust-version = "1.81"
7+
rust-version = "1.84"
88
publish = false
99

1010
[lints]

examples/custom_3d_glow/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
authors = ["Emil Ernerfeldt <[email protected]>"]
55
license = "MIT OR Apache-2.0"
66
edition = "2021"
7-
rust-version = "1.81"
7+
rust-version = "1.84"
88
publish = false
99

1010
[lints]

examples/custom_font/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
authors = ["Emil Ernerfeldt <[email protected]>"]
55
license = "MIT OR Apache-2.0"
66
edition = "2021"
7-
rust-version = "1.81"
7+
rust-version = "1.84"
88
publish = false
99

1010
[lints]

examples/custom_font_style/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
authors = ["tami5 <[email protected]>"]
55
license = "MIT OR Apache-2.0"
66
edition = "2021"
7-
rust-version = "1.81"
7+
rust-version = "1.84"
88
publish = false
99

1010
[lints]

examples/custom_keypad/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
authors = ["Varphone Wong <[email protected]>"]
55
license = "MIT OR Apache-2.0"
66
edition = "2021"
7-
rust-version = "1.81"
7+
rust-version = "1.84"
88
publish = false
99

1010
[lints]

examples/custom_style/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name = "custom_style"
33
version = "0.1.0"
44
license = "MIT OR Apache-2.0"
55
edition = "2021"
6-
rust-version = "1.81"
6+
rust-version = "1.84"
77
publish = false
88

99
[lints]

examples/custom_window_frame/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
authors = ["Emil Ernerfeldt <[email protected]>"]
55
license = "MIT OR Apache-2.0"
66
edition = "2021"
7-
rust-version = "1.81"
7+
rust-version = "1.84"
88
publish = false
99

1010
[lints]

examples/file_dialog/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
authors = ["Emil Ernerfeldt <[email protected]>"]
55
license = "MIT OR Apache-2.0"
66
edition = "2021"
7-
rust-version = "1.81"
7+
rust-version = "1.84"
88
publish = false
99

1010
[lints]

examples/hello_android/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
authors = ["Emil Ernerfeldt <[email protected]>"]
55
license = "MIT OR Apache-2.0"
66
edition = "2021"
7-
rust-version = "1.81"
7+
rust-version = "1.84"
88
publish = false
99

1010
# `unsafe_code` is required for `#[no_mangle]`, disable workspace lints to workaround lint error.

examples/hello_world/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
authors = ["Emil Ernerfeldt <[email protected]>"]
55
license = "MIT OR Apache-2.0"
66
edition = "2021"
7-
rust-version = "1.81"
7+
rust-version = "1.84"
88
publish = false
99

1010
[lints]

examples/hello_world_par/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
authors = ["Maxim Osipenko <[email protected]>"]
55
license = "MIT OR Apache-2.0"
66
edition = "2021"
7-
rust-version = "1.81"
7+
rust-version = "1.84"
88
publish = false
99

1010
[lints]

examples/hello_world_simple/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
authors = ["Emil Ernerfeldt <[email protected]>"]
55
license = "MIT OR Apache-2.0"
66
edition = "2021"
7-
rust-version = "1.81"
7+
rust-version = "1.84"
88
publish = false
99

1010
[lints]

examples/images/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
authors = ["Jan Procházka <github.com/jprochazk>"]
55
license = "MIT OR Apache-2.0"
66
edition = "2021"
7-
rust-version = "1.81"
7+
rust-version = "1.84"
88
publish = false
99

1010
[lints]

examples/keyboard_events/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
authors = ["Jose Palazon <[email protected]>"]
55
license = "MIT OR Apache-2.0"
66
edition = "2021"
7-
rust-version = "1.81"
7+
rust-version = "1.84"
88
publish = false
99

1010
[lints]

examples/multiple_viewports/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
authors = ["Emil Ernerfeldt <[email protected]>"]
55
license = "MIT OR Apache-2.0"
66
edition = "2021"
7-
rust-version = "1.81"
7+
rust-version = "1.84"
88
publish = false
99

1010
[lints]

examples/puffin_profiler/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
authors = ["Emil Ernerfeldt <[email protected]>"]
55
license = "MIT OR Apache-2.0"
66
edition = "2021"
7-
rust-version = "1.81"
7+
rust-version = "1.84"
88
publish = false
99

1010
[package.metadata.cargo-machete]

examples/screenshot/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ authors = [
77
]
88
license = "MIT OR Apache-2.0"
99
edition = "2021"
10-
rust-version = "1.81"
10+
rust-version = "1.84"
1111
publish = false
1212

1313
[lints]

examples/serial_windows/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
authors = ["Emil Ernerfeldt <[email protected]>"]
55
license = "MIT OR Apache-2.0"
66
edition = "2021"
7-
rust-version = "1.81"
7+
rust-version = "1.84"
88
publish = false
99

1010
[lints]

examples/user_attention/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
authors = ["TicClick <[email protected]>"]
55
license = "MIT OR Apache-2.0"
66
edition = "2021"
7-
rust-version = "1.81"
7+
rust-version = "1.84"
88
publish = false
99

1010
[lints]

rust-toolchain

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,6 @@
55
# to the user in the error, instead of "error: invalid channel name '[toolchain]'".
66

77
[toolchain]
8-
channel = "1.81.0"
8+
channel = "1.84.0"
99
components = ["rustfmt", "clippy"]
1010
targets = ["wasm32-unknown-unknown"]

scripts/check.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ set -x
99
# Checks all tests, lints etc.
1010
# Basically does what the CI does.
1111

12-
# cargo +1.81.0 install --quiet typos-cli
12+
# cargo +1.84.0 install --quiet typos-cli
1313

1414
export RUSTFLAGS="-D warnings"
1515
export RUSTDOCFLAGS="-D warnings" # https://github.com/emilk/egui/pull/1454

scripts/clippy_wasm/clippy.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
# -----------------------------------------------------------------------------
77
# Section identical to the root clippy.toml:
88

9-
msrv = "1.81"
9+
msrv = "1.84"
1010

1111
allow-unwrap-in-tests = true
1212

tests/test_egui_extras_compilation/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name = "test_egui_extras_compilation"
33
version = "0.1.0"
44
license = "MIT OR Apache-2.0"
55
edition = "2021"
6-
rust-version = "1.81"
6+
rust-version = "1.84"
77
publish = false
88

99
[lints]

tests/test_inline_glow_paint/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
authors = ["Emil Ernerfeldt <[email protected]>"]
55
license = "MIT OR Apache-2.0"
66
edition = "2021"
7-
rust-version = "1.81"
7+
rust-version = "1.84"
88
publish = false
99

1010
[lints]

tests/test_size_pass/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
authors = ["Emil Ernerfeldt <[email protected]>"]
55
license = "MIT OR Apache-2.0"
66
edition = "2021"
7-
rust-version = "1.81"
7+
rust-version = "1.84"
88
publish = false
99

1010
[lints]

tests/test_ui_stack/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
authors = ["Antoine Beyeler <[email protected]>"]
55
license = "MIT OR Apache-2.0"
66
edition = "2021"
7-
rust-version = "1.81"
7+
rust-version = "1.84"
88
publish = false
99

1010
[lints]

tests/test_viewports/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ version = "0.1.0"
44
authors = ["konkitoman"]
55
license = "MIT OR Apache-2.0"
66
edition = "2021"
7-
rust-version = "1.81"
7+
rust-version = "1.84"
88
publish = false
99

1010
[lints]

0 commit comments

Comments
 (0)