[INFO] fetching crate rezcraft 0.2.0... [INFO] checking rezcraft-0.2.0 against try#ccf408f4326a858c00dd845a64a86b16f360a801 for pr-129466-2 [INFO] extracting crate rezcraft 0.2.0 into /workspace/builds/worker-2-tc2/source [INFO] validating manifest of crates.io crate rezcraft 0.2.0 on toolchain ccf408f4326a858c00dd845a64a86b16f360a801 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate rezcraft 0.2.0 [INFO] finished tweaking crates.io crate rezcraft 0.2.0 [INFO] tweaked toml for crates.io crate rezcraft 0.2.0 written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] crate crates.io crate rezcraft 0.2.0 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5c8393f2ae7b6c455f80c02691ebbf47084b72adaf93ba8cbe89f9b4111abcf7 [INFO] running `Command { std: "docker" "start" "-a" "5c8393f2ae7b6c455f80c02691ebbf47084b72adaf93ba8cbe89f9b4111abcf7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5c8393f2ae7b6c455f80c02691ebbf47084b72adaf93ba8cbe89f9b4111abcf7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5c8393f2ae7b6c455f80c02691ebbf47084b72adaf93ba8cbe89f9b4111abcf7", kill_on_drop: false }` [INFO] [stdout] 5c8393f2ae7b6c455f80c02691ebbf47084b72adaf93ba8cbe89f9b4111abcf7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 16d533e530fc09b32863e9013218bce4836ec021df84882ecc2039b8cbdeeb3d [INFO] running `Command { std: "docker" "start" "-a" "16d533e530fc09b32863e9013218bce4836ec021df84882ecc2039b8cbdeeb3d", kill_on_drop: false }` [INFO] [stderr] Copying to /tmp/fixit [INFO] [stderr] Running `cargo fix --edition` [INFO] [stderr] Migrating Cargo.toml from 2021 edition to 2024 [INFO] [stderr] Fixed Cargo.toml (1 fix) [INFO] [stderr] Compiling proc-macro2 v1.0.78 [INFO] [stderr] Compiling libc v0.2.152 [INFO] [stderr] Compiling version_check v0.9.4 [INFO] [stderr] Checking smallvec v1.13.1 [INFO] [stderr] Compiling pkg-config v0.3.29 [INFO] [stderr] Compiling num-traits v0.2.17 [INFO] [stderr] Checking libloading v0.8.1 [INFO] [stderr] Compiling xml-rs v0.8.19 [INFO] [stderr] Compiling memoffset v0.6.5 [INFO] [stderr] Checking bitflags v2.4.2 [INFO] [stderr] Compiling thiserror v1.0.56 [INFO] [stderr] Compiling ahash v0.8.7 [INFO] [stderr] Checking log v0.4.20 [INFO] [stderr] Checking zerocopy v0.7.32 [INFO] [stderr] Compiling autocfg v0.1.8 [INFO] [stderr] Checking rand_core v0.4.2 [INFO] [stderr] Compiling wayland-sys v0.29.5 [INFO] [stderr] Compiling lock_api v0.4.11 [INFO] [stderr] Compiling serde v1.0.195 [INFO] [stderr] Compiling quote v1.0.35 [INFO] [stderr] Compiling parking_lot_core v0.9.9 [INFO] [stderr] Compiling syn v2.0.48 [INFO] [stderr] Compiling wayland-scanner v0.29.5 [INFO] [stderr] Checking dlib v0.5.2 [INFO] [stderr] Checking allocator-api2 v0.2.16 [INFO] [stderr] Checking arrayvec v0.7.4 [INFO] [stderr] Checking ttf-parser v0.20.0 [INFO] [stderr] Checking miniz_oxide v0.7.1 [INFO] [stderr] Checking rand_core v0.3.1 [INFO] [stderr] Compiling slotmap v1.0.7 [INFO] [stderr] Checking downcast-rs v1.2.0 [INFO] [stderr] Checking hashbrown v0.14.3 [INFO] [stderr] Compiling getrandom v0.1.16 [INFO] [stderr] Checking fdeflate v0.3.4 [INFO] [stderr] Compiling crossbeam-utils v0.8.19 [INFO] [stderr] Checking flate2 v1.0.28 [INFO] [stderr] Checking nix v0.24.3 [INFO] [stderr] Checking unicode-width v0.1.11 [INFO] [stderr] Checking parking_lot v0.12.1 [INFO] [stderr] Checking raw-window-handle v0.5.2 [INFO] [stderr] Compiling khronos-egl v4.1.0 [INFO] [stderr] Checking png v0.17.11 [INFO] [stderr] Checking codespan-reporting v0.11.1 [INFO] [stderr] Checking nix v0.25.1 [INFO] [stderr] Compiling wayland-client v0.29.5 [INFO] [stderr] Compiling wayland-protocols v0.29.5 [INFO] [stderr] Checking spirv v0.2.0+1.5.4 [INFO] [stderr] Compiling smithay-client-toolkit v0.16.1 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Checking owned_ttf_parser v0.20.0 [INFO] [stderr] Checking gpu-alloc-types v0.3.0 [INFO] [stderr] Checking ab_glyph v0.2.23 [INFO] [stderr] Checking wayland-commons v0.29.5 [INFO] [stderr] Checking gpu-descriptor-types v0.1.2 [INFO] [stderr] Checking ppv-lite86 v0.2.17 [INFO] [stderr] Checking strict-num v0.1.1 [INFO] [stderr] Checking arrayref v0.3.7 [INFO] [stderr] Checking xcursor v0.3.5 [INFO] [stderr] Checking vec_map v0.8.2 [INFO] [stderr] Checking unicode-xid v0.2.4 [INFO] [stderr] Checking gpu-descriptor v0.2.4 [INFO] [stderr] Checking gpu-alloc v0.6.0 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking memmap2 v0.5.10 [INFO] [stderr] Compiling x11-dl v2.21.0 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Checking wgpu-types v0.17.0 [INFO] [stderr] Checking renderdoc-sys v1.0.0 [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Checking glow v0.12.3 [INFO] [stderr] Checking memchr v2.7.1 [INFO] [stderr] Compiling rustix v0.38.30 [INFO] [stderr] Checking profiling v1.0.13 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling winit v0.28.7 [INFO] [stderr] Compiling bytemuck_derive v1.5.0 [INFO] [stderr] Compiling thiserror-impl v1.0.56 [INFO] [stderr] Compiling serde_derive v1.0.195 [INFO] [stderr] Checking wayland-cursor v0.29.5 [INFO] [stderr] Checking aho-corasick v1.1.2 [INFO] [stderr] Checking rand_os v0.1.3 [INFO] [stderr] Checking getrandom v0.2.12 [INFO] [stderr] Checking rand_xorshift v0.1.1 [INFO] [stderr] Checking rand_hc v0.1.0 [INFO] [stderr] Checking rand_isaac v0.1.1 [INFO] [stderr] Checking rand_jitter v0.1.4 [INFO] [stderr] Compiling cgmath v0.17.0 [INFO] [stderr] Checking linux-raw-sys v0.4.13 [INFO] [stderr] Checking bytemuck v1.14.0 [INFO] [stderr] Compiling rustversion v1.0.14 [INFO] [stderr] Checking regex-syntax v0.8.2 [INFO] [stderr] Checking ecolor v0.22.0 [INFO] [stderr] Checking emath v0.22.0 [INFO] [stderr] Checking tiny-skia-path v0.8.4 [INFO] [stderr] Checking epaint v0.22.0 [INFO] [stderr] Checking calloop v0.10.6 [INFO] [stderr] Checking naga v0.13.0 [INFO] [stderr] Checking tiny-skia v0.8.4 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking regex-automata v0.4.4 [INFO] [stderr] Checking egui v0.22.0 [INFO] [stderr] Checking crossbeam-deque v0.8.5 [INFO] [stderr] Checking rand_chacha v0.2.2 [INFO] [stderr] Checking ndshape v0.3.0 [INFO] [stderr] Checking dirs-sys v0.3.7 [INFO] [stderr] Checking rand v0.4.6 [INFO] [stderr] Checking mio v0.8.10 [INFO] [stderr] Checking approx v0.3.2 [INFO] [stderr] Checking instant v0.1.12 [INFO] [stderr] Checking ciborium-io v0.2.1 [INFO] [stderr] Checking half v1.8.2 [INFO] [stderr] Checking glam v0.19.0 [INFO] [stderr] Compiling cgmath v0.18.0 [INFO] [stderr] Checking indexmap v2.1.0 [INFO] [stderr] Checking regex v1.10.3 [INFO] [stderr] Checking ciborium-ll v0.2.1 [INFO] [stderr] Checking rand v0.3.23 [INFO] [stderr] Checking ndcopy v0.3.0 [INFO] [stderr] Checking directories v4.0.1 [INFO] [stderr] Checking rand v0.7.3 [INFO] [stderr] Checking smallvec v0.6.14 [INFO] [stderr] Checking rayon-core v1.12.1 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking is-terminal v0.4.10 [INFO] [stderr] Checking rand_xorshift v0.2.0 [INFO] [stderr] Checking approx v0.4.0 [INFO] [stderr] Compiling include_dir_macros v0.7.3 [INFO] [stderr] Checking color_quant v1.1.0 [INFO] [stderr] Checking wgpu-hal v0.17.2 [INFO] [stderr] Checking unsafe-libyaml v0.2.10 [INFO] [stderr] Checking ilattice v0.1.0 [INFO] [stderr] Checking futures-core v0.3.30 [INFO] [stderr] Compiling rezcraft v0.2.0 (/tmp/fixit) [INFO] [stderr] Migrating build.rs from 2021 edition to 2024 [INFO] [stderr] Checking itoa v1.0.10 [INFO] [stderr] Checking ryu v1.0.16 [INFO] [stderr] Checking block-mesh v0.2.0 [INFO] [stderr] Compiling strum_macros v0.25.3 [INFO] [stderr] Checking collision v0.20.1 [INFO] [stderr] Checking futures-channel v0.3.30 [INFO] [stderr] Checking image v0.24.8 [INFO] [stderr] Checking env_logger v0.10.2 [INFO] [stderr] Checking include_dir v0.7.3 [INFO] [stderr] Checking toml v0.5.11 [INFO] [stderr] Checking either v1.9.0 [INFO] [stderr] Checking ciborium v0.2.1 [INFO] [stderr] Checking rayon v1.8.1 [INFO] [stderr] Checking serde_yaml v0.9.30 [INFO] [stderr] Checking rle_vec v0.4.1 [INFO] [stderr] Checking noise v0.8.2 [INFO] [stderr] Checking confy v0.5.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking wgpu-core v0.17.1 [INFO] [stderr] Checking rng v0.1.0 [INFO] [stderr] Checking ref_thread_local v0.1.1 [INFO] [stderr] Checking pollster v0.3.0 [INFO] [stderr] Checking strum v0.25.0 [INFO] [stderr] Checking sctk-adwaita v0.5.4 [INFO] [stderr] Checking wgpu v0.17.2 [INFO] [stderr] Checking egui_winit_platform v0.19.0 [INFO] [stderr] Checking egui_wgpu_backend v0.25.0 [INFO] [stderr] Migrating src/lib.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `rezcraft` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/game/state.rs [INFO] [stderr] [INFO] [stderr] This likely indicates a bug in either rustc or cargo itself, [INFO] [stderr] and we would appreciate a bug report! You're likely to see [INFO] [stderr] a number of compiler warnings after this message which cargo [INFO] [stderr] attempted to fix but failed. If you could open an issue at [INFO] [stderr] https://github.com/rust-lang/rust/issues [INFO] [stderr] quoting the full output of this command we'd be very appreciative! [INFO] [stderr] Note that you may be able to make some more progress in the near-term [INFO] [stderr] fixing code with the `--broken-code` flag [INFO] [stderr] [INFO] [stderr] The following errors were reported: [INFO] [stderr] error: ambiguous `+` in a type [INFO] [stderr] --> src/game/state.rs:222:92 [INFO] [stderr] | [INFO] [stderr] 222 | pub fn meshes_to_render(&mut self, device: &wgpu::Device, settings: &Settings) -> Vec<&impl Draw + use<>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: try adding parentheses [INFO] [stderr] | [INFO] [stderr] 222 | pub fn meshes_to_render(&mut self, device: &wgpu::Device, settings: &Settings) -> Vec<&(impl Draw + use<>)> { [INFO] [stderr] | + + [INFO] [stderr] [INFO] [stderr] error: aborting due to 1 previous error [INFO] [stderr] [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/game/world/terrain_generator.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | rng.gen() [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] = note: `--force-warn keyword-idents-2024` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `diffuse_texture` are never read [INFO] [stdout] --> src/engine/resource/model.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Material { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 10 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 11 | pub diffuse_texture: texture::Texture, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `texture` is never read [INFO] [stdout] --> src/engine/resource/texture.rs:4:9 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct Texture { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 4 | pub texture: wgpu::Texture, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `chunk_pos_buffer` are never read [INFO] [stdout] --> src/game/world/mesh.rs:106:9 [INFO] [stdout] | [INFO] [stdout] 105 | pub struct ChunkMesh { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 106 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 110 | pub chunk_pos_buffer: Buffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/engine/texture_atlas.rs:43:20 [INFO] [stdout] | [INFO] [stdout] 43 | if let Some((texture_name, image)) = images_iter.next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/engine/texture_atlas.rs:54:17 [INFO] [stdout] | [INFO] [stdout] 54 | } [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 43 ~ match images_iter.next() { Some((texture_name, image)) => { [INFO] [stdout] 44 | offset.insert(texture_name.into(), (x, y)); [INFO] [stdout] ... [INFO] [stdout] 53 | } [INFO] [stdout] 54 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/ray.rs:38:20 [INFO] [stdout] | [INFO] [stdout] 38 | if let Some(block) = terrain.get_block(¤t_pos) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/ray.rs:48:17 [INFO] [stdout] | [INFO] [stdout] 48 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 38 ~ match terrain.get_block(¤t_pos) { Some(block) => { [INFO] [stdout] 39 | if block.is_rendered() { [INFO] [stdout] ... [INFO] [stdout] 47 | } [INFO] [stdout] 48 ~ } _ => { [INFO] [stdout] 49 | out = None; [INFO] [stdout] 50 | done = true; [INFO] [stdout] 51 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/ray.rs:87:20 [INFO] [stdout] | [INFO] [stdout] 87 | if let Some(block) = terrain.get_block(&trying_pos) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/ray.rs:91:17 [INFO] [stdout] | [INFO] [stdout] 91 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 87 ~ match terrain.get_block(&trying_pos) { Some(block) => { [INFO] [stdout] 88 | if block.is_solid() { [INFO] [stdout] 89 | offset = 0.0 [INFO] [stdout] 90 | } [INFO] [stdout] 91 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/state.rs:197:26 [INFO] [stdout] | [INFO] [stdout] 197 | self.player = if let Some(player) = load_player(self.current_save_name.clone(), "player") { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^----------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/state.rs:199:9 [INFO] [stdout] | [INFO] [stdout] 199 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 197 ~ self.player = match load_player(self.current_save_name.clone(), "player") { Some(player) => { [INFO] [stdout] 198 | player [INFO] [stdout] 199 ~ } _ => { [INFO] [stdout] 200 | log::warn!("Failed loading player from save {:?}", self.current_save_name); [INFO] [stdout] 201 | Player::new(&self.block_manager) [INFO] [stdout] 202 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl model::Draw` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/game/state.rs:222:92 [INFO] [stdout] | [INFO] [stdout] 222 | pub fn meshes_to_render(&mut self, device: &wgpu::Device, settings: &Settings) -> Vec<&impl Draw> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/game/state.rs:222:29 [INFO] [stdout] | [INFO] [stdout] 222 | pub fn meshes_to_render(&mut self, device: &wgpu::Device, settings: &Settings) -> Vec<&impl Draw> { [INFO] [stdout] | ^ ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 222 | pub fn meshes_to_render(&mut self, device: &wgpu::Device, settings: &Settings) -> Vec<&impl Draw + use<>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/state.rs:280:12 [INFO] [stdout] | [INFO] [stdout] 280 | if let Some((intersect_pos, _, _)) = ray.intersect(&mut self.terrain) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/state.rs:284:9 [INFO] [stdout] | [INFO] [stdout] 284 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 280 ~ match ray.intersect(&mut self.terrain) { Some((intersect_pos, _, _)) => { [INFO] [stdout] 281 | if let Some(block) = self.terrain.get_block(&intersect_pos) { [INFO] [stdout] 282 | self.player.selected_block = block [INFO] [stdout] 283 | } [INFO] [stdout] 284 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/state.rs:281:16 [INFO] [stdout] | [INFO] [stdout] 281 | if let Some(block) = self.terrain.get_block(&intersect_pos) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^-------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/state.rs:283:13 [INFO] [stdout] | [INFO] [stdout] 283 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 281 ~ match self.terrain.get_block(&intersect_pos) { Some(block) => { [INFO] [stdout] 282 | self.player.selected_block = block [INFO] [stdout] 283 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/block.rs:466:24 [INFO] [stdout] | [INFO] [stdout] 466 | if let Some(sunlight_source_cache) = &mut self.sunlight_source_cache { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/block.rs:472:21 [INFO] [stdout] | [INFO] [stdout] 472 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 466 ~ match &mut self.sunlight_source_cache { Some(sunlight_source_cache) => { [INFO] [stdout] 467 | sunlight_source_cache.remove(block_in_chunk_pos, &surrounding_blocks); [INFO] [stdout] ... [INFO] [stdout] 471 | } [INFO] [stdout] 472 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/block.rs:475:24 [INFO] [stdout] | [INFO] [stdout] 475 | if let Some(light_source_cache) = &mut self.light_source_cache { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/block.rs:477:21 [INFO] [stdout] | [INFO] [stdout] 477 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 475 ~ match &mut self.light_source_cache { Some(light_source_cache) => { [INFO] [stdout] 476 | light_source_cache.insert(block_in_chunk_pos, &surrounding_blocks); [INFO] [stdout] 477 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/block.rs:480:24 [INFO] [stdout] | [INFO] [stdout] 480 | if let Some(light_source_cache) = &mut self.light_source_cache { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/block.rs:482:21 [INFO] [stdout] | [INFO] [stdout] 482 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 480 ~ match &mut self.light_source_cache { Some(light_source_cache) => { [INFO] [stdout] 481 | light_source_cache.remove(block_in_chunk_pos, &surrounding_blocks); [INFO] [stdout] 482 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/mesh.rs:258:45 [INFO] [stdout] | [INFO] [stdout] 258 | ... Some(if let Some(light_source) = block.light_source() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^-----^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/mesh.rs:260:37 [INFO] [stdout] | [INFO] [stdout] 260 | ... } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 258 ~ Some(match block.light_source() { Some(light_source) => { [INFO] [stdout] 259 | [light_source.light_raw(); 6] [INFO] [stdout] 260 ~ } _ => { [INFO] [stdout] 261 | { [INFO] [stdout] ... [INFO] [stdout] 281 | } [INFO] [stdout] 282 ~ }}) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:377:44 [INFO] [stdout] | [INFO] [stdout] 377 | ...if let Some(block_buffer) = crate::misc::save_helper::load_block_buffer(recieved.current_save_name, "chunks/".to_string() + &chunk_file_name(&recieved.pos)... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------------------------------------------------------------------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:379:41 [INFO] [stdout] | [INFO] [stdout] 379 | ... } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 377 ~ match crate::misc::save_helper::load_block_buffer(recieved.current_save_name, "chunks/".to_string() + &chunk_file_name(&recieved.pos)) { Some(block_buffer) => { [INFO] [stdout] 378 | block_buffer [INFO] [stdout] 379 ~ } _ => { [INFO] [stdout] 380 | TERRAIN_GENERATOR [INFO] [stdout] ... [INFO] [stdout] 384 | .generate_blocks(&recieved.pos) [INFO] [stdout] 385 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:650:19 [INFO] [stdout] | [INFO] [stdout] 650 | while let Some(blocks) = terrain.get_blocks(¤t_chunk_pos, false) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^--------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:656:13 [INFO] [stdout] | [INFO] [stdout] 656 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:702:23 [INFO] [stdout] | [INFO] [stdout] 702 | while let Some(blocks) = terrain.get_blocks(¤t_chunk_pos, false) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^--------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:756:17 [INFO] [stdout] | [INFO] [stdout] 756 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:859:28 [INFO] [stdout] | [INFO] [stdout] 859 | if let Some(surrounding_blocks) = [INFO] [stdout] | ____________________________^ [INFO] [stdout] 860 | | self.get_surrounding_blocks_cube(&to_update_cache_chunk_pos, false) [INFO] [stdout] | |_____________________________------------------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:865:25 [INFO] [stdout] | [INFO] [stdout] 865 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 859 ~ match self.get_surrounding_blocks_cube(&to_update_cache_chunk_pos, false) [INFO] [stdout] 860 ~ { Some(surrounding_blocks) => { [INFO] [stdout] 861 | if let Some(mut current_chunk) = self.get_chunk_mut(&to_update_cache_chunk_pos, false) { [INFO] [stdout] 862 | current_chunk.do_cache_updates(&surrounding_blocks) [INFO] [stdout] 863 | } [INFO] [stdout] 864 ~ } _ => { [INFO] [stdout] 865 | log::error!( [INFO] [stdout] ... [INFO] [stdout] 868 | return; [INFO] [stdout] 869 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1159:16 [INFO] [stdout] | [INFO] [stdout] 1159 | if let Some(mut chunk) = self.get_chunk_mut(&recieved.pos, false) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1166:13 [INFO] [stdout] | [INFO] [stdout] 1166 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1159 ~ match self.get_chunk_mut(&recieved.pos, false) { Some(mut chunk) => { [INFO] [stdout] 1160 | if chunk.light_pos_cache_requested() && recieved.for_state == chunk.state_hash() { [INFO] [stdout] ... [INFO] [stdout] 1165 | } [INFO] [stdout] 1166 ~ } _ => { [INFO] [stdout] 1167 | log::warn!("Recieved chunk light pos cache for nonexistent chunk") [INFO] [stdout] 1168 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1197:41 [INFO] [stdout] | [INFO] [stdout] 1197 | let surrounding_blocks = if let Some(surrounding_blocks) = self.get_surrounding_blocks(chunk_pos, true) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1199:13 [INFO] [stdout] | [INFO] [stdout] 1199 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1197 ~ let surrounding_blocks = match self.get_surrounding_blocks(chunk_pos, true) { Some(surrounding_blocks) => { [INFO] [stdout] 1198 | surrounding_blocks [INFO] [stdout] 1199 ~ } _ => { [INFO] [stdout] 1200 | return; [INFO] [stdout] 1201 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1203:20 [INFO] [stdout] | [INFO] [stdout] 1203 | if let Some(surrounding_lights) = self.get_surrounding_lights(chunk_pos, true, false) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1205:17 [INFO] [stdout] | [INFO] [stdout] 1205 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1203 ~ match self.get_surrounding_lights(chunk_pos, true, false) { Some(surrounding_lights) => { [INFO] [stdout] 1204 | surrounding_lights [INFO] [stdout] 1205 ~ } _ => { [INFO] [stdout] 1206 | return; [INFO] [stdout] 1207 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1239:41 [INFO] [stdout] | [INFO] [stdout] 1239 | let surrounding_blocks = if let Some(surrounding_blocks) = self.get_surrounding_blocks_cube(chunk_pos, true) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1242:13 [INFO] [stdout] | [INFO] [stdout] 1242 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1239 ~ let surrounding_blocks = match self.get_surrounding_blocks_cube(chunk_pos, true) [INFO] [stdout] 1240 ~ { Some(surrounding_blocks) => { [INFO] [stdout] 1241 | surrounding_blocks [INFO] [stdout] 1242 ~ } _ => { [INFO] [stdout] 1243 | return; [INFO] [stdout] 1244 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1284:41 [INFO] [stdout] | [INFO] [stdout] 1284 | let surrounding_blocks = if let Some(surrounding_blocks) = self.get_surrounding_blocks_cube(chunk_pos, true) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1287:13 [INFO] [stdout] | [INFO] [stdout] 1287 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1284 ~ let surrounding_blocks = match self.get_surrounding_blocks_cube(chunk_pos, true) [INFO] [stdout] 1285 ~ { Some(surrounding_blocks) => { [INFO] [stdout] 1286 | surrounding_blocks [INFO] [stdout] 1287 ~ } _ => { [INFO] [stdout] 1288 | return; [INFO] [stdout] 1289 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1380:15 [INFO] [stdout] | [INFO] [stdout] 1380 | while let Ok(Some(msg)) = reciever.try_next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1382:9 [INFO] [stdout] | [INFO] [stdout] 1382 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/loader.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | if let Some(file) = RESOURCE_DIR.get_file(path) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/loader.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 11 ~ match RESOURCE_DIR.get_file(path) { Some(file) => { [INFO] [stdout] 12 | Ok(file.contents().to_owned()) [INFO] [stdout] 13 ~ } _ => { [INFO] [stdout] 14 | Err(()) [INFO] [stdout] 15 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/loader.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 27 | if let Some(file) = RESOURCE_DIR.get_file(path) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/loader.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 33 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 27 ~ match RESOURCE_DIR.get_file(path) { Some(file) => { [INFO] [stdout] 28 | if let Some(text) = file.contents_utf8() { [INFO] [stdout] ... [INFO] [stdout] 32 | } [INFO] [stdout] 33 ~ } _ => { [INFO] [stdout] 34 | Err(()) [INFO] [stdout] 35 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/loader.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 46 | if let Ok(txt) = std::fs::read_to_string(path) { [INFO] [stdout] | ^^^^^^^^^^^^^^----------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/loader.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 46 ~ match std::fs::read_to_string(path) { Ok(txt) => { [INFO] [stdout] 47 | Ok(txt) [INFO] [stdout] 48 ~ } _ => { [INFO] [stdout] 49 | Err(()) [INFO] [stdout] 50 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/loader.rs:55:8 [INFO] [stdout] | [INFO] [stdout] 55 | if let Ok(data) = std::fs::read(path) { [INFO] [stdout] | ^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/loader.rs:57:5 [INFO] [stdout] | [INFO] [stdout] 57 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 55 ~ match std::fs::read(path) { Ok(data) => { [INFO] [stdout] 56 | Ok(data) [INFO] [stdout] 57 ~ } _ => { [INFO] [stdout] 58 | Err(()) [INFO] [stdout] 59 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:26:24 [INFO] [stdout] | [INFO] [stdout] 26 | if let Ok(file_type) = dir_entry.file_type() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^--------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:32:21 [INFO] [stdout] | [INFO] [stdout] 32 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 26 ~ match dir_entry.file_type() { Ok(file_type) => { [INFO] [stdout] 27 | if file_type.is_dir() { [INFO] [stdout] ... [INFO] [stdout] 31 | } [INFO] [stdout] 32 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:28:32 [INFO] [stdout] | [INFO] [stdout] 28 | ... if let Some(file_name) = dir_entry.file_name().to_str() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^---------^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:30:29 [INFO] [stdout] | [INFO] [stdout] 30 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 28 ~ match dir_entry.file_name().to_str() { Some(file_name) => { [INFO] [stdout] 29 | return Some(file_name.to_string()); [INFO] [stdout] 30 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:54:20 [INFO] [stdout] | [INFO] [stdout] 54 | if let Err(e) = ciborium::into_writer(object, file) { [INFO] [stdout] | ^^^^^^^^^^^^^----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:56:17 [INFO] [stdout] | [INFO] [stdout] 56 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 54 ~ match ciborium::into_writer(object, file) { Err(e) => { [INFO] [stdout] 55 | log::warn!("Failed serializing and writing to file {} - {}", path.display(), e) [INFO] [stdout] 56 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:60:28 [INFO] [stdout] | [INFO] [stdout] 60 | if let Err(e) = writeln!(file, "{}", to_write) { [INFO] [stdout] | ^^^^^^^^^^^^^------------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:62:25 [INFO] [stdout] | [INFO] [stdout] 62 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:75:28 [INFO] [stdout] | [INFO] [stdout] 75 | if let Err(e) = ciborium::into_writer(object, file) { [INFO] [stdout] | ^^^^^^^^^^^^^----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:77:25 [INFO] [stdout] | [INFO] [stdout] 77 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 75 ~ match ciborium::into_writer(object, file) { Err(e) => { [INFO] [stdout] 76 | log::warn!("Failed serializing and writing to file {} - {}", path.display(), e) [INFO] [stdout] 77 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:81:36 [INFO] [stdout] | [INFO] [stdout] 81 | ... if let Err(e) = writeln!(file, "{}", to_write) { [INFO] [stdout] | ^^^^^^^^^^^^^------------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:83:33 [INFO] [stdout] | [INFO] [stdout] 83 | ... } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | if let Some(counter) = counter { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:128:5 [INFO] [stdout] | [INFO] [stdout] 128 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 118 ~ match counter { Some(counter) => { [INFO] [stdout] 119 | iterator.for_each(move |(file_name, object)| { [INFO] [stdout] ... [INFO] [stdout] 127 | }); [INFO] [stdout] 128 ~ } _ => { [INFO] [stdout] 129 | iterator.for_each(move |(file_name, object)| { [INFO] [stdout] ... [INFO] [stdout] 136 | }) [INFO] [stdout] 137 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/settings.rs:63:20 [INFO] [stdout] | [INFO] [stdout] 63 | if let Err(e) = confy::store(TITLE, Some(TITLE), self.clone()) { [INFO] [stdout] | ^^^^^^^^^^^^^---------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/settings.rs:65:17 [INFO] [stdout] | [INFO] [stdout] 65 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 63 ~ match confy::store(TITLE, Some(TITLE), self.clone()) { Err(e) => { [INFO] [stdout] 64 | log::error!("Failed to load config from file - {}", e) [INFO] [stdout] 65 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/ui.rs:204:28 [INFO] [stdout] | [INFO] [stdout] 204 | if let Some(mut texture_name) = self.block_manager.get_texture_name(texture_id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/ui.rs:224:25 [INFO] [stdout] | [INFO] [stdout] 224 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 204 ~ match self.block_manager.get_texture_name(texture_id) { Some(mut texture_name) => { [INFO] [stdout] 205 | ui.group(|ui| { [INFO] [stdout] ... [INFO] [stdout] 223 | }); [INFO] [stdout] 224 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/ui.rs:227:28 [INFO] [stdout] | [INFO] [stdout] 227 | if let [Some(mut texture_name_top), Some(mut texture_name_side), Some(mut texture_name_bottom)] = [ [INFO] [stdout] | ____________________________^ [INFO] [stdout] 228 | | self.block_manager.get_texture_name(texture_id_top), [INFO] [stdout] | | ------------------ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 229 | | self.block_manager.get_texture_name(texture_id_side), [INFO] [stdout] 230 | | self.block_manager.get_texture_name(texture_id_bottom), [INFO] [stdout] 231 | | ] { [INFO] [stdout] | |_________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/ui.rs:262:25 [INFO] [stdout] | [INFO] [stdout] 262 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 227 ~ match [ [INFO] [stdout] 228 | self.block_manager.get_texture_name(texture_id_top), [INFO] [stdout] 229 | self.block_manager.get_texture_name(texture_id_side), [INFO] [stdout] 230 | self.block_manager.get_texture_name(texture_id_bottom), [INFO] [stdout] 231 ~ ] { [Some(mut texture_name_top), Some(mut texture_name_side), Some(mut texture_name_bottom)] => { [INFO] [stdout] 232 | ui.group(|ui| { [INFO] [stdout] ... [INFO] [stdout] 261 | }); [INFO] [stdout] 262 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 39 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `rezcraft` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/game/state.rs [INFO] [stderr] [INFO] [stderr] This likely indicates a bug in either rustc or cargo itself, [INFO] [stderr] and we would appreciate a bug report! You're likely to see [INFO] [stderr] a number of compiler warnings after this message which cargo [INFO] [stderr] attempted to fix but failed. If you could open an issue at [INFO] [stderr] https://github.com/rust-lang/rust/issues [INFO] [stderr] quoting the full output of this command we'd be very appreciative! [INFO] [stderr] Note that you may be able to make some more progress in the near-term [INFO] [stderr] fixing code with the `--broken-code` flag [INFO] [stderr] [INFO] [stderr] The following errors were reported: [INFO] [stderr] error: ambiguous `+` in a type [INFO] [stderr] --> src/game/state.rs:222:92 [INFO] [stderr] | [INFO] [stderr] 222 | pub fn meshes_to_render(&mut self, device: &wgpu::Device, settings: &Settings) -> Vec<&impl Draw + use<>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: try adding parentheses [INFO] [stderr] | [INFO] [stderr] 222 | pub fn meshes_to_render(&mut self, device: &wgpu::Device, settings: &Settings) -> Vec<&(impl Draw + use<>)> { [INFO] [stderr] | + + [INFO] [stderr] [INFO] [stderr] error: aborting due to 1 previous error [INFO] [stderr] [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/game/world/terrain_generator.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | rng.gen() [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] = note: `--force-warn keyword-idents-2024` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `diffuse_texture` are never read [INFO] [stdout] --> src/engine/resource/model.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Material { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 10 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 11 | pub diffuse_texture: texture::Texture, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `texture` is never read [INFO] [stdout] --> src/engine/resource/texture.rs:4:9 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct Texture { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 4 | pub texture: wgpu::Texture, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `chunk_pos_buffer` are never read [INFO] [stdout] --> src/game/world/mesh.rs:106:9 [INFO] [stdout] | [INFO] [stdout] 105 | pub struct ChunkMesh { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 106 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 110 | pub chunk_pos_buffer: Buffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/engine/texture_atlas.rs:43:20 [INFO] [stdout] | [INFO] [stdout] 43 | if let Some((texture_name, image)) = images_iter.next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/engine/texture_atlas.rs:54:17 [INFO] [stdout] | [INFO] [stdout] 54 | } [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 43 ~ match images_iter.next() { Some((texture_name, image)) => { [INFO] [stdout] 44 | offset.insert(texture_name.into(), (x, y)); [INFO] [stdout] ... [INFO] [stdout] 53 | } [INFO] [stdout] 54 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/ray.rs:38:20 [INFO] [stdout] | [INFO] [stdout] 38 | if let Some(block) = terrain.get_block(¤t_pos) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/ray.rs:48:17 [INFO] [stdout] | [INFO] [stdout] 48 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 38 ~ match terrain.get_block(¤t_pos) { Some(block) => { [INFO] [stdout] 39 | if block.is_rendered() { [INFO] [stdout] ... [INFO] [stdout] 47 | } [INFO] [stdout] 48 ~ } _ => { [INFO] [stdout] 49 | out = None; [INFO] [stdout] 50 | done = true; [INFO] [stdout] 51 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/ray.rs:87:20 [INFO] [stdout] | [INFO] [stdout] 87 | if let Some(block) = terrain.get_block(&trying_pos) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/ray.rs:91:17 [INFO] [stdout] | [INFO] [stdout] 91 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 87 ~ match terrain.get_block(&trying_pos) { Some(block) => { [INFO] [stdout] 88 | if block.is_solid() { [INFO] [stdout] 89 | offset = 0.0 [INFO] [stdout] 90 | } [INFO] [stdout] 91 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/state.rs:197:26 [INFO] [stdout] | [INFO] [stdout] 197 | self.player = if let Some(player) = load_player(self.current_save_name.clone(), "player") { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^----------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/state.rs:199:9 [INFO] [stdout] | [INFO] [stdout] 199 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 197 ~ self.player = match load_player(self.current_save_name.clone(), "player") { Some(player) => { [INFO] [stdout] 198 | player [INFO] [stdout] 199 ~ } _ => { [INFO] [stdout] 200 | log::warn!("Failed loading player from save {:?}", self.current_save_name); [INFO] [stdout] 201 | Player::new(&self.block_manager) [INFO] [stdout] 202 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl model::Draw` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/game/state.rs:222:92 [INFO] [stdout] | [INFO] [stdout] 222 | pub fn meshes_to_render(&mut self, device: &wgpu::Device, settings: &Settings) -> Vec<&impl Draw> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/game/state.rs:222:29 [INFO] [stdout] | [INFO] [stdout] 222 | pub fn meshes_to_render(&mut self, device: &wgpu::Device, settings: &Settings) -> Vec<&impl Draw> { [INFO] [stdout] | ^ ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 222 | pub fn meshes_to_render(&mut self, device: &wgpu::Device, settings: &Settings) -> Vec<&impl Draw + use<>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/state.rs:280:12 [INFO] [stdout] | [INFO] [stdout] 280 | if let Some((intersect_pos, _, _)) = ray.intersect(&mut self.terrain) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/state.rs:284:9 [INFO] [stdout] | [INFO] [stdout] 284 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 280 ~ match ray.intersect(&mut self.terrain) { Some((intersect_pos, _, _)) => { [INFO] [stdout] 281 | if let Some(block) = self.terrain.get_block(&intersect_pos) { [INFO] [stdout] 282 | self.player.selected_block = block [INFO] [stdout] 283 | } [INFO] [stdout] 284 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/state.rs:281:16 [INFO] [stdout] | [INFO] [stdout] 281 | if let Some(block) = self.terrain.get_block(&intersect_pos) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^-------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/state.rs:283:13 [INFO] [stdout] | [INFO] [stdout] 283 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 281 ~ match self.terrain.get_block(&intersect_pos) { Some(block) => { [INFO] [stdout] 282 | self.player.selected_block = block [INFO] [stdout] 283 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/block.rs:466:24 [INFO] [stdout] | [INFO] [stdout] 466 | if let Some(sunlight_source_cache) = &mut self.sunlight_source_cache { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/block.rs:472:21 [INFO] [stdout] | [INFO] [stdout] 472 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 466 ~ match &mut self.sunlight_source_cache { Some(sunlight_source_cache) => { [INFO] [stdout] 467 | sunlight_source_cache.remove(block_in_chunk_pos, &surrounding_blocks); [INFO] [stdout] ... [INFO] [stdout] 471 | } [INFO] [stdout] 472 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/block.rs:475:24 [INFO] [stdout] | [INFO] [stdout] 475 | if let Some(light_source_cache) = &mut self.light_source_cache { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/block.rs:477:21 [INFO] [stdout] | [INFO] [stdout] 477 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 475 ~ match &mut self.light_source_cache { Some(light_source_cache) => { [INFO] [stdout] 476 | light_source_cache.insert(block_in_chunk_pos, &surrounding_blocks); [INFO] [stdout] 477 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/block.rs:480:24 [INFO] [stdout] | [INFO] [stdout] 480 | if let Some(light_source_cache) = &mut self.light_source_cache { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/block.rs:482:21 [INFO] [stdout] | [INFO] [stdout] 482 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 480 ~ match &mut self.light_source_cache { Some(light_source_cache) => { [INFO] [stdout] 481 | light_source_cache.remove(block_in_chunk_pos, &surrounding_blocks); [INFO] [stdout] 482 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/mesh.rs:258:45 [INFO] [stdout] | [INFO] [stdout] 258 | ... Some(if let Some(light_source) = block.light_source() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^-----^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/mesh.rs:260:37 [INFO] [stdout] | [INFO] [stdout] 260 | ... } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 258 ~ Some(match block.light_source() { Some(light_source) => { [INFO] [stdout] 259 | [light_source.light_raw(); 6] [INFO] [stdout] 260 ~ } _ => { [INFO] [stdout] 261 | { [INFO] [stdout] ... [INFO] [stdout] 281 | } [INFO] [stdout] 282 ~ }}) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:377:44 [INFO] [stdout] | [INFO] [stdout] 377 | ...if let Some(block_buffer) = crate::misc::save_helper::load_block_buffer(recieved.current_save_name, "chunks/".to_string() + &chunk_file_name(&recieved.pos)... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------------------------------------------------------------------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:379:41 [INFO] [stdout] | [INFO] [stdout] 379 | ... } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 377 ~ match crate::misc::save_helper::load_block_buffer(recieved.current_save_name, "chunks/".to_string() + &chunk_file_name(&recieved.pos)) { Some(block_buffer) => { [INFO] [stdout] 378 | block_buffer [INFO] [stdout] 379 ~ } _ => { [INFO] [stdout] 380 | TERRAIN_GENERATOR [INFO] [stdout] ... [INFO] [stdout] 384 | .generate_blocks(&recieved.pos) [INFO] [stdout] 385 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:650:19 [INFO] [stdout] | [INFO] [stdout] 650 | while let Some(blocks) = terrain.get_blocks(¤t_chunk_pos, false) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^--------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:656:13 [INFO] [stdout] | [INFO] [stdout] 656 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:702:23 [INFO] [stdout] | [INFO] [stdout] 702 | while let Some(blocks) = terrain.get_blocks(¤t_chunk_pos, false) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^--------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:756:17 [INFO] [stdout] | [INFO] [stdout] 756 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:859:28 [INFO] [stdout] | [INFO] [stdout] 859 | if let Some(surrounding_blocks) = [INFO] [stdout] | ____________________________^ [INFO] [stdout] 860 | | self.get_surrounding_blocks_cube(&to_update_cache_chunk_pos, false) [INFO] [stdout] | |_____________________________------------------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:865:25 [INFO] [stdout] | [INFO] [stdout] 865 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 859 ~ match self.get_surrounding_blocks_cube(&to_update_cache_chunk_pos, false) [INFO] [stdout] 860 ~ { Some(surrounding_blocks) => { [INFO] [stdout] 861 | if let Some(mut current_chunk) = self.get_chunk_mut(&to_update_cache_chunk_pos, false) { [INFO] [stdout] 862 | current_chunk.do_cache_updates(&surrounding_blocks) [INFO] [stdout] 863 | } [INFO] [stdout] 864 ~ } _ => { [INFO] [stdout] 865 | log::error!( [INFO] [stdout] ... [INFO] [stdout] 868 | return; [INFO] [stdout] 869 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1159:16 [INFO] [stdout] | [INFO] [stdout] 1159 | if let Some(mut chunk) = self.get_chunk_mut(&recieved.pos, false) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1166:13 [INFO] [stdout] | [INFO] [stdout] 1166 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1159 ~ match self.get_chunk_mut(&recieved.pos, false) { Some(mut chunk) => { [INFO] [stdout] 1160 | if chunk.light_pos_cache_requested() && recieved.for_state == chunk.state_hash() { [INFO] [stdout] ... [INFO] [stdout] 1165 | } [INFO] [stdout] 1166 ~ } _ => { [INFO] [stdout] 1167 | log::warn!("Recieved chunk light pos cache for nonexistent chunk") [INFO] [stdout] 1168 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1197:41 [INFO] [stdout] | [INFO] [stdout] 1197 | let surrounding_blocks = if let Some(surrounding_blocks) = self.get_surrounding_blocks(chunk_pos, true) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1199:13 [INFO] [stdout] | [INFO] [stdout] 1199 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1197 ~ let surrounding_blocks = match self.get_surrounding_blocks(chunk_pos, true) { Some(surrounding_blocks) => { [INFO] [stdout] 1198 | surrounding_blocks [INFO] [stdout] 1199 ~ } _ => { [INFO] [stdout] 1200 | return; [INFO] [stdout] 1201 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1203:20 [INFO] [stdout] | [INFO] [stdout] 1203 | if let Some(surrounding_lights) = self.get_surrounding_lights(chunk_pos, true, false) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1205:17 [INFO] [stdout] | [INFO] [stdout] 1205 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1203 ~ match self.get_surrounding_lights(chunk_pos, true, false) { Some(surrounding_lights) => { [INFO] [stdout] 1204 | surrounding_lights [INFO] [stdout] 1205 ~ } _ => { [INFO] [stdout] 1206 | return; [INFO] [stdout] 1207 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1239:41 [INFO] [stdout] | [INFO] [stdout] 1239 | let surrounding_blocks = if let Some(surrounding_blocks) = self.get_surrounding_blocks_cube(chunk_pos, true) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1242:13 [INFO] [stdout] | [INFO] [stdout] 1242 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1239 ~ let surrounding_blocks = match self.get_surrounding_blocks_cube(chunk_pos, true) [INFO] [stdout] 1240 ~ { Some(surrounding_blocks) => { [INFO] [stdout] 1241 | surrounding_blocks [INFO] [stdout] 1242 ~ } _ => { [INFO] [stdout] 1243 | return; [INFO] [stdout] 1244 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1284:41 [INFO] [stdout] | [INFO] [stdout] 1284 | let surrounding_blocks = if let Some(surrounding_blocks) = self.get_surrounding_blocks_cube(chunk_pos, true) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1287:13 [INFO] [stdout] | [INFO] [stdout] 1287 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1284 ~ let surrounding_blocks = match self.get_surrounding_blocks_cube(chunk_pos, true) [INFO] [stdout] 1285 ~ { Some(surrounding_blocks) => { [INFO] [stdout] 1286 | surrounding_blocks [INFO] [stdout] 1287 ~ } _ => { [INFO] [stdout] 1288 | return; [INFO] [stdout] 1289 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1380:15 [INFO] [stdout] | [INFO] [stdout] 1380 | while let Ok(Some(msg)) = reciever.try_next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/game/world/terrain.rs:1382:9 [INFO] [stdout] | [INFO] [stdout] 1382 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/loader.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | if let Some(file) = RESOURCE_DIR.get_file(path) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/loader.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 11 ~ match RESOURCE_DIR.get_file(path) { Some(file) => { [INFO] [stdout] 12 | Ok(file.contents().to_owned()) [INFO] [stdout] 13 ~ } _ => { [INFO] [stdout] 14 | Err(()) [INFO] [stdout] 15 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/loader.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 27 | if let Some(file) = RESOURCE_DIR.get_file(path) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/loader.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 33 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 27 ~ match RESOURCE_DIR.get_file(path) { Some(file) => { [INFO] [stdout] 28 | if let Some(text) = file.contents_utf8() { [INFO] [stdout] ... [INFO] [stdout] 32 | } [INFO] [stdout] 33 ~ } _ => { [INFO] [stdout] 34 | Err(()) [INFO] [stdout] 35 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/loader.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 46 | if let Ok(txt) = std::fs::read_to_string(path) { [INFO] [stdout] | ^^^^^^^^^^^^^^----------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/loader.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 46 ~ match std::fs::read_to_string(path) { Ok(txt) => { [INFO] [stdout] 47 | Ok(txt) [INFO] [stdout] 48 ~ } _ => { [INFO] [stdout] 49 | Err(()) [INFO] [stdout] 50 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/loader.rs:55:8 [INFO] [stdout] | [INFO] [stdout] 55 | if let Ok(data) = std::fs::read(path) { [INFO] [stdout] | ^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/loader.rs:57:5 [INFO] [stdout] | [INFO] [stdout] 57 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 55 ~ match std::fs::read(path) { Ok(data) => { [INFO] [stdout] 56 | Ok(data) [INFO] [stdout] 57 ~ } _ => { [INFO] [stdout] 58 | Err(()) [INFO] [stdout] 59 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:26:24 [INFO] [stdout] | [INFO] [stdout] 26 | if let Ok(file_type) = dir_entry.file_type() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^--------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:32:21 [INFO] [stdout] | [INFO] [stdout] 32 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 26 ~ match dir_entry.file_type() { Ok(file_type) => { [INFO] [stdout] 27 | if file_type.is_dir() { [INFO] [stdout] ... [INFO] [stdout] 31 | } [INFO] [stdout] 32 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:28:32 [INFO] [stdout] | [INFO] [stdout] 28 | ... if let Some(file_name) = dir_entry.file_name().to_str() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^---------^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:30:29 [INFO] [stdout] | [INFO] [stdout] 30 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 28 ~ match dir_entry.file_name().to_str() { Some(file_name) => { [INFO] [stdout] 29 | return Some(file_name.to_string()); [INFO] [stdout] 30 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:54:20 [INFO] [stdout] | [INFO] [stdout] 54 | if let Err(e) = ciborium::into_writer(object, file) { [INFO] [stdout] | ^^^^^^^^^^^^^----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:56:17 [INFO] [stdout] | [INFO] [stdout] 56 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 54 ~ match ciborium::into_writer(object, file) { Err(e) => { [INFO] [stdout] 55 | log::warn!("Failed serializing and writing to file {} - {}", path.display(), e) [INFO] [stdout] 56 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:60:28 [INFO] [stdout] | [INFO] [stdout] 60 | if let Err(e) = writeln!(file, "{}", to_write) { [INFO] [stdout] | ^^^^^^^^^^^^^------------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:62:25 [INFO] [stdout] | [INFO] [stdout] 62 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:75:28 [INFO] [stdout] | [INFO] [stdout] 75 | if let Err(e) = ciborium::into_writer(object, file) { [INFO] [stdout] | ^^^^^^^^^^^^^----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:77:25 [INFO] [stdout] | [INFO] [stdout] 77 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 75 ~ match ciborium::into_writer(object, file) { Err(e) => { [INFO] [stdout] 76 | log::warn!("Failed serializing and writing to file {} - {}", path.display(), e) [INFO] [stdout] 77 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:81:36 [INFO] [stdout] | [INFO] [stdout] 81 | ... if let Err(e) = writeln!(file, "{}", to_write) { [INFO] [stdout] | ^^^^^^^^^^^^^------------------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:83:33 [INFO] [stdout] | [INFO] [stdout] 83 | ... } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | if let Some(counter) = counter { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/save_helper.rs:128:5 [INFO] [stdout] | [INFO] [stdout] 128 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 118 ~ match counter { Some(counter) => { [INFO] [stdout] 119 | iterator.for_each(move |(file_name, object)| { [INFO] [stdout] ... [INFO] [stdout] 127 | }); [INFO] [stdout] 128 ~ } _ => { [INFO] [stdout] 129 | iterator.for_each(move |(file_name, object)| { [INFO] [stdout] ... [INFO] [stdout] 136 | }) [INFO] [stdout] 137 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/settings.rs:63:20 [INFO] [stdout] | [INFO] [stdout] 63 | if let Err(e) = confy::store(TITLE, Some(TITLE), self.clone()) { [INFO] [stdout] | ^^^^^^^^^^^^^---------------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/settings.rs:65:17 [INFO] [stdout] | [INFO] [stdout] 65 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 63 ~ match confy::store(TITLE, Some(TITLE), self.clone()) { Err(e) => { [INFO] [stdout] 64 | log::error!("Failed to load config from file - {}", e) [INFO] [stdout] 65 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/ui.rs:204:28 [INFO] [stdout] | [INFO] [stdout] 204 | if let Some(mut texture_name) = self.block_manager.get_texture_name(texture_id) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/ui.rs:224:25 [INFO] [stdout] | [INFO] [stdout] 224 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 204 ~ match self.block_manager.get_texture_name(texture_id) { Some(mut texture_name) => { [INFO] [stdout] 205 | ui.group(|ui| { [INFO] [stdout] ... [INFO] [stdout] 223 | }); [INFO] [stdout] 224 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/misc/ui.rs:227:28 [INFO] [stdout] | [INFO] [stdout] 227 | if let [Some(mut texture_name_top), Some(mut texture_name_side), Some(mut texture_name_bottom)] = [ [INFO] [stdout] | ____________________________^ [INFO] [stdout] 228 | | self.block_manager.get_texture_name(texture_id_top), [INFO] [stdout] | | ------------------ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 229 | | self.block_manager.get_texture_name(texture_id_side), [INFO] [stdout] 230 | | self.block_manager.get_texture_name(texture_id_bottom), [INFO] [stdout] 231 | | ] { [INFO] [stdout] | |_________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/misc/ui.rs:262:25 [INFO] [stdout] | [INFO] [stdout] 262 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 227 ~ match [ [INFO] [stdout] 228 | self.block_manager.get_texture_name(texture_id_top), [INFO] [stdout] 229 | self.block_manager.get_texture_name(texture_id_side), [INFO] [stdout] 230 | self.block_manager.get_texture_name(texture_id_bottom), [INFO] [stdout] 231 ~ ] { [Some(mut texture_name_top), Some(mut texture_name_side), Some(mut texture_name_bottom)] => { [INFO] [stdout] 232 | ui.group(|ui| { [INFO] [stdout] ... [INFO] [stdout] 261 | }); [INFO] [stdout] 262 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 39 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Migrating src/main.rs from 2021 edition to 2024 [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.28s [INFO] [stderr] Running `cargo check` to verify 2024 [INFO] [stderr] Compiling rezcraft v0.2.0 (/tmp/fixit) [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/game/world/terrain_generator.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | rng.gen() [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 89 | rng.r#gen() [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/game/world/terrain_generator.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | rng.gen() [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 89 | rng.r#gen() [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0502]: cannot borrow `renderer` as mutable because it is also borrowed as immutable [INFO] [stdout] --> src/lib.rs:349:23 [INFO] [stdout] | [INFO] [stdout] 348 | let to_render = game_state.meshes_to_render(renderer.device(), &settings_clone); [INFO] [stdout] | -------- immutable borrow occurs here [INFO] [stdout] 349 | match renderer.render( [INFO] [stdout] | ^ ------ immutable borrow later used by call [INFO] [stdout] | _______________________| [INFO] [stdout] | | [INFO] [stdout] 350 | | to_render, [INFO] [stdout] 351 | | Some(( [INFO] [stdout] 352 | | settings_clone.sky_color[0], [INFO] [stdout] ... | [INFO] [stdout] 356 | | &mut ui, [INFO] [stdout] 357 | | ) { [INFO] [stdout] | |_________________^ mutable borrow occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0502]: cannot borrow `renderer` as mutable because it is also borrowed as immutable [INFO] [stdout] --> src/lib.rs:349:23 [INFO] [stdout] | [INFO] [stdout] 348 | let to_render = game_state.meshes_to_render(renderer.device(), &settings_clone); [INFO] [stdout] | -------- immutable borrow occurs here [INFO] [stdout] 349 | match renderer.render( [INFO] [stdout] | ^ ------ immutable borrow later used by call [INFO] [stdout] | _______________________| [INFO] [stdout] | | [INFO] [stdout] 350 | | to_render, [INFO] [stdout] 351 | | Some(( [INFO] [stdout] 352 | | settings_clone.sky_color[0], [INFO] [stdout] ... | [INFO] [stdout] 356 | | &mut ui, [INFO] [stdout] 357 | | ) { [INFO] [stdout] | |_________________^ mutable borrow occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0502`. [INFO] [stdout] [INFO] [stderr] error: could not compile `rezcraft` (lib) due to 3 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: aborting due to 2 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0502`. [INFO] [stdout] [INFO] [stderr] error: could not compile `rezcraft` (lib test) due to 3 previous errors [INFO] [stderr] error: failed to check after updating to 2024 [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `cargo check --frozen --all --all-targets --message-format=json` (exit status: 101) [INFO] running `Command { std: "docker" "inspect" "16d533e530fc09b32863e9013218bce4836ec021df84882ecc2039b8cbdeeb3d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "16d533e530fc09b32863e9013218bce4836ec021df84882ecc2039b8cbdeeb3d", kill_on_drop: false }` [INFO] [stdout] 16d533e530fc09b32863e9013218bce4836ec021df84882ecc2039b8cbdeeb3d