[INFO] cloning repository https://github.com/AlterionX/crossarena [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AlterionX/crossarena" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlterionX%2Fcrossarena", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlterionX%2Fcrossarena'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d3413071e091cdf9e7f0e9a21256fe637bb22c8c [INFO] checking AlterionX/crossarena against try#a7a572ce3edd6d476191fbfe92c9c1986e009b34 for pr-87190-3 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlterionX%2Fcrossarena" "/workspace/builds/worker-10/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-10/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/AlterionX/crossarena on toolchain a7a572ce3edd6d476191fbfe92c9c1986e009b34 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a7a572ce3edd6d476191fbfe92c9c1986e009b34" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/AlterionX/crossarena [INFO] finished tweaking git repo https://github.com/AlterionX/crossarena [INFO] tweaked toml for git repo https://github.com/AlterionX/crossarena written to /workspace/builds/worker-10/source/Cargo.toml [INFO] crate git repo https://github.com/AlterionX/crossarena already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a7a572ce3edd6d476191fbfe92c9c1986e009b34" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating git repository `https://github.com/GodotNativeTools/godot-rust` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+a7a572ce3edd6d476191fbfe92c9c1986e009b34" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0e25fc36064f13703b930e5457d4890560b0523ec8cf82558693b648ba15447c [INFO] running `Command { std: "docker" "start" "-a" "0e25fc36064f13703b930e5457d4890560b0523ec8cf82558693b648ba15447c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0e25fc36064f13703b930e5457d4890560b0523ec8cf82558693b648ba15447c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0e25fc36064f13703b930e5457d4890560b0523ec8cf82558693b648ba15447c", kill_on_drop: false }` [INFO] [stdout] 0e25fc36064f13703b930e5457d4890560b0523ec8cf82558693b648ba15447c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/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" "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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+a7a572ce3edd6d476191fbfe92c9c1986e009b34" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b36e91f24fbadbd498e1e3fde972c0b187fa7d64169d2f9e7cc5f3df7ea07f76 [INFO] running `Command { std: "docker" "start" "-a" "b36e91f24fbadbd498e1e3fde972c0b187fa7d64169d2f9e7cc5f3df7ea07f76", kill_on_drop: false }` [INFO] [stderr] Copying to /tmp/fixit [INFO] [stderr] Running `cargo fix --edition` [INFO] [stderr] note: Switching to Edition 2021 will enable the use of the version 2 feature resolver in Cargo. [INFO] [stderr] This may cause some dependencies to be built with fewer features enabled than previously. [INFO] [stderr] More information about the resolver changes may be found at https://doc.rust-lang.org/nightly/edition-guide/rust-2021/default-cargo-resolver.html [INFO] [stderr] When building the following dependencies, the given features will no longer be used: [INFO] [stderr] [INFO] [stderr] libc v0.2.65 (as host dependency): default, std [INFO] [stderr] serde v1.0.103: derive, serde_derive [INFO] [stderr] [INFO] [stderr] Compiling libc v0.2.65 [INFO] [stderr] Compiling autocfg v0.1.7 [INFO] [stderr] Compiling unicode-xid v0.2.0 [INFO] [stderr] Compiling syn v1.0.8 [INFO] [stderr] Compiling cc v1.0.47 [INFO] [stderr] Compiling version_check v0.1.5 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling byteorder v1.3.2 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling unicode-segmentation v1.6.0 [INFO] [stderr] Compiling regex-syntax v0.6.12 [INFO] [stderr] Compiling bindgen v0.51.1 [INFO] [stderr] Compiling getrandom v0.1.13 [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Checking scopeguard v1.0.0 [INFO] [stderr] Checking mint v0.5.3 [INFO] [stderr] Compiling typenum v1.11.2 [INFO] [stderr] Compiling libm v0.1.4 [INFO] [stderr] Checking rawpointer v0.2.1 [INFO] [stderr] Checking itoa v0.4.4 [INFO] [stderr] Checking tap v0.4.0 [INFO] [stderr] Checking maplit v1.0.2 [INFO] [stderr] Checking boolinator v2.4.0 [INFO] [stderr] Compiling clang-sys v0.28.1 [INFO] [stderr] Checking c2-chacha v0.2.3 [INFO] [stderr] Compiling memchr v2.2.1 [INFO] [stderr] Checking ryu v1.0.2 [INFO] [stderr] Checking itertools v0.8.2 [INFO] [stderr] Checking smallvec v0.6.13 [INFO] [stderr] Checking matrixmultiply v0.2.3 [INFO] [stderr] Compiling proc-macro2 v1.0.6 [INFO] [stderr] Checking lock_api v0.3.1 [INFO] [stderr] Compiling thread_local v0.3.6 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling aho-corasick v0.7.6 [INFO] [stderr] Compiling heck v0.3.1 [INFO] [stderr] Compiling nom v4.2.3 [INFO] [stderr] Compiling num-traits v0.2.9 [INFO] [stderr] Compiling num-integer v0.1.41 [INFO] [stderr] Compiling num-complex v0.2.3 [INFO] [stderr] Compiling num-rational v0.2.2 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling quote v1.0.2 [INFO] [stderr] Checking time v0.1.42 [INFO] [stderr] Checking atty v0.2.13 [INFO] [stderr] Compiling rustc-hash v1.0.1 [INFO] [stderr] Checking colored v1.9.0 [INFO] [stderr] Compiling parking_lot_core v0.6.2 [INFO] [stderr] Compiling parking_lot v0.9.0 [INFO] [stderr] Compiling libloading v0.5.2 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking generic-array v0.13.2 [INFO] [stderr] Checking rand_chacha v0.2.1 [INFO] [stderr] Compiling cexpr v0.3.6 [INFO] [stderr] Checking rand v0.7.2 [INFO] [stderr] Checking euclid v0.20.3 [INFO] [stderr] Checking approx v0.3.2 [INFO] [stderr] Checking chrono v0.4.9 [INFO] [stderr] Checking alga v0.9.2 [INFO] [stderr] Checking rand_distr v0.2.2 [INFO] [stderr] Checking fern v0.5.9 [INFO] [stderr] Checking nalgebra v0.19.0 [INFO] [stderr] Compiling regex v1.3.1 [INFO] [stderr] Compiling serde_derive v1.0.103 [INFO] [stderr] Compiling gdnative-derive v0.5.0 (https://github.com/GodotNativeTools/godot-rust?rev=e95c7e6e8ec0cade723c6bda5dbb5c72b6fcb6a8#e95c7e6e) [INFO] [stderr] Compiling serde v1.0.103 [INFO] [stderr] Checking serde_json v1.0.42 [INFO] [stderr] Compiling gdnative_bindings_generator v0.2.0 (https://github.com/GodotNativeTools/godot-rust?rev=e95c7e6e8ec0cade723c6bda5dbb5c72b6fcb6a8#e95c7e6e) [INFO] [stderr] Compiling gdnative-sys v0.5.0 (https://github.com/GodotNativeTools/godot-rust?rev=e95c7e6e8ec0cade723c6bda5dbb5c72b6fcb6a8#e95c7e6e) [INFO] [stderr] Compiling gdnative-core v0.5.0 (https://github.com/GodotNativeTools/godot-rust?rev=e95c7e6e8ec0cade723c6bda5dbb5c72b6fcb6a8#e95c7e6e) [INFO] [stderr] Compiling gdnative-bindings v0.1.0 (https://github.com/GodotNativeTools/godot-rust?rev=e95c7e6e8ec0cade723c6bda5dbb5c72b6fcb6a8#e95c7e6e) [INFO] [stderr] Checking gdnative v0.5.0 (https://github.com/GodotNativeTools/godot-rust?rev=e95c7e6e8ec0cade723c6bda5dbb5c72b6fcb6a8#e95c7e6e) [INFO] [stderr] Checking crossarena v0.1.0 (/tmp/fixit) [INFO] [stderr] Migrating src/lib.rs from 2018 edition to 2021 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `crossarena` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/event_bus.rs [INFO] [stderr] * src/records.rs [INFO] [stderr] * src/ui/start.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: proc-macro derive panicked [INFO] [stderr] --> src/event_bus.rs:7:10 [INFO] [stderr] | [INFO] [stderr] 7 | #[derive(NativeClass)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: message: No "inherit" attribute found [INFO] [stderr] [INFO] [stderr] error: proc-macro derive panicked [INFO] [stderr] --> src/records.rs:16:10 [INFO] [stderr] | [INFO] [stderr] 16 | #[derive(NativeClass)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: message: No "inherit" attribute found [INFO] [stderr] [INFO] [stderr] error: proc-macro derive panicked [INFO] [stderr] --> src/ui/start.rs:3:10 [INFO] [stderr] | [INFO] [stderr] 3 | #[derive(NativeClass)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: message: No "inherit" attribute found [INFO] [stderr] [INFO] [stderr] error: cannot find attribute `inheritNode` in this scope [INFO] [stderr] --> src/event_bus.rs:8:3 [INFO] [stderr] | [INFO] [stderr] 8 | #[inheritNode] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: cannot find attribute `inheritNode` in this scope [INFO] [stderr] --> src/records.rs:17:3 [INFO] [stderr] | [INFO] [stderr] 17 | #[inheritNode] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: cannot find attribute `inheritControl` in this scope [INFO] [stderr] --> src/ui/start.rs:4:3 [INFO] [stderr] | [INFO] [stderr] 4 | #[inheritControl] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `Records: NativeClass` is not satisfied [INFO] [stderr] --> src/records.rs:23:40 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn get_autoload(node: Node) -> Option> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ the trait `NativeClass` is not implemented for `Records` [INFO] [stderr] | [INFO] [stderr] note: required by a bound in `godot::Instance` [INFO] [stderr] --> /opt/rustwide/cargo-home/git/checkouts/godot-rust-6b1e607c51143c56/e95c7e6/gdnative-core/src/class.rs:75:24 [INFO] [stderr] | [INFO] [stderr] 75 | pub struct Instance { [INFO] [stderr] | ^^^^^^^^^^^ required by this bound in `godot::Instance` [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `EventBus: NativeClass` is not satisfied [INFO] [stderr] --> src/event_bus.rs:11:1 [INFO] [stderr] | [INFO] [stderr] 11 | #[gdnative::methods] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ the trait `NativeClass` is not implemented for `EventBus` [INFO] [stderr] | [INFO] [stderr] note: required by a bound in `NativeClassMethods` [INFO] [stderr] --> /opt/rustwide/cargo-home/git/checkouts/godot-rust-6b1e607c51143c56/e95c7e6/gdnative-core/src/class.rs:68:31 [INFO] [stderr] | [INFO] [stderr] 68 | pub trait NativeClassMethods: NativeClass { [INFO] [stderr] | ^^^^^^^^^^^ required by this bound in `NativeClassMethods` [INFO] [stderr] = note: this error originates in the attribute macro `gdnative::methods` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `EventBus: NativeClass` is not satisfied [INFO] [stderr] --> src/event_bus.rs:11:1 [INFO] [stderr] | [INFO] [stderr] 11 | #[gdnative::methods] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ the trait `NativeClass` is not implemented for `EventBus` [INFO] [stderr] | [INFO] [stderr] note: required by a bound in `ClassBuilder` [INFO] [stderr] --> /opt/rustwide/cargo-home/git/checkouts/godot-rust-6b1e607c51143c56/e95c7e6/gdnative-core/src/init.rs:245:28 [INFO] [stderr] | [INFO] [stderr] 245 | pub struct ClassBuilder { [INFO] [stderr] | ^^^^^^^^^^^ required by this bound in `ClassBuilder` [INFO] [stderr] = note: this error originates in the attribute macro `gdnative::methods` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `Records: NativeClass` is not satisfied [INFO] [stderr] --> src/records.rs:44:1 [INFO] [stderr] | [INFO] [stderr] 44 | #[gdnative::methods] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ the trait `NativeClass` is not implemented for `Records` [INFO] [stderr] | [INFO] [stderr] note: required by a bound in `NativeClassMethods` [INFO] [stderr] --> /opt/rustwide/cargo-home/git/checkouts/godot-rust-6b1e607c51143c56/e95c7e6/gdnative-core/src/class.rs:68:31 [INFO] [stderr] | [INFO] [stderr] 68 | pub trait NativeClassMethods: NativeClass { [INFO] [stderr] | ^^^^^^^^^^^ required by this bound in `NativeClassMethods` [INFO] [stderr] = note: this error originates in the attribute macro `gdnative::methods` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `Records: NativeClass` is not satisfied [INFO] [stderr] --> src/records.rs:44:1 [INFO] [stderr] | [INFO] [stderr] 44 | #[gdnative::methods] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ the trait `NativeClass` is not implemented for `Records` [INFO] [stderr] | [INFO] [stderr] note: required by a bound in `ClassBuilder` [INFO] [stderr] --> /opt/rustwide/cargo-home/git/checkouts/godot-rust-6b1e607c51143c56/e95c7e6/gdnative-core/src/init.rs:245:28 [INFO] [stderr] | [INFO] [stderr] 245 | pub struct ClassBuilder { [INFO] [stderr] | ^^^^^^^^^^^ required by this bound in `ClassBuilder` [INFO] [stderr] = note: this error originates in the attribute macro `gdnative::methods` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `start::Start: NativeClass` is not satisfied [INFO] [stderr] --> src/ui/start.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | #[methods] [INFO] [stderr] | ^^^^^^^^^^ the trait `NativeClass` is not implemented for `start::Start` [INFO] [stderr] | [INFO] [stderr] note: required by a bound in `NativeClassMethods` [INFO] [stderr] --> /opt/rustwide/cargo-home/git/checkouts/godot-rust-6b1e607c51143c56/e95c7e6/gdnative-core/src/class.rs:68:31 [INFO] [stderr] | [INFO] [stderr] 68 | pub trait NativeClassMethods: NativeClass { [INFO] [stderr] | ^^^^^^^^^^^ required by this bound in `NativeClassMethods` [INFO] [stderr] = note: this error originates in the attribute macro `methods` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `start::Start: NativeClass` is not satisfied [INFO] [stderr] --> src/ui/start.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | #[methods] [INFO] [stderr] | ^^^^^^^^^^ the trait `NativeClass` is not implemented for `start::Start` [INFO] [stderr] | [INFO] [stderr] note: required by a bound in `ClassBuilder` [INFO] [stderr] --> /opt/rustwide/cargo-home/git/checkouts/godot-rust-6b1e607c51143c56/e95c7e6/gdnative-core/src/init.rs:245:28 [INFO] [stderr] | [INFO] [stderr] 245 | pub struct ClassBuilder { [INFO] [stderr] | ^^^^^^^^^^^ required by this bound in `ClassBuilder` [INFO] [stderr] = note: this error originates in the attribute macro `methods` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: aborting due to 13 previous errors [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0277`. [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: unused imports: `GodotString`, `Property` [INFO] [stdout] --> src/entity/enemy.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | GodotString, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 9 | init::{ClassBuilder, Property, Signal, SignalArgument, PropertyHint, PropertyUsage,}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DEFAULT_USAGE` [INFO] [stdout] --> src/entity/enemy.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | DEFAULT_USAGE, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `GodotString`, `Property` [INFO] [stdout] --> src/entity/enemy.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | GodotString, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 9 | init::{ClassBuilder, Property, Signal, SignalArgument, PropertyHint, PropertyUsage,}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DEFAULT_USAGE` [INFO] [stdout] --> src/entity/enemy.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | DEFAULT_USAGE, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Variant` [INFO] [stdout] --> src/entity/forge.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | Variant, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GodotString` [INFO] [stdout] --> src/entity/projectile.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | GodotString, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Variant` [INFO] [stdout] --> src/entity/forge.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | Variant, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self as godot` [INFO] [stdout] --> src/event_bus.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | self as godot, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GodotString` [INFO] [stdout] --> src/entity/projectile.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | GodotString, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self as godot` [INFO] [stdout] --> src/event_bus.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | self as godot, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/event_bus.rs:9:10 [INFO] [stdout] | [INFO] [stdout] 9 | #[inherit(Node)] [INFO] [stdout] | ^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/records.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | #[inherit(Node)] [INFO] [stdout] | ^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/event_bus.rs:9:10 [INFO] [stdout] | [INFO] [stdout] 9 | #[inherit(Node)] [INFO] [stdout] | ^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/ui/start.rs:4:10 [INFO] [stdout] | [INFO] [stdout] 4 | #[inherit(Control)] [INFO] [stdout] | ^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/records.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | #[inherit(Node)] [INFO] [stdout] | ^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/ui/start.rs:4:10 [INFO] [stdout] | [INFO] [stdout] 4 | #[inherit(Control)] [INFO] [stdout] | ^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Container`, `Control`, `GodotString` [INFO] [stdout] --> src/ui/inventory.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | Control, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 5 | Container, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 6 | GodotString, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Container`, `Control`, `GodotString` [INFO] [stdout] --> src/ui/inventory.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | Control, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 5 | Container, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 6 | GodotString, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: changes to closure capture in Rust 2021 will affect `Sync`, `Send` trait implementation for closure [INFO] [stdout] --> src/systems/aim.rs:677:9 [INFO] [stdout] | [INFO] [stdout] 677 | (|| { [INFO] [stdout] | ^^^ [INFO] [stdout] | | [INFO] [stdout] | in Rust 2018, this closure implements `Sync`, `Send` as `cache` implements `Sync`, `Send`, but in Rust 2021, this closure will no longer implement `Sync`, `Send` as `*cache.charged_projectile_scene` does not implement `Sync`, `Send` [INFO] [stdout] | in Rust 2018, this closure implements `Sync`, `Send` as `cache` implements `Sync`, `Send`, but in Rust 2021, this closure will no longer implement `Sync`, `Send` as `*cache.projectile_scene` does not implement `Sync`, `Send` [INFO] [stdout] ... [INFO] [stdout] 682 | &cache.charged_projectile_scene [INFO] [stdout] | ------------------------------ in Rust 2018, this closure captures all of `cache`, but in Rust 2021, it will only capture `*cache.charged_projectile_scene` [INFO] [stdout] 683 | } else { [INFO] [stdout] 684 | &cache.projectile_scene [INFO] [stdout] | ---------------------- in Rust 2018, this closure captures all of `cache`, but in Rust 2021, it will only capture `*cache.projectile_scene` [INFO] [stdout] | [INFO] [stdout] = note: `--force-warn rust-2021-incompatible-closure-captures` implied by `--force-warn rust-2021-compatibility` [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a dummy let to cause `cache` to be fully captured [INFO] [stdout] | [INFO] [stdout] 677 ~ (|| { [INFO] [stdout] 678 + let _ = &cache; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: changes to closure capture in Rust 2021 will affect `Sync`, `Send` trait implementation for closure [INFO] [stdout] --> src/systems/aim.rs:677:9 [INFO] [stdout] | [INFO] [stdout] 677 | (|| { [INFO] [stdout] | ^^^ [INFO] [stdout] | | [INFO] [stdout] | in Rust 2018, this closure implements `Sync`, `Send` as `cache` implements `Sync`, `Send`, but in Rust 2021, this closure will no longer implement `Sync`, `Send` as `*cache.charged_projectile_scene` does not implement `Sync`, `Send` [INFO] [stdout] | in Rust 2018, this closure implements `Sync`, `Send` as `cache` implements `Sync`, `Send`, but in Rust 2021, this closure will no longer implement `Sync`, `Send` as `*cache.projectile_scene` does not implement `Sync`, `Send` [INFO] [stdout] ... [INFO] [stdout] 682 | &cache.charged_projectile_scene [INFO] [stdout] | ------------------------------ in Rust 2018, this closure captures all of `cache`, but in Rust 2021, it will only capture `*cache.charged_projectile_scene` [INFO] [stdout] 683 | } else { [INFO] [stdout] 684 | &cache.projectile_scene [INFO] [stdout] | ---------------------- in Rust 2018, this closure captures all of `cache`, but in Rust 2021, it will only capture `*cache.projectile_scene` [INFO] [stdout] | [INFO] [stdout] = note: `--force-warn rust-2021-incompatible-closure-captures` implied by `--force-warn rust-2021-compatibility` [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a dummy let to cause `cache` to be fully captured [INFO] [stdout] | [INFO] [stdout] 677 ~ (|| { [INFO] [stdout] 678 + let _ = &cache; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/entity/player.rs:290:22 [INFO] [stdout] | [INFO] [stdout] 290 | .tap_ok(|e| log::info!("Successfully crafted {:?}!", recipe)); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `owner` [INFO] [stdout] --> src/entity/forge.rs:86:33 [INFO] [stdout] | [INFO] [stdout] 86 | fn instance_init(&mut self, owner: StaticBody2D, ui_node: Node) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_owner` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `owner` [INFO] [stdout] --> src/ui.rs:64:13 [INFO] [stdout] | [INFO] [stdout] 64 | fn init(owner: Self::Base) -> Self { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_owner` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `owner` [INFO] [stdout] --> src/ui/start.rs:9:14 [INFO] [stdout] | [INFO] [stdout] 9 | fn _init(owner: Control) -> Self { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_owner` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/entity/player.rs:290:22 [INFO] [stdout] | [INFO] [stdout] 290 | .tap_ok(|e| log::info!("Successfully crafted {:?}!", recipe)); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `owner` [INFO] [stdout] --> src/entity/forge.rs:86:33 [INFO] [stdout] | [INFO] [stdout] 86 | fn instance_init(&mut self, owner: StaticBody2D, ui_node: Node) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_owner` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `owner` [INFO] [stdout] --> src/ui.rs:64:13 [INFO] [stdout] | [INFO] [stdout] 64 | fn init(owner: Self::Base) -> Self { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_owner` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `owner` [INFO] [stdout] --> src/ui/start.rs:9:14 [INFO] [stdout] | [INFO] [stdout] 9 | fn _init(owner: Control) -> Self { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_owner` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/entity/arena.rs:207:35 [INFO] [stdout] | [INFO] [stdout] 207 | fn setup_next_wave(&mut self, mut owner: Node) { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/entity/arena.rs:207:35 [INFO] [stdout] | [INFO] [stdout] 207 | fn setup_next_wave(&mut self, mut owner: Node) { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `accel_time` [INFO] [stdout] --> src/entity/player.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | accel_time: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `remaining_accel` [INFO] [stdout] --> src/entity/player.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | remaining_accel: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `get_drops` [INFO] [stdout] --> src/entity/enemy.rs:387:12 [INFO] [stdout] | [INFO] [stdout] 387 | pub fn get_drops(&self, wave: u64) -> Vec { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `BEGIN_WAVE` [INFO] [stdout] --> src/ui.rs:53:5 [INFO] [stdout] | [INFO] [stdout] 53 | const BEGIN_WAVE: &'static str = "trigger_wave"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Full` [INFO] [stdout] --> src/systems/items.rs:93:5 [INFO] [stdout] | [INFO] [stdout] 93 | Full, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `MismatchedItemGroup` [INFO] [stdout] --> src/systems/items.rs:95:5 [INFO] [stdout] | [INFO] [stdout] 95 | MismatchedItemGroup(Vec), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `is_composed_of` [INFO] [stdout] --> src/systems/items.rs:109:8 [INFO] [stdout] | [INFO] [stdout] 109 | fn is_composed_of(&self, item: &Item) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `group_stacks` [INFO] [stdout] --> src/systems/items.rs:113:8 [INFO] [stdout] | [INFO] [stdout] 113 | fn group_stacks(stacks: Vec) -> HashMap> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `collapse_stacks` [INFO] [stdout] --> src/systems/items.rs:127:8 [INFO] [stdout] | [INFO] [stdout] 127 | fn collapse_stacks(mut stacks: Vec) -> Result, Error> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `OverflowItems` [INFO] [stdout] --> src/crafting.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | OverflowItems(Vec), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `accel_time` [INFO] [stdout] --> src/entity/player.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | accel_time: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `remaining_accel` [INFO] [stdout] --> src/entity/player.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | remaining_accel: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `get_drops` [INFO] [stdout] --> src/entity/enemy.rs:387:12 [INFO] [stdout] | [INFO] [stdout] 387 | pub fn get_drops(&self, wave: u64) -> Vec { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `BEGIN_WAVE` [INFO] [stdout] --> src/ui.rs:53:5 [INFO] [stdout] | [INFO] [stdout] 53 | const BEGIN_WAVE: &'static str = "trigger_wave"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Full` [INFO] [stdout] --> src/systems/items.rs:93:5 [INFO] [stdout] | [INFO] [stdout] 93 | Full, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `MismatchedItemGroup` [INFO] [stdout] --> src/systems/items.rs:95:5 [INFO] [stdout] | [INFO] [stdout] 95 | MismatchedItemGroup(Vec), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `is_composed_of` [INFO] [stdout] --> src/systems/items.rs:109:8 [INFO] [stdout] | [INFO] [stdout] 109 | fn is_composed_of(&self, item: &Item) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `group_stacks` [INFO] [stdout] --> src/systems/items.rs:113:8 [INFO] [stdout] | [INFO] [stdout] 113 | fn group_stacks(stacks: Vec) -> HashMap> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `collapse_stacks` [INFO] [stdout] --> src/systems/items.rs:127:8 [INFO] [stdout] | [INFO] [stdout] 127 | fn collapse_stacks(mut stacks: Vec) -> Result, Error> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `OverflowItems` [INFO] [stdout] --> src/crafting.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | OverflowItems(Vec), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/entity/player.rs:287:9 [INFO] [stdout] | [INFO] [stdout] 287 | / recipe [INFO] [stdout] 288 | | .attempt_craft(&mut self.inventory) [INFO] [stdout] 289 | | .tap_err(|e| log::error!("Failed to craft recipe {:?} due to {:?}.", recipe, e)) [INFO] [stdout] 290 | | .tap_ok(|e| log::info!("Successfully crafted {:?}!", recipe)); [INFO] [stdout] | |__________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/entity/forge.rs:104:21 [INFO] [stdout] | [INFO] [stdout] 104 | / instance.map_mut(|ui, base| ui.to_forge(base)) [INFO] [stdout] 105 | | .tap_err(|e| log::error!("Could not transition to forge due to {:?}.", e)); [INFO] [stdout] | |___________________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/entity/player.rs:287:9 [INFO] [stdout] | [INFO] [stdout] 287 | / recipe [INFO] [stdout] 288 | | .attempt_craft(&mut self.inventory) [INFO] [stdout] 289 | | .tap_err(|e| log::error!("Failed to craft recipe {:?} due to {:?}.", recipe, e)) [INFO] [stdout] 290 | | .tap_ok(|e| log::info!("Successfully crafted {:?}!", recipe)); [INFO] [stdout] | |__________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ui.rs:132:33 [INFO] [stdout] | [INFO] [stdout] 132 | / ... instance.map_mut(|ui, base| { [INFO] [stdout] 133 | | ... ui.render_recipes(base); [INFO] [stdout] 134 | | ... }) [INFO] [stdout] 135 | | ... .tap_err(|e| log::error!("Could not invoke `render_recipes` due to {:?}.", e)); [INFO] [stdout] | |_____________________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ui.rs:153:33 [INFO] [stdout] | [INFO] [stdout] 153 | / ... instance.map_mut(|ui, base| { [INFO] [stdout] 154 | | ... ui.render_inventory(base); [INFO] [stdout] 155 | | ... }) [INFO] [stdout] 156 | | ... .tap_err(|e| log::error!("Could not invoke `render_inventory` due to {:?}.", e)); [INFO] [stdout] | |_______________________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ui/inventory.rs:108:21 [INFO] [stdout] | [INFO] [stdout] 108 | / instance.map_mut(|player, base| { [INFO] [stdout] 109 | | if let Some(mut item_grid) = owner.get_node(self.item_grid_path.new_ref()) { [INFO] [stdout] 110 | | while let Some(child) = item_grid.get_child(0) { [INFO] [stdout] 111 | | item_grid.remove_child(Some(child)); [INFO] [stdout] ... | [INFO] [stdout] 126 | | }) [INFO] [stdout] 127 | | .tap_err(|e| log::error!("Could not render inventory due to {:?}.", e)); [INFO] [stdout] | |____________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ui/inventory.rs:119:37 [INFO] [stdout] | [INFO] [stdout] 119 | / ... button.connect("button_up".into(), Some(base.to_object()), "use_item".into(), arr, 0) [INFO] [stdout] 120 | | ... .tap_err(|e| log::error!("Could not connect item usage signal due to {:?}.", e)); [INFO] [stdout] | |___________________________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ui/inventory.rs:121:37 [INFO] [stdout] | [INFO] [stdout] 121 | / ... button.connect("button_up".into(), Some(owner.to_object()), "render_inventory".into(), VariantArray::new(), 0) [INFO] [stdout] 122 | | ... .tap_err(|e| log::error!("Could not connect item usage signal due to {:?}.", e)); [INFO] [stdout] | |___________________________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `base_pixel` should have an upper case name [INFO] [stdout] --> src/ui/crafting.rs:24:16 [INFO] [stdout] | [INFO] [stdout] 24 | static ref base_pixel: Item = Item { [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper case: `BASE_PIXEL` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/entity/forge.rs:104:21 [INFO] [stdout] | [INFO] [stdout] 104 | / instance.map_mut(|ui, base| ui.to_forge(base)) [INFO] [stdout] 105 | | .tap_err(|e| log::error!("Could not transition to forge due to {:?}.", e)); [INFO] [stdout] | |___________________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `moderate_pixel` should have an upper case name [INFO] [stdout] --> src/ui/crafting.rs:30:16 [INFO] [stdout] | [INFO] [stdout] 30 | static ref moderate_pixel: Item = Item { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `MODERATE_PIXEL` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `advanced_pixel` should have an upper case name [INFO] [stdout] --> src/ui/crafting.rs:36:16 [INFO] [stdout] | [INFO] [stdout] 36 | static ref advanced_pixel: Item = Item { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `ADVANCED_PIXEL` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `master_pixel` should have an upper case name [INFO] [stdout] --> src/ui/crafting.rs:42:16 [INFO] [stdout] | [INFO] [stdout] 42 | static ref master_pixel: Item = Item { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper case: `MASTER_PIXEL` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `generic_pixel` should have an upper case name [INFO] [stdout] --> src/ui/crafting.rs:48:16 [INFO] [stdout] | [INFO] [stdout] 48 | static ref generic_pixel: Item = Item { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `GENERIC_PIXEL` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `cheap_health_potion` should have an upper case name [INFO] [stdout] --> src/ui/crafting.rs:54:16 [INFO] [stdout] | [INFO] [stdout] 54 | static ref cheap_health_potion: Item = Item { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `CHEAP_HEALTH_POTION` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `health_elixir` should have an upper case name [INFO] [stdout] --> src/ui/crafting.rs:60:16 [INFO] [stdout] | [INFO] [stdout] 60 | static ref health_elixir: Item = Item { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `HEALTH_ELIXIR` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `recipes` should have an upper case name [INFO] [stdout] --> src/ui/crafting.rs:66:16 [INFO] [stdout] | [INFO] [stdout] 66 | static ref recipes: Vec = vec![ [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `RECIPES` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ui/crafting.rs:250:21 [INFO] [stdout] | [INFO] [stdout] 250 | / player.map_mut(move |player, base| { [INFO] [stdout] 251 | | if let Some(mut recipe_columns) = self.recipe_columns(&owner) { [INFO] [stdout] 252 | | while let Some(child) = recipe_columns.0.get_child(0) { [INFO] [stdout] 253 | | recipe_columns.0.remove_child(Some(child)); [INFO] [stdout] ... | [INFO] [stdout] 273 | | } [INFO] [stdout] 274 | | }).tap_err(|e| log::error!("Could not find player due to {:?}!", e)); [INFO] [stdout] | |_________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ui/crafting.rs:267:37 [INFO] [stdout] | [INFO] [stdout] 267 | ... mark.connect("button_up".into(), Some(base.to_object()), "craft_recipe".into(), arr, 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ui/crafting.rs:268:37 [INFO] [stdout] | [INFO] [stdout] 268 | ... mark.connect("button_up".into(), Some(owner.to_object()), "render_recipes".into(), VariantArray::new(), 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ui.rs:132:33 [INFO] [stdout] | [INFO] [stdout] 132 | / ... instance.map_mut(|ui, base| { [INFO] [stdout] 133 | | ... ui.render_recipes(base); [INFO] [stdout] 134 | | ... }) [INFO] [stdout] 135 | | ... .tap_err(|e| log::error!("Could not invoke `render_recipes` due to {:?}.", e)); [INFO] [stdout] | |_____________________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ui.rs:153:33 [INFO] [stdout] | [INFO] [stdout] 153 | / ... instance.map_mut(|ui, base| { [INFO] [stdout] 154 | | ... ui.render_inventory(base); [INFO] [stdout] 155 | | ... }) [INFO] [stdout] 156 | | ... .tap_err(|e| log::error!("Could not invoke `render_inventory` due to {:?}.", e)); [INFO] [stdout] | |_______________________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ui/inventory.rs:108:21 [INFO] [stdout] | [INFO] [stdout] 108 | / instance.map_mut(|player, base| { [INFO] [stdout] 109 | | if let Some(mut item_grid) = owner.get_node(self.item_grid_path.new_ref()) { [INFO] [stdout] 110 | | while let Some(child) = item_grid.get_child(0) { [INFO] [stdout] 111 | | item_grid.remove_child(Some(child)); [INFO] [stdout] ... | [INFO] [stdout] 126 | | }) [INFO] [stdout] 127 | | .tap_err(|e| log::error!("Could not render inventory due to {:?}.", e)); [INFO] [stdout] | |____________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ui/inventory.rs:119:37 [INFO] [stdout] | [INFO] [stdout] 119 | / ... button.connect("button_up".into(), Some(base.to_object()), "use_item".into(), arr, 0) [INFO] [stdout] 120 | | ... .tap_err(|e| log::error!("Could not connect item usage signal due to {:?}.", e)); [INFO] [stdout] | |___________________________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ui/inventory.rs:121:37 [INFO] [stdout] | [INFO] [stdout] 121 | / ... button.connect("button_up".into(), Some(owner.to_object()), "render_inventory".into(), VariantArray::new(), 0) [INFO] [stdout] 122 | | ... .tap_err(|e| log::error!("Could not connect item usage signal due to {:?}.", e)); [INFO] [stdout] | |___________________________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `base_pixel` should have an upper case name [INFO] [stdout] --> src/ui/crafting.rs:24:16 [INFO] [stdout] | [INFO] [stdout] 24 | static ref base_pixel: Item = Item { [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper case: `BASE_PIXEL` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `moderate_pixel` should have an upper case name [INFO] [stdout] --> src/ui/crafting.rs:30:16 [INFO] [stdout] | [INFO] [stdout] 30 | static ref moderate_pixel: Item = Item { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `MODERATE_PIXEL` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `advanced_pixel` should have an upper case name [INFO] [stdout] --> src/ui/crafting.rs:36:16 [INFO] [stdout] | [INFO] [stdout] 36 | static ref advanced_pixel: Item = Item { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `ADVANCED_PIXEL` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `master_pixel` should have an upper case name [INFO] [stdout] --> src/ui/crafting.rs:42:16 [INFO] [stdout] | [INFO] [stdout] 42 | static ref master_pixel: Item = Item { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper case: `MASTER_PIXEL` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `generic_pixel` should have an upper case name [INFO] [stdout] --> src/ui/crafting.rs:48:16 [INFO] [stdout] | [INFO] [stdout] 48 | static ref generic_pixel: Item = Item { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `GENERIC_PIXEL` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `cheap_health_potion` should have an upper case name [INFO] [stdout] --> src/ui/crafting.rs:54:16 [INFO] [stdout] | [INFO] [stdout] 54 | static ref cheap_health_potion: Item = Item { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `CHEAP_HEALTH_POTION` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `health_elixir` should have an upper case name [INFO] [stdout] --> src/ui/crafting.rs:60:16 [INFO] [stdout] | [INFO] [stdout] 60 | static ref health_elixir: Item = Item { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `HEALTH_ELIXIR` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `recipes` should have an upper case name [INFO] [stdout] --> src/ui/crafting.rs:66:16 [INFO] [stdout] | [INFO] [stdout] 66 | static ref recipes: Vec = vec![ [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `RECIPES` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ui/crafting.rs:250:21 [INFO] [stdout] | [INFO] [stdout] 250 | / player.map_mut(move |player, base| { [INFO] [stdout] 251 | | if let Some(mut recipe_columns) = self.recipe_columns(&owner) { [INFO] [stdout] 252 | | while let Some(child) = recipe_columns.0.get_child(0) { [INFO] [stdout] 253 | | recipe_columns.0.remove_child(Some(child)); [INFO] [stdout] ... | [INFO] [stdout] 273 | | } [INFO] [stdout] 274 | | }).tap_err(|e| log::error!("Could not find player due to {:?}!", e)); [INFO] [stdout] | |_________________________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ui/crafting.rs:267:37 [INFO] [stdout] | [INFO] [stdout] 267 | ... mark.connect("button_up".into(), Some(base.to_object()), "craft_recipe".into(), arr, 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ui/crafting.rs:268:37 [INFO] [stdout] | [INFO] [stdout] 268 | ... mark.connect("button_up".into(), Some(owner.to_object()), "render_recipes".into(), VariantArray::new(), 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 43 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 43 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 39s [INFO] [stderr] Running `cargo check` to verify 2021 [INFO] [stderr] Compiling libc v0.2.65 [INFO] [stderr] Checking serde_json v1.0.42 [INFO] [stderr] Compiling clang-sys v0.28.1 [INFO] [stderr] Compiling bindgen v0.51.1 [INFO] [stderr] Compiling gdnative-sys v0.5.0 (https://github.com/GodotNativeTools/godot-rust?rev=e95c7e6e8ec0cade723c6bda5dbb5c72b6fcb6a8#e95c7e6e) [INFO] [stderr] Checking gdnative-core v0.5.0 (https://github.com/GodotNativeTools/godot-rust?rev=e95c7e6e8ec0cade723c6bda5dbb5c72b6fcb6a8#e95c7e6e) [INFO] [stderr] Checking gdnative-bindings v0.1.0 (https://github.com/GodotNativeTools/godot-rust?rev=e95c7e6e8ec0cade723c6bda5dbb5c72b6fcb6a8#e95c7e6e) [INFO] [stderr] Checking gdnative v0.5.0 (https://github.com/GodotNativeTools/godot-rust?rev=e95c7e6e8ec0cade723c6bda5dbb5c72b6fcb6a8#e95c7e6e) [INFO] [stderr] Checking crossarena v0.1.0 (/tmp/fixit) [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/systems/items.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/systems/items.rs:6:21 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/systems/items.rs:25:10 [INFO] [stdout] | [INFO] [stdout] 25 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/systems/items.rs:25:21 [INFO] [stdout] | [INFO] [stdout] 25 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/systems/items.rs:39:10 [INFO] [stdout] | [INFO] [stdout] 39 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/systems/items.rs:39:21 [INFO] [stdout] | [INFO] [stdout] 39 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/systems/items.rs:57:10 [INFO] [stdout] | [INFO] [stdout] 57 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/systems/items.rs:57:21 [INFO] [stdout] | [INFO] [stdout] 57 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/systems/items.rs:77:10 [INFO] [stdout] | [INFO] [stdout] 77 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/systems/items.rs:77:21 [INFO] [stdout] | [INFO] [stdout] 77 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/systems/items.rs:100:10 [INFO] [stdout] | [INFO] [stdout] 100 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/systems/items.rs:100:21 [INFO] [stdout] | [INFO] [stdout] 100 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/crafting.rs:31:10 [INFO] [stdout] | [INFO] [stdout] 31 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/crafting.rs:31:21 [INFO] [stdout] | [INFO] [stdout] 31 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/systems/items.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/systems/items.rs:6:21 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/systems/items.rs:25:10 [INFO] [stdout] | [INFO] [stdout] 25 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/systems/items.rs:25:21 [INFO] [stdout] | [INFO] [stdout] 25 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/systems/items.rs:39:10 [INFO] [stdout] | [INFO] [stdout] 39 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/systems/items.rs:39:21 [INFO] [stdout] | [INFO] [stdout] 39 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/systems/items.rs:57:10 [INFO] [stdout] | [INFO] [stdout] 57 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/systems/items.rs:57:21 [INFO] [stdout] | [INFO] [stdout] 57 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/systems/items.rs:77:10 [INFO] [stdout] | [INFO] [stdout] 77 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/systems/items.rs:77:21 [INFO] [stdout] | [INFO] [stdout] 77 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/systems/items.rs:100:10 [INFO] [stdout] | [INFO] [stdout] 100 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/systems/items.rs:100:21 [INFO] [stdout] | [INFO] [stdout] 100 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `GodotString`, `Property` [INFO] [stdout] --> src/entity/enemy.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | GodotString, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 9 | init::{ClassBuilder, Property, Signal, SignalArgument, PropertyHint, PropertyUsage,}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DEFAULT_USAGE` [INFO] [stdout] --> src/entity/enemy.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | DEFAULT_USAGE, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Variant` [INFO] [stdout] --> src/entity/forge.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | Variant, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GodotString` [INFO] [stdout] --> src/entity/projectile.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | GodotString, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self as godot` [INFO] [stdout] --> src/event_bus.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | self as godot, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/event_bus.rs:9:10 [INFO] [stdout] | [INFO] [stdout] 9 | #[inherit(Node)] [INFO] [stdout] | ^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/records.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | #[inherit(Node)] [INFO] [stdout] | ^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Serialize` in this scope [INFO] [stdout] --> src/crafting.rs:31:10 [INFO] [stdout] | [INFO] [stdout] 31 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/ui/start.rs:4:10 [INFO] [stdout] | [INFO] [stdout] 4 | #[inherit(Control)] [INFO] [stdout] | ^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Container`, `Control`, `GodotString` [INFO] [stdout] --> src/ui/inventory.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | Control, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 5 | Container, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 6 | GodotString, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope [INFO] [stdout] --> src/crafting.rs:31:21 [INFO] [stdout] | [INFO] [stdout] 31 | #[derive(Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize`, `Serialize` [INFO] [stdout] --> src/systems/items.rs:2:13 [INFO] [stdout] | [INFO] [stdout] 2 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize`, `Serialize` [INFO] [stdout] --> src/crafting.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `GodotString`, `Property` [INFO] [stdout] --> src/entity/enemy.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | GodotString, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 9 | init::{ClassBuilder, Property, Signal, SignalArgument, PropertyHint, PropertyUsage,}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DEFAULT_USAGE` [INFO] [stdout] --> src/entity/enemy.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | DEFAULT_USAGE, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Variant` [INFO] [stdout] --> src/entity/forge.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | Variant, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GodotString` [INFO] [stdout] --> src/entity/projectile.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | GodotString, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self as godot` [INFO] [stdout] --> src/event_bus.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | self as godot, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/event_bus.rs:9:10 [INFO] [stdout] | [INFO] [stdout] 9 | #[inherit(Node)] [INFO] [stdout] | ^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/records.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | #[inherit(Node)] [INFO] [stdout] | ^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/ui/start.rs:4:10 [INFO] [stdout] | [INFO] [stdout] 4 | #[inherit(Control)] [INFO] [stdout] | ^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Container`, `Control`, `GodotString` [INFO] [stdout] --> src/ui/inventory.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | Control, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 5 | Container, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 6 | GodotString, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize`, `Serialize` [INFO] [stdout] --> src/systems/items.rs:2:13 [INFO] [stdout] | [INFO] [stdout] 2 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize`, `Serialize` [INFO] [stdout] --> src/crafting.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'de> DropTable: Deserialize<'de>` is not satisfied [INFO] [stdout] --> src/entity/arena/spawn.rs:59:12 [INFO] [stdout] | [INFO] [stdout] 59 | Ok(json::from_reader(File::open(enemy_path)?)?) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> Deserialize<'de>` is not implemented for `DropTable` [INFO] [stdout] | [INFO] [stdout] = note: required because of the requirements on the impl of `DeserializeOwned` for `DropTable` [INFO] [stdout] note: required by a bound in `from_reader` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/serde_json-1.0.42/src/de.rs:2293:8 [INFO] [stdout] | [INFO] [stdout] 2293 | T: de::DeserializeOwned, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `from_reader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Recipes: Deserialize<'_>` is not satisfied [INFO] [stdout] --> src/ui/crafting.rs:190:27 [INFO] [stdout] | [INFO] [stdout] 190 | .and_then(|f| json::from_reader(f).map_err(error::JsonIOError::Json)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ the trait `Deserialize<'_>` is not implemented for `Recipes` [INFO] [stdout] | [INFO] [stdout] = note: required because of the requirements on the impl of `for<'de> Deserialize<'de>` for `Vec` [INFO] [stdout] = note: required because of the requirements on the impl of `DeserializeOwned` for `Vec` [INFO] [stdout] note: required by a bound in `from_reader` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/serde_json-1.0.42/src/de.rs:2293:8 [INFO] [stdout] | [INFO] [stdout] 2293 | T: de::DeserializeOwned, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `from_reader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'de> DropTable: Deserialize<'de>` is not satisfied [INFO] [stdout] --> src/entity/arena/spawn.rs:59:12 [INFO] [stdout] | [INFO] [stdout] 59 | Ok(json::from_reader(File::open(enemy_path)?)?) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `for<'de> Deserialize<'de>` is not implemented for `DropTable` [INFO] [stdout] | [INFO] [stdout] = note: required because of the requirements on the impl of `DeserializeOwned` for `DropTable` [INFO] [stdout] note: required by a bound in `from_reader` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/serde_json-1.0.42/src/de.rs:2293:8 [INFO] [stdout] | [INFO] [stdout] 2293 | T: de::DeserializeOwned, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `from_reader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Recipes: Deserialize<'_>` is not satisfied [INFO] [stdout] --> src/ui/crafting.rs:190:27 [INFO] [stdout] | [INFO] [stdout] 190 | .and_then(|f| json::from_reader(f).map_err(error::JsonIOError::Json)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ the trait `Deserialize<'_>` is not implemented for `Recipes` [INFO] [stdout] | [INFO] [stdout] = note: required because of the requirements on the impl of `for<'de> Deserialize<'de>` for `Vec` [INFO] [stdout] = note: required because of the requirements on the impl of `DeserializeOwned` for `Vec` [INFO] [stdout] note: required by a bound in `from_reader` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/serde_json-1.0.42/src/de.rs:2293:8 [INFO] [stdout] | [INFO] [stdout] 2293 | T: de::DeserializeOwned, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ required by this bound in `from_reader` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 16 previous errors; 11 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: could not compile `crossarena` due to 17 previous errors; 11 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: aborting due to 16 previous errors; 11 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] [stderr] error: failed to check after updating to 2021 [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" "b36e91f24fbadbd498e1e3fde972c0b187fa7d64169d2f9e7cc5f3df7ea07f76", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b36e91f24fbadbd498e1e3fde972c0b187fa7d64169d2f9e7cc5f3df7ea07f76", kill_on_drop: false }` [INFO] [stdout] b36e91f24fbadbd498e1e3fde972c0b187fa7d64169d2f9e7cc5f3df7ea07f76