[INFO] fetching crate assemble-core 0.2.0...
[INFO] checking assemble-core-0.2.0 against master#c2f2db79ca3024f68d22b45aa22b570775c2c4ad for pr-124157
[INFO] extracting crate assemble-core 0.2.0 into /workspace/builds/worker-3-tc1/source
[INFO] validating manifest of crates.io crate assemble-core 0.2.0 on toolchain c2f2db79ca3024f68d22b45aa22b570775c2c4ad
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate assemble-core 0.2.0
[INFO] finished tweaking crates.io crate assemble-core 0.2.0
[INFO] tweaked toml for crates.io crate assemble-core 0.2.0 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 250 packages to latest compatible versions
[INFO] [stderr]       Adding addr2line v0.21.0 (latest: v0.22.0)
[INFO] [stderr]       Adding arrayvec v0.5.2 (latest: v0.7.4)
[INFO] [stderr]       Adding base64 v0.21.7 (latest: v0.22.1)
[INFO] [stderr]       Adding bitflags v1.3.2 (latest: v2.5.0)
[INFO] [stderr]       Adding config v0.11.0 (latest: v0.14.0)
[INFO] [stderr]       Adding directories v4.0.1 (latest: v5.0.1)
[INFO] [stderr]       Adding dirs v4.0.0 (latest: v5.0.1)
[INFO] [stderr]       Adding dirs-sys v0.3.7 (latest: v0.4.1)
[INFO] [stderr]       Adding encode_unicode v0.3.6 (latest: v1.0.0)
[INFO] [stderr]       Adding fixedbitset v0.4.2 (latest: v0.5.7)
[INFO] [stderr]       Adding foreign-types v0.3.2 (latest: v0.5.0)
[INFO] [stderr]       Adding foreign-types-shared v0.1.1 (latest: v0.3.1)
[INFO] [stderr]       Adding generic-array v0.14.7 (latest: v1.0.0)
[INFO] [stderr]       Adding gimli v0.28.1 (latest: v0.29.0)
[INFO] [stderr]       Adding h2 v0.3.26 (latest: v0.4.4)
[INFO] [stderr]       Adding hashbrown v0.12.3 (latest: v0.14.5)
[INFO] [stderr]       Adding heck v0.4.1 (latest: v0.5.0)
[INFO] [stderr]       Adding hermit-abi v0.1.19 (latest: v0.3.9)
[INFO] [stderr]       Adding http v0.2.12 (latest: v1.1.0)
[INFO] [stderr]       Adding http-body v0.4.6 (latest: v1.0.0)
[INFO] [stderr]       Adding hyper v0.14.28 (latest: v1.3.1)
[INFO] [stderr]       Adding hyper-tls v0.5.0 (latest: v0.6.0)
[INFO] [stderr]       Adding indexmap v1.9.3 (latest: v2.2.6)
[INFO] [stderr]       Adding itertools v0.10.5 (latest: v0.12.1)
[INFO] [stderr]       Adding lazy_static v0.2.11 (latest: v1.4.0)
[INFO] [stderr]       Adding lexical-core v0.7.6 (latest: v0.8.5)
[INFO] [stderr]       Adding linux-raw-sys v0.4.13 (latest: v0.6.4)
[INFO] [stderr]       Adding nom v5.1.3 (latest: v7.1.3)
[INFO] [stderr]       Adding num-traits v0.1.43 (latest: v0.2.18)
[INFO] [stderr]       Adding object v0.32.2 (latest: v0.35.0)
[INFO] [stderr]       Adding ordered-float v2.10.1 (latest: v4.2.0)
[INFO] [stderr]       Adding reqwest v0.11.27 (latest: v0.12.4)
[INFO] [stderr]       Adding rust-ini v0.13.0 (latest: v0.21.0)
[INFO] [stderr]       Adding rustls-pemfile v1.0.4 (latest: v2.1.2)
[INFO] [stderr]       Adding serde v0.8.23 (latest: v1.0.200)
[INFO] [stderr]       Adding strsim v0.10.0 (latest: v0.11.1)
[INFO] [stderr]       Adding strum v0.24.1 (latest: v0.26.2)
[INFO] [stderr]       Adding strum_macros v0.24.3 (latest: v0.26.2)
[INFO] [stderr]       Adding syn v1.0.109 (latest: v2.0.60)
[INFO] [stderr]       Adding sync_wrapper v0.1.2 (latest: v1.0.1)
[INFO] [stderr]       Adding system-configuration v0.5.1 (latest: v0.6.0)
[INFO] [stderr]       Adding system-configuration-sys v0.5.0 (latest: v0.6.0)
[INFO] [stderr]       Adding toml v0.5.11 (latest: v0.8.12)
[INFO] [stderr]       Adding toml_datetime v0.5.1 (latest: v0.6.5)
[INFO] [stderr]       Adding toml_edit v0.16.2 (latest: v0.22.12)
[INFO] [stderr]       Adding wasi v0.11.0+wasi-snapshot-preview1 (latest: v0.13.0+wasi-0.2.0)
[INFO] [stderr]       Adding windows-sys v0.48.0 (latest: v0.52.0)
[INFO] [stderr]       Adding windows-targets v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding windows_aarch64_gnullvm v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding windows_aarch64_msvc v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding windows_i686_gnu v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding windows_i686_msvc v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding windows_x86_64_gnu v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding windows_x86_64_gnullvm v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding windows_x86_64_msvc v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding winreg v0.50.0 (latest: v0.52.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded num_threads v0.1.7
[INFO] [stderr]   Downloaded toml_edit v0.16.2
[INFO] [stderr]   Downloaded assemble-macros v0.2.0
[INFO] [stderr]   Downloaded fern v0.6.2
[INFO] [stderr]   Downloaded crossbeam v0.8.4
[INFO] [stderr]   Downloaded more_collection_macros v0.2.2
[INFO] [stderr]   Downloaded rmp v0.8.14
[INFO] [stderr]   Downloaded rmp-serde v1.3.0
[INFO] [stderr]   Downloaded ron v0.8.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fd0a980831144bfaf99deda26f50986167eb8bed1aeca86816d1e78c445b6de8
[INFO] running `Command { std: "docker" "start" "-a" "fd0a980831144bfaf99deda26f50986167eb8bed1aeca86816d1e78c445b6de8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fd0a980831144bfaf99deda26f50986167eb8bed1aeca86816d1e78c445b6de8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fd0a980831144bfaf99deda26f50986167eb8bed1aeca86816d1e78c445b6de8", kill_on_drop: false }`
[INFO] [stdout] fd0a980831144bfaf99deda26f50986167eb8bed1aeca86816d1e78c445b6de8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a7e04ed438818484246383a75672a708e5ecc67cda27147956ee7751339843e9
[INFO] running `Command { std: "docker" "start" "-a" "a7e04ed438818484246383a75672a708e5ecc67cda27147956ee7751339843e9", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.154
[INFO] [stderr]     Checking memchr v2.7.2
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking log v0.4.21
[INFO] [stderr]    Compiling syn v2.0.60
[INFO] [stderr]     Checking petgraph v0.6.4
[INFO] [stderr]     Checking lexical-core v0.7.6
[INFO] [stderr]     Checking anstyle-parse v0.2.3
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]     Checking anstyle-query v1.0.2
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]     Checking anstyle v1.0.6
[INFO] [stderr]    Compiling portable-atomic v1.6.0
[INFO] [stderr]     Checking strsim v0.11.1
[INFO] [stderr]     Checking clap_lex v0.7.0
[INFO] [stderr]     Checking powerfmt v0.2.0
[INFO] [stderr]     Checking anstream v0.6.13
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling semver v1.0.22
[INFO] [stderr]    Compiling num-conv v0.1.0
[INFO] [stderr]     Checking either v1.11.0
[INFO] [stderr]     Checking deranged v0.3.11
[INFO] [stderr]     Checking clap_builder v4.5.2
[INFO] [stderr]    Compiling time-macros v0.2.18
[INFO] [stderr]     Checking crossbeam-deque v0.8.5
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]     Checking futures-util v0.3.30
[INFO] [stderr]     Checking object v0.32.2
[INFO] [stderr]     Checking nom8 v0.2.0
[INFO] [stderr]     Checking crossbeam-channel v0.5.12
[INFO] [stderr]     Checking crossbeam-queue v0.3.11
[INFO] [stderr]     Checking num_threads v0.1.7
[INFO] [stderr]     Checking nom v5.1.3
[INFO] [stderr]     Checking number_prefix v0.4.0
[INFO] [stderr]     Checking regex-automata v0.4.6
[INFO] [stderr]     Checking num-traits v0.1.43
[INFO] [stderr]     Checking ordered-float v2.10.1
[INFO] [stderr]     Checking time-core v0.1.2
[INFO] [stderr]     Checking cpufeatures v0.2.12
[INFO] [stderr]     Checking crossbeam v0.8.4
[INFO] [stderr]     Checking fern v0.6.2
[INFO] [stderr]     Checking colored v2.1.0
[INFO] [stderr]     Checking heck v0.4.1
[INFO] [stderr]     Checking more_collection_macros v0.2.2
[INFO] [stderr]     Checking socket2 v0.5.7
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]     Checking openssl-sys v0.9.102
[INFO] [stderr]     Checking getrandom v0.2.14
[INFO] [stderr]     Checking dirs-sys v0.3.7
[INFO] [stderr]     Checking thread-id v4.2.1
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking directories v4.0.1
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking console v0.15.8
[INFO] [stderr]     Checking uuid v1.8.0
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking time v0.3.36
[INFO] [stderr]     Checking dirs v4.0.0
[INFO] [stderr]     Checking tokio v1.37.0
[INFO] [stderr]     Checking sha2 v0.10.8
[INFO] [stderr]     Checking indicatif v0.17.8
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling merge_derive v0.1.0
[INFO] [stderr]    Compiling strum_macros v0.24.3
[INFO] [stderr]    Compiling serde_derive v1.0.200
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.59
[INFO] [stderr]    Compiling clap_derive v4.5.4
[INFO] [stderr]     Checking regex v1.10.4
[INFO] [stderr]     Checking merge v0.1.0
[INFO] [stderr]     Checking serde-hjson v0.9.1
[INFO] [stderr]     Checking backtrace v0.3.71
[INFO] [stderr]     Checking parking_lot v0.12.2
[INFO] [stderr]     Checking thiserror v1.0.59
[INFO] [stderr]     Checking clap v4.5.4
[INFO] [stderr]     Checking tokio-util v0.7.10
[INFO] [stderr]     Checking h2 v0.3.26
[INFO] [stderr]     Checking serde v1.0.200
[INFO] [stderr]     Checking hyper v0.14.28
[INFO] [stderr]     Checking bitflags v2.5.0
[INFO] [stderr]     Checking serde_json v1.0.116
[INFO] [stderr]     Checking toml v0.5.11
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking serde-value v0.7.0
[INFO] [stderr]     Checking url v2.5.0
[INFO] [stderr]     Checking toml_datetime v0.5.1
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking openssl v0.10.64
[INFO] [stderr]     Checking rustix v0.38.34
[INFO] [stderr]     Checking ron v0.8.1
[INFO] [stderr]     Checking toml_edit v0.16.2
[INFO] [stderr]     Checking config v0.11.0
[INFO] [stderr]     Checking ptree v0.4.0
[INFO] [stderr]     Checking tempfile v3.10.1
[INFO] [stderr]     Checking native-tls v0.2.11
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking reqwest v0.11.27
[INFO] [stderr]     Checking assemble-core v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `TaskFinder`, `TaskPath`
[INFO] [stdout]   --> src/defaults/tasks/help.rs:14:30
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::project::finder::{TaskFinder, TaskPath};
[INFO] [stdout]    |                              ^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::task::ExecutableTask`
[INFO] [stdout]   --> src/defaults/tasks/help.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::task::ExecutableTask;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::finder::TaskFinder`
[INFO] [stdout]   --> src/identifier.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::project::finder::TaskFinder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/project.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Id`, `InvalidId`
[INFO] [stdout]   --> src/project.rs:12:25
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::identifier::{Id, InvalidId, ProjectId, TaskId, TaskIdFactory};
[INFO] [stdout]    |                         ^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Plugin`
[INFO] [stdout]   --> src/project.rs:16:22
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::plugins::{Plugin, PluginAware, PluginManager};
[INFO] [stdout]    |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::task::AnyTaskHandle`
[INFO] [stdout]   --> src/project.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crate::task::AnyTaskHandle;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TaskHandle`, `Task`
[INFO] [stdout]   --> src/project.rs:20:19
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::task::{Task, TaskHandle};
[INFO] [stdout]    |                   ^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Not`
[INFO] [stdout]   --> src/project.rs:30:33
[INFO] [stdout]    |
[INFO] [stdout] 30 | use std::ops::{Deref, DerefMut, Not};
[INFO] [stdout]    |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ReentrantMutexGuard`, `ReentrantMutex`, `RwLockReadGuard`, `RwLockWriteGuard`
[INFO] [stdout]   --> src/project.rs:33:19
[INFO] [stdout]    |
[INFO] [stdout] 33 | use parking_lot::{ReentrantMutex, ReentrantMutexGuard, RwLock, RwLockReadGuard, RwLockWriteGuard};
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^          ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TryLockError`
[INFO] [stdout]   --> src/project.rs:34:29
[INFO] [stdout]    |
[INFO] [stdout] 34 | use std::sync::{Arc, Mutex, TryLockError, Weak};
[INFO] [stdout]    |                             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BuildError`
[INFO] [stdout]  --> src/project/error.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::exception::{BuildError, BuildException};
[INFO] [stdout]   |                        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TaskPath`
[INFO] [stdout]   --> src/project/error.rs:13:46
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::project::finder::{ProjectPathBuf, TaskPath, TaskPathBuf};
[INFO] [stdout]    |                                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fmt`
[INFO] [stdout]   --> src/project/error.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | use std::{fmt, io};
[INFO] [stdout]    |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project`
[INFO] [stdout]  --> src/project/finder.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::project;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/project/finder.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::finder::TaskPath`
[INFO] [stdout]   --> src/project.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | use crate::project::finder::TaskPath;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TrueSharableProject`
[INFO] [stdout]   --> src/project.rs:50:29
[INFO] [stdout]    |
[INFO] [stdout] 50 | use shared::{SharedProject, TrueSharableProject, WeakSharedProject};
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::file_collection::FileCollection`
[INFO] [stdout]  --> src/startup/initialization/descriptor.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::file_collection::FileCollection;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IndentChars`, `PrintConfig`
[INFO] [stdout]  --> src/startup/initialization/descriptor.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 | use ptree::{IndentChars, PrintConfig};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]   --> src/startup/initialization/descriptor.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::str::FromStr;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::shared::SharedProject`
[INFO] [stdout]  --> src/startup/initialization/settings.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::project::shared::SharedProject;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Weak`
[INFO] [stdout]   --> src/startup/initialization.rs:12:22
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::sync::{Arc, Weak};
[INFO] [stdout]    |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProjectError`
[INFO] [stdout]  --> src/task/task_container.rs:4:29
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::project::error::{ProjectError, ProjectResult};
[INFO] [stdout]   |                             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::finder::TaskPath`
[INFO] [stdout]   --> src/task/task_container.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::project::finder::TaskPath;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]   --> src/task/task_container.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use itertools::Itertools;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::Project`
[INFO] [stdout]  --> src/task/task_executor.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::project::Project;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProjectPath`
[INFO] [stdout]   --> src/task/task_executor.rs:12:45
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::project::finder::{ProjectFinder, ProjectPath, ProjectPathBuf};
[INFO] [stdout]    |                                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Weak`
[INFO] [stdout]   --> src/task/task_executor.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 92 |     use std::sync::Weak;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Color`
[INFO] [stdout]  --> src/unstable/text_factory/graph.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ptree::{Color, IndentChars, PrintConfig};
[INFO] [stdout]   |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Assemble`
[INFO] [stdout]   --> src/lib.rs:84:26
[INFO] [stdout]    |
[INFO] [stdout] 84 |     use crate::prelude::{Assemble, Settings};
[INFO] [stdout]    |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::identifier::TaskId`
[INFO] [stdout]   --> src/defaults/plugins.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |     use crate::identifier::TaskId;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::finder::TaskFinder`
[INFO] [stdout]   --> src/defaults/plugins.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     use crate::project::finder::TaskFinder;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TaskFinder`, `TaskPath`
[INFO] [stdout]   --> src/defaults/tasks/help.rs:14:30
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::project::finder::{TaskFinder, TaskPath};
[INFO] [stdout]    |                              ^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::task::ExecutableTask`
[INFO] [stdout]   --> src/defaults/tasks/help.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::task::ExecutableTask;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::finder::TaskFinder`
[INFO] [stdout]   --> src/identifier.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::project::finder::TaskFinder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/project.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Id`, `InvalidId`
[INFO] [stdout]   --> src/project.rs:12:25
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::identifier::{Id, InvalidId, ProjectId, TaskId, TaskIdFactory};
[INFO] [stdout]    |                         ^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Plugin`
[INFO] [stdout]   --> src/project.rs:16:22
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::plugins::{Plugin, PluginAware, PluginManager};
[INFO] [stdout]    |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::task::AnyTaskHandle`
[INFO] [stdout]   --> src/project.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crate::task::AnyTaskHandle;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TaskHandle`, `Task`
[INFO] [stdout]   --> src/project.rs:20:19
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::task::{Task, TaskHandle};
[INFO] [stdout]    |                   ^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Not`
[INFO] [stdout]   --> src/project.rs:30:33
[INFO] [stdout]    |
[INFO] [stdout] 30 | use std::ops::{Deref, DerefMut, Not};
[INFO] [stdout]    |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ReentrantMutexGuard`, `ReentrantMutex`, `RwLockReadGuard`, `RwLockWriteGuard`
[INFO] [stdout]   --> src/project.rs:33:19
[INFO] [stdout]    |
[INFO] [stdout] 33 | use parking_lot::{ReentrantMutex, ReentrantMutexGuard, RwLock, RwLockReadGuard, RwLockWriteGuard};
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^          ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TryLockError`
[INFO] [stdout]   --> src/project.rs:34:29
[INFO] [stdout]    |
[INFO] [stdout] 34 | use std::sync::{Arc, Mutex, TryLockError, Weak};
[INFO] [stdout]    |                             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::PayloadError`
[INFO] [stdout]  --> src/project/dev.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::error::PayloadError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/project/dev.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BuildError`
[INFO] [stdout]  --> src/project/error.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::exception::{BuildError, BuildException};
[INFO] [stdout]   |                        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TaskPath`
[INFO] [stdout]   --> src/project/error.rs:13:46
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::project::finder::{ProjectPathBuf, TaskPath, TaskPathBuf};
[INFO] [stdout]    |                                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fmt`
[INFO] [stdout]   --> src/project/error.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | use std::{fmt, io};
[INFO] [stdout]    |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project`
[INFO] [stdout]  --> src/project/finder.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::project;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/project/finder.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::Project`
[INFO] [stdout]    --> src/project/finder.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 |     use crate::Project;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Cell`, `Ref`
[INFO] [stdout]    --> src/project/finder.rs:443:21
[INFO] [stdout]     |
[INFO] [stdout] 443 |     use std::cell::{Cell, Ref, RefCell};
[INFO] [stdout]     |                     ^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `toml::toml`
[INFO] [stdout]    --> src/project/finder.rs:444:9
[INFO] [stdout]     |
[INFO] [stdout] 444 |     use toml::toml;
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::finder::TaskPath`
[INFO] [stdout]   --> src/project.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | use crate::project::finder::TaskPath;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TrueSharableProject`
[INFO] [stdout]   --> src/project.rs:50:29
[INFO] [stdout]    |
[INFO] [stdout] 50 | use shared::{SharedProject, TrueSharableProject, WeakSharedProject};
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::file_collection::FileCollection`
[INFO] [stdout]  --> src/startup/initialization/descriptor.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::file_collection::FileCollection;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IndentChars`, `PrintConfig`
[INFO] [stdout]  --> src/startup/initialization/descriptor.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 | use ptree::{IndentChars, PrintConfig};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]   --> src/startup/initialization/descriptor.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::str::FromStr;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::shared::SharedProject`
[INFO] [stdout]  --> src/startup/initialization/settings.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::project::shared::SharedProject;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Weak`
[INFO] [stdout]   --> src/startup/initialization.rs:12:22
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::sync::{Arc, Weak};
[INFO] [stdout]    |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProjectError`
[INFO] [stdout]  --> src/task/task_container.rs:4:29
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::project::error::{ProjectError, ProjectResult};
[INFO] [stdout]   |                             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::finder::TaskPath`
[INFO] [stdout]   --> src/task/task_container.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::project::finder::TaskPath;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]   --> src/task/task_container.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use itertools::Itertools;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::Project`
[INFO] [stdout]  --> src/task/task_executor.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::project::Project;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProjectPath`
[INFO] [stdout]   --> src/task/task_executor.rs:12:45
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::project::finder::{ProjectFinder, ProjectPath, ProjectPathBuf};
[INFO] [stdout]    |                                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Weak`
[INFO] [stdout]   --> src/task/task_executor.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 92 |     use std::sync::Weak;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Color`
[INFO] [stdout]  --> src/unstable/text_factory/graph.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ptree::{Color, IndentChars, PrintConfig};
[INFO] [stdout]   |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Assemble`
[INFO] [stdout]   --> src/lib.rs:84:26
[INFO] [stdout]    |
[INFO] [stdout] 84 |     use crate::prelude::{Assemble, Settings};
[INFO] [stdout]    |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/identifier.rs:297:9
[INFO] [stdout]     |
[INFO] [stdout] 296 |         let task_id: Box<dyn Buildable> = todo!();
[INFO] [stdout]     |                                           ------- any code following this expression is unreachable
[INFO] [stdout] 297 |         task_id.get_dependencies(project)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/identifier.rs:297:9
[INFO] [stdout]     |
[INFO] [stdout] 296 |         let task_id: Box<dyn Buildable> = todo!();
[INFO] [stdout]     |                                           ------- any code following this expression is unreachable
[INFO] [stdout] 297 |         task_id.get_dependencies(project)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Read`
[INFO] [stdout]   --> src/workspace.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::io::{Read, Write};
[INFO] [stdout]    |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]   --> src/workspace.rs:10:21
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::io::{Read, Write};
[INFO] [stdout]    |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Update`
[INFO] [stdout]  --> src/cryptography.rs:6:36
[INFO] [stdout]   |
[INFO] [stdout] 6 | use sha2::digest::{OutputSizeUser, Update};
[INFO] [stdout]   |                                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::task::create_task::CreateTask`
[INFO] [stdout]   --> src/defaults/tasks.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::task::create_task::CreateTask;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Add`
[INFO] [stdout]  --> src/dependencies/resolved_dependency.rs:7:16
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::ops::{Add, AddAssign};
[INFO] [stdout]   |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/task.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]  --> src/dependencies/unresolved_dependency.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::Write;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GetBuildable`
[INFO] [stdout]   --> src/dependencies/configurations.rs:12:79
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::project::buildable::{Buildable, BuildableObject, BuiltByContainer, GetBuildable};
[INFO] [stdout]    |                                                                               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/dependencies/file_dependency.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]   --> src/task/work_handler.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use std::io::Write;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Log`
[INFO] [stdout]  --> src/logging.rs:9:31
[INFO] [stdout]   |
[INFO] [stdout] 9 | use log::{Level, LevelFilter, Log, Record, SetLoggerError};
[INFO] [stdout]   |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::plugins::PluginAware`
[INFO] [stdout]   --> src/dependencies/project_dependency.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::plugins::PluginAware;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Write`
[INFO] [stdout]   --> src/startup/initialization/descriptor.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::fmt::Write as _;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/identifier.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::task::task_io::TaskIO`
[INFO] [stdout]   --> src/task/executable.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::task::task_io::TaskIO;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]   --> src/startup/initialization/descriptor.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::io::Write as _;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `found` is never read
[INFO] [stdout]    --> src/dependencies/configurations.rs:134:33
[INFO] [stdout]     |
[INFO] [stdout] 134 | ...                   found = true;
[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: unused import: `crate::file_collection::FileCollection`
[INFO] [stdout]    --> src/workspace.rs:371:13
[INFO] [stdout]     |
[INFO] [stdout] 371 |         use crate::file_collection::FileCollection;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Read`
[INFO] [stdout]   --> src/workspace.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::io::{Read, Write};
[INFO] [stdout]    |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]   --> src/workspace.rs:10:21
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::io::{Read, Write};
[INFO] [stdout]    |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Update`
[INFO] [stdout]  --> src/cryptography.rs:6:36
[INFO] [stdout]   |
[INFO] [stdout] 6 | use sha2::digest::{OutputSizeUser, Update};
[INFO] [stdout]   |                                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::task::create_task::CreateTask`
[INFO] [stdout]   --> src/defaults/tasks.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::task::create_task::CreateTask;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Add`
[INFO] [stdout]  --> src/dependencies/resolved_dependency.rs:7:16
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::ops::{Add, AddAssign};
[INFO] [stdout]   |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]  --> src/dependencies/unresolved_dependency.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::Write;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::workspace::WorkspaceDirectory`
[INFO] [stdout]    --> src/project.rs:513:9
[INFO] [stdout]     |
[INFO] [stdout] 513 |     use crate::workspace::WorkspaceDirectory;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GetBuildable`
[INFO] [stdout]   --> src/dependencies/configurations.rs:12:79
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::project::buildable::{Buildable, BuildableObject, BuiltByContainer, GetBuildable};
[INFO] [stdout]    |                                                                               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/task.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::task::create_task::CreateTask`
[INFO] [stdout]   --> src/dependencies/dependency_container.rs:81:9
[INFO] [stdout]    |
[INFO] [stdout] 81 |     use crate::task::create_task::CreateTask;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/dependencies/file_dependency.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]   --> src/startup/initialization/descriptor.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::io::Write as _;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]   --> src/task/work_handler.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use std::io::Write;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::plugins::PluginAware`
[INFO] [stdout]   --> src/dependencies/project_dependency.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::plugins::PluginAware;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Log`
[INFO] [stdout]  --> src/logging.rs:9:31
[INFO] [stdout]   |
[INFO] [stdout] 9 | use log::{Level, LevelFilter, Log, Record, SetLoggerError};
[INFO] [stdout]   |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Write`
[INFO] [stdout]   --> src/startup/initialization/descriptor.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::fmt::Write as _;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/identifier.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::task::task_io::TaskIO`
[INFO] [stdout]   --> src/task/executable.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::task::task_io::TaskIO;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/identifier.rs:139:41
[INFO] [stdout]     |
[INFO] [stdout] 139 |     pub fn concat<I: Into<Self>>(&self, mut other: I) -> Self {
[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: `task_id`
[INFO] [stdout]    --> src/identifier.rs:296:13
[INFO] [stdout]     |
[INFO] [stdout] 296 |         let task_id: Box<dyn Buildable> = todo!();
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_task_id`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `project`
[INFO] [stdout]    --> src/identifier.rs:295:32
[INFO] [stdout]     |
[INFO] [stdout] 295 |     fn get_dependencies(&self, project: &Project) -> ProjectResult<HashSet<TaskId>> {
[INFO] [stdout]     |                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `found` is never read
[INFO] [stdout]    --> src/dependencies/configurations.rs:134:33
[INFO] [stdout]     |
[INFO] [stdout] 134 | ...                   found = true;
[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/identifier.rs:139:41
[INFO] [stdout]     |
[INFO] [stdout] 139 |     pub fn concat<I: Into<Self>>(&self, mut other: I) -> Self {
[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: `task_id`
[INFO] [stdout]    --> src/identifier.rs:296:13
[INFO] [stdout]     |
[INFO] [stdout] 296 |         let task_id: Box<dyn Buildable> = todo!();
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_task_id`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `project`
[INFO] [stdout]    --> src/identifier.rs:295:32
[INFO] [stdout]     |
[INFO] [stdout] 295 |     fn get_dependencies(&self, project: &Project) -> ProjectResult<HashSet<TaskId>> {
[INFO] [stdout]     |                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/project/finder.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |         let mut at_root = |ptr: &Option<SharedProject>| -> bool {
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/startup/initialization/descriptor.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |         let mut dir = parent_dir.join(&name);
[INFO] [stdout]     |             ----^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `root`
[INFO] [stdout]   --> src/startup/initialization.rs:34:13
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let ref root = parent.with(|p| p.root_project());
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_root`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]   --> src/startup/initialization.rs:36:74
[INFO] [stdout]    |
[INFO] [stdout] 36 |         parent.subproject_in(descriptor.name(), descriptor.directory(), |p| Ok(()))
[INFO] [stdout]    |                                                                          ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/startup/initialization.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |     let mut output = Project::in_dir_with_id_and_root(
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/project/finder.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |         let mut at_root = |ptr: &Option<SharedProject>| -> bool {
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/project/finder.rs:500:13
[INFO] [stdout]     |
[INFO] [stdout] 500 |         let mut count = RefCell::new(0_usize);
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/project/finder.rs:533:13
[INFO] [stdout]     |
[INFO] [stdout] 533 |         let mut count = RefCell::new(0_usize);
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/startup/initialization/descriptor.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |         let mut dir = parent_dir.join(&name);
[INFO] [stdout]     |             ----^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `root`
[INFO] [stdout]   --> src/startup/initialization.rs:34:13
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let ref root = parent.with(|p| p.root_project());
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_root`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]   --> src/startup/initialization.rs:36:74
[INFO] [stdout]    |
[INFO] [stdout] 36 |         parent.subproject_in(descriptor.name(), descriptor.directory(), |p| Ok(()))
[INFO] [stdout]    |                                                                          ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/startup/initialization.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |     let mut output = Project::in_dir_with_id_and_root(
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/unstable/text_factory/graph.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let mut config = config();
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_release_url` is never used
[INFO] [stdout]   --> src/defaults/tasks/wrapper.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl Executable<WrapperTask> {
[INFO] [stdout]    | ---------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 60 |     fn get_release_url(&self) -> Result<Url, ProjectError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_shell_script` is never used
[INFO] [stdout]    --> src/defaults/tasks/wrapper.rs:177:4
[INFO] [stdout]     |
[INFO] [stdout] 177 | fn generate_shell_script(_dest_file: &Path) -> Result<(), BuildResult> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_bat_script` is never used
[INFO] [stdout]    --> src/defaults/tasks/wrapper.rs:181:4
[INFO] [stdout]     |
[INFO] [stdout] 181 | fn generate_bat_script(_dest_file: &Path) -> Result<(), BuildResult> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `store_path` and `save_distribution_info` are never used
[INFO] [stdout]    --> src/defaults/tasks/wrapper.rs:204:8
[INFO] [stdout]     |
[INFO] [stdout] 195 | impl WrapperSettings {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 204 |     fn store_path(&self) -> PathBuf {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 236 |     fn save_distribution_info(&self, info: DistributionInfo) -> io::Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `executable_path` is never used
[INFO] [stdout]    --> src/defaults/tasks/wrapper.rs:254:12
[INFO] [stdout]     |
[INFO] [stdout] 253 | impl DistributionInfo {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 254 |     pub fn executable_path(&self) -> &PathBuf {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_distributions` is never used
[INFO] [stdout]   --> src/defaults/tasks/wrapper/github.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn get_distributions(version_tag: &str) -> Result<Vec<Distribution>, ProjectError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_current_distributions` is never used
[INFO] [stdout]   --> src/defaults/tasks/wrapper/github.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub fn get_current_distributions() -> Result<Vec<Distribution>, ProjectError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_relevant` is never used
[INFO] [stdout]   --> src/defaults/tasks/wrapper/github.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub trait GetDistribution {
[INFO] [stdout]    |           --------------- method in this trait
[INFO] [stdout] 48 |     /// Gets the relevant distribution for this result
[INFO] [stdout] 49 |     fn get_relevant(self) -> Option<Distribution>;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `group`, `module`, `config`, and `semver_request` are never read
[INFO] [stdout]   --> src/dependencies/artifact_request.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct ArtifactRequest {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] 22 |     group: Option<String>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 23 |     module: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 24 |     config: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 25 |     semver_request: VersionReq,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ArtifactRequest` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `take_inner` are never used
[INFO] [stdout]    --> src/lazy_evaluation/prop.rs:283:8
[INFO] [stdout]     |
[INFO] [stdout] 282 | impl<T: Send + Sync + Clone> PropInner<T> {
[INFO] [stdout]     | ----------------------------------------- associated items in this implementation
[INFO] [stdout] 283 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 300 |     fn take_inner(&mut self) -> Option<Box<dyn Provider<T>>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CONTINUE_LOGGING` is never used
[INFO] [stdout]    --> src/logging.rs:510:8
[INFO] [stdout]     |
[INFO] [stdout] 510 | static CONTINUE_LOGGING: AtomicBool = AtomicBool::new(true);
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `applied_plugins` is never read
[INFO] [stdout]   --> src/project.rs:88:5
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct Project {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 88 |     applied_plugins: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Project` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/project/shared.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl SharedProject {
[INFO] [stdout]    | ------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 38 |     fn new(project: Project) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `executable` is never used
[INFO] [stdout]    --> src/task/any_task.rs:126:8
[INFO] [stdout]     |
[INFO] [stdout] 93  | impl AnyTaskHandleInner {
[INFO] [stdout]     | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 126 |     fn executable(&mut self, project: &SharedProject) -> ProjectResult<Box<dyn FullTask>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `verify_value` is never read
[INFO] [stdout]   --> src/task/flags.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct OptionDeclaration {
[INFO] [stdout]    |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 45 |     verify_value: Option<Box<dyn Fn(&str) -> Result<(), Box<dyn Error + Send + Sync>>>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `shared_project` is never used
[INFO] [stdout]   --> src/task/task_container.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl TaskContainer {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     fn shared_project(&self) -> SharedProject {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `serialize_data` is never used
[INFO] [stdout]    --> src/task/work_handler.rs:313:8
[INFO] [stdout]     |
[INFO] [stdout] 55  | impl WorkHandler {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 313 |     fn serialize_data<T: Serialize>(val: T) -> impl Provider<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/unstable/text_factory.rs:120:12
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl BuildResultString {
[INFO] [stdout]     | ---------------------- associated function in this implementation
[INFO] [stdout] 119 |     /// Construct a new build result
[INFO] [stdout] 120 |     pub fn new(result_good: bool, time: Duration) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_separator`, `set_indent`, `with_separator`, `with_indent`, `elements`, and `sublist` are never used
[INFO] [stdout]   --> src/unstable/text_factory/list.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl<'f, B: BulletPointFactory> TextListFactory<'f, B> {
[INFO] [stdout]    | ------------------------------------------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn set_separator(&mut self, separator: &str) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn set_indent(&mut self, indent: &str) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn with_separator(mut self, separator: &str) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn with_indent(mut self, indent: &str) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn elements<O: ToString + 'f, I: IntoIterator<Item = O>>(mut self, elements: I) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn sublist<F>(mut self, func: F) -> Self
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `StartSubList` and `EndSubList` are never constructed
[INFO] [stdout]    --> src/unstable/text_factory/list.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 121 | enum TextListCommand<'f> {
[INFO] [stdout]     |      --------------- variants in this enum
[INFO] [stdout] 122 |     Text(Box<dyn ToString + 'f>),
[INFO] [stdout] 123 |     StartSubList,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 124 |     EndSubList,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `map` is never used
[INFO] [stdout]    --> src/unstable/text_factory/list.rs:159:8
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub trait BulletPointFactory: Clone {
[INFO] [stdout]     |           ------------------ method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 159 |     fn map<F>(self, func: F) -> MappedBulletPointFactory<Self, F>
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/unstable/text_factory/list.rs:349:12
[INFO] [stdout]     |
[INFO] [stdout] 348 | impl<B: BulletPointFactory> MultiLevelBulletFactory<B> {
[INFO] [stdout]     | ------------------------------------------------------ associated function in this implementation
[INFO] [stdout] 349 |     pub fn new<It: IntoIterator<Item = Ib>, Ib: IntoBulletPointFactory<Factory = B>>(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `point` are never used
[INFO] [stdout]    --> src/unstable/text_factory/list.rs:427:12
[INFO] [stdout]     |
[INFO] [stdout] 426 | impl InfoList {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 427 |     pub fn new(heading: String) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 434 |     pub fn point(&mut self, info: String) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/unstable/text_factory/list.rs:458:12
[INFO] [stdout]     |
[INFO] [stdout] 457 | impl Counter {
[INFO] [stdout]     | ------------ associated function in this implementation
[INFO] [stdout] 458 |     pub fn new(start: usize) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `client` is never read
[INFO] [stdout]  --> src/web.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct WebClient {
[INFO] [stdout]   |            --------- field in this struct
[INFO] [stdout] 5 |     client: Client,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `max_jobs` is never read
[INFO] [stdout]    --> src/work_queue.rs:288:5
[INFO] [stdout]     |
[INFO] [stdout] 287 | struct Inner {
[INFO] [stdout]     |        ----- field in this struct
[INFO] [stdout] 288 |     max_jobs: usize,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `owner` is never read
[INFO] [stdout]    --> src/work_queue.rs:304:5
[INFO] [stdout]     |
[INFO] [stdout] 302 | pub struct WorkHandle<'exec> {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] 303 |     recv: Receiver<()>,
[INFO] [stdout] 304 |     owner: &'exec WorkerExecutor,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `WorkHandle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/flow/output.rs:145:34
[INFO] [stdout]     |
[INFO] [stdout] 145 |         BuildableObject::new(self.clone().into_buildable())
[INFO] [stdout]     |                                  ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Executable<AT>` does not implement `Clone`, so calling `clone` on `&Executable<AT>` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 145 -         BuildableObject::new(self.clone().into_buildable())
[INFO] [stdout] 145 +         BuildableObject::new(self.into_buildable())
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Executable<AT>`, implement `Clone` for it
[INFO] [stdout]    --> src/task/executable.rs:29:1
[INFO] [stdout]     |
[INFO] [stdout] 29  + #[derive(Clone)]
[INFO] [stdout] 30  | pub struct Executable<T: Task> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/work_queue.rs:192:9
[INFO] [stdout]     |
[INFO] [stdout] 192 |         self.join_inner();
[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] 192 |         let _ = self.join_inner();
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/work_queue.rs:401:17
[INFO] [stdout]     |
[INFO] [stdout] 401 |                 self.message_sender.send(WorkerMessage::Stop);
[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] 401 |                 let _ = self.message_sender.send(WorkerMessage::Stop);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/work_queue.rs:404:17
[INFO] [stdout]     |
[INFO] [stdout] 404 |                 handle.join();
[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] 404 |                 let _ = handle.join();
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/unstable/text_factory/graph.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let mut config = config();
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 89 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_release_url` is never used
[INFO] [stdout]   --> src/defaults/tasks/wrapper.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl Executable<WrapperTask> {
[INFO] [stdout]    | ---------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 60 |     fn get_release_url(&self) -> Result<Url, ProjectError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_shell_script` is never used
[INFO] [stdout]    --> src/defaults/tasks/wrapper.rs:177:4
[INFO] [stdout]     |
[INFO] [stdout] 177 | fn generate_shell_script(_dest_file: &Path) -> Result<(), BuildResult> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_bat_script` is never used
[INFO] [stdout]    --> src/defaults/tasks/wrapper.rs:181:4
[INFO] [stdout]     |
[INFO] [stdout] 181 | fn generate_bat_script(_dest_file: &Path) -> Result<(), BuildResult> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `save_distribution_info` is never used
[INFO] [stdout]    --> src/defaults/tasks/wrapper.rs:236:8
[INFO] [stdout]     |
[INFO] [stdout] 195 | impl WrapperSettings {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 236 |     fn save_distribution_info(&self, info: DistributionInfo) -> io::Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `executable_path` is never used
[INFO] [stdout]    --> src/defaults/tasks/wrapper.rs:254:12
[INFO] [stdout]     |
[INFO] [stdout] 253 | impl DistributionInfo {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 254 |     pub fn executable_path(&self) -> &PathBuf {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_relevant` is never used
[INFO] [stdout]   --> src/defaults/tasks/wrapper/github.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub trait GetDistribution {
[INFO] [stdout]    |           --------------- method in this trait
[INFO] [stdout] 48 |     /// Gets the relevant distribution for this result
[INFO] [stdout] 49 |     fn get_relevant(self) -> Option<Distribution>;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `group`, `module`, `config`, and `semver_request` are never read
[INFO] [stdout]   --> src/dependencies/artifact_request.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct ArtifactRequest {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] 22 |     group: Option<String>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 23 |     module: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 24 |     config: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 25 |     semver_request: VersionReq,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ArtifactRequest` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `take_inner` are never used
[INFO] [stdout]    --> src/lazy_evaluation/prop.rs:283:8
[INFO] [stdout]     |
[INFO] [stdout] 282 | impl<T: Send + Sync + Clone> PropInner<T> {
[INFO] [stdout]     | ----------------------------------------- associated items in this implementation
[INFO] [stdout] 283 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 300 |     fn take_inner(&mut self) -> Option<Box<dyn Provider<T>>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CONTINUE_LOGGING` is never used
[INFO] [stdout]    --> src/logging.rs:510:8
[INFO] [stdout]     |
[INFO] [stdout] 510 | static CONTINUE_LOGGING: AtomicBool = AtomicBool::new(true);
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `applied_plugins` is never read
[INFO] [stdout]   --> src/project.rs:88:5
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct Project {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 88 |     applied_plugins: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Project` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/project/shared.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl SharedProject {
[INFO] [stdout]    | ------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 38 |     fn new(project: Project) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `executable` is never used
[INFO] [stdout]    --> src/task/any_task.rs:126:8
[INFO] [stdout]     |
[INFO] [stdout] 93  | impl AnyTaskHandleInner {
[INFO] [stdout]     | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 126 |     fn executable(&mut self, project: &SharedProject) -> ProjectResult<Box<dyn FullTask>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `verify_value` is never read
[INFO] [stdout]   --> src/task/flags.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct OptionDeclaration {
[INFO] [stdout]    |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 45 |     verify_value: Option<Box<dyn Fn(&str) -> Result<(), Box<dyn Error + Send + Sync>>>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `shared_project` is never used
[INFO] [stdout]   --> src/task/task_container.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl TaskContainer {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     fn shared_project(&self) -> SharedProject {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `serialize_data` is never used
[INFO] [stdout]    --> src/task/work_handler.rs:313:8
[INFO] [stdout]     |
[INFO] [stdout] 55  | impl WorkHandler {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 313 |     fn serialize_data<T: Serialize>(val: T) -> impl Provider<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/unstable/text_factory.rs:120:12
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl BuildResultString {
[INFO] [stdout]     | ---------------------- associated function in this implementation
[INFO] [stdout] 119 |     /// Construct a new build result
[INFO] [stdout] 120 |     pub fn new(result_good: bool, time: Duration) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_separator`, `set_indent`, `with_separator`, and `with_indent` are never used
[INFO] [stdout]   --> src/unstable/text_factory/list.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl<'f, B: BulletPointFactory> TextListFactory<'f, B> {
[INFO] [stdout]    | ------------------------------------------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn set_separator(&mut self, separator: &str) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn set_indent(&mut self, indent: &str) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn with_separator(mut self, separator: &str) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn with_indent(mut self, indent: &str) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `client` is never read
[INFO] [stdout]  --> src/web.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct WebClient {
[INFO] [stdout]   |            --------- field in this struct
[INFO] [stdout] 5 |     client: Client,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `max_jobs` is never read
[INFO] [stdout]    --> src/work_queue.rs:288:5
[INFO] [stdout]     |
[INFO] [stdout] 287 | struct Inner {
[INFO] [stdout]     |        ----- field in this struct
[INFO] [stdout] 288 |     max_jobs: usize,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `owner` is never read
[INFO] [stdout]    --> src/work_queue.rs:304:5
[INFO] [stdout]     |
[INFO] [stdout] 302 | pub struct WorkHandle<'exec> {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] 303 |     recv: Receiver<()>,
[INFO] [stdout] 304 |     owner: &'exec WorkerExecutor,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `WorkHandle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `assemble_macros`
[INFO] [stdout]   --> tests/sub_projects.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use assemble_macros::{CreateTask, TaskIO};
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^ use of undeclared crate or module `assemble_macros`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 12 | use assemble_core::{CreateTask, TaskIO};
[INFO] [stdout]    |     ~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `assemble_macros`
[INFO] [stdout]   --> tests/file_copier.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use assemble_macros::{CreateTask, TaskIO};
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^ use of undeclared crate or module `assemble_macros`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 11 | use assemble_core::{CreateTask, TaskIO};
[INFO] [stdout]    |     ~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `assemble_macros`
[INFO] [stdout]   --> tests/dependencies.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use assemble_macros::{CreateTask, TaskIO};
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^ use of undeclared crate or module `assemble_macros`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 14 | use assemble_core::{CreateTask, TaskIO};
[INFO] [stdout]    |     ~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `assemble_core::prelude::TaskId`
[INFO] [stdout]  --> tests/dependencies.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use assemble_core::prelude::TaskId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/flow/output.rs:145:34
[INFO] [stdout]     |
[INFO] [stdout] 145 |         BuildableObject::new(self.clone().into_buildable())
[INFO] [stdout]     |                                  ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Executable<AT>` does not implement `Clone`, so calling `clone` on `&Executable<AT>` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 145 -         BuildableObject::new(self.clone().into_buildable())
[INFO] [stdout] 145 +         BuildableObject::new(self.into_buildable())
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Executable<AT>`, implement `Clone` for it
[INFO] [stdout]    --> src/task/executable.rs:29:1
[INFO] [stdout]     |
[INFO] [stdout] 29  + #[derive(Clone)]
[INFO] [stdout] 30  | pub struct Executable<T: Task> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `input` in this scope
[INFO] [stdout]   --> tests/file_copier.rs:17:7
[INFO] [stdout]    |
[INFO] [stdout] 17 |     #[input(file)]
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestArtifactTask: TaskIO` is not satisfied
[INFO] [stdout]   --> tests/sub_projects.rs:24:25
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl InitializeTask for TestArtifactTask {}
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^ the trait `TaskIO` is not implemented for `TestArtifactTask`, which is required by `TestArtifactTask: assemble_core::Task`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `TaskIO<T>`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]              assemble_core::defaults::tasks::Basic<T>
[INFO] [stdout]              assemble_core::defaults::tasks::Empty
[INFO] [stdout]    = note: required for `TestArtifactTask` to implement `assemble_core::Task`
[INFO] [stdout] note: required by a bound in `InitializeTask`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task/initialize_task.rs:5:29
[INFO] [stdout]    |
[INFO] [stdout] 5  | pub trait InitializeTask<T: Task = Self> {
[INFO] [stdout]    |                             ^^^^ required by this bound in `InitializeTask`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `output` in this scope
[INFO] [stdout]   --> tests/file_copier.rs:19:7
[INFO] [stdout]    |
[INFO] [stdout] 19 |     #[output(file)]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestArtifactTask: CreateTask` is not satisfied
[INFO] [stdout]   --> tests/sub_projects.rs:24:25
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl InitializeTask for TestArtifactTask {}
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^ the trait `Default` is not implemented for `TestArtifactTask`, which is required by `TestArtifactTask: assemble_core::Task`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `CreateTask`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]    = note: required for `TestArtifactTask` to implement `CreateTask`
[INFO] [stdout]    = note: required for `TestArtifactTask` to implement `assemble_core::Task`
[INFO] [stdout] note: required by a bound in `InitializeTask`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task/initialize_task.rs:5:29
[INFO] [stdout]    |
[INFO] [stdout] 5  | pub trait InitializeTask<T: Task = Self> {
[INFO] [stdout]    |                             ^^^^ required by this bound in `InitializeTask`
[INFO] [stdout] help: consider annotating `TestArtifactTask` with `#[derive(Default)]`
[INFO] [stdout]    |
[INFO] [stdout] 19 + #[derive(Default)]
[INFO] [stdout] 20 | struct TestArtifactTask {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestArtifactTask: TaskIO` is not satisfied
[INFO] [stdout]   --> tests/sub_projects.rs:26:15
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl Task for TestArtifactTask {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^ the trait `TaskIO` is not implemented for `TestArtifactTask`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `TaskIO<T>`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]              assemble_core::defaults::tasks::Basic<T>
[INFO] [stdout]              assemble_core::defaults::tasks::Empty
[INFO] [stdout] note: required by a bound in `assemble_core::Task`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task.rs:54:58
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub trait Task: UpToDate + InitializeTask + CreateTask + TaskIO + Sized + Debug {
[INFO] [stdout]    |                                                          ^^^^^^ required by this bound in `Task`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestArtifactTask: CreateTask` is not satisfied
[INFO] [stdout]   --> tests/sub_projects.rs:26:15
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl Task for TestArtifactTask {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^ the trait `Default` is not implemented for `TestArtifactTask`, which is required by `TestArtifactTask: CreateTask`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `CreateTask`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]    = note: required for `TestArtifactTask` to implement `CreateTask`
[INFO] [stdout] note: required by a bound in `assemble_core::Task`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task.rs:54:45
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub trait Task: UpToDate + InitializeTask + CreateTask + TaskIO + Sized + Debug {
[INFO] [stdout]    |                                             ^^^^^^^^^^ required by this bound in `Task`
[INFO] [stdout] help: consider annotating `TestArtifactTask` with `#[derive(Default)]`
[INFO] [stdout]    |
[INFO] [stdout] 19 + #[derive(Default)]
[INFO] [stdout] 20 | struct TestArtifactTask {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/work_queue.rs:192:9
[INFO] [stdout]     |
[INFO] [stdout] 192 |         self.join_inner();
[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] 192 |         let _ = self.join_inner();
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestCopy: TaskIO` is not satisfied
[INFO] [stdout]    --> tests/dependencies.rs:31:31
[INFO] [stdout]     |
[INFO] [stdout] 31  | impl SinglePathOutputTask for TestCopy {
[INFO] [stdout]     |                               ^^^^^^^^ the trait `TaskIO` is not implemented for `TestCopy`, which is required by `TestCopy: assemble_core::Task`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `TaskIO<T>`:
[INFO] [stdout]               Help
[INFO] [stdout]               TaskReport
[INFO] [stdout]               WrapperTask
[INFO] [stdout]               assemble_core::defaults::tasks::Basic<T>
[INFO] [stdout]               assemble_core::defaults::tasks::Empty
[INFO] [stdout]     = note: required for `TestCopy` to implement `assemble_core::Task`
[INFO] [stdout] note: required by a bound in `SinglePathOutputTask`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/flow/output.rs:103:33
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub trait SinglePathOutputTask: Task + Send + Sync + 'static {
[INFO] [stdout]     |                                 ^^^^ required by this bound in `SinglePathOutputTask`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/work_queue.rs:401:17
[INFO] [stdout]     |
[INFO] [stdout] 401 |                 self.message_sender.send(WorkerMessage::Stop);
[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] 401 |                 let _ = self.message_sender.send(WorkerMessage::Stop);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/work_queue.rs:404:17
[INFO] [stdout]     |
[INFO] [stdout] 404 |                 handle.join();
[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] 404 |                 let _ = handle.join();
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestArtifactTask: TaskIO` is not satisfied
[INFO] [stdout]    --> tests/sub_projects.rs:32:31
[INFO] [stdout]     |
[INFO] [stdout] 32  | impl SinglePathOutputTask for TestArtifactTask {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^ the trait `TaskIO` is not implemented for `TestArtifactTask`, which is required by `TestArtifactTask: assemble_core::Task`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `TaskIO<T>`:
[INFO] [stdout]               Help
[INFO] [stdout]               TaskReport
[INFO] [stdout]               WrapperTask
[INFO] [stdout]               assemble_core::defaults::tasks::Basic<T>
[INFO] [stdout]               assemble_core::defaults::tasks::Empty
[INFO] [stdout]     = note: required for `TestArtifactTask` to implement `assemble_core::Task`
[INFO] [stdout] note: required by a bound in `SinglePathOutputTask`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/flow/output.rs:103:33
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub trait SinglePathOutputTask: Task + Send + Sync + 'static {
[INFO] [stdout]     |                                 ^^^^ required by this bound in `SinglePathOutputTask`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestArtifactTask: CreateTask` is not satisfied
[INFO] [stdout]    --> tests/sub_projects.rs:32:31
[INFO] [stdout]     |
[INFO] [stdout] 32  | impl SinglePathOutputTask for TestArtifactTask {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^ the trait `Default` is not implemented for `TestArtifactTask`, which is required by `TestArtifactTask: assemble_core::Task`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `CreateTask`:
[INFO] [stdout]               Help
[INFO] [stdout]               TaskReport
[INFO] [stdout]               WrapperTask
[INFO] [stdout]     = note: required for `TestArtifactTask` to implement `CreateTask`
[INFO] [stdout]     = note: required for `TestArtifactTask` to implement `assemble_core::Task`
[INFO] [stdout] note: required by a bound in `SinglePathOutputTask`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/flow/output.rs:103:33
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub trait SinglePathOutputTask: Task + Send + Sync + 'static {
[INFO] [stdout]     |                                 ^^^^ required by this bound in `SinglePathOutputTask`
[INFO] [stdout] help: consider annotating `TestArtifactTask` with `#[derive(Default)]`
[INFO] [stdout]     |
[INFO] [stdout] 19  + #[derive(Default)]
[INFO] [stdout] 20  | struct TestArtifactTask {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestCopy: CreateTask` is not satisfied
[INFO] [stdout]    --> tests/dependencies.rs:31:31
[INFO] [stdout]     |
[INFO] [stdout] 31  | impl SinglePathOutputTask for TestCopy {
[INFO] [stdout]     |                               ^^^^^^^^ the trait `Default` is not implemented for `TestCopy`, which is required by `TestCopy: assemble_core::Task`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `CreateTask`:
[INFO] [stdout]               Help
[INFO] [stdout]               TaskReport
[INFO] [stdout]               WrapperTask
[INFO] [stdout]     = note: required for `TestCopy` to implement `CreateTask`
[INFO] [stdout]     = note: required for `TestCopy` to implement `assemble_core::Task`
[INFO] [stdout] note: required by a bound in `SinglePathOutputTask`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/flow/output.rs:103:33
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub trait SinglePathOutputTask: Task + Send + Sync + 'static {
[INFO] [stdout]     |                                 ^^^^ required by this bound in `SinglePathOutputTask`
[INFO] [stdout] help: consider annotating `TestCopy` with `#[derive(Default)]`
[INFO] [stdout]     |
[INFO] [stdout] 26  + #[derive(Default)]
[INFO] [stdout] 27  | struct TestCopy {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestCopy: TaskIO` is not satisfied
[INFO] [stdout]   --> tests/dependencies.rs:39:25
[INFO] [stdout]    |
[INFO] [stdout] 39 | impl InitializeTask for TestCopy {
[INFO] [stdout]    |                         ^^^^^^^^ the trait `TaskIO` is not implemented for `TestCopy`, which is required by `TestCopy: assemble_core::Task`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `TaskIO<T>`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]              assemble_core::defaults::tasks::Basic<T>
[INFO] [stdout]              assemble_core::defaults::tasks::Empty
[INFO] [stdout]    = note: required for `TestCopy` to implement `assemble_core::Task`
[INFO] [stdout] note: required by a bound in `InitializeTask`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task/initialize_task.rs:5:29
[INFO] [stdout]    |
[INFO] [stdout] 5  | pub trait InitializeTask<T: Task = Self> {
[INFO] [stdout]    |                             ^^^^ required by this bound in `InitializeTask`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestCopy: CreateTask` is not satisfied
[INFO] [stdout]   --> tests/dependencies.rs:39:25
[INFO] [stdout]    |
[INFO] [stdout] 39 | impl InitializeTask for TestCopy {
[INFO] [stdout]    |                         ^^^^^^^^ the trait `Default` is not implemented for `TestCopy`, which is required by `TestCopy: assemble_core::Task`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `CreateTask`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]    = note: required for `TestCopy` to implement `CreateTask`
[INFO] [stdout]    = note: required for `TestCopy` to implement `assemble_core::Task`
[INFO] [stdout] note: required by a bound in `InitializeTask`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task/initialize_task.rs:5:29
[INFO] [stdout]    |
[INFO] [stdout] 5  | pub trait InitializeTask<T: Task = Self> {
[INFO] [stdout]    |                             ^^^^ required by this bound in `InitializeTask`
[INFO] [stdout] help: consider annotating `TestCopy` with `#[derive(Default)]`
[INFO] [stdout]    |
[INFO] [stdout] 26 + #[derive(Default)]
[INFO] [stdout] 27 | struct TestCopy {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestCopy: TaskIO` is not satisfied
[INFO] [stdout]   --> tests/dependencies.rs:46:15
[INFO] [stdout]    |
[INFO] [stdout] 46 | impl Task for TestCopy {
[INFO] [stdout]    |               ^^^^^^^^ the trait `TaskIO` is not implemented for `TestCopy`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `TaskIO<T>`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]              assemble_core::defaults::tasks::Basic<T>
[INFO] [stdout]              assemble_core::defaults::tasks::Empty
[INFO] [stdout] note: required by a bound in `assemble_core::Task`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task.rs:54:58
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub trait Task: UpToDate + InitializeTask + CreateTask + TaskIO + Sized + Debug {
[INFO] [stdout]    |                                                          ^^^^^^ required by this bound in `Task`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestCopy: CreateTask` is not satisfied
[INFO] [stdout]   --> tests/dependencies.rs:46:15
[INFO] [stdout]    |
[INFO] [stdout] 46 | impl Task for TestCopy {
[INFO] [stdout]    |               ^^^^^^^^ the trait `Default` is not implemented for `TestCopy`, which is required by `TestCopy: CreateTask`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `CreateTask`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]    = note: required for `TestCopy` to implement `CreateTask`
[INFO] [stdout] note: required by a bound in `assemble_core::Task`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task.rs:54:45
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub trait Task: UpToDate + InitializeTask + CreateTask + TaskIO + Sized + Debug {
[INFO] [stdout]    |                                             ^^^^^^^^^^ required by this bound in `Task`
[INFO] [stdout] help: consider annotating `TestCopy` with `#[derive(Default)]`
[INFO] [stdout]    |
[INFO] [stdout] 26 + #[derive(Default)]
[INFO] [stdout] 27 | struct TestCopy {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CopyFile: TaskIO` is not satisfied
[INFO] [stdout]   --> tests/file_copier.rs:25:25
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl InitializeTask for CopyFile {
[INFO] [stdout]    |                         ^^^^^^^^ the trait `TaskIO` is not implemented for `CopyFile`, which is required by `CopyFile: assemble_core::Task`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `TaskIO<T>`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]              assemble_core::defaults::tasks::Basic<T>
[INFO] [stdout]              assemble_core::defaults::tasks::Empty
[INFO] [stdout]    = note: required for `CopyFile` to implement `assemble_core::Task`
[INFO] [stdout] note: required by a bound in `InitializeTask`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task/initialize_task.rs:5:29
[INFO] [stdout]    |
[INFO] [stdout] 5  | pub trait InitializeTask<T: Task = Self> {
[INFO] [stdout]    |                             ^^^^ required by this bound in `InitializeTask`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CopyFile: CreateTask` is not satisfied
[INFO] [stdout]   --> tests/file_copier.rs:25:25
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl InitializeTask for CopyFile {
[INFO] [stdout]    |                         ^^^^^^^^ the trait `Default` is not implemented for `CopyFile`, which is required by `CopyFile: assemble_core::Task`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `CreateTask`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]    = note: required for `CopyFile` to implement `CreateTask`
[INFO] [stdout]    = note: required for `CopyFile` to implement `assemble_core::Task`
[INFO] [stdout] note: required by a bound in `InitializeTask`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task/initialize_task.rs:5:29
[INFO] [stdout]    |
[INFO] [stdout] 5  | pub trait InitializeTask<T: Task = Self> {
[INFO] [stdout]    |                             ^^^^ required by this bound in `InitializeTask`
[INFO] [stdout] help: consider annotating `CopyFile` with `#[derive(Default)]`
[INFO] [stdout]    |
[INFO] [stdout] 16 + #[derive(Default)]
[INFO] [stdout] 17 | pub struct CopyFile {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CopyFile: TaskIO` is not satisfied
[INFO] [stdout]   --> tests/file_copier.rs:35:15
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl Task for CopyFile {
[INFO] [stdout]    |               ^^^^^^^^ the trait `TaskIO` is not implemented for `CopyFile`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `TaskIO<T>`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]              assemble_core::defaults::tasks::Basic<T>
[INFO] [stdout]              assemble_core::defaults::tasks::Empty
[INFO] [stdout] note: required by a bound in `assemble_core::Task`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task.rs:54:58
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub trait Task: UpToDate + InitializeTask + CreateTask + TaskIO + Sized + Debug {
[INFO] [stdout]    |                                                          ^^^^^^ required by this bound in `Task`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CopyFile: CreateTask` is not satisfied
[INFO] [stdout]   --> tests/file_copier.rs:35:15
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl Task for CopyFile {
[INFO] [stdout]    |               ^^^^^^^^ the trait `Default` is not implemented for `CopyFile`, which is required by `CopyFile: CreateTask`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `CreateTask`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]    = note: required for `CopyFile` to implement `CreateTask`
[INFO] [stdout] note: required by a bound in `assemble_core::Task`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task.rs:54:45
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub trait Task: UpToDate + InitializeTask + CreateTask + TaskIO + Sized + Debug {
[INFO] [stdout]    |                                             ^^^^^^^^^^ required by this bound in `Task`
[INFO] [stdout] help: consider annotating `CopyFile` with `#[derive(Default)]`
[INFO] [stdout]    |
[INFO] [stdout] 16 + #[derive(Default)]
[INFO] [stdout] 17 | pub struct CopyFile {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `assemble_core::lazy_evaluation::ProviderExt`
[INFO] [stdout]  --> tests/dependencies.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use assemble_core::lazy_evaluation::ProviderExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0432.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `assemble-core` (test "sub_projects") due to 8 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: 94 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors; 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0432.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0432.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `assemble-core` (test "dependencies") due to 8 previous errors; 2 warnings emitted
[INFO] [stderr] error: could not compile `assemble-core` (test "file_copier") due to 8 previous errors
[INFO] running `Command { std: "docker" "inspect" "a7e04ed438818484246383a75672a708e5ecc67cda27147956ee7751339843e9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a7e04ed438818484246383a75672a708e5ecc67cda27147956ee7751339843e9", kill_on_drop: false }`
[INFO] [stdout] a7e04ed438818484246383a75672a708e5ecc67cda27147956ee7751339843e9
[INFO] checking assemble-core-0.2.0 against try#9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88 for pr-124157
[INFO] extracting crate assemble-core 0.2.0 into /workspace/builds/worker-3-tc2/source
[INFO] validating manifest of crates.io crate assemble-core 0.2.0 on toolchain 9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate assemble-core 0.2.0
[INFO] finished tweaking crates.io crate assemble-core 0.2.0
[INFO] tweaked toml for crates.io crate assemble-core 0.2.0 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 250 packages to latest compatible versions
[INFO] [stderr]       Adding addr2line v0.21.0 (latest: v0.22.0)
[INFO] [stderr]       Adding arrayvec v0.5.2 (latest: v0.7.4)
[INFO] [stderr]       Adding base64 v0.21.7 (latest: v0.22.1)
[INFO] [stderr]       Adding bitflags v1.3.2 (latest: v2.5.0)
[INFO] [stderr]       Adding config v0.11.0 (latest: v0.14.0)
[INFO] [stderr]       Adding directories v4.0.1 (latest: v5.0.1)
[INFO] [stderr]       Adding dirs v4.0.0 (latest: v5.0.1)
[INFO] [stderr]       Adding dirs-sys v0.3.7 (latest: v0.4.1)
[INFO] [stderr]       Adding encode_unicode v0.3.6 (latest: v1.0.0)
[INFO] [stderr]       Adding fixedbitset v0.4.2 (latest: v0.5.7)
[INFO] [stderr]       Adding foreign-types v0.3.2 (latest: v0.5.0)
[INFO] [stderr]       Adding foreign-types-shared v0.1.1 (latest: v0.3.1)
[INFO] [stderr]       Adding generic-array v0.14.7 (latest: v1.0.0)
[INFO] [stderr]       Adding gimli v0.28.1 (latest: v0.29.0)
[INFO] [stderr]       Adding h2 v0.3.26 (latest: v0.4.4)
[INFO] [stderr]       Adding hashbrown v0.12.3 (latest: v0.14.5)
[INFO] [stderr]       Adding heck v0.4.1 (latest: v0.5.0)
[INFO] [stderr]       Adding hermit-abi v0.1.19 (latest: v0.3.9)
[INFO] [stderr]       Adding http v0.2.12 (latest: v1.1.0)
[INFO] [stderr]       Adding http-body v0.4.6 (latest: v1.0.0)
[INFO] [stderr]       Adding hyper v0.14.28 (latest: v1.3.1)
[INFO] [stderr]       Adding hyper-tls v0.5.0 (latest: v0.6.0)
[INFO] [stderr]       Adding indexmap v1.9.3 (latest: v2.2.6)
[INFO] [stderr]       Adding itertools v0.10.5 (latest: v0.12.1)
[INFO] [stderr]       Adding lazy_static v0.2.11 (latest: v1.4.0)
[INFO] [stderr]       Adding lexical-core v0.7.6 (latest: v0.8.5)
[INFO] [stderr]       Adding linux-raw-sys v0.4.13 (latest: v0.6.4)
[INFO] [stderr]       Adding nom v5.1.3 (latest: v7.1.3)
[INFO] [stderr]       Adding num-traits v0.1.43 (latest: v0.2.18)
[INFO] [stderr]       Adding object v0.32.2 (latest: v0.35.0)
[INFO] [stderr]       Adding ordered-float v2.10.1 (latest: v4.2.0)
[INFO] [stderr]       Adding reqwest v0.11.27 (latest: v0.12.4)
[INFO] [stderr]       Adding rust-ini v0.13.0 (latest: v0.21.0)
[INFO] [stderr]       Adding rustls-pemfile v1.0.4 (latest: v2.1.2)
[INFO] [stderr]       Adding serde v0.8.23 (latest: v1.0.200)
[INFO] [stderr]       Adding strsim v0.10.0 (latest: v0.11.1)
[INFO] [stderr]       Adding strum v0.24.1 (latest: v0.26.2)
[INFO] [stderr]       Adding strum_macros v0.24.3 (latest: v0.26.2)
[INFO] [stderr]       Adding syn v1.0.109 (latest: v2.0.60)
[INFO] [stderr]       Adding sync_wrapper v0.1.2 (latest: v1.0.1)
[INFO] [stderr]       Adding system-configuration v0.5.1 (latest: v0.6.0)
[INFO] [stderr]       Adding system-configuration-sys v0.5.0 (latest: v0.6.0)
[INFO] [stderr]       Adding toml v0.5.11 (latest: v0.8.12)
[INFO] [stderr]       Adding toml_datetime v0.5.1 (latest: v0.6.5)
[INFO] [stderr]       Adding toml_edit v0.16.2 (latest: v0.22.12)
[INFO] [stderr]       Adding wasi v0.11.0+wasi-snapshot-preview1 (latest: v0.13.0+wasi-0.2.0)
[INFO] [stderr]       Adding windows-sys v0.48.0 (latest: v0.52.0)
[INFO] [stderr]       Adding windows-targets v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding windows_aarch64_gnullvm v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding windows_aarch64_msvc v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding windows_i686_gnu v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding windows_i686_msvc v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding windows_x86_64_gnu v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding windows_x86_64_gnullvm v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding windows_x86_64_msvc v0.48.5 (latest: v0.52.5)
[INFO] [stderr]       Adding winreg v0.50.0 (latest: v0.52.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] cc4c4789631fbebc4dcfcfdca1ebc65123e4b3997a31c6f18f48ee719a072e2b
[INFO] running `Command { std: "docker" "start" "-a" "cc4c4789631fbebc4dcfcfdca1ebc65123e4b3997a31c6f18f48ee719a072e2b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cc4c4789631fbebc4dcfcfdca1ebc65123e4b3997a31c6f18f48ee719a072e2b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cc4c4789631fbebc4dcfcfdca1ebc65123e4b3997a31c6f18f48ee719a072e2b", kill_on_drop: false }`
[INFO] [stdout] cc4c4789631fbebc4dcfcfdca1ebc65123e4b3997a31c6f18f48ee719a072e2b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ccba82d8a9303dd14e921fae73da1d096b24d850ebec9d57ddd07f1f8f2b4891
[INFO] running `Command { std: "docker" "start" "-a" "ccba82d8a9303dd14e921fae73da1d096b24d850ebec9d57ddd07f1f8f2b4891", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.154
[INFO] [stderr]     Checking memchr v2.7.2
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling syn v2.0.60
[INFO] [stderr]     Checking log v0.4.21
[INFO] [stderr]     Checking anstyle-parse v0.2.3
[INFO] [stderr]     Checking lexical-core v0.7.6
[INFO] [stderr]     Checking petgraph v0.6.4
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]     Checking anstyle v1.0.6
[INFO] [stderr]     Checking anstyle-query v1.0.2
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling portable-atomic v1.6.0
[INFO] [stderr]     Checking powerfmt v0.2.0
[INFO] [stderr]    Compiling num-conv v0.1.0
[INFO] [stderr]     Checking clap_lex v0.7.0
[INFO] [stderr]     Checking anstream v0.6.13
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]     Checking either v1.11.0
[INFO] [stderr]    Compiling semver v1.0.22
[INFO] [stderr]     Checking strsim v0.11.1
[INFO] [stderr]    Compiling time-macros v0.2.18
[INFO] [stderr]     Checking deranged v0.3.11
[INFO] [stderr]     Checking clap_builder v4.5.2
[INFO] [stderr]     Checking crossbeam-deque v0.8.5
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]     Checking futures-util v0.3.30
[INFO] [stderr]     Checking object v0.32.2
[INFO] [stderr]     Checking nom8 v0.2.0
[INFO] [stderr]     Checking crossbeam-channel v0.5.12
[INFO] [stderr]     Checking crossbeam-queue v0.3.11
[INFO] [stderr]     Checking cpufeatures v0.2.12
[INFO] [stderr]     Checking nom v5.1.3
[INFO] [stderr]     Checking time-core v0.1.2
[INFO] [stderr]     Checking number_prefix v0.4.0
[INFO] [stderr]     Checking regex-automata v0.4.6
[INFO] [stderr]     Checking num-traits v0.1.43
[INFO] [stderr]     Checking ordered-float v2.10.1
[INFO] [stderr]     Checking num_threads v0.1.7
[INFO] [stderr]     Checking crossbeam v0.8.4
[INFO] [stderr]     Checking fern v0.6.2
[INFO] [stderr]     Checking colored v2.1.0
[INFO] [stderr]     Checking heck v0.4.1
[INFO] [stderr]     Checking more_collection_macros v0.2.2
[INFO] [stderr]     Checking socket2 v0.5.7
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]     Checking openssl-sys v0.9.102
[INFO] [stderr]     Checking getrandom v0.2.14
[INFO] [stderr]     Checking dirs-sys v0.3.7
[INFO] [stderr]     Checking thread-id v4.2.1
[INFO] [stderr]     Checking console v0.15.8
[INFO] [stderr]     Checking directories v4.0.1
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking uuid v1.8.0
[INFO] [stderr]     Checking time v0.3.36
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking dirs v4.0.0
[INFO] [stderr]     Checking tokio v1.37.0
[INFO] [stderr]     Checking indicatif v0.17.8
[INFO] [stderr]     Checking sha2 v0.10.8
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling merge_derive v0.1.0
[INFO] [stderr]    Compiling strum_macros v0.24.3
[INFO] [stderr]     Checking merge v0.1.0
[INFO] [stderr]     Checking regex v1.10.4
[INFO] [stderr]    Compiling serde_derive v1.0.200
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.59
[INFO] [stderr]    Compiling clap_derive v4.5.4
[INFO] [stderr]     Checking serde-hjson v0.9.1
[INFO] [stderr]     Checking backtrace v0.3.71
[INFO] [stderr]     Checking parking_lot v0.12.2
[INFO] [stderr]     Checking thiserror v1.0.59
[INFO] [stderr]     Checking tokio-util v0.7.10
[INFO] [stderr]     Checking clap v4.5.4
[INFO] [stderr]     Checking h2 v0.3.26
[INFO] [stderr]     Checking serde v1.0.200
[INFO] [stderr]     Checking hyper v0.14.28
[INFO] [stderr]     Checking bitflags v2.5.0
[INFO] [stderr]     Checking serde_json v1.0.116
[INFO] [stderr]     Checking toml v0.5.11
[INFO] [stderr]     Checking toml_datetime v0.5.1
[INFO] [stderr]     Checking url v2.5.0
[INFO] [stderr]     Checking serde-value v0.7.0
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking openssl v0.10.64
[INFO] [stderr]     Checking rustix v0.38.34
[INFO] [stderr]     Checking ron v0.8.1
[INFO] [stderr]     Checking toml_edit v0.16.2
[INFO] [stderr]     Checking config v0.11.0
[INFO] [stderr]     Checking ptree v0.4.0
[INFO] [stderr]     Checking tempfile v3.10.1
[INFO] [stderr]     Checking native-tls v0.2.11
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking reqwest v0.11.27
[INFO] [stderr]     Checking assemble-core v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `TaskFinder`, `TaskPath`
[INFO] [stdout]   --> src/defaults/tasks/help.rs:14:30
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::project::finder::{TaskFinder, TaskPath};
[INFO] [stdout]    |                              ^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::task::ExecutableTask`
[INFO] [stdout]   --> src/defaults/tasks/help.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::task::ExecutableTask;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::finder::TaskFinder`
[INFO] [stdout]   --> src/identifier.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::project::finder::TaskFinder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/project.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Id`, `InvalidId`
[INFO] [stdout]   --> src/project.rs:12:25
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::identifier::{Id, InvalidId, ProjectId, TaskId, TaskIdFactory};
[INFO] [stdout]    |                         ^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Plugin`
[INFO] [stdout]   --> src/project.rs:16:22
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::plugins::{Plugin, PluginAware, PluginManager};
[INFO] [stdout]    |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::task::AnyTaskHandle`
[INFO] [stdout]   --> src/project.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crate::task::AnyTaskHandle;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TaskHandle`, `Task`
[INFO] [stdout]   --> src/project.rs:20:19
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::task::{Task, TaskHandle};
[INFO] [stdout]    |                   ^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Not`
[INFO] [stdout]   --> src/project.rs:30:33
[INFO] [stdout]    |
[INFO] [stdout] 30 | use std::ops::{Deref, DerefMut, Not};
[INFO] [stdout]    |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ReentrantMutexGuard`, `ReentrantMutex`, `RwLockReadGuard`, `RwLockWriteGuard`
[INFO] [stdout]   --> src/project.rs:33:19
[INFO] [stdout]    |
[INFO] [stdout] 33 | use parking_lot::{ReentrantMutex, ReentrantMutexGuard, RwLock, RwLockReadGuard, RwLockWriteGuard};
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^          ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TryLockError`
[INFO] [stdout]   --> src/project.rs:34:29
[INFO] [stdout]    |
[INFO] [stdout] 34 | use std::sync::{Arc, Mutex, TryLockError, Weak};
[INFO] [stdout]    |                             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BuildError`
[INFO] [stdout]  --> src/project/error.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::exception::{BuildError, BuildException};
[INFO] [stdout]   |                        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TaskPath`
[INFO] [stdout]   --> src/project/error.rs:13:46
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::project::finder::{ProjectPathBuf, TaskPath, TaskPathBuf};
[INFO] [stdout]    |                                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fmt`
[INFO] [stdout]   --> src/project/error.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | use std::{fmt, io};
[INFO] [stdout]    |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project`
[INFO] [stdout]  --> src/project/finder.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::project;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/project/finder.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::finder::TaskPath`
[INFO] [stdout]   --> src/project.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | use crate::project::finder::TaskPath;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TrueSharableProject`
[INFO] [stdout]   --> src/project.rs:50:29
[INFO] [stdout]    |
[INFO] [stdout] 50 | use shared::{SharedProject, TrueSharableProject, WeakSharedProject};
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::file_collection::FileCollection`
[INFO] [stdout]  --> src/startup/initialization/descriptor.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::file_collection::FileCollection;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IndentChars`, `PrintConfig`
[INFO] [stdout]  --> src/startup/initialization/descriptor.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 | use ptree::{IndentChars, PrintConfig};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]   --> src/startup/initialization/descriptor.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::str::FromStr;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::shared::SharedProject`
[INFO] [stdout]  --> src/startup/initialization/settings.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::project::shared::SharedProject;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Weak`
[INFO] [stdout]   --> src/startup/initialization.rs:12:22
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::sync::{Arc, Weak};
[INFO] [stdout]    |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProjectError`
[INFO] [stdout]  --> src/task/task_container.rs:4:29
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::project::error::{ProjectError, ProjectResult};
[INFO] [stdout]   |                             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::finder::TaskPath`
[INFO] [stdout]   --> src/task/task_container.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::project::finder::TaskPath;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]   --> src/task/task_container.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use itertools::Itertools;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::Project`
[INFO] [stdout]  --> src/task/task_executor.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::project::Project;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProjectPath`
[INFO] [stdout]   --> src/task/task_executor.rs:12:45
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::project::finder::{ProjectFinder, ProjectPath, ProjectPathBuf};
[INFO] [stdout]    |                                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Weak`
[INFO] [stdout]   --> src/task/task_executor.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 92 |     use std::sync::Weak;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Color`
[INFO] [stdout]  --> src/unstable/text_factory/graph.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ptree::{Color, IndentChars, PrintConfig};
[INFO] [stdout]   |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Assemble`
[INFO] [stdout]   --> src/lib.rs:84:26
[INFO] [stdout]    |
[INFO] [stdout] 84 |     use crate::prelude::{Assemble, Settings};
[INFO] [stdout]    |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::identifier::TaskId`
[INFO] [stdout]   --> src/defaults/plugins.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |     use crate::identifier::TaskId;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::finder::TaskFinder`
[INFO] [stdout]   --> src/defaults/plugins.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     use crate::project::finder::TaskFinder;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TaskFinder`, `TaskPath`
[INFO] [stdout]   --> src/defaults/tasks/help.rs:14:30
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::project::finder::{TaskFinder, TaskPath};
[INFO] [stdout]    |                              ^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::task::ExecutableTask`
[INFO] [stdout]   --> src/defaults/tasks/help.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::task::ExecutableTask;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::finder::TaskFinder`
[INFO] [stdout]   --> src/identifier.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::project::finder::TaskFinder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/project.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Id`, `InvalidId`
[INFO] [stdout]   --> src/project.rs:12:25
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::identifier::{Id, InvalidId, ProjectId, TaskId, TaskIdFactory};
[INFO] [stdout]    |                         ^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Plugin`
[INFO] [stdout]   --> src/project.rs:16:22
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::plugins::{Plugin, PluginAware, PluginManager};
[INFO] [stdout]    |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::task::AnyTaskHandle`
[INFO] [stdout]   --> src/project.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crate::task::AnyTaskHandle;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TaskHandle`, `Task`
[INFO] [stdout]   --> src/project.rs:20:19
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::task::{Task, TaskHandle};
[INFO] [stdout]    |                   ^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Not`
[INFO] [stdout]   --> src/project.rs:30:33
[INFO] [stdout]    |
[INFO] [stdout] 30 | use std::ops::{Deref, DerefMut, Not};
[INFO] [stdout]    |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ReentrantMutexGuard`, `ReentrantMutex`, `RwLockReadGuard`, `RwLockWriteGuard`
[INFO] [stdout]   --> src/project.rs:33:19
[INFO] [stdout]    |
[INFO] [stdout] 33 | use parking_lot::{ReentrantMutex, ReentrantMutexGuard, RwLock, RwLockReadGuard, RwLockWriteGuard};
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^          ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TryLockError`
[INFO] [stdout]   --> src/project.rs:34:29
[INFO] [stdout]    |
[INFO] [stdout] 34 | use std::sync::{Arc, Mutex, TryLockError, Weak};
[INFO] [stdout]    |                             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::PayloadError`
[INFO] [stdout]  --> src/project/dev.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::error::PayloadError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/project/dev.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BuildError`
[INFO] [stdout]  --> src/project/error.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::exception::{BuildError, BuildException};
[INFO] [stdout]   |                        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TaskPath`
[INFO] [stdout]   --> src/project/error.rs:13:46
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::project::finder::{ProjectPathBuf, TaskPath, TaskPathBuf};
[INFO] [stdout]    |                                              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fmt`
[INFO] [stdout]   --> src/project/error.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | use std::{fmt, io};
[INFO] [stdout]    |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project`
[INFO] [stdout]  --> src/project/finder.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::project;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/project/finder.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::Project`
[INFO] [stdout]    --> src/project/finder.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 |     use crate::Project;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Cell`, `Ref`
[INFO] [stdout]    --> src/project/finder.rs:443:21
[INFO] [stdout]     |
[INFO] [stdout] 443 |     use std::cell::{Cell, Ref, RefCell};
[INFO] [stdout]     |                     ^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `toml::toml`
[INFO] [stdout]    --> src/project/finder.rs:444:9
[INFO] [stdout]     |
[INFO] [stdout] 444 |     use toml::toml;
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::finder::TaskPath`
[INFO] [stdout]   --> src/project.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 | use crate::project::finder::TaskPath;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TrueSharableProject`
[INFO] [stdout]   --> src/project.rs:50:29
[INFO] [stdout]    |
[INFO] [stdout] 50 | use shared::{SharedProject, TrueSharableProject, WeakSharedProject};
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::file_collection::FileCollection`
[INFO] [stdout]  --> src/startup/initialization/descriptor.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::file_collection::FileCollection;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IndentChars`, `PrintConfig`
[INFO] [stdout]  --> src/startup/initialization/descriptor.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 | use ptree::{IndentChars, PrintConfig};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]   --> src/startup/initialization/descriptor.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::str::FromStr;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::shared::SharedProject`
[INFO] [stdout]  --> src/startup/initialization/settings.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::project::shared::SharedProject;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Weak`
[INFO] [stdout]   --> src/startup/initialization.rs:12:22
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::sync::{Arc, Weak};
[INFO] [stdout]    |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProjectError`
[INFO] [stdout]  --> src/task/task_container.rs:4:29
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::project::error::{ProjectError, ProjectResult};
[INFO] [stdout]   |                             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::finder::TaskPath`
[INFO] [stdout]   --> src/task/task_container.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::project::finder::TaskPath;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]   --> src/task/task_container.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use itertools::Itertools;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::project::Project`
[INFO] [stdout]  --> src/task/task_executor.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::project::Project;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProjectPath`
[INFO] [stdout]   --> src/task/task_executor.rs:12:45
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::project::finder::{ProjectFinder, ProjectPath, ProjectPathBuf};
[INFO] [stdout]    |                                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Weak`
[INFO] [stdout]   --> src/task/task_executor.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 92 |     use std::sync::Weak;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Color`
[INFO] [stdout]  --> src/unstable/text_factory/graph.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ptree::{Color, IndentChars, PrintConfig};
[INFO] [stdout]   |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Assemble`
[INFO] [stdout]   --> src/lib.rs:84:26
[INFO] [stdout]    |
[INFO] [stdout] 84 |     use crate::prelude::{Assemble, Settings};
[INFO] [stdout]    |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/identifier.rs:297:9
[INFO] [stdout]     |
[INFO] [stdout] 296 |         let task_id: Box<dyn Buildable> = todo!();
[INFO] [stdout]     |                                           ------- any code following this expression is unreachable
[INFO] [stdout] 297 |         task_id.get_dependencies(project)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/identifier.rs:297:9
[INFO] [stdout]     |
[INFO] [stdout] 296 |         let task_id: Box<dyn Buildable> = todo!();
[INFO] [stdout]     |                                           ------- any code following this expression is unreachable
[INFO] [stdout] 297 |         task_id.get_dependencies(project)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Read`
[INFO] [stdout]   --> src/workspace.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::io::{Read, Write};
[INFO] [stdout]    |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]   --> src/workspace.rs:10:21
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::io::{Read, Write};
[INFO] [stdout]    |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Update`
[INFO] [stdout]  --> src/cryptography.rs:6:36
[INFO] [stdout]   |
[INFO] [stdout] 6 | use sha2::digest::{OutputSizeUser, Update};
[INFO] [stdout]   |                                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::task::create_task::CreateTask`
[INFO] [stdout]   --> src/defaults/tasks.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::task::create_task::CreateTask;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Add`
[INFO] [stdout]  --> src/dependencies/resolved_dependency.rs:7:16
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::ops::{Add, AddAssign};
[INFO] [stdout]   |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/task.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]  --> src/dependencies/unresolved_dependency.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::Write;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GetBuildable`
[INFO] [stdout]   --> src/dependencies/configurations.rs:12:79
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::project::buildable::{Buildable, BuildableObject, BuiltByContainer, GetBuildable};
[INFO] [stdout]    |                                                                               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/dependencies/file_dependency.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]   --> src/task/work_handler.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use std::io::Write;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Log`
[INFO] [stdout]  --> src/logging.rs:9:31
[INFO] [stdout]   |
[INFO] [stdout] 9 | use log::{Level, LevelFilter, Log, Record, SetLoggerError};
[INFO] [stdout]   |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::plugins::PluginAware`
[INFO] [stdout]   --> src/dependencies/project_dependency.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::plugins::PluginAware;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Write`
[INFO] [stdout]   --> src/startup/initialization/descriptor.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::fmt::Write as _;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/identifier.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::task::task_io::TaskIO`
[INFO] [stdout]   --> src/task/executable.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::task::task_io::TaskIO;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]   --> src/startup/initialization/descriptor.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::io::Write as _;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::file_collection::FileCollection`
[INFO] [stdout]    --> src/workspace.rs:371:13
[INFO] [stdout]     |
[INFO] [stdout] 371 |         use crate::file_collection::FileCollection;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Read`
[INFO] [stdout]   --> src/workspace.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::io::{Read, Write};
[INFO] [stdout]    |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]   --> src/workspace.rs:10:21
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::io::{Read, Write};
[INFO] [stdout]    |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Update`
[INFO] [stdout]  --> src/cryptography.rs:6:36
[INFO] [stdout]   |
[INFO] [stdout] 6 | use sha2::digest::{OutputSizeUser, Update};
[INFO] [stdout]   |                                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::task::create_task::CreateTask`
[INFO] [stdout]   --> src/defaults/tasks.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::task::create_task::CreateTask;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Add`
[INFO] [stdout]  --> src/dependencies/resolved_dependency.rs:7:16
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::ops::{Add, AddAssign};
[INFO] [stdout]   |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]  --> src/dependencies/unresolved_dependency.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::Write;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::workspace::WorkspaceDirectory`
[INFO] [stdout]    --> src/project.rs:513:9
[INFO] [stdout]     |
[INFO] [stdout] 513 |     use crate::workspace::WorkspaceDirectory;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GetBuildable`
[INFO] [stdout]   --> src/dependencies/configurations.rs:12:79
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::project::buildable::{Buildable, BuildableObject, BuiltByContainer, GetBuildable};
[INFO] [stdout]    |                                                                               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/task.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::task::create_task::CreateTask`
[INFO] [stdout]   --> src/dependencies/dependency_container.rs:81:9
[INFO] [stdout]    |
[INFO] [stdout] 81 |     use crate::task::create_task::CreateTask;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/dependencies/file_dependency.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]   --> src/startup/initialization/descriptor.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::io::Write as _;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]   --> src/task/work_handler.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use std::io::Write;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::plugins::PluginAware`
[INFO] [stdout]   --> src/dependencies/project_dependency.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::plugins::PluginAware;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Log`
[INFO] [stdout]  --> src/logging.rs:9:31
[INFO] [stdout]   |
[INFO] [stdout] 9 | use log::{Level, LevelFilter, Log, Record, SetLoggerError};
[INFO] [stdout]   |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Write`
[INFO] [stdout]   --> src/startup/initialization/descriptor.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::fmt::Write as _;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/identifier.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::task::task_io::TaskIO`
[INFO] [stdout]   --> src/task/executable.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::task::task_io::TaskIO;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `found` is never read
[INFO] [stdout]    --> src/dependencies/configurations.rs:134:33
[INFO] [stdout]     |
[INFO] [stdout] 134 | ...                   found = true;
[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/identifier.rs:139:41
[INFO] [stdout]     |
[INFO] [stdout] 139 |     pub fn concat<I: Into<Self>>(&self, mut other: I) -> Self {
[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: value assigned to `found` is never read
[INFO] [stdout]    --> src/dependencies/configurations.rs:134:33
[INFO] [stdout]     |
[INFO] [stdout] 134 | ...                   found = true;
[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: unused variable: `task_id`
[INFO] [stdout]    --> src/identifier.rs:296:13
[INFO] [stdout]     |
[INFO] [stdout] 296 |         let task_id: Box<dyn Buildable> = todo!();
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_task_id`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `project`
[INFO] [stdout]    --> src/identifier.rs:295:32
[INFO] [stdout]     |
[INFO] [stdout] 295 |     fn get_dependencies(&self, project: &Project) -> ProjectResult<HashSet<TaskId>> {
[INFO] [stdout]     |                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/identifier.rs:139:41
[INFO] [stdout]     |
[INFO] [stdout] 139 |     pub fn concat<I: Into<Self>>(&self, mut other: I) -> Self {
[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: `task_id`
[INFO] [stdout]    --> src/identifier.rs:296:13
[INFO] [stdout]     |
[INFO] [stdout] 296 |         let task_id: Box<dyn Buildable> = todo!();
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_task_id`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `project`
[INFO] [stdout]    --> src/identifier.rs:295:32
[INFO] [stdout]     |
[INFO] [stdout] 295 |     fn get_dependencies(&self, project: &Project) -> ProjectResult<HashSet<TaskId>> {
[INFO] [stdout]     |                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/project/finder.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |         let mut at_root = |ptr: &Option<SharedProject>| -> bool {
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/startup/initialization/descriptor.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |         let mut dir = parent_dir.join(&name);
[INFO] [stdout]     |             ----^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `root`
[INFO] [stdout]   --> src/startup/initialization.rs:34:13
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let ref root = parent.with(|p| p.root_project());
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_root`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]   --> src/startup/initialization.rs:36:74
[INFO] [stdout]    |
[INFO] [stdout] 36 |         parent.subproject_in(descriptor.name(), descriptor.directory(), |p| Ok(()))
[INFO] [stdout]    |                                                                          ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/startup/initialization.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |     let mut output = Project::in_dir_with_id_and_root(
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/project/finder.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |         let mut at_root = |ptr: &Option<SharedProject>| -> bool {
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/project/finder.rs:500:13
[INFO] [stdout]     |
[INFO] [stdout] 500 |         let mut count = RefCell::new(0_usize);
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/project/finder.rs:533:13
[INFO] [stdout]     |
[INFO] [stdout] 533 |         let mut count = RefCell::new(0_usize);
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/unstable/text_factory/graph.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let mut config = config();
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/startup/initialization/descriptor.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |         let mut dir = parent_dir.join(&name);
[INFO] [stdout]     |             ----^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `root`
[INFO] [stdout]   --> src/startup/initialization.rs:34:13
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let ref root = parent.with(|p| p.root_project());
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_root`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]   --> src/startup/initialization.rs:36:74
[INFO] [stdout]    |
[INFO] [stdout] 36 |         parent.subproject_in(descriptor.name(), descriptor.directory(), |p| Ok(()))
[INFO] [stdout]    |                                                                          ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/startup/initialization.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |     let mut output = Project::in_dir_with_id_and_root(
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_release_url` is never used
[INFO] [stdout]   --> src/defaults/tasks/wrapper.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl Executable<WrapperTask> {
[INFO] [stdout]    | ---------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 60 |     fn get_release_url(&self) -> Result<Url, ProjectError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_shell_script` is never used
[INFO] [stdout]    --> src/defaults/tasks/wrapper.rs:177:4
[INFO] [stdout]     |
[INFO] [stdout] 177 | fn generate_shell_script(_dest_file: &Path) -> Result<(), BuildResult> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_bat_script` is never used
[INFO] [stdout]    --> src/defaults/tasks/wrapper.rs:181:4
[INFO] [stdout]     |
[INFO] [stdout] 181 | fn generate_bat_script(_dest_file: &Path) -> Result<(), BuildResult> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `store_path` and `save_distribution_info` are never used
[INFO] [stdout]    --> src/defaults/tasks/wrapper.rs:204:8
[INFO] [stdout]     |
[INFO] [stdout] 195 | impl WrapperSettings {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 204 |     fn store_path(&self) -> PathBuf {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 236 |     fn save_distribution_info(&self, info: DistributionInfo) -> io::Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `executable_path` is never used
[INFO] [stdout]    --> src/defaults/tasks/wrapper.rs:254:12
[INFO] [stdout]     |
[INFO] [stdout] 253 | impl DistributionInfo {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 254 |     pub fn executable_path(&self) -> &PathBuf {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_distributions` is never used
[INFO] [stdout]   --> src/defaults/tasks/wrapper/github.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn get_distributions(version_tag: &str) -> Result<Vec<Distribution>, ProjectError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_current_distributions` is never used
[INFO] [stdout]   --> src/defaults/tasks/wrapper/github.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub fn get_current_distributions() -> Result<Vec<Distribution>, ProjectError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_relevant` is never used
[INFO] [stdout]   --> src/defaults/tasks/wrapper/github.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub trait GetDistribution {
[INFO] [stdout]    |           --------------- method in this trait
[INFO] [stdout] 48 |     /// Gets the relevant distribution for this result
[INFO] [stdout] 49 |     fn get_relevant(self) -> Option<Distribution>;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `group`, `module`, `config`, and `semver_request` are never read
[INFO] [stdout]   --> src/dependencies/artifact_request.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct ArtifactRequest {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] 22 |     group: Option<String>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 23 |     module: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 24 |     config: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 25 |     semver_request: VersionReq,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ArtifactRequest` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `take_inner` are never used
[INFO] [stdout]    --> src/lazy_evaluation/prop.rs:283:8
[INFO] [stdout]     |
[INFO] [stdout] 282 | impl<T: Send + Sync + Clone> PropInner<T> {
[INFO] [stdout]     | ----------------------------------------- associated items in this implementation
[INFO] [stdout] 283 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 300 |     fn take_inner(&mut self) -> Option<Box<dyn Provider<T>>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CONTINUE_LOGGING` is never used
[INFO] [stdout]    --> src/logging.rs:510:8
[INFO] [stdout]     |
[INFO] [stdout] 510 | static CONTINUE_LOGGING: AtomicBool = AtomicBool::new(true);
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `applied_plugins` is never read
[INFO] [stdout]   --> src/project.rs:88:5
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct Project {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 88 |     applied_plugins: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Project` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/project/shared.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl SharedProject {
[INFO] [stdout]    | ------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 38 |     fn new(project: Project) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `executable` is never used
[INFO] [stdout]    --> src/task/any_task.rs:126:8
[INFO] [stdout]     |
[INFO] [stdout] 93  | impl AnyTaskHandleInner {
[INFO] [stdout]     | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 126 |     fn executable(&mut self, project: &SharedProject) -> ProjectResult<Box<dyn FullTask>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `verify_value` is never read
[INFO] [stdout]   --> src/task/flags.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct OptionDeclaration {
[INFO] [stdout]    |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 45 |     verify_value: Option<Box<dyn Fn(&str) -> Result<(), Box<dyn Error + Send + Sync>>>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `shared_project` is never used
[INFO] [stdout]   --> src/task/task_container.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl TaskContainer {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     fn shared_project(&self) -> SharedProject {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `serialize_data` is never used
[INFO] [stdout]    --> src/task/work_handler.rs:313:8
[INFO] [stdout]     |
[INFO] [stdout] 55  | impl WorkHandler {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 313 |     fn serialize_data<T: Serialize>(val: T) -> impl Provider<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/unstable/text_factory.rs:120:12
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl BuildResultString {
[INFO] [stdout]     | ---------------------- associated function in this implementation
[INFO] [stdout] 119 |     /// Construct a new build result
[INFO] [stdout] 120 |     pub fn new(result_good: bool, time: Duration) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_separator`, `set_indent`, `with_separator`, `with_indent`, `elements`, and `sublist` are never used
[INFO] [stdout]   --> src/unstable/text_factory/list.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl<'f, B: BulletPointFactory> TextListFactory<'f, B> {
[INFO] [stdout]    | ------------------------------------------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn set_separator(&mut self, separator: &str) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn set_indent(&mut self, indent: &str) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn with_separator(mut self, separator: &str) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn with_indent(mut self, indent: &str) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn elements<O: ToString + 'f, I: IntoIterator<Item = O>>(mut self, elements: I) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn sublist<F>(mut self, func: F) -> Self
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `StartSubList` and `EndSubList` are never constructed
[INFO] [stdout]    --> src/unstable/text_factory/list.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 121 | enum TextListCommand<'f> {
[INFO] [stdout]     |      --------------- variants in this enum
[INFO] [stdout] 122 |     Text(Box<dyn ToString + 'f>),
[INFO] [stdout] 123 |     StartSubList,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 124 |     EndSubList,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `map` is never used
[INFO] [stdout]    --> src/unstable/text_factory/list.rs:159:8
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub trait BulletPointFactory: Clone {
[INFO] [stdout]     |           ------------------ method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 159 |     fn map<F>(self, func: F) -> MappedBulletPointFactory<Self, F>
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/unstable/text_factory/list.rs:349:12
[INFO] [stdout]     |
[INFO] [stdout] 348 | impl<B: BulletPointFactory> MultiLevelBulletFactory<B> {
[INFO] [stdout]     | ------------------------------------------------------ associated function in this implementation
[INFO] [stdout] 349 |     pub fn new<It: IntoIterator<Item = Ib>, Ib: IntoBulletPointFactory<Factory = B>>(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `point` are never used
[INFO] [stdout]    --> src/unstable/text_factory/list.rs:427:12
[INFO] [stdout]     |
[INFO] [stdout] 426 | impl InfoList {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 427 |     pub fn new(heading: String) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 434 |     pub fn point(&mut self, info: String) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/unstable/text_factory/list.rs:458:12
[INFO] [stdout]     |
[INFO] [stdout] 457 | impl Counter {
[INFO] [stdout]     | ------------ associated function in this implementation
[INFO] [stdout] 458 |     pub fn new(start: usize) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `client` is never read
[INFO] [stdout]  --> src/web.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct WebClient {
[INFO] [stdout]   |            --------- field in this struct
[INFO] [stdout] 5 |     client: Client,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `max_jobs` is never read
[INFO] [stdout]    --> src/work_queue.rs:288:5
[INFO] [stdout]     |
[INFO] [stdout] 287 | struct Inner {
[INFO] [stdout]     |        ----- field in this struct
[INFO] [stdout] 288 |     max_jobs: usize,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `owner` is never read
[INFO] [stdout]    --> src/work_queue.rs:304:5
[INFO] [stdout]     |
[INFO] [stdout] 302 | pub struct WorkHandle<'exec> {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] 303 |     recv: Receiver<()>,
[INFO] [stdout] 304 |     owner: &'exec WorkerExecutor,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `WorkHandle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/flow/output.rs:145:34
[INFO] [stdout]     |
[INFO] [stdout] 145 |         BuildableObject::new(self.clone().into_buildable())
[INFO] [stdout]     |                                  ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Executable<AT>` does not implement `Clone`, so calling `clone` on `&Executable<AT>` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 145 -         BuildableObject::new(self.clone().into_buildable())
[INFO] [stdout] 145 +         BuildableObject::new(self.into_buildable())
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Executable<AT>`, implement `Clone` for it
[INFO] [stdout]    --> src/task/executable.rs:29:1
[INFO] [stdout]     |
[INFO] [stdout] 29  + #[derive(Clone)]
[INFO] [stdout] 30  | pub struct Executable<T: Task> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/work_queue.rs:192:9
[INFO] [stdout]     |
[INFO] [stdout] 192 |         self.join_inner();
[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] 192 |         let _ = self.join_inner();
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/work_queue.rs:401:17
[INFO] [stdout]     |
[INFO] [stdout] 401 |                 self.message_sender.send(WorkerMessage::Stop);
[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] 401 |                 let _ = self.message_sender.send(WorkerMessage::Stop);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/work_queue.rs:404:17
[INFO] [stdout]     |
[INFO] [stdout] 404 |                 handle.join();
[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] 404 |                 let _ = handle.join();
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 89 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/unstable/text_factory/graph.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let mut config = config();
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `assemble_macros`
[INFO] [stdout]   --> tests/file_copier.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use assemble_macros::{CreateTask, TaskIO};
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^ use of undeclared crate or module `assemble_macros`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 11 | use assemble_core::{CreateTask, TaskIO};
[INFO] [stdout]    |     ~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `assemble_macros`
[INFO] [stdout]   --> tests/dependencies.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use assemble_macros::{CreateTask, TaskIO};
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^ use of undeclared crate or module `assemble_macros`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 14 | use assemble_core::{CreateTask, TaskIO};
[INFO] [stdout]    |     ~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `assemble_macros`
[INFO] [stdout]   --> tests/sub_projects.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use assemble_macros::{CreateTask, TaskIO};
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^ use of undeclared crate or module `assemble_macros`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 12 | use assemble_core::{CreateTask, TaskIO};
[INFO] [stdout]    |     ~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `assemble_core::prelude::TaskId`
[INFO] [stdout]  --> tests/dependencies.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use assemble_core::prelude::TaskId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `input` in this scope
[INFO] [stdout]   --> tests/file_copier.rs:17:7
[INFO] [stdout]    |
[INFO] [stdout] 17 |     #[input(file)]
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `output` in this scope
[INFO] [stdout]   --> tests/file_copier.rs:19:7
[INFO] [stdout]    |
[INFO] [stdout] 19 |     #[output(file)]
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestArtifactTask: TaskIO` is not satisfied
[INFO] [stdout]   --> tests/sub_projects.rs:24:25
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl InitializeTask for TestArtifactTask {}
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^ the trait `TaskIO` is not implemented for `TestArtifactTask`, which is required by `TestArtifactTask: assemble_core::Task`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `TaskIO<T>`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]              assemble_core::defaults::tasks::Basic<T>
[INFO] [stdout]              assemble_core::defaults::tasks::Empty
[INFO] [stdout]    = note: required for `TestArtifactTask` to implement `assemble_core::Task`
[INFO] [stdout] note: required by a bound in `InitializeTask`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task/initialize_task.rs:5:29
[INFO] [stdout]    |
[INFO] [stdout] 5  | pub trait InitializeTask<T: Task = Self> {
[INFO] [stdout]    |                             ^^^^ required by this bound in `InitializeTask`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestArtifactTask: CreateTask` is not satisfied
[INFO] [stdout]   --> tests/sub_projects.rs:24:25
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl InitializeTask for TestArtifactTask {}
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^ the trait `Default` is not implemented for `TestArtifactTask`, which is required by `TestArtifactTask: assemble_core::Task`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `CreateTask`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]    = note: required for `TestArtifactTask` to implement `CreateTask`
[INFO] [stdout]    = note: required for `TestArtifactTask` to implement `assemble_core::Task`
[INFO] [stdout] note: required by a bound in `InitializeTask`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task/initialize_task.rs:5:29
[INFO] [stdout]    |
[INFO] [stdout] 5  | pub trait InitializeTask<T: Task = Self> {
[INFO] [stdout]    |                             ^^^^ required by this bound in `InitializeTask`
[INFO] [stdout] help: consider annotating `TestArtifactTask` with `#[derive(Default)]`
[INFO] [stdout]    |
[INFO] [stdout] 19 + #[derive(Default)]
[INFO] [stdout] 20 | struct TestArtifactTask {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestArtifactTask: TaskIO` is not satisfied
[INFO] [stdout]   --> tests/sub_projects.rs:26:15
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl Task for TestArtifactTask {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^ the trait `TaskIO` is not implemented for `TestArtifactTask`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `TaskIO<T>`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]              assemble_core::defaults::tasks::Basic<T>
[INFO] [stdout]              assemble_core::defaults::tasks::Empty
[INFO] [stdout] note: required by a bound in `assemble_core::Task`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task.rs:54:58
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub trait Task: UpToDate + InitializeTask + CreateTask + TaskIO + Sized + Debug {
[INFO] [stdout]    |                                                          ^^^^^^ required by this bound in `Task`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestArtifactTask: CreateTask` is not satisfied
[INFO] [stdout]   --> tests/sub_projects.rs:26:15
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl Task for TestArtifactTask {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^ the trait `Default` is not implemented for `TestArtifactTask`, which is required by `TestArtifactTask: CreateTask`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `CreateTask`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]    = note: required for `TestArtifactTask` to implement `CreateTask`
[INFO] [stdout] note: required by a bound in `assemble_core::Task`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task.rs:54:45
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub trait Task: UpToDate + InitializeTask + CreateTask + TaskIO + Sized + Debug {
[INFO] [stdout]    |                                             ^^^^^^^^^^ required by this bound in `Task`
[INFO] [stdout] help: consider annotating `TestArtifactTask` with `#[derive(Default)]`
[INFO] [stdout]    |
[INFO] [stdout] 19 + #[derive(Default)]
[INFO] [stdout] 20 | struct TestArtifactTask {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestCopy: TaskIO` is not satisfied
[INFO] [stdout]    --> tests/dependencies.rs:31:31
[INFO] [stdout]     |
[INFO] [stdout] 31  | impl SinglePathOutputTask for TestCopy {
[INFO] [stdout]     |                               ^^^^^^^^ the trait `TaskIO` is not implemented for `TestCopy`, which is required by `TestCopy: assemble_core::Task`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `TaskIO<T>`:
[INFO] [stdout]               Help
[INFO] [stdout]               TaskReport
[INFO] [stdout]               WrapperTask
[INFO] [stdout]               assemble_core::defaults::tasks::Basic<T>
[INFO] [stdout]               assemble_core::defaults::tasks::Empty
[INFO] [stdout]     = note: required for `TestCopy` to implement `assemble_core::Task`
[INFO] [stdout] note: required by a bound in `SinglePathOutputTask`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/flow/output.rs:103:33
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub trait SinglePathOutputTask: Task + Send + Sync + 'static {
[INFO] [stdout]     |                                 ^^^^ required by this bound in `SinglePathOutputTask`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestArtifactTask: TaskIO` is not satisfied
[INFO] [stdout]    --> tests/sub_projects.rs:32:31
[INFO] [stdout]     |
[INFO] [stdout] 32  | impl SinglePathOutputTask for TestArtifactTask {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^ the trait `TaskIO` is not implemented for `TestArtifactTask`, which is required by `TestArtifactTask: assemble_core::Task`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `TaskIO<T>`:
[INFO] [stdout]               Help
[INFO] [stdout]               TaskReport
[INFO] [stdout]               WrapperTask
[INFO] [stdout]               assemble_core::defaults::tasks::Basic<T>
[INFO] [stdout]               assemble_core::defaults::tasks::Empty
[INFO] [stdout]     = note: required for `TestArtifactTask` to implement `assemble_core::Task`
[INFO] [stdout] note: required by a bound in `SinglePathOutputTask`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/flow/output.rs:103:33
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub trait SinglePathOutputTask: Task + Send + Sync + 'static {
[INFO] [stdout]     |                                 ^^^^ required by this bound in `SinglePathOutputTask`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestArtifactTask: CreateTask` is not satisfied
[INFO] [stdout]    --> tests/sub_projects.rs:32:31
[INFO] [stdout]     |
[INFO] [stdout] 32  | impl SinglePathOutputTask for TestArtifactTask {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^ the trait `Default` is not implemented for `TestArtifactTask`, which is required by `TestArtifactTask: assemble_core::Task`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `CreateTask`:
[INFO] [stdout]               Help
[INFO] [stdout]               TaskReport
[INFO] [stdout]               WrapperTask
[INFO] [stdout]     = note: required for `TestArtifactTask` to implement `CreateTask`
[INFO] [stdout]     = note: required for `TestArtifactTask` to implement `assemble_core::Task`
[INFO] [stdout] note: required by a bound in `SinglePathOutputTask`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/flow/output.rs:103:33
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub trait SinglePathOutputTask: Task + Send + Sync + 'static {
[INFO] [stdout]     |                                 ^^^^ required by this bound in `SinglePathOutputTask`
[INFO] [stdout] help: consider annotating `TestArtifactTask` with `#[derive(Default)]`
[INFO] [stdout]     |
[INFO] [stdout] 19  + #[derive(Default)]
[INFO] [stdout] 20  | struct TestArtifactTask {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestCopy: CreateTask` is not satisfied
[INFO] [stdout]    --> tests/dependencies.rs:31:31
[INFO] [stdout]     |
[INFO] [stdout] 31  | impl SinglePathOutputTask for TestCopy {
[INFO] [stdout]     |                               ^^^^^^^^ the trait `Default` is not implemented for `TestCopy`, which is required by `TestCopy: assemble_core::Task`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `CreateTask`:
[INFO] [stdout]               Help
[INFO] [stdout]               TaskReport
[INFO] [stdout]               WrapperTask
[INFO] [stdout]     = note: required for `TestCopy` to implement `CreateTask`
[INFO] [stdout]     = note: required for `TestCopy` to implement `assemble_core::Task`
[INFO] [stdout] note: required by a bound in `SinglePathOutputTask`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/flow/output.rs:103:33
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub trait SinglePathOutputTask: Task + Send + Sync + 'static {
[INFO] [stdout]     |                                 ^^^^ required by this bound in `SinglePathOutputTask`
[INFO] [stdout] help: consider annotating `TestCopy` with `#[derive(Default)]`
[INFO] [stdout]     |
[INFO] [stdout] 26  + #[derive(Default)]
[INFO] [stdout] 27  | struct TestCopy {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestCopy: TaskIO` is not satisfied
[INFO] [stdout]   --> tests/dependencies.rs:39:25
[INFO] [stdout]    |
[INFO] [stdout] 39 | impl InitializeTask for TestCopy {
[INFO] [stdout]    |                         ^^^^^^^^ the trait `TaskIO` is not implemented for `TestCopy`, which is required by `TestCopy: assemble_core::Task`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `TaskIO<T>`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]              assemble_core::defaults::tasks::Basic<T>
[INFO] [stdout]              assemble_core::defaults::tasks::Empty
[INFO] [stdout]    = note: required for `TestCopy` to implement `assemble_core::Task`
[INFO] [stdout] note: required by a bound in `InitializeTask`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task/initialize_task.rs:5:29
[INFO] [stdout]    |
[INFO] [stdout] 5  | pub trait InitializeTask<T: Task = Self> {
[INFO] [stdout]    |                             ^^^^ required by this bound in `InitializeTask`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestCopy: CreateTask` is not satisfied
[INFO] [stdout]   --> tests/dependencies.rs:39:25
[INFO] [stdout]    |
[INFO] [stdout] 39 | impl InitializeTask for TestCopy {
[INFO] [stdout]    |                         ^^^^^^^^ the trait `Default` is not implemented for `TestCopy`, which is required by `TestCopy: assemble_core::Task`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `CreateTask`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]    = note: required for `TestCopy` to implement `CreateTask`
[INFO] [stdout]    = note: required for `TestCopy` to implement `assemble_core::Task`
[INFO] [stdout] note: required by a bound in `InitializeTask`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task/initialize_task.rs:5:29
[INFO] [stdout]    |
[INFO] [stdout] 5  | pub trait InitializeTask<T: Task = Self> {
[INFO] [stdout]    |                             ^^^^ required by this bound in `InitializeTask`
[INFO] [stdout] help: consider annotating `TestCopy` with `#[derive(Default)]`
[INFO] [stdout]    |
[INFO] [stdout] 26 + #[derive(Default)]
[INFO] [stdout] 27 | struct TestCopy {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestCopy: TaskIO` is not satisfied
[INFO] [stdout]   --> tests/dependencies.rs:46:15
[INFO] [stdout]    |
[INFO] [stdout] 46 | impl Task for TestCopy {
[INFO] [stdout]    |               ^^^^^^^^ the trait `TaskIO` is not implemented for `TestCopy`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `TaskIO<T>`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]              assemble_core::defaults::tasks::Basic<T>
[INFO] [stdout]              assemble_core::defaults::tasks::Empty
[INFO] [stdout] note: required by a bound in `assemble_core::Task`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task.rs:54:58
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub trait Task: UpToDate + InitializeTask + CreateTask + TaskIO + Sized + Debug {
[INFO] [stdout]    |                                                          ^^^^^^ required by this bound in `Task`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TestCopy: CreateTask` is not satisfied
[INFO] [stdout]   --> tests/dependencies.rs:46:15
[INFO] [stdout]    |
[INFO] [stdout] 46 | impl Task for TestCopy {
[INFO] [stdout]    |               ^^^^^^^^ the trait `Default` is not implemented for `TestCopy`, which is required by `TestCopy: CreateTask`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `CreateTask`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]    = note: required for `TestCopy` to implement `CreateTask`
[INFO] [stdout] note: required by a bound in `assemble_core::Task`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task.rs:54:45
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub trait Task: UpToDate + InitializeTask + CreateTask + TaskIO + Sized + Debug {
[INFO] [stdout]    |                                             ^^^^^^^^^^ required by this bound in `Task`
[INFO] [stdout] help: consider annotating `TestCopy` with `#[derive(Default)]`
[INFO] [stdout]    |
[INFO] [stdout] 26 + #[derive(Default)]
[INFO] [stdout] 27 | struct TestCopy {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CopyFile: TaskIO` is not satisfied
[INFO] [stdout]   --> tests/file_copier.rs:25:25
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl InitializeTask for CopyFile {
[INFO] [stdout]    |                         ^^^^^^^^ the trait `TaskIO` is not implemented for `CopyFile`, which is required by `CopyFile: assemble_core::Task`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `TaskIO<T>`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]              assemble_core::defaults::tasks::Basic<T>
[INFO] [stdout]              assemble_core::defaults::tasks::Empty
[INFO] [stdout]    = note: required for `CopyFile` to implement `assemble_core::Task`
[INFO] [stdout] note: required by a bound in `InitializeTask`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task/initialize_task.rs:5:29
[INFO] [stdout]    |
[INFO] [stdout] 5  | pub trait InitializeTask<T: Task = Self> {
[INFO] [stdout]    |                             ^^^^ required by this bound in `InitializeTask`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CopyFile: CreateTask` is not satisfied
[INFO] [stdout]   --> tests/file_copier.rs:25:25
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl InitializeTask for CopyFile {
[INFO] [stdout]    |                         ^^^^^^^^ the trait `Default` is not implemented for `CopyFile`, which is required by `CopyFile: assemble_core::Task`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `CreateTask`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]    = note: required for `CopyFile` to implement `CreateTask`
[INFO] [stdout]    = note: required for `CopyFile` to implement `assemble_core::Task`
[INFO] [stdout] note: required by a bound in `InitializeTask`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task/initialize_task.rs:5:29
[INFO] [stdout]    |
[INFO] [stdout] 5  | pub trait InitializeTask<T: Task = Self> {
[INFO] [stdout]    |                             ^^^^ required by this bound in `InitializeTask`
[INFO] [stdout] help: consider annotating `CopyFile` with `#[derive(Default)]`
[INFO] [stdout]    |
[INFO] [stdout] 16 + #[derive(Default)]
[INFO] [stdout] 17 | pub struct CopyFile {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CopyFile: TaskIO` is not satisfied
[INFO] [stdout]   --> tests/file_copier.rs:35:15
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl Task for CopyFile {
[INFO] [stdout]    |               ^^^^^^^^ the trait `TaskIO` is not implemented for `CopyFile`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `TaskIO<T>`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]              assemble_core::defaults::tasks::Basic<T>
[INFO] [stdout]              assemble_core::defaults::tasks::Empty
[INFO] [stdout] note: required by a bound in `assemble_core::Task`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task.rs:54:58
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub trait Task: UpToDate + InitializeTask + CreateTask + TaskIO + Sized + Debug {
[INFO] [stdout]    |                                                          ^^^^^^ required by this bound in `Task`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CopyFile: CreateTask` is not satisfied
[INFO] [stdout]   --> tests/file_copier.rs:35:15
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl Task for CopyFile {
[INFO] [stdout]    |               ^^^^^^^^ the trait `Default` is not implemented for `CopyFile`, which is required by `CopyFile: CreateTask`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the following other types implement trait `CreateTask`:
[INFO] [stdout]              Help
[INFO] [stdout]              TaskReport
[INFO] [stdout]              WrapperTask
[INFO] [stdout]    = note: required for `CopyFile` to implement `CreateTask`
[INFO] [stdout] note: required by a bound in `assemble_core::Task`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/task.rs:54:45
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub trait Task: UpToDate + InitializeTask + CreateTask + TaskIO + Sized + Debug {
[INFO] [stdout]    |                                             ^^^^^^^^^^ required by this bound in `Task`
[INFO] [stdout] help: consider annotating `CopyFile` with `#[derive(Default)]`
[INFO] [stdout]    |
[INFO] [stdout] 16 + #[derive(Default)]
[INFO] [stdout] 17 | pub struct CopyFile {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `assemble_core::lazy_evaluation::ProviderExt`
[INFO] [stdout]  --> tests/dependencies.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use assemble_core::lazy_evaluation::ProviderExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_release_url` is never used
[INFO] [stdout]   --> src/defaults/tasks/wrapper.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl Executable<WrapperTask> {
[INFO] [stdout]    | ---------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 60 |     fn get_release_url(&self) -> Result<Url, ProjectError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_shell_script` is never used
[INFO] [stdout]    --> src/defaults/tasks/wrapper.rs:177:4
[INFO] [stdout]     |
[INFO] [stdout] 177 | fn generate_shell_script(_dest_file: &Path) -> Result<(), BuildResult> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_bat_script` is never used
[INFO] [stdout]    --> src/defaults/tasks/wrapper.rs:181:4
[INFO] [stdout]     |
[INFO] [stdout] 181 | fn generate_bat_script(_dest_file: &Path) -> Result<(), BuildResult> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `save_distribution_info` is never used
[INFO] [stdout]    --> src/defaults/tasks/wrapper.rs:236:8
[INFO] [stdout]     |
[INFO] [stdout] 195 | impl WrapperSettings {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 236 |     fn save_distribution_info(&self, info: DistributionInfo) -> io::Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `executable_path` is never used
[INFO] [stdout]    --> src/defaults/tasks/wrapper.rs:254:12
[INFO] [stdout]     |
[INFO] [stdout] 253 | impl DistributionInfo {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 254 |     pub fn executable_path(&self) -> &PathBuf {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_relevant` is never used
[INFO] [stdout]   --> src/defaults/tasks/wrapper/github.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub trait GetDistribution {
[INFO] [stdout]    |           --------------- method in this trait
[INFO] [stdout] 48 |     /// Gets the relevant distribution for this result
[INFO] [stdout] 49 |     fn get_relevant(self) -> Option<Distribution>;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `group`, `module`, `config`, and `semver_request` are never read
[INFO] [stdout]   --> src/dependencies/artifact_request.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct ArtifactRequest {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] 22 |     group: Option<String>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 23 |     module: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 24 |     config: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 25 |     semver_request: VersionReq,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ArtifactRequest` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `take_inner` are never used
[INFO] [stdout]    --> src/lazy_evaluation/prop.rs:283:8
[INFO] [stdout]     |
[INFO] [stdout] 282 | impl<T: Send + Sync + Clone> PropInner<T> {
[INFO] [stdout]     | ----------------------------------------- associated items in this implementation
[INFO] [stdout] 283 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 300 |     fn take_inner(&mut self) -> Option<Box<dyn Provider<T>>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CONTINUE_LOGGING` is never used
[INFO] [stdout]    --> src/logging.rs:510:8
[INFO] [stdout]     |
[INFO] [stdout] 510 | static CONTINUE_LOGGING: AtomicBool = AtomicBool::new(true);
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `applied_plugins` is never read
[INFO] [stdout]   --> src/project.rs:88:5
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct Project {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 88 |     applied_plugins: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Project` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/project/shared.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl SharedProject {
[INFO] [stdout]    | ------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 38 |     fn new(project: Project) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `executable` is never used
[INFO] [stdout]    --> src/task/any_task.rs:126:8
[INFO] [stdout]     |
[INFO] [stdout] 93  | impl AnyTaskHandleInner {
[INFO] [stdout]     | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 126 |     fn executable(&mut self, project: &SharedProject) -> ProjectResult<Box<dyn FullTask>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `verify_value` is never read
[INFO] [stdout]   --> src/task/flags.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct OptionDeclaration {
[INFO] [stdout]    |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 45 |     verify_value: Option<Box<dyn Fn(&str) -> Result<(), Box<dyn Error + Send + Sync>>>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `shared_project` is never used
[INFO] [stdout]   --> src/task/task_container.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl TaskContainer {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     fn shared_project(&self) -> SharedProject {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `serialize_data` is never used
[INFO] [stdout]    --> src/task/work_handler.rs:313:8
[INFO] [stdout]     |
[INFO] [stdout] 55  | impl WorkHandler {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 313 |     fn serialize_data<T: Serialize>(val: T) -> impl Provider<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/unstable/text_factory.rs:120:12
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl BuildResultString {
[INFO] [stdout]     | ---------------------- associated function in this implementation
[INFO] [stdout] 119 |     /// Construct a new build result
[INFO] [stdout] 120 |     pub fn new(result_good: bool, time: Duration) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_separator`, `set_indent`, `with_separator`, and `with_indent` are never used
[INFO] [stdout]   --> src/unstable/text_factory/list.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl<'f, B: BulletPointFactory> TextListFactory<'f, B> {
[INFO] [stdout]    | ------------------------------------------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn set_separator(&mut self, separator: &str) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn set_indent(&mut self, indent: &str) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn with_separator(mut self, separator: &str) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn with_indent(mut self, indent: &str) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `client` is never read
[INFO] [stdout]  --> src/web.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct WebClient {
[INFO] [stdout]   |            --------- field in this struct
[INFO] [stdout] 5 |     client: Client,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `max_jobs` is never read
[INFO] [stdout]    --> src/work_queue.rs:288:5
[INFO] [stdout]     |
[INFO] [stdout] 287 | struct Inner {
[INFO] [stdout]     |        ----- field in this struct
[INFO] [stdout] 288 |     max_jobs: usize,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `owner` is never read
[INFO] [stdout]    --> src/work_queue.rs:304:5
[INFO] [stdout]     |
[INFO] [stdout] 302 | pub struct WorkHandle<'exec> {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] 303 |     recv: Receiver<()>,
[INFO] [stdout] 304 |     owner: &'exec WorkerExecutor,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `WorkHandle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0432.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `assemble-core` (test "sub_projects") due to 8 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0432.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors; 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0432.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/flow/output.rs:145:34
[INFO] [stdout]     |
[INFO] [stdout] 145 |         BuildableObject::new(self.clone().into_buildable())
[INFO] [stdout]     |                                  ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Executable<AT>` does not implement `Clone`, so calling `clone` on `&Executable<AT>` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 145 -         BuildableObject::new(self.clone().into_buildable())
[INFO] [stdout] 145 +         BuildableObject::new(self.into_buildable())
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Executable<AT>`, implement `Clone` for it
[INFO] [stdout]    --> src/task/executable.rs:29:1
[INFO] [stdout]     |
[INFO] [stdout] 29  + #[derive(Clone)]
[INFO] [stdout] 30  | pub struct Executable<T: Task> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `assemble-core` (test "file_copier") due to 8 previous errors
[INFO] [stderr] error: could not compile `assemble-core` (test "dependencies") due to 8 previous errors; 2 warnings emitted
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/work_queue.rs:192:9
[INFO] [stdout]     |
[INFO] [stdout] 192 |         self.join_inner();
[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] 192 |         let _ = self.join_inner();
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/work_queue.rs:401:17
[INFO] [stdout]     |
[INFO] [stdout] 401 |                 self.message_sender.send(WorkerMessage::Stop);
[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] 401 |                 let _ = self.message_sender.send(WorkerMessage::Stop);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/work_queue.rs:404:17
[INFO] [stdout]     |
[INFO] [stdout] 404 |                 handle.join();
[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] 404 |                 let _ = handle.join();
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 94 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "ccba82d8a9303dd14e921fae73da1d096b24d850ebec9d57ddd07f1f8f2b4891", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ccba82d8a9303dd14e921fae73da1d096b24d850ebec9d57ddd07f1f8f2b4891", kill_on_drop: false }`
[INFO] [stdout] ccba82d8a9303dd14e921fae73da1d096b24d850ebec9d57ddd07f1f8f2b4891
