[INFO] cloning repository https://github.com/Isan-Rivkin/octi [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Isan-Rivkin/octi" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FIsan-Rivkin%2Focti", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FIsan-Rivkin%2Focti'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 804ffaeead7f755fff6ac7e714af7fe071b2281a [INFO] checking Isan-Rivkin/octi/804ffaeead7f755fff6ac7e714af7fe071b2281a against try#c387b04bf028733cd561d62128c8a5eee4bc1458+rustflags=-Dtail_expr_drop_order for pr-130930 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FIsan-Rivkin%2Focti" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Isan-Rivkin/octi on toolchain c387b04bf028733cd561d62128c8a5eee4bc1458 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Isan-Rivkin/octi [INFO] finished tweaking git repo https://github.com/Isan-Rivkin/octi [INFO] tweaked toml for git repo https://github.com/Isan-Rivkin/octi written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/Isan-Rivkin/octi 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" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ac1750074beb7aa67307b0d6f72c74be1f35f455f5e50a321a3e330b33bf7f8f [INFO] running `Command { std: "docker" "start" "-a" "ac1750074beb7aa67307b0d6f72c74be1f35f455f5e50a321a3e330b33bf7f8f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ac1750074beb7aa67307b0d6f72c74be1f35f455f5e50a321a3e330b33bf7f8f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ac1750074beb7aa67307b0d6f72c74be1f35f455f5e50a321a3e330b33bf7f8f", kill_on_drop: false }` [INFO] [stdout] ac1750074beb7aa67307b0d6f72c74be1f35f455f5e50a321a3e330b33bf7f8f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail_expr_drop_order" "-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:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c3c72d6ed401cb3e20d5d2f6d8072dc93e117ddd3407c7157ae4f00dd56a6022 [INFO] running `Command { std: "docker" "start" "-a" "c3c72d6ed401cb3e20d5d2f6d8072dc93e117ddd3407c7157ae4f00dd56a6022", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v0.4.27 [INFO] [stderr] Compiling unicode-xid v0.1.0 [INFO] [stderr] Compiling syn v0.15.30 [INFO] [stderr] Compiling ryu v0.2.7 [INFO] [stderr] Compiling serde v1.0.90 [INFO] [stderr] Compiling libc v0.2.51 [INFO] [stderr] Checking itoa v0.4.3 [INFO] [stderr] Checking same-file v1.0.4 [INFO] [stderr] Checking fs_extra v1.1.0 [INFO] [stderr] Checking lazy_static v1.3.0 [INFO] [stderr] Checking walkdir v2.2.7 [INFO] [stderr] Checking uname v0.1.1 [INFO] [stderr] Compiling quote v0.6.11 [INFO] [stderr] Compiling serde_derive v1.0.90 [INFO] [stderr] Checking serde_json v1.0.39 [INFO] [stderr] Checking octi v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `PathBuf`, `Path`, and `ffi::OsStr` [INFO] [stdout] --> src/eval/traverse.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | path::{Path,PathBuf}, [INFO] [stdout] | ^^^^ ^^^^^^^ [INFO] [stdout] 6 | ffi::OsStr, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DirEntry` and `WalkDir` [INFO] [stdout] --> src/eval/evaluator.rs:1:15 [INFO] [stdout] | [INFO] [stdout] 1 | use walkdir::{DirEntry, WalkDir}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/eval/evaluator.rs:24:11 [INFO] [stdout] | [INFO] [stdout] 24 | if(src_dirs.len() > 0){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 24 - if(src_dirs.len() > 0){ [INFO] [stdout] 24 + if src_dirs.len() > 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `uname` [INFO] [stdout] --> src/parser/manifest.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use uname; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `debug` should have an upper camel case name [INFO] [stdout] --> src/parser/manifest.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | debug, [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `Debug` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `release` should have an upper camel case name [INFO] [stdout] --> src/parser/manifest.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | release, [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper camel case: `Release` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `staticlib` should have an upper camel case name [INFO] [stdout] --> src/parser/manifest.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | staticlib, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Staticlib` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `sharedlib` should have an upper camel case name [INFO] [stdout] --> src/parser/manifest.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | sharedlib, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Sharedlib` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `bin` should have an upper camel case name [INFO] [stdout] --> src/parser/manifest.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | bin, [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case: `Bin` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PackageType` [INFO] [stdout] --> src/workspace/ws_controller.rs:1:41 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::parser::manifest::{Manifest, PackageType}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::env` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::env; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PathBuf`, `Path`, and `ffi::OsStr` [INFO] [stdout] --> src/eval/traverse.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | path::{Path,PathBuf}, [INFO] [stdout] | ^^^^ ^^^^^^^ [INFO] [stdout] 6 | ffi::OsStr, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DirEntry` and `WalkDir` [INFO] [stdout] --> src/eval/traverse.rs:47:19 [INFO] [stdout] | [INFO] [stdout] 47 | use walkdir::{DirEntry, WalkDir}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DirEntry` and `WalkDir` [INFO] [stdout] --> src/eval/evaluator.rs:1:15 [INFO] [stdout] | [INFO] [stdout] 1 | use walkdir::{DirEntry, WalkDir}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/eval/evaluator.rs:24:11 [INFO] [stdout] | [INFO] [stdout] 24 | if(src_dirs.len() > 0){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 24 - if(src_dirs.len() > 0){ [INFO] [stdout] 24 + if src_dirs.len() > 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `uname` [INFO] [stdout] --> src/parser/manifest.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use uname; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `debug` should have an upper camel case name [INFO] [stdout] --> src/parser/manifest.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | debug, [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case: `Debug` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `release` should have an upper camel case name [INFO] [stdout] --> src/parser/manifest.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | release, [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper camel case: `Release` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `staticlib` should have an upper camel case name [INFO] [stdout] --> src/parser/manifest.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | staticlib, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Staticlib` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `sharedlib` should have an upper camel case name [INFO] [stdout] --> src/parser/manifest.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | sharedlib, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Sharedlib` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `bin` should have an upper camel case name [INFO] [stdout] --> src/parser/manifest.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | bin, [INFO] [stdout] | ^^^ help: convert the identifier to upper camel case: `Bin` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `OsInfo` [INFO] [stdout] --> src/parser/mod.rs:6:34 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::parser::os_info::{OsInfo}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PackageType` [INFO] [stdout] --> src/workspace/ws_controller.rs:1:41 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::parser::manifest::{Manifest, PackageType}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/workspace/mod.rs:31:18 [INFO] [stdout] | [INFO] [stdout] 31 | match(r) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 31 - match(r) { [INFO] [stdout] 31 + match r { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::env` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::env; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/parser/manifest.rs:51:61 [INFO] [stdout] | [INFO] [stdout] 51 | pub fn new>(path: P) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 51 | pub fn new>(path: P) -> Result> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/cmake_generator/generator.rs:19:65 [INFO] [stdout] | [INFO] [stdout] 19 | fn add_cmake_meta(&self, file: &mut File) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 19 | fn add_cmake_meta(&self, file: &mut File) -> Result<(), Box> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/cmake_generator/generator.rs:30:75 [INFO] [stdout] | [INFO] [stdout] 30 | fn add_cmake_compiler_flags(&self, file: &mut File) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 30 | fn add_cmake_compiler_flags(&self, file: &mut File) -> Result<(), Box> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/cmake_generator/generator.rs:41:67 [INFO] [stdout] | [INFO] [stdout] 41 | fn add_cmake_target(&self, file: &mut File) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 41 | fn add_cmake_target(&self, file: &mut File) -> Result<(), Box> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/cmake_generator/generator.rs:61:67 [INFO] [stdout] | [INFO] [stdout] 61 | fn add_cmake_config(&self, file: &mut File) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 61 | fn add_cmake_config(&self, file: &mut File) -> Result<(), Box> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/cmake_generator/generator.rs:78:55 [INFO] [stdout] | [INFO] [stdout] 78 | fn create_project_config(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 78 | fn create_project_config(&self) -> Result<(), Box> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/cmake_generator/generator.rs:88:45 [INFO] [stdout] | [INFO] [stdout] 88 | pub fn generate(&self) -> Result<(),Box>{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 88 | pub fn generate(&self) -> Result<(),Box>{ [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/parser/manifest.rs:51:61 [INFO] [stdout] | [INFO] [stdout] 51 | pub fn new>(path: P) -> Result> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 51 | pub fn new>(path: P) -> Result> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/cmake_generator/generator.rs:19:65 [INFO] [stdout] | [INFO] [stdout] 19 | fn add_cmake_meta(&self, file: &mut File) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 19 | fn add_cmake_meta(&self, file: &mut File) -> Result<(), Box> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/cmake_generator/generator.rs:30:75 [INFO] [stdout] | [INFO] [stdout] 30 | fn add_cmake_compiler_flags(&self, file: &mut File) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 30 | fn add_cmake_compiler_flags(&self, file: &mut File) -> Result<(), Box> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/cmake_generator/generator.rs:41:67 [INFO] [stdout] | [INFO] [stdout] 41 | fn add_cmake_target(&self, file: &mut File) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 41 | fn add_cmake_target(&self, file: &mut File) -> Result<(), Box> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/cmake_generator/generator.rs:61:67 [INFO] [stdout] | [INFO] [stdout] 61 | fn add_cmake_config(&self, file: &mut File) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 61 | fn add_cmake_config(&self, file: &mut File) -> Result<(), Box> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/cmake_generator/generator.rs:78:55 [INFO] [stdout] | [INFO] [stdout] 78 | fn create_project_config(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 78 | fn create_project_config(&self) -> Result<(), Box> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/cmake_generator/generator.rs:88:45 [INFO] [stdout] | [INFO] [stdout] 88 | pub fn generate(&self) -> Result<(),Box>{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 88 | pub fn generate(&self) -> Result<(),Box>{ [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `dirs` is assigned to, but never used [INFO] [stdout] --> src/eval/evaluator.rs:21:17 [INFO] [stdout] | [INFO] [stdout] 21 | let mut dirs = vec![default_src]; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_dirs` instead [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `dirs` is never read [INFO] [stdout] --> src/eval/evaluator.rs:25:13 [INFO] [stdout] | [INFO] [stdout] 25 | dirs = src_dirs.to_vec(); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `dirs` is assigned to, but never used [INFO] [stdout] --> src/eval/evaluator.rs:21:17 [INFO] [stdout] | [INFO] [stdout] 21 | let mut dirs = vec![default_src]; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_dirs` instead [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `dirs` is never read [INFO] [stdout] --> src/eval/evaluator.rs:25:13 [INFO] [stdout] | [INFO] [stdout] 25 | dirs = src_dirs.to_vec(); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/cmake_generator/generator.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | let mut path = Path::new(self.output_path.as_str()).join("CMakeLists.txt"); [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: unused variable: `base_path` [INFO] [stdout] --> src/workspace/ws_controller.rs:96:50 [INFO] [stdout] | [INFO] [stdout] 96 | pub fn finalize_source_artifacts>(base_path: P, source_name: String) { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_base_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `source_name` [INFO] [stdout] --> src/workspace/ws_controller.rs:96:64 [INFO] [stdout] | [INFO] [stdout] 96 | pub fn finalize_source_artifacts>(base_path: P, source_name: String) { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_src_files` is never used [INFO] [stdout] --> src/eval/traverse.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn get_src_files(path : &str)->Result,walkdir::Error>{ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_valid_extension` is never used [INFO] [stdout] --> src/eval/traverse.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | pub fn is_valid_extension(entry: &DirEntry)->bool{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Evaluator` is never constructed [INFO] [stdout] --> src/eval/evaluator.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Evaluator<'a> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `expand_src_files` are never used [INFO] [stdout] --> src/eval/evaluator.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl<'a> Evaluator<'a> { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 11 | pub fn new(manifest: &'a mut Manifest) -> Evaluator<'a> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn expand_src_files(&mut self)->Result{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `arch` and `os` are never read [INFO] [stdout] --> src/parser/os_info.rs:3:9 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct OsInfo{ [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 3 | pub arch : String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 4 | pub os : String, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `OsInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `os_info` is never read [INFO] [stdout] --> src/parser/manifest.rs:48:9 [INFO] [stdout] | [INFO] [stdout] 37 | pub struct Manifest{ [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 48 | pub os_info : OsInfo, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Manifest` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `set_os_info`, `add_src_files`, `get_src_dirs`, and `get_src_files` are never used [INFO] [stdout] --> src/parser/manifest.rs:51:12 [INFO] [stdout] | [INFO] [stdout] 50 | impl Manifest{ [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 51 | pub fn new>(path: P) -> Result> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | fn set_os_info(&mut self){ [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn add_src_files(&mut self,mut other_src_files : Vec){ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | pub fn get_src_dirs(&self)-> &Vec{ [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | pub fn get_src_files(&self)-> &Vec{ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CMAKE_TARGET_LIBARY_TEMPLATE` is never used [INFO] [stdout] --> src/cmake_generator/templates.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | pub const CMAKE_TARGET_LIBARY_TEMPLATE: &str = r#" [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CMAKE_TARGET_BINARY_TEMPLATE` is never used [INFO] [stdout] --> src/cmake_generator/templates.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const CMAKE_TARGET_BINARY_TEMPLATE: &str = r#" [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CMAKE_COMPILER_FLAGS_TEMPLATE` is never used [INFO] [stdout] --> src/cmake_generator/templates.rs:26:11 [INFO] [stdout] | [INFO] [stdout] 26 | pub const CMAKE_COMPILER_FLAGS_TEMPLATE: &str = r#" [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CMAKE_PACKAGE_METADATA_TEMPLATE` is never used [INFO] [stdout] --> src/cmake_generator/templates.rs:30:11 [INFO] [stdout] | [INFO] [stdout] 30 | pub const CMAKE_PACKAGE_METADATA_TEMPLATE: &str = r#" [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CMAKE_TEST_TEMPLATE` is never used [INFO] [stdout] --> src/cmake_generator/templates.rs:35:11 [INFO] [stdout] | [INFO] [stdout] 35 | pub const CMAKE_TEST_TEMPLATE: &str = r#" [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CMAKE_CONFIG_TEMPLATE` is never used [INFO] [stdout] --> src/cmake_generator/templates.rs:38:11 [INFO] [stdout] | [INFO] [stdout] 38 | pub const CMAKE_CONFIG_TEMPLATE: &str = r#" [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CPP_CONFIG_TEMPLATE` is never used [INFO] [stdout] --> src/cmake_generator/templates.rs:42:11 [INFO] [stdout] | [INFO] [stdout] 42 | pub const CPP_CONFIG_TEMPLATE: &str = r#" [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CMakeGenerator` is never constructed [INFO] [stdout] --> src/cmake_generator/generator.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct CMakeGenerator<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CMakeGenerator` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/cmake_generator/generator.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl<'a> CMakeGenerator<'a> { [INFO] [stdout] | --------------------------- associated items in this implementation [INFO] [stdout] 15 | pub fn new(output_path: String, manifest: &'a Manifest) -> CMakeGenerator<'a> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | fn add_cmake_meta(&self, file: &mut File) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | fn add_cmake_compiler_flags(&self, file: &mut File) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | fn add_cmake_target(&self, file: &mut File) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | fn add_cmake_config(&self, file: &mut File) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 78 | fn create_project_config(&self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 88 | pub fn generate(&self) -> Result<(),Box>{ [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `WorkspaceArtifact` is never constructed [INFO] [stdout] --> src/workspace/ws_controller.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct WorkspaceArtifact { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/workspace/ws_controller.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl WorkspaceArtifact { [INFO] [stdout] | ---------------------- associated function in this implementation [INFO] [stdout] 14 | pub fn new() -> WorkspaceArtifact { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_folder_in_workspace` is never used [INFO] [stdout] --> src/workspace/ws_controller.rs:24:8 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn create_folder_in_workspace>(base_path: P, folder_path: P) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_workspace` is never used [INFO] [stdout] --> src/workspace/ws_controller.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn create_workspace>(base_path: P) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `workspace_exists` is never used [INFO] [stdout] --> src/workspace/ws_controller.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn workspace_exists>(base_path: P) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_workspace_artifacts` is never used [INFO] [stdout] --> src/workspace/ws_controller.rs:51:8 [INFO] [stdout] | [INFO] [stdout] 51 | pub fn collect_workspace_artifacts>(base_path: P) -> Result, Error> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clear_workspace_artifacts` is never used [INFO] [stdout] --> src/workspace/ws_controller.rs:87:8 [INFO] [stdout] | [INFO] [stdout] 87 | pub fn clear_workspace_artifacts>(base_path: P) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `finalize_source_artifacts` is never used [INFO] [stdout] --> src/workspace/ws_controller.rs:96:8 [INFO] [stdout] | [INFO] [stdout] 96 | pub fn finalize_source_artifacts>(base_path: P, source_name: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [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/parser/manifest.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive( Deserialize,Serialize, Clone,Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_BuildType` [INFO] [stdout] 13 | #[serde(rename = "build_type")] [INFO] [stdout] 14 | pub enum BuildType { [INFO] [stdout] | --------- `BuildType` 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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [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: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/parser/manifest.rs:12:23 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive( Deserialize,Serialize, Clone,Debug)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_BuildType` [INFO] [stdout] 13 | #[serde(rename = "build_type")] [INFO] [stdout] 14 | pub enum BuildType { [INFO] [stdout] | --------- `BuildType` 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: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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/parser/manifest.rs:19:11 [INFO] [stdout] | [INFO] [stdout] 19 | #[derive( Deserialize,Serialize, Clone,Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_PackageType` [INFO] [stdout] 20 | #[serde(rename = "package_type")] [INFO] [stdout] 21 | pub enum PackageType { [INFO] [stdout] | ----------- `PackageType` 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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/parser/manifest.rs:19:23 [INFO] [stdout] | [INFO] [stdout] 19 | #[derive( Deserialize,Serialize, Clone,Debug)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_PackageType` [INFO] [stdout] 20 | #[serde(rename = "package_type")] [INFO] [stdout] 21 | pub enum PackageType { [INFO] [stdout] | ----------- `PackageType` 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: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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/parser/manifest.rs:27:11 [INFO] [stdout] | [INFO] [stdout] 27 | #[derive( Deserialize,Serialize, Clone,Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Dependency` [INFO] [stdout] 28 | pub struct Dependency{ [INFO] [stdout] | ---------- `Dependency` 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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/parser/manifest.rs:27:23 [INFO] [stdout] | [INFO] [stdout] 27 | #[derive( Deserialize,Serialize, Clone,Debug)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Dependency` [INFO] [stdout] 28 | pub struct Dependency{ [INFO] [stdout] | ---------- `Dependency` 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: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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/parser/manifest.rs:36:11 [INFO] [stdout] | [INFO] [stdout] 36 | #[derive( Deserialize,Serialize, Clone,Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Manifest` [INFO] [stdout] 37 | pub struct Manifest{ [INFO] [stdout] | -------- `Manifest` 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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/parser/manifest.rs:36:23 [INFO] [stdout] | [INFO] [stdout] 36 | #[derive( Deserialize,Serialize, Clone,Debug)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Manifest` [INFO] [stdout] 37 | pub struct Manifest{ [INFO] [stdout] | -------- `Manifest` 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: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: unused `Result` that must be used [INFO] [stdout] --> src/cmake_generator/generator.rs:56:9 [INFO] [stdout] | [INFO] [stdout] 56 | file.write_all(template.as_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 56 | let _ = file.write_all(template.as_bytes()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cmake_generator/generator.rs:73:9 [INFO] [stdout] | [INFO] [stdout] 73 | file.write_all(template.as_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 73 | let _ = file.write_all(template.as_bytes()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cmake_generator/generator.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 83 | file.write_all(CPP_CONFIG_TEMPLATE.as_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 83 | let _ = file.write_all(CPP_CONFIG_TEMPLATE.as_bytes()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cmake_generator/generator.rs:95:9 [INFO] [stdout] | [INFO] [stdout] 95 | self.create_project_config(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 95 | let _ = self.create_project_config(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cmake_generator/generator.rs:98:9 [INFO] [stdout] | [INFO] [stdout] 98 | self.add_cmake_meta(&mut file); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 98 | let _ = self.add_cmake_meta(&mut file); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cmake_generator/generator.rs:99:9 [INFO] [stdout] | [INFO] [stdout] 99 | self.add_cmake_compiler_flags(&mut file); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 99 | let _ = self.add_cmake_compiler_flags(&mut file); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cmake_generator/generator.rs:100:9 [INFO] [stdout] | [INFO] [stdout] 100 | self.add_cmake_target(&mut file); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 100 | let _ = self.add_cmake_target(&mut file); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cmake_generator/generator.rs:101:9 [INFO] [stdout] | [INFO] [stdout] 101 | self.add_cmake_config(&mut file); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 101 | let _ = self.add_cmake_config(&mut file); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/workspace/ws_controller.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | create_dir_all(ws_folder_path); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 28 | let _ = create_dir_all(ws_folder_path); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/workspace/ws_controller.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 37 | create_dir(&ws_path); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 37 | let _ = create_dir(&ws_path); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/workspace/ws_controller.rs:92:5 [INFO] [stdout] | [INFO] [stdout] 92 | remove_dir_all(&artifacts_dir); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 92 | let _ = remove_dir_all(&artifacts_dir); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/workspace/ws_controller.rs:93:5 [INFO] [stdout] | [INFO] [stdout] 93 | create_dir(artifacts_dir); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 93 | let _ = create_dir(artifacts_dir); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/cmake_generator/generator.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | let mut path = Path::new(self.output_path.as_str()).join("CMakeLists.txt"); [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: 67 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `base_path` [INFO] [stdout] --> src/workspace/ws_controller.rs:96:50 [INFO] [stdout] | [INFO] [stdout] 96 | pub fn finalize_source_artifacts>(base_path: P, source_name: String) { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_base_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `source_name` [INFO] [stdout] --> src/workspace/ws_controller.rs:96:64 [INFO] [stdout] | [INFO] [stdout] 96 | pub fn finalize_source_artifacts>(base_path: P, source_name: String) { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> src/workspace/mod.rs:32:20 [INFO] [stdout] | [INFO] [stdout] 32 | Ok(v) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `arch` is never read [INFO] [stdout] --> src/parser/os_info.rs:3:9 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct OsInfo{ [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 3 | pub arch : String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OsInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `os_info` is never read [INFO] [stdout] --> src/parser/manifest.rs:48:9 [INFO] [stdout] | [INFO] [stdout] 37 | pub struct Manifest{ [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 48 | pub os_info : OsInfo, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Manifest` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_os_info` is never used [INFO] [stdout] --> src/parser/manifest.rs:57:8 [INFO] [stdout] | [INFO] [stdout] 50 | impl Manifest{ [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 57 | fn set_os_info(&mut self){ [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CMAKE_TEST_TEMPLATE` is never used [INFO] [stdout] --> src/cmake_generator/templates.rs:35:11 [INFO] [stdout] | [INFO] [stdout] 35 | pub const CMAKE_TEST_TEMPLATE: &str = r#" [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clear_workspace_artifacts` is never used [INFO] [stdout] --> src/workspace/ws_controller.rs:87:8 [INFO] [stdout] | [INFO] [stdout] 87 | pub fn clear_workspace_artifacts>(base_path: P) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `finalize_source_artifacts` is never used [INFO] [stdout] --> src/workspace/ws_controller.rs:96:8 [INFO] [stdout] | [INFO] [stdout] 96 | pub fn finalize_source_artifacts>(base_path: P, source_name: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [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/parser/manifest.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive( Deserialize,Serialize, Clone,Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_BuildType` [INFO] [stdout] 13 | #[serde(rename = "build_type")] [INFO] [stdout] 14 | pub enum BuildType { [INFO] [stdout] | --------- `BuildType` 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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [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: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/parser/manifest.rs:12:23 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive( Deserialize,Serialize, Clone,Debug)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_BuildType` [INFO] [stdout] 13 | #[serde(rename = "build_type")] [INFO] [stdout] 14 | pub enum BuildType { [INFO] [stdout] | --------- `BuildType` 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: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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/parser/manifest.rs:19:11 [INFO] [stdout] | [INFO] [stdout] 19 | #[derive( Deserialize,Serialize, Clone,Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_PackageType` [INFO] [stdout] 20 | #[serde(rename = "package_type")] [INFO] [stdout] 21 | pub enum PackageType { [INFO] [stdout] | ----------- `PackageType` 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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/parser/manifest.rs:19:23 [INFO] [stdout] | [INFO] [stdout] 19 | #[derive( Deserialize,Serialize, Clone,Debug)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_PackageType` [INFO] [stdout] 20 | #[serde(rename = "package_type")] [INFO] [stdout] 21 | pub enum PackageType { [INFO] [stdout] | ----------- `PackageType` 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: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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/parser/manifest.rs:27:11 [INFO] [stdout] | [INFO] [stdout] 27 | #[derive( Deserialize,Serialize, Clone,Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Dependency` [INFO] [stdout] 28 | pub struct Dependency{ [INFO] [stdout] | ---------- `Dependency` 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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/parser/manifest.rs:27:23 [INFO] [stdout] | [INFO] [stdout] 27 | #[derive( Deserialize,Serialize, Clone,Debug)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Dependency` [INFO] [stdout] 28 | pub struct Dependency{ [INFO] [stdout] | ---------- `Dependency` 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: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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/parser/manifest.rs:36:11 [INFO] [stdout] | [INFO] [stdout] 36 | #[derive( Deserialize,Serialize, Clone,Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Manifest` [INFO] [stdout] 37 | pub struct Manifest{ [INFO] [stdout] | -------- `Manifest` 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 lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/parser/manifest.rs:36:23 [INFO] [stdout] | [INFO] [stdout] 36 | #[derive( Deserialize,Serialize, Clone,Debug)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Manifest` [INFO] [stdout] 37 | pub struct Manifest{ [INFO] [stdout] | -------- `Manifest` 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: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: unused `Result` that must be used [INFO] [stdout] --> src/cmake_generator/generator.rs:56:9 [INFO] [stdout] | [INFO] [stdout] 56 | file.write_all(template.as_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 56 | let _ = file.write_all(template.as_bytes()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cmake_generator/generator.rs:73:9 [INFO] [stdout] | [INFO] [stdout] 73 | file.write_all(template.as_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 73 | let _ = file.write_all(template.as_bytes()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cmake_generator/generator.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 83 | file.write_all(CPP_CONFIG_TEMPLATE.as_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 83 | let _ = file.write_all(CPP_CONFIG_TEMPLATE.as_bytes()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cmake_generator/generator.rs:95:9 [INFO] [stdout] | [INFO] [stdout] 95 | self.create_project_config(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 95 | let _ = self.create_project_config(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cmake_generator/generator.rs:98:9 [INFO] [stdout] | [INFO] [stdout] 98 | self.add_cmake_meta(&mut file); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 98 | let _ = self.add_cmake_meta(&mut file); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cmake_generator/generator.rs:99:9 [INFO] [stdout] | [INFO] [stdout] 99 | self.add_cmake_compiler_flags(&mut file); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 99 | let _ = self.add_cmake_compiler_flags(&mut file); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cmake_generator/generator.rs:100:9 [INFO] [stdout] | [INFO] [stdout] 100 | self.add_cmake_target(&mut file); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 100 | let _ = self.add_cmake_target(&mut file); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cmake_generator/generator.rs:101:9 [INFO] [stdout] | [INFO] [stdout] 101 | self.add_cmake_config(&mut file); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 101 | let _ = self.add_cmake_config(&mut file); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cmake_generator/mod.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | gen.generate(); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 15 | let _ = gen.generate(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/workspace/ws_controller.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | create_dir_all(ws_folder_path); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 28 | let _ = create_dir_all(ws_folder_path); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/workspace/ws_controller.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 37 | create_dir(&ws_path); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 37 | let _ = create_dir(&ws_path); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/workspace/ws_controller.rs:92:5 [INFO] [stdout] | [INFO] [stdout] 92 | remove_dir_all(&artifacts_dir); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 92 | let _ = remove_dir_all(&artifacts_dir); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/workspace/ws_controller.rs:93:5 [INFO] [stdout] | [INFO] [stdout] 93 | create_dir(artifacts_dir); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 93 | let _ = create_dir(artifacts_dir); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 54 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.39s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: fs_extra v1.1.0 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] running `Command { std: "docker" "inspect" "c3c72d6ed401cb3e20d5d2f6d8072dc93e117ddd3407c7157ae4f00dd56a6022", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c3c72d6ed401cb3e20d5d2f6d8072dc93e117ddd3407c7157ae4f00dd56a6022", kill_on_drop: false }` [INFO] [stdout] c3c72d6ed401cb3e20d5d2f6d8072dc93e117ddd3407c7157ae4f00dd56a6022