[INFO] fetching crate pyra 0.0.8... [INFO] building pyra-0.0.8 against master#ad85bc524b1ad696e42061ad8338d382dffbdbe5 for pr-146237-1 [INFO] extracting crate pyra 0.0.8 into /workspace/builds/worker-2-tc1/source [INFO] started tweaking crates.io crate pyra 0.0.8 [INFO] finished tweaking crates.io crate pyra 0.0.8 [INFO] tweaked toml for crates.io crate pyra 0.0.8 written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate pyra 0.0.8 on toolchain ad85bc524b1ad696e42061ad8338d382dffbdbe5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate pyra 0.0.8 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" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded quote v1.0.2 [INFO] [stderr] Downloaded heck v0.3.1 [INFO] [stderr] Downloaded atty v0.2.13 [INFO] [stderr] Downloaded bitflags v1.1.0 [INFO] [stderr] Downloaded cfg-if v0.1.9 [INFO] [stderr] Downloaded log v0.4.8 [INFO] [stderr] Downloaded arrayvec v0.4.11 [INFO] [stderr] Downloaded ryu v1.0.0 [INFO] [stderr] Downloaded crossbeam-utils v0.6.6 [INFO] [stderr] Downloaded clicolors-control v1.0.1 [INFO] [stderr] Downloaded number_prefix v0.3.0 [INFO] [stderr] Downloaded ppv-lite86 v0.2.5 [INFO] [stderr] Downloaded approx v0.1.1 [INFO] [stderr] Downloaded autocfg v0.1.6 [INFO] [stderr] Downloaded rgb v0.8.14 [INFO] [stderr] Downloaded clap v2.33.0 [INFO] [stderr] Downloaded winapi v0.3.8 [INFO] [stderr] Downloaded nix v0.14.1 [INFO] [stderr] Downloaded ctrlc v3.1.3 [INFO] [stderr] Downloaded blake2b_simd v0.5.8 [INFO] [stderr] Downloaded indicatif v0.12.0 [INFO] [stderr] Downloaded redox_users v0.3.1 [INFO] [stderr] Downloaded syn v1.0.5 [INFO] [stderr] Downloaded wasi v0.7.0 [INFO] [stderr] Downloaded backtrace v0.3.37 [INFO] [stderr] Downloaded regex v1.3.1 [INFO] [stderr] Downloaded dialoguer v0.4.0 [INFO] [stderr] Downloaded serde_derive v1.0.101 [INFO] [stderr] Downloaded structopt v0.3.2 [INFO] [stderr] Downloaded winconsole v0.10.0 [INFO] [stderr] Downloaded dirs-sys v0.3.4 [INFO] [stderr] Downloaded regex-syntax v0.6.12 [INFO] [stderr] Downloaded rand v0.7.2 [INFO] [stderr] Downloaded rust-argon2 v0.5.1 [INFO] [stderr] Downloaded widestring v0.4.0 [INFO] [stderr] Downloaded getrandom v0.1.12 [INFO] [stderr] Downloaded webbrowser v0.5.2 [INFO] [stderr] Downloaded cc v1.0.45 [INFO] [stderr] Downloaded byteorder v1.3.2 [INFO] [stderr] Downloaded serde v1.0.101 [INFO] [stderr] Downloaded constant_time_eq v0.1.4 [INFO] [stderr] Downloaded console v0.9.0 [INFO] [stderr] Downloaded unicode-width v0.1.6 [INFO] [stderr] Downloaded proc-macro-error v0.2.6 [INFO] [stderr] Downloaded proc-macro2 v1.0.4 [INFO] [stderr] Downloaded structopt-derive v0.3.2 [INFO] [stderr] Downloaded backtrace-sys v0.1.31 [INFO] [stderr] Downloaded serde_json v1.0.40 [INFO] [stderr] Downloaded libc v0.2.62 [INFO] [stderr] Downloaded unicode-segmentation v1.3.0 [INFO] [stderr] Downloaded num-traits v0.2.8 [INFO] [stderr] Downloaded cgmath v0.16.1 [INFO] [stderr] Downloaded colored v1.8.0 [INFO] [stderr] Downloaded void v1.0.2 [INFO] [stderr] Downloaded remove_dir_all v0.5.2 [INFO] [stderr] Downloaded tempfile v3.1.0 [INFO] [stderr] Downloaded synstructure v0.10.2 [INFO] [stderr] Downloaded failure_derive v0.1.5 [INFO] [stderr] Downloaded failure v0.1.5 [INFO] [stderr] Downloaded redox_syscall v0.1.56 [INFO] [stderr] Downloaded arrayref v0.3.5 [INFO] [stderr] Downloaded nodrop v0.1.13 [INFO] [stderr] Downloaded dirs v2.0.2 [INFO] [stderr] Downloaded termios v0.3.1 [INFO] [stderr] Downloaded rand_chacha v0.2.1 [INFO] [stderr] Downloaded c2-chacha v0.2.2 [INFO] [stderr] Downloaded itoa v0.4.4 [INFO] [stderr] Downloaded vec_map v0.8.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 73c836bb480d7ec1d1488874be90009cec101928360a550bbb9d8946144c3a56 [INFO] running `Command { std: "docker" "start" "-a" "73c836bb480d7ec1d1488874be90009cec101928360a550bbb9d8946144c3a56", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "73c836bb480d7ec1d1488874be90009cec101928360a550bbb9d8946144c3a56", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "73c836bb480d7ec1d1488874be90009cec101928360a550bbb9d8946144c3a56", kill_on_drop: false }` [INFO] [stdout] 73c836bb480d7ec1d1488874be90009cec101928360a550bbb9d8946144c3a56 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 0539ef700b19baf4d75e34758d447355cf731794f37177a7630fcb364f9ea33b [INFO] running `Command { std: "docker" "start" "-a" "0539ef700b19baf4d75e34758d447355cf731794f37177a7630fcb364f9ea33b", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.62 [INFO] [stderr] Compiling cfg-if v0.1.9 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling proc-macro2 v1.0.4 [INFO] [stderr] Compiling unicode-xid v0.2.0 [INFO] [stderr] Compiling syn v1.0.5 [INFO] [stderr] Compiling autocfg v0.1.6 [INFO] [stderr] Compiling getrandom v0.1.12 [INFO] [stderr] Compiling unicode-width v0.1.6 [INFO] [stderr] Compiling bitflags v1.1.0 [INFO] [stderr] Compiling ppv-lite86 v0.2.5 [INFO] [stderr] Compiling regex-syntax v0.6.12 [INFO] [stderr] Compiling winapi v0.3.8 [INFO] [stderr] Compiling cgmath v0.16.1 [INFO] [stderr] Compiling nix v0.14.1 [INFO] [stderr] Compiling serde v1.0.101 [INFO] [stderr] Compiling ryu v1.0.0 [INFO] [stderr] Compiling unicode-segmentation v1.3.0 [INFO] [stderr] Compiling approx v0.1.1 [INFO] [stderr] Compiling textwrap v0.11.0 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling rgb v0.8.14 [INFO] [stderr] Compiling vec_map v0.8.1 [INFO] [stderr] Compiling void v1.0.2 [INFO] [stderr] Compiling strsim v0.8.0 [INFO] [stderr] Compiling c2-chacha v0.2.2 [INFO] [stderr] Compiling remove_dir_all v0.5.2 [INFO] [stderr] Compiling ansi_term v0.11.0 [INFO] [stderr] Compiling heck v0.3.1 [INFO] [stderr] Compiling itoa v0.4.4 [INFO] [stderr] Compiling number_prefix v0.3.0 [INFO] [stderr] Compiling webbrowser v0.5.2 [INFO] [stderr] Compiling num-traits v0.2.8 [INFO] [stderr] Compiling quote v1.0.2 [INFO] [stderr] Compiling clicolors-control v1.0.1 [INFO] [stderr] Compiling rand v0.4.6 [INFO] [stderr] Compiling termios v0.3.1 [INFO] [stderr] Compiling atty v0.2.13 [INFO] [stderr] Compiling dirs-sys v0.3.4 [INFO] [stderr] Compiling clap v2.33.0 [INFO] [stderr] Compiling dirs v2.0.2 [INFO] [stderr] Compiling rand_core v0.5.1 [INFO] [stderr] Compiling rand_chacha v0.2.1 [INFO] [stderr] Compiling rand v0.7.2 [INFO] [stderr] Compiling regex v1.3.1 [INFO] [stderr] Compiling num-traits v0.1.43 [INFO] [stderr] Compiling tempfile v3.1.0 [INFO] [stderr] Compiling console v0.9.0 [INFO] [stderr] Compiling indicatif v0.12.0 [INFO] [stderr] Compiling dialoguer v0.4.0 [INFO] [stderr] Compiling ctrlc v3.1.3 [INFO] [stderr] Compiling winconsole v0.10.0 [INFO] [stderr] Compiling colored v1.8.0 [INFO] [stderr] Compiling proc-macro-error v0.2.6 [INFO] [stderr] Compiling serde_derive v1.0.101 [INFO] [stderr] Compiling structopt-derive v0.3.2 [INFO] [stderr] Compiling structopt v0.3.2 [INFO] [stderr] Compiling serde_json v1.0.40 [INFO] [stderr] Compiling pyra v0.0.8 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Confirmation` [INFO] [stdout] --> src/cli.rs:4:62 [INFO] [stdout] | [INFO] [stdout] 4 | theme::ColorfulTheme, theme::CustomPromptCharacterTheme, Confirmation, Input, Select, Checkboxes [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/cli.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `debug` and `warn` [INFO] [stdout] --> src/cli.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | use log::{debug, warn}; [INFO] [stdout] | ^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/cli.rs:22:10 [INFO] [stdout] | [INFO] [stdout] 22 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/cli.rs:22:21 [INFO] [stdout] | [INFO] [stdout] 22 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> src/platform/substrate.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `webbrowser` [INFO] [stdout] --> src/platform/substrate.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use webbrowser; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `settings_data` [INFO] [stdout] --> src/cli.rs:278:20 [INFO] [stdout] | [INFO] [stdout] 278 | pub fn run_scanner(settings_data: serde_json::value::Value) {} [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_settings_data` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `project_name` [INFO] [stdout] --> src/platform/substrate.rs:194:50 [INFO] [stdout] | [INFO] [stdout] 194 | pub fn initialize_wasm_environment(path: String, project_name: String) { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `project_name` [INFO] [stdout] --> src/platform/substrate.rs:211:29 [INFO] [stdout] | [INFO] [stdout] 211 | pub fn build_substrate_node(project_name: String, path: String) -> std::process::Child { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `project_name` [INFO] [stdout] --> src/platform/substrate.rs:226:24 [INFO] [stdout] | [INFO] [stdout] 226 | pub fn build_substrate(project_name: String, path: String, target: String) { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `project_name` [INFO] [stdout] --> src/platform/substrate.rs:276:23 [INFO] [stdout] | [INFO] [stdout] 276 | pub fn test_substrate(project_name: String, path: String, target: String) { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `project_name` [INFO] [stdout] --> src/platform/substrate.rs:322:22 [INFO] [stdout] | [INFO] [stdout] 322 | pub fn run_substrate(project_name: String, path: String) { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_scanner` is never used [INFO] [stdout] --> src/cli.rs:278:8 [INFO] [stdout] | [INFO] [stdout] 278 | pub fn run_scanner(settings_data: serde_json::value::Value) {} [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/cli.rs:22:10 [INFO] [stdout] | [INFO] [stdout] 22 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Project` [INFO] [stdout] 23 | struct Project { [INFO] [stdout] | ------- `Project` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/cli.rs:22:21 [INFO] [stdout] | [INFO] [stdout] 22 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Project` [INFO] [stdout] 23 | struct Project { [INFO] [stdout] | ------- `Project` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/cli.rs:78:28 [INFO] [stdout] | [INFO] [stdout] 78 | .with_prompt(prompt.clone()) [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/cli.rs:85:25 [INFO] [stdout] | [INFO] [stdout] 85 | checklist(prompt.clone(), settings_data); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/cli.rs:362:42 [INFO] [stdout] | [INFO] [stdout] 362 | let results = checklist(remove_prompt.clone(), settings_data.clone()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/cli.rs:400:12 [INFO] [stdout] | [INFO] [stdout] 400 | panic!("The project to remove does not exist in the settings file".red()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 400 | panic!("{}", "The project to remove does not exist in the settings file".red()); [INFO] [stdout] | +++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 400 - panic!("The project to remove does not exist in the settings file".red()); [INFO] [stdout] 400 + std::panic::panic_any("The project to remove does not exist in the settings file".red()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/cli.rs:472:12 [INFO] [stdout] | [INFO] [stdout] 472 | panic!("setting file is broken".red()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 472 | panic!("{}", "setting file is broken".red()); [INFO] [stdout] | +++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 472 - panic!("setting file is broken".red()); [INFO] [stdout] 472 + std::panic::panic_any("setting file is broken".red()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/cli.rs:483:12 [INFO] [stdout] | [INFO] [stdout] 483 | panic!("setting file is broken".red()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 483 | panic!("{}", "setting file is broken".red()); [INFO] [stdout] | +++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 483 - panic!("setting file is broken".red()); [INFO] [stdout] 483 + std::panic::panic_any("setting file is broken".red()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 30.33s [INFO] running `Command { std: "docker" "inspect" "0539ef700b19baf4d75e34758d447355cf731794f37177a7630fcb364f9ea33b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0539ef700b19baf4d75e34758d447355cf731794f37177a7630fcb364f9ea33b", kill_on_drop: false }` [INFO] [stdout] 0539ef700b19baf4d75e34758d447355cf731794f37177a7630fcb364f9ea33b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 06f88c0b690699e93be14e687ae066de6a40ca9362e6bc98ae2c065ac4313a5f [INFO] running `Command { std: "docker" "start" "-a" "06f88c0b690699e93be14e687ae066de6a40ca9362e6bc98ae2c065ac4313a5f", kill_on_drop: false }` [INFO] [stderr] Compiling pyra v0.0.8 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Confirmation` [INFO] [stdout] --> src/cli.rs:4:62 [INFO] [stdout] | [INFO] [stdout] 4 | theme::ColorfulTheme, theme::CustomPromptCharacterTheme, Confirmation, Input, Select, Checkboxes [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/cli.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `debug` and `warn` [INFO] [stdout] --> src/cli.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | use log::{debug, warn}; [INFO] [stdout] | ^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/cli.rs:22:10 [INFO] [stdout] | [INFO] [stdout] 22 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/cli.rs:22:21 [INFO] [stdout] | [INFO] [stdout] 22 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> src/platform/substrate.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `webbrowser` [INFO] [stdout] --> src/platform/substrate.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use webbrowser; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `settings_data` [INFO] [stdout] --> src/cli.rs:278:20 [INFO] [stdout] | [INFO] [stdout] 278 | pub fn run_scanner(settings_data: serde_json::value::Value) {} [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_settings_data` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `project_name` [INFO] [stdout] --> src/platform/substrate.rs:194:50 [INFO] [stdout] | [INFO] [stdout] 194 | pub fn initialize_wasm_environment(path: String, project_name: String) { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `project_name` [INFO] [stdout] --> src/platform/substrate.rs:211:29 [INFO] [stdout] | [INFO] [stdout] 211 | pub fn build_substrate_node(project_name: String, path: String) -> std::process::Child { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `project_name` [INFO] [stdout] --> src/platform/substrate.rs:226:24 [INFO] [stdout] | [INFO] [stdout] 226 | pub fn build_substrate(project_name: String, path: String, target: String) { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `project_name` [INFO] [stdout] --> src/platform/substrate.rs:276:23 [INFO] [stdout] | [INFO] [stdout] 276 | pub fn test_substrate(project_name: String, path: String, target: String) { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `project_name` [INFO] [stdout] --> src/platform/substrate.rs:322:22 [INFO] [stdout] | [INFO] [stdout] 322 | pub fn run_substrate(project_name: String, path: String) { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_scanner` is never used [INFO] [stdout] --> src/cli.rs:278:8 [INFO] [stdout] | [INFO] [stdout] 278 | pub fn run_scanner(settings_data: serde_json::value::Value) {} [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/cli.rs:22:10 [INFO] [stdout] | [INFO] [stdout] 22 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Project` [INFO] [stdout] 23 | struct Project { [INFO] [stdout] | ------- `Project` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/cli.rs:22:21 [INFO] [stdout] | [INFO] [stdout] 22 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Project` [INFO] [stdout] 23 | struct Project { [INFO] [stdout] | ------- `Project` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/cli.rs:78:28 [INFO] [stdout] | [INFO] [stdout] 78 | .with_prompt(prompt.clone()) [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/cli.rs:85:25 [INFO] [stdout] | [INFO] [stdout] 85 | checklist(prompt.clone(), settings_data); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/cli.rs:362:42 [INFO] [stdout] | [INFO] [stdout] 362 | let results = checklist(remove_prompt.clone(), settings_data.clone()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/cli.rs:400:12 [INFO] [stdout] | [INFO] [stdout] 400 | panic!("The project to remove does not exist in the settings file".red()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 400 | panic!("{}", "The project to remove does not exist in the settings file".red()); [INFO] [stdout] | +++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 400 - panic!("The project to remove does not exist in the settings file".red()); [INFO] [stdout] 400 + std::panic::panic_any("The project to remove does not exist in the settings file".red()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/cli.rs:472:12 [INFO] [stdout] | [INFO] [stdout] 472 | panic!("setting file is broken".red()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 472 | panic!("{}", "setting file is broken".red()); [INFO] [stdout] | +++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 472 - panic!("setting file is broken".red()); [INFO] [stdout] 472 + std::panic::panic_any("setting file is broken".red()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/cli.rs:483:12 [INFO] [stdout] | [INFO] [stdout] 483 | panic!("setting file is broken".red()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 483 | panic!("{}", "setting file is broken".red()); [INFO] [stdout] | +++++ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 483 - panic!("setting file is broken".red()); [INFO] [stdout] 483 + std::panic::panic_any("setting file is broken".red()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.59s [INFO] running `Command { std: "docker" "inspect" "06f88c0b690699e93be14e687ae066de6a40ca9362e6bc98ae2c065ac4313a5f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "06f88c0b690699e93be14e687ae066de6a40ca9362e6bc98ae2c065ac4313a5f", kill_on_drop: false }` [INFO] [stdout] 06f88c0b690699e93be14e687ae066de6a40ca9362e6bc98ae2c065ac4313a5f