[INFO] cloning repository https://github.com/jedjoud10/villagers-vs-illagers [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jedjoud10/villagers-vs-illagers" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjedjoud10%2Fvillagers-vs-illagers", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjedjoud10%2Fvillagers-vs-illagers'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 9a6515e089c813416a866c85127544a27fb3b4f1 [INFO] building jedjoud10/villagers-vs-illagers against try#23647e694de8d0904848ad068b2e0ec2dd098c37+target=wasm32-wasip1 for pr-149868 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjedjoud10%2Fvillagers-vs-illagers" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-3-tc2/source/.cargo/config.toml [INFO] started tweaking git repo https://github.com/jedjoud10/villagers-vs-illagers [INFO] finished tweaking git repo https://github.com/jedjoud10/villagers-vs-illagers [INFO] tweaked toml for git repo https://github.com/jedjoud10/villagers-vs-illagers written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/jedjoud10/villagers-vs-illagers on toolchain 23647e694de8d0904848ad068b2e0ec2dd098c37 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+23647e694de8d0904848ad068b2e0ec2dd098c37" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/jedjoud10/villagers-vs-illagers 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" "+23647e694de8d0904848ad068b2e0ec2dd098c37" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+23647e694de8d0904848ad068b2e0ec2dd098c37" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d763c49cc5f18e4583eb041d1804e863a157963a3ed30bcde2c6e3caff7b2132 [INFO] running `Command { std: "docker" "start" "-a" "d763c49cc5f18e4583eb041d1804e863a157963a3ed30bcde2c6e3caff7b2132", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d763c49cc5f18e4583eb041d1804e863a157963a3ed30bcde2c6e3caff7b2132", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d763c49cc5f18e4583eb041d1804e863a157963a3ed30bcde2c6e3caff7b2132", kill_on_drop: false }` [INFO] [stdout] d763c49cc5f18e4583eb041d1804e863a157963a3ed30bcde2c6e3caff7b2132 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+23647e694de8d0904848ad068b2e0ec2dd098c37" "build" "--frozen" "--message-format=json" "--target" "wasm32-wasip1", kill_on_drop: false }` [INFO] [stdout] 5f7dab037d7d9f309a28b6b9475762c2c598e2be777b92fd3094fc126c850edf [INFO] running `Command { std: "docker" "start" "-a" "5f7dab037d7d9f309a28b6b9475762c2c598e2be777b92fd3094fc126c850edf", kill_on_drop: false }` [INFO] [stderr] Compiling radium v0.7.0 [INFO] [stderr] Compiling adler v1.0.2 [INFO] [stderr] Compiling tap v1.0.1 [INFO] [stderr] Compiling eyre v0.6.8 [INFO] [stderr] Compiling funty v2.0.0 [INFO] [stderr] Compiling indenter v0.3.3 [INFO] [stderr] Compiling fastrand v2.0.1 [INFO] [stderr] Compiling buddy-alloc v0.4.2 [INFO] [stderr] Compiling fdeflate v0.3.1 [INFO] [stderr] Compiling miniz_oxide v0.7.1 [INFO] [stderr] Compiling wyz v0.5.1 [INFO] [stderr] Compiling flate2 v1.0.28 [INFO] [stderr] Compiling bitvec v1.0.1 [INFO] [stderr] Compiling png v0.17.10 [INFO] [stderr] Compiling cart v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: cart@0.1.0: Packing sprites... [INFO] [stderr] warning: cart@0.1.0: Packing sprite: sprite.png [INFO] [stderr] warning: cart@0.1.0: Widht: 80, Height: 190 [INFO] [stderr] warning: cart@0.1.0: Palette Count: 4 [INFO] [stderr] warning: cart@0.1.0: Buffer Size: 15200 [INFO] [stderr] warning: cart@0.1.0: Palette: [0, 0, 0, 234, 207, 178, 198, 148, 120, 138, 85, 67, 68, 29, 31] [INFO] [stderr] warning: cart@0.1.0: Read-only file system (os error 30) [INFO] [stderr] warning: cart@0.1.0: Packing sprite: example-ui.png [INFO] [stderr] warning: cart@0.1.0: Widht: 160, Height: 160 [INFO] [stderr] warning: cart@0.1.0: Palette Count: 4 [INFO] [stderr] warning: cart@0.1.0: Buffer Size: 25600 [INFO] [stderr] warning: cart@0.1.0: Palette: [0, 0, 0, 198, 148, 120, 234, 207, 178, 138, 85, 67, 68, 29, 31] [INFO] [stderr] warning: cart@0.1.0: Read-only file system (os error 30) [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/sprites.rs:124:31 [INFO] [stdout] | [INFO] [stdout] 124 | draw_sprite(dst_x, dst_y, (CELL_SIZE as u32), (CELL_SIZE as u32), src_x, src_y) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 124 - draw_sprite(dst_x, dst_y, (CELL_SIZE as u32), (CELL_SIZE as u32), src_x, src_y) [INFO] [stdout] 124 + draw_sprite(dst_x, dst_y, CELL_SIZE as u32 , (CELL_SIZE as u32), src_x, src_y) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/sprites.rs:124:51 [INFO] [stdout] | [INFO] [stdout] 124 | draw_sprite(dst_x, dst_y, (CELL_SIZE as u32), (CELL_SIZE as u32), src_x, src_y) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 124 - draw_sprite(dst_x, dst_y, (CELL_SIZE as u32), (CELL_SIZE as u32), src_x, src_y) [INFO] [stdout] 124 + draw_sprite(dst_x, dst_y, (CELL_SIZE as u32), CELL_SIZE as u32 , src_x, src_y) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `cell::Cell` and `ops::Range` [INFO] [stdout] --> src/lib.rs:6:27 [INFO] [stdout] | [INFO] [stdout] 6 | use std::{mem::transmute, cell::Cell, ops::Range}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/sprites.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 72 | _ => {} [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/sprites.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 36 | VillagerClan::Villager => { [INFO] [stdout] | ---------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 40 | VillagerClan::Smith(_) => { [INFO] [stdout] | ---------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 44 | VillagerClan::Farmer => { [INFO] [stdout] | -------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 51 | VillagerClan::Golem(_, GolemState::Idle) => { [INFO] [stdout] | ---------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 72 | _ => {} [INFO] [stdout] | ^ ...and 2 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cursor` [INFO] [stdout] --> src/lib.rs:343:53 [INFO] [stdout] | [INFO] [stdout] 343 | fn can_we_spawn_villagers(cell: &CellState, cursor: u16) -> bool { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_cursor` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index_objective` [INFO] [stdout] --> src/lib.rs:651:33 [INFO] [stdout] | [INFO] [stdout] 651 | fn try_move(index: u16, index_objective: u16, grid: &mut [CellState]) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_index_objective` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `grid` [INFO] [stdout] --> src/lib.rs:673:55 [INFO] [stdout] | [INFO] [stdout] 673 | fn pathfind(index: u16, index_objective: u16, grid: &mut [CellState]) -> u16 { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_grid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `current_score` is assigned to, but never used [INFO] [stdout] --> src/lib.rs:675:17 [INFO] [stdout] | [INFO] [stdout] 675 | let mut current_score: u16 = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_current_score` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `neighbour` [INFO] [stdout] --> src/lib.rs:684:21 [INFO] [stdout] | [INFO] [stdout] 684 | for neighbour in get_neighbours(current).iter() { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_neighbour` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `current_score` is never read [INFO] [stdout] --> src/lib.rs:688:17 [INFO] [stdout] | [INFO] [stdout] 688 | current_score += 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> src/lib.rs:1026:38 [INFO] [stdout] | [INFO] [stdout] 1026 | CellState::House(state, i) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> src/lib.rs:1039:39 [INFO] [stdout] | [INFO] [stdout] 1039 | CellState::House2(state, i) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Direction` is never used [INFO] [stdout] --> src/lib.rs:133:6 [INFO] [stdout] | [INFO] [stdout] 133 | enum Direction { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `goals` is never read [INFO] [stdout] --> src/lib.rs:186:5 [INFO] [stdout] | [INFO] [stdout] 170 | struct Game { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] ... [INFO] [stdout] 186 | goals: [u8; 4], [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `swap_cells` is never used [INFO] [stdout] --> src/lib.rs:645:12 [INFO] [stdout] | [INFO] [stdout] 645 | fn swap_cells(src: u16, dst: u16, grid: &mut [CellState]) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `try_move` is never used [INFO] [stdout] --> src/lib.rs:651:12 [INFO] [stdout] | [INFO] [stdout] 651 | fn try_move(index: u16, index_objective: u16, grid: &mut [CellState]) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pathfind` is never used [INFO] [stdout] --> src/lib.rs:673:12 [INFO] [stdout] | [INFO] [stdout] 673 | fn pathfind(index: u16, index_objective: u16, grid: &mut [CellState]) -> u16 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `apply_direction` is never used [INFO] [stdout] --> src/lib.rs:1252:4 [INFO] [stdout] | [INFO] [stdout] 1252 | fn apply_direction(index: u16, dir: Direction) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_neighbours` is never used [INFO] [stdout] --> src/lib.rs:1342:4 [INFO] [stdout] | [INFO] [stdout] 1342 | fn get_neighbours(index: u16) -> [u16; 8] { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `random_direction` is never used [INFO] [stdout] --> src/lib.rs:1399:4 [INFO] [stdout] | [INFO] [stdout] 1399 | fn random_direction() -> Direction { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `random_direction_with_diagonal` is never used [INFO] [stdout] --> src/lib.rs:1403:4 [INFO] [stdout] | [INFO] [stdout] 1403 | fn random_direction_with_diagonal() -> Direction { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/lib.rs:1414:5 [INFO] [stdout] | [INFO] [stdout] 1414 | GAME.as_mut().unwrap().run(); [INFO] [stdout] | ^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/alloc.rs:13:42 [INFO] [stdout] | [INFO] [stdout] 13 | let fast_param = FastAllocParam::new(FAST_HEAP.as_ptr(), FAST_HEAP_SIZE); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/alloc.rs:14:44 [INFO] [stdout] | [INFO] [stdout] 14 | let buddy_param = BuddyAllocParam::new(HEAP.as_ptr(), HEAP_SIZE, LEAF_SIZE); [INFO] [stdout] | ^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `play_me_some_tones______boy` should have a snake case name [INFO] [stdout] --> src/sound.rs:11:15 [INFO] [stdout] | [INFO] [stdout] 11 | pub unsafe fn play_me_some_tones______boy(noise: Noise) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `play_me_some_tones_boy` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: linking with `rust-lld` failed: exit status: 1 [INFO] [stdout] | [INFO] [stdout] = note: "rust-lld" "-flavor" "wasm" "--export" "start" "--export" "update" "-z" "stack-size=1048576" "--stack-first" "--no-demangle" "<10 object files omitted>" "/lib/rustlib/wasm32-wasip1/lib/libpanic_abort-*.rlib" "/opt/rustwide/target/wasm32-wasip1/debug/deps/{libitoa-9c1bb7077bf41900,libfastrand-99331fcc6afd0878,libbuddy_alloc-62cb1ded73822996}.rlib" "/lib/rustlib/wasm32-wasip1/lib/{libstd-*,libwasi-*,libcfg_if-*,librustc_demangle-*,libstd_detect-*,libhashbrown-*,librustc_std_workspace_alloc-*,libminiz_oxide-*,libadler2-*,libunwind-*,liblibc-*}.rlib" "-l" "c" "/lib/rustlib/wasm32-wasip1/lib/{librustc_std_workspace_core-*,liballoc-*,libcore-*,libcompiler_builtins-*}.rlib" "-L" "/lib/rustlib/wasm32-wasip1/lib/self-contained" "-o" "/opt/rustwide/target/wasm32-wasip1/debug/deps/cart.wasm" "--gc-sections" "--no-entry" "-O0" [INFO] [stdout] = note: some arguments are omitted. use `--verbose` to show all linker arguments [INFO] [stdout] = note: rust-lld: error: /opt/rustwide/target/wasm32-wasip1/debug/deps/cart.cart.de2e8564f1ce367b-cgu.1.rcgu.o: undefined symbol: diskr [INFO] [stdout] rust-lld: error: /opt/rustwide/target/wasm32-wasip1/debug/deps/cart.cart.de2e8564f1ce367b-cgu.1.rcgu.o: undefined symbol: diskw [INFO] [stdout] rust-lld: error: /opt/rustwide/target/wasm32-wasip1/debug/deps/cart.cart.de2e8564f1ce367b-cgu.7.rcgu.o: undefined symbol: textUtf8 [INFO] [stdout] rust-lld: error: /opt/rustwide/target/wasm32-wasip1/debug/deps/cart.cart.de2e8564f1ce367b-cgu.7.rcgu.o: undefined symbol: traceUtf8 [INFO] [stdout] rust-lld: error: /opt/rustwide/target/wasm32-wasip1/debug/deps/cart.cart.de2e8564f1ce367b-cgu.7.rcgu.o: undefined symbol: rect [INFO] [stdout] rust-lld: error: /opt/rustwide/target/wasm32-wasip1/debug/deps/cart.cart.de2e8564f1ce367b-cgu.7.rcgu.o: undefined symbol: tone [INFO] [stdout] rust-lld: error: /opt/rustwide/target/wasm32-wasip1/debug/deps/cart.cart.de2e8564f1ce367b-cgu.7.rcgu.o: undefined symbol: blitSub [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: cart@0.1.0: Packing sprites... [INFO] [stderr] warning: cart@0.1.0: Packing sprite: sprite.png [INFO] [stderr] warning: cart@0.1.0: Widht: 80, Height: 190 [INFO] [stderr] warning: cart@0.1.0: Palette Count: 4 [INFO] [stderr] warning: cart@0.1.0: Buffer Size: 15200 [INFO] [stderr] warning: cart@0.1.0: Palette: [0, 0, 0, 234, 207, 178, 198, 148, 120, 138, 85, 67, 68, 29, 31] [INFO] [stderr] warning: cart@0.1.0: Read-only file system (os error 30) [INFO] [stderr] warning: cart@0.1.0: Packing sprite: example-ui.png [INFO] [stderr] warning: cart@0.1.0: Widht: 160, Height: 160 [INFO] [stderr] warning: cart@0.1.0: Palette Count: 4 [INFO] [stderr] warning: cart@0.1.0: Buffer Size: 25600 [INFO] [stderr] warning: cart@0.1.0: Palette: [0, 0, 0, 198, 148, 120, 234, 207, 178, 138, 85, 67, 68, 29, 31] [INFO] [stderr] warning: cart@0.1.0: Read-only file system (os error 30) [INFO] [stderr] error: could not compile `cart` (lib) due to 1 previous error; 25 warnings emitted [INFO] running `Command { std: "docker" "inspect" "5f7dab037d7d9f309a28b6b9475762c2c598e2be777b92fd3094fc126c850edf", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5f7dab037d7d9f309a28b6b9475762c2c598e2be777b92fd3094fc126c850edf", kill_on_drop: false }` [INFO] [stdout] 5f7dab037d7d9f309a28b6b9475762c2c598e2be777b92fd3094fc126c850edf