[INFO] cloning repository https://github.com/Wava11/process-monitor [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Wava11/process-monitor" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWava11%2Fprocess-monitor", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWava11%2Fprocess-monitor'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] c352ba04a664e1b72864aa66c853909f91954ff0 [INFO] checking Wava11/process-monitor against try#e071e73523bfcdcab2878dbf652ac8ebb9b9eee4 for pr-144386 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWava11%2Fprocess-monitor" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/Wava11/process-monitor [INFO] finished tweaking git repo https://github.com/Wava11/process-monitor [INFO] tweaked toml for git repo https://github.com/Wava11/process-monitor written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/Wava11/process-monitor on toolchain e071e73523bfcdcab2878dbf652ac8ebb9b9eee4 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e071e73523bfcdcab2878dbf652ac8ebb9b9eee4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/Wava11/process-monitor already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e071e73523bfcdcab2878dbf652ac8ebb9b9eee4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [ERROR] error running command: no output for 300 seconds [INFO] checking Wava11/process-monitor against try#e071e73523bfcdcab2878dbf652ac8ebb9b9eee4 for pr-144386 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWava11%2Fprocess-monitor" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/Wava11/process-monitor [INFO] finished tweaking git repo https://github.com/Wava11/process-monitor [INFO] tweaked toml for git repo https://github.com/Wava11/process-monitor written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/Wava11/process-monitor on toolchain e071e73523bfcdcab2878dbf652ac8ebb9b9eee4 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e071e73523bfcdcab2878dbf652ac8ebb9b9eee4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/Wava11/process-monitor already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e071e73523bfcdcab2878dbf652ac8ebb9b9eee4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+e071e73523bfcdcab2878dbf652ac8ebb9b9eee4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 3d8b114171bb037ff05a1166ba55dee321bbb95a6c2f165a76bbe51348138c8c [INFO] running `Command { std: "docker" "start" "-a" "3d8b114171bb037ff05a1166ba55dee321bbb95a6c2f165a76bbe51348138c8c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3d8b114171bb037ff05a1166ba55dee321bbb95a6c2f165a76bbe51348138c8c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3d8b114171bb037ff05a1166ba55dee321bbb95a6c2f165a76bbe51348138c8c", kill_on_drop: false }` [INFO] [stdout] 3d8b114171bb037ff05a1166ba55dee321bbb95a6c2f165a76bbe51348138c8c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+e071e73523bfcdcab2878dbf652ac8ebb9b9eee4" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b420140b6e6e5c29513d11be4020b26c9e471590449eb8d586afafe59888b4dd [INFO] running `Command { std: "docker" "start" "-a" "b420140b6e6e5c29513d11be4020b26c9e471590449eb8d586afafe59888b4dd", kill_on_drop: false }` [INFO] [stderr] Checking proces-monitor v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/system/mod.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `process::Process` [INFO] [stdout] --> src/system/mod.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use process::Process; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/system/mod.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `process::Process` [INFO] [stdout] --> src/system/mod.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use process::Process; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0631]: type mismatch in closure arguments [INFO] [stdout] --> src/system/graph.rs:18:18 [INFO] [stdout] | [INFO] [stdout] 18 | .map(|stage: &Stage| -> Vec { [INFO] [stdout] | ^^^ ---------------------------- found signature defined here [INFO] [stdout] | | [INFO] [stdout] | expected due to this [INFO] [stdout] | [INFO] [stdout] = note: expected closure signature `fn(Stage<'_>) -> _` [INFO] [stdout] found closure signature `fn(&Stage<'_>) -> _` [INFO] [stdout] note: required by a bound in `map` [INFO] [stdout] --> /rustc/e071e73523bfcdcab2878dbf652ac8ebb9b9eee4/library/core/src/iter/traits/iterator.rs:772:5 [INFO] [stdout] help: consider adjusting the signature so it does not borrow its argument [INFO] [stdout] | [INFO] [stdout] 18 - .map(|stage: &Stage| -> Vec { [INFO] [stdout] 18 + .map(|stage: Stage| -> Vec { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0631]: type mismatch in closure arguments [INFO] [stdout] --> src/system/graph.rs:18:18 [INFO] [stdout] | [INFO] [stdout] 18 | .map(|stage: &Stage| -> Vec { [INFO] [stdout] | ^^^ ---------------------------- found signature defined here [INFO] [stdout] | | [INFO] [stdout] | expected due to this [INFO] [stdout] | [INFO] [stdout] = note: expected closure signature `fn(Stage<'_>) -> _` [INFO] [stdout] found closure signature `fn(&Stage<'_>) -> _` [INFO] [stdout] note: required by a bound in `map` [INFO] [stdout] --> /rustc/e071e73523bfcdcab2878dbf652ac8ebb9b9eee4/library/core/src/iter/traits/iterator.rs:772:5 [INFO] [stdout] help: consider adjusting the signature so it does not borrow its argument [INFO] [stdout] | [INFO] [stdout] 18 - .map(|stage: &Stage| -> Vec { [INFO] [stdout] 18 + .map(|stage: Stage| -> Vec { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `flatten` exists for struct `Map>, {closure@src/system/graph.rs:18:22: 18:50}>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/system/graph.rs:31:18 [INFO] [stdout] | [INFO] [stdout] 16 | edges: value [INFO] [stdout] | ____________________- [INFO] [stdout] 17 | | .into_iter() [INFO] [stdout] 18 | | .map(|stage: &Stage| -> Vec { [INFO] [stdout] | | ---------------------------- doesn't satisfy `<_ as FnOnce<(Stage<'_>,)>>::Output = _` or `_: FnMut<(Stage<'_>,)>` [INFO] [stdout] 19 | | stage [INFO] [stdout] ... | [INFO] [stdout] 30 | | }) [INFO] [stdout] 31 | | .flatten() [INFO] [stdout] | | -^^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `<{closure@src/system/graph.rs:18:22: 18:50} as FnOnce<(Stage<'_>,)>>::Output = _` [INFO] [stdout] which is required by `Map>, {closure@src/system/graph.rs:18:22: 18:50}>: Iterator` [INFO] [stdout] `{closure@src/system/graph.rs:18:22: 18:50}: FnMut<(Stage<'_>,)>` [INFO] [stdout] which is required by `Map>, {closure@src/system/graph.rs:18:22: 18:50}>: Iterator` [INFO] [stdout] `Map>, {closure@src/system/graph.rs:18:22: 18:50}>: Iterator` [INFO] [stdout] which is required by `&mut Map>, {closure@src/system/graph.rs:18:22: 18:50}>: Iterator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `flatten` exists for struct `Map>, {closure@src/system/graph.rs:18:22: 18:50}>`, but its trait bounds were not satisfied [INFO] [stdout] --> src/system/graph.rs:31:18 [INFO] [stdout] | [INFO] [stdout] 16 | edges: value [INFO] [stdout] | ____________________- [INFO] [stdout] 17 | | .into_iter() [INFO] [stdout] 18 | | .map(|stage: &Stage| -> Vec { [INFO] [stdout] | | ---------------------------- doesn't satisfy `<_ as FnOnce<(Stage<'_>,)>>::Output = _` or `_: FnMut<(Stage<'_>,)>` [INFO] [stdout] 19 | | stage [INFO] [stdout] ... | [INFO] [stdout] 30 | | }) [INFO] [stdout] 31 | | .flatten() [INFO] [stdout] | | -^^^^^^^ method cannot be called due to unsatisfied trait bounds [INFO] [stdout] | |_________________| [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `<{closure@src/system/graph.rs:18:22: 18:50} as FnOnce<(Stage<'_>,)>>::Output = _` [INFO] [stdout] which is required by `Map>, {closure@src/system/graph.rs:18:22: 18:50}>: Iterator` [INFO] [stdout] `{closure@src/system/graph.rs:18:22: 18:50}: FnMut<(Stage<'_>,)>` [INFO] [stdout] which is required by `Map>, {closure@src/system/graph.rs:18:22: 18:50}>: Iterator` [INFO] [stdout] `Map>, {closure@src/system/graph.rs:18:22: 18:50}>: Iterator` [INFO] [stdout] which is required by `&mut Map>, {closure@src/system/graph.rs:18:22: 18:50}>: Iterator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0507]: cannot move out of `value.description` which is behind a shared reference [INFO] [stdout] --> src/system/graph.rs:45:26 [INFO] [stdout] | [INFO] [stdout] 45 | description: value.description, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ move occurs because `value.description` has type `Option`, which does not implement the `Copy` trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0507]: cannot move out of `value.identifier` which is behind a shared reference [INFO] [stdout] --> src/system/graph.rs:46:24 [INFO] [stdout] | [INFO] [stdout] 46 | identifer: value.identifier, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ move occurs because `value.identifier` has type `StageIdentifier`, which does not implement the `Copy` trait [INFO] [stdout] | [INFO] [stdout] note: if `StageIdentifier` implemented `Clone`, you could clone the value [INFO] [stdout] --> src/binding.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct StageIdentifier { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ consider implementing `Clone` for this type [INFO] [stdout] | [INFO] [stdout] ::: src/system/graph.rs:46:24 [INFO] [stdout] | [INFO] [stdout] 46 | identifer: value.identifier, [INFO] [stdout] | ---------------- you could clone this value [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0507]: cannot move out of `value.description` which is behind a shared reference [INFO] [stdout] --> src/system/graph.rs:45:26 [INFO] [stdout] | [INFO] [stdout] 45 | description: value.description, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ move occurs because `value.description` has type `Option`, which does not implement the `Copy` trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0507]: cannot move out of `value.identifier` which is behind a shared reference [INFO] [stdout] --> src/system/graph.rs:46:24 [INFO] [stdout] | [INFO] [stdout] 46 | identifer: value.identifier, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ move occurs because `value.identifier` has type `StageIdentifier`, which does not implement the `Copy` trait [INFO] [stdout] | [INFO] [stdout] note: if `StageIdentifier` implemented `Clone`, you could clone the value [INFO] [stdout] --> src/binding.rs:12:1 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct StageIdentifier { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ consider implementing `Clone` for this type [INFO] [stdout] | [INFO] [stdout] ::: src/system/graph.rs:46:24 [INFO] [stdout] | [INFO] [stdout] 46 | identifer: value.identifier, [INFO] [stdout] | ---------------- you could clone this value [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of closure [INFO] [stdout] --> src/system/mod.rs:22:25 [INFO] [stdout] | [INFO] [stdout] 20 | let mut stages: Vec = self.bindings.into_iter().map(|b| Stage::from(b)).collect(); [INFO] [stdout] | ---------- `stages` declared here, outside of the closure body [INFO] [stdout] 21 | self.bindings.into_iter().map(|binding| { [INFO] [stdout] 22 | let stage = stages [INFO] [stdout] | _________________________^ [INFO] [stdout] 23 | | .iter_mut() [INFO] [stdout] | |___________________________^ [INFO] [stdout] | [INFO] [stdout] = note: requirement occurs because of a mutable reference to `[Stage<'_>]` [INFO] [stdout] = note: mutable references are invariant over their type parameter [INFO] [stdout] = help: see for more information about variance [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0502]: cannot borrow `stages` as immutable because it is also borrowed as mutable [INFO] [stdout] --> src/system/mod.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 22 | let stage = stages [INFO] [stdout] | ------ mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 27 | stages [INFO] [stdout] | ^^^^^^ immutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 32 | .map(|next_stage| stage.add_next_stage(next_stage)) [INFO] [stdout] | ----- mutable borrow later captured here by closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0521]: borrowed data escapes outside of closure [INFO] [stdout] --> src/system/mod.rs:22:25 [INFO] [stdout] | [INFO] [stdout] 20 | let mut stages: Vec = self.bindings.into_iter().map(|b| Stage::from(b)).collect(); [INFO] [stdout] | ---------- `stages` declared here, outside of the closure body [INFO] [stdout] 21 | self.bindings.into_iter().map(|binding| { [INFO] [stdout] 22 | let stage = stages [INFO] [stdout] | _________________________^ [INFO] [stdout] 23 | | .iter_mut() [INFO] [stdout] | |___________________________^ [INFO] [stdout] | [INFO] [stdout] = note: requirement occurs because of a mutable reference to `[Stage<'_>]` [INFO] [stdout] = note: mutable references are invariant over their type parameter [INFO] [stdout] = help: see for more information about variance [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0502]: cannot borrow `stages` as immutable because it is also borrowed as mutable [INFO] [stdout] --> src/system/mod.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 22 | let stage = stages [INFO] [stdout] | ------ mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 27 | stages [INFO] [stdout] | ^^^^^^ immutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 32 | .map(|next_stage| stage.add_next_stage(next_stage)) [INFO] [stdout] | ----- mutable borrow later captured here by closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0507]: cannot move out of `self.bindings` which is behind a shared reference [INFO] [stdout] --> src/system/mod.rs:20:38 [INFO] [stdout] | [INFO] [stdout] 20 | let mut stages: Vec = self.bindings.into_iter().map(|b| Stage::from(b)).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^ ----------- `self.bindings` moved due to this method call [INFO] [stdout] | | [INFO] [stdout] | move occurs because `self.bindings` has type `Vec`, which does not implement the `Copy` trait [INFO] [stdout] | [INFO] [stdout] note: `into_iter` takes ownership of the receiver `self`, which moves `self.bindings` [INFO] [stdout] --> /rustc/e071e73523bfcdcab2878dbf652ac8ebb9b9eee4/library/core/src/iter/traits/collect.rs:310:18 [INFO] [stdout] help: you could `clone` the value and consume it, if the `Binding: Clone` trait bound could be satisfied [INFO] [stdout] | [INFO] [stdout] 20 | let mut stages: Vec = as Clone>::clone(&self.bindings).into_iter().map(|b| Stage::from(b)).collect(); [INFO] [stdout] | ++++++++++++++++++++++++++++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0507]: cannot move out of `self.bindings` which is behind a shared reference [INFO] [stdout] --> src/system/mod.rs:20:38 [INFO] [stdout] | [INFO] [stdout] 20 | let mut stages: Vec = self.bindings.into_iter().map(|b| Stage::from(b)).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^ ----------- `self.bindings` moved due to this method call [INFO] [stdout] | | [INFO] [stdout] | move occurs because `self.bindings` has type `Vec`, which does not implement the `Copy` trait [INFO] [stdout] | [INFO] [stdout] note: `into_iter` takes ownership of the receiver `self`, which moves `self.bindings` [INFO] [stdout] --> /rustc/e071e73523bfcdcab2878dbf652ac8ebb9b9eee4/library/core/src/iter/traits/collect.rs:310:18 [INFO] [stdout] help: you could `clone` the value and consume it, if the `Binding: Clone` trait bound could be satisfied [INFO] [stdout] | [INFO] [stdout] 20 | let mut stages: Vec = as Clone>::clone(&self.bindings).into_iter().map(|b| Stage::from(b)).collect(); [INFO] [stdout] | ++++++++++++++++++++++++++++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0507]: cannot move out of `self.bindings` which is behind a shared reference [INFO] [stdout] --> src/system/mod.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 21 | self.bindings.into_iter().map(|binding| { [INFO] [stdout] | ^^^^^^^^^^^^^ ----------- `self.bindings` moved due to this method call [INFO] [stdout] | | [INFO] [stdout] | move occurs because `self.bindings` has type `Vec`, which does not implement the `Copy` trait [INFO] [stdout] | [INFO] [stdout] help: you could `clone` the value and consume it, if the `Binding: Clone` trait bound could be satisfied [INFO] [stdout] | [INFO] [stdout] 21 | as Clone>::clone(&self.bindings).into_iter().map(|binding| { [INFO] [stdout] | ++++++++++++++++++++++++++++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0507]: cannot move out of `self.bindings` which is behind a shared reference [INFO] [stdout] --> src/system/mod.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 21 | self.bindings.into_iter().map(|binding| { [INFO] [stdout] | ^^^^^^^^^^^^^ ----------- `self.bindings` moved due to this method call [INFO] [stdout] | | [INFO] [stdout] | move occurs because `self.bindings` has type `Vec`, which does not implement the `Copy` trait [INFO] [stdout] | [INFO] [stdout] help: you could `clone` the value and consume it, if the `Binding: Clone` trait bound could be satisfied [INFO] [stdout] | [INFO] [stdout] 21 | as Clone>::clone(&self.bindings).into_iter().map(|binding| { [INFO] [stdout] | ++++++++++++++++++++++++++++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0373]: closure may outlive the current function, but it borrows `stages`, which is owned by the current function [INFO] [stdout] --> src/system/mod.rs:21:39 [INFO] [stdout] | [INFO] [stdout] 21 | self.bindings.into_iter().map(|binding| { [INFO] [stdout] | ^^^^^^^^^ may outlive borrowed value `stages` [INFO] [stdout] 22 | let stage = stages [INFO] [stdout] | ------ `stages` is borrowed here [INFO] [stdout] | [INFO] [stdout] note: closure is returned here [INFO] [stdout] --> src/system/mod.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | stages [INFO] [stdout] | ^^^^^^ [INFO] [stdout] help: to force the closure to take ownership of `stages` (and any other referenced variables), use the `move` keyword [INFO] [stdout] | [INFO] [stdout] 21 | self.bindings.into_iter().map(move |binding| { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0373]: closure may outlive the current function, but it borrows `stages`, which is owned by the current function [INFO] [stdout] --> src/system/mod.rs:21:39 [INFO] [stdout] | [INFO] [stdout] 21 | self.bindings.into_iter().map(|binding| { [INFO] [stdout] | ^^^^^^^^^ may outlive borrowed value `stages` [INFO] [stdout] 22 | let stage = stages [INFO] [stdout] | ------ `stages` is borrowed here [INFO] [stdout] | [INFO] [stdout] note: closure is returned here [INFO] [stdout] --> src/system/mod.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | stages [INFO] [stdout] | ^^^^^^ [INFO] [stdout] help: to force the closure to take ownership of `stages` (and any other referenced variables), use the `move` keyword [INFO] [stdout] | [INFO] [stdout] 21 | self.bindings.into_iter().map(move |binding| { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0505]: cannot move out of `stages` because it is borrowed [INFO] [stdout] --> src/system/mod.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn generate_stages(&self) -> Vec { [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] 20 | let mut stages: Vec = self.bindings.into_iter().map(|b| Stage::from(b)).collect(); [INFO] [stdout] 21 | self.bindings.into_iter().map(|binding| { [INFO] [stdout] | --------- borrow of `stages` occurs here [INFO] [stdout] 22 | let stage = stages [INFO] [stdout] | ------ borrow occurs due to use in closure [INFO] [stdout] ... [INFO] [stdout] 35 | stages [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | move out of `stages` occurs here [INFO] [stdout] | returning this value requires that `stages` is borrowed for `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0505]: cannot move out of `stages` because it is borrowed [INFO] [stdout] --> src/system/mod.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn generate_stages(&self) -> Vec { [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] 20 | let mut stages: Vec = self.bindings.into_iter().map(|b| Stage::from(b)).collect(); [INFO] [stdout] 21 | self.bindings.into_iter().map(|binding| { [INFO] [stdout] | --------- borrow of `stages` occurs here [INFO] [stdout] 22 | let stage = stages [INFO] [stdout] | ------ borrow occurs due to use in closure [INFO] [stdout] ... [INFO] [stdout] 35 | stages [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | move out of `stages` occurs here [INFO] [stdout] | returning this value requires that `stages` is borrowed for `'1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0382]: use of partially moved value: `b` [INFO] [stdout] --> src/system/mod.rs:58:37 [INFO] [stdout] | [INFO] [stdout] 58 | .map(|b| (b.identifier, b)) [INFO] [stdout] | ------------ ^ value used here after partial move [INFO] [stdout] | | [INFO] [stdout] | value partially moved here [INFO] [stdout] | [INFO] [stdout] = note: partial move occurs because `b.identifier` has type `StageIdentifier`, which does not implement the `Copy` trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0382]: use of partially moved value: `b` [INFO] [stdout] --> src/system/mod.rs:58:37 [INFO] [stdout] | [INFO] [stdout] 58 | .map(|b| (b.identifier, b)) [INFO] [stdout] | ------------ ^ value used here after partial move [INFO] [stdout] | | [INFO] [stdout] | value partially moved here [INFO] [stdout] | [INFO] [stdout] = note: partial move occurs because `b.identifier` has type `StageIdentifier`, which does not implement the `Copy` trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0507]: cannot move out of `self.bindings` which is behind a shared reference [INFO] [stdout] --> src/system/mod.rs:56:9 [INFO] [stdout] | [INFO] [stdout] 56 | self.bindings [INFO] [stdout] | ^^^^^^^^^^^^^ move occurs because `self.bindings` has type `Vec`, which does not implement the `Copy` trait [INFO] [stdout] 57 | .into_iter() [INFO] [stdout] | ----------- `self.bindings` moved due to this method call [INFO] [stdout] | [INFO] [stdout] note: `into_iter` takes ownership of the receiver `self`, which moves `self.bindings` [INFO] [stdout] --> /rustc/e071e73523bfcdcab2878dbf652ac8ebb9b9eee4/library/core/src/iter/traits/collect.rs:310:18 [INFO] [stdout] help: you could `clone` the value and consume it, if the `Binding: Clone` trait bound could be satisfied [INFO] [stdout] | [INFO] [stdout] 56 | as Clone>::clone(&self.bindings) [INFO] [stdout] | ++++++++++++++++++++++++++++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0507]: cannot move out of `self.bindings` which is behind a shared reference [INFO] [stdout] --> src/system/mod.rs:56:9 [INFO] [stdout] | [INFO] [stdout] 56 | self.bindings [INFO] [stdout] | ^^^^^^^^^^^^^ move occurs because `self.bindings` has type `Vec`, which does not implement the `Copy` trait [INFO] [stdout] 57 | .into_iter() [INFO] [stdout] | ----------- `self.bindings` moved due to this method call [INFO] [stdout] | [INFO] [stdout] note: `into_iter` takes ownership of the receiver `self`, which moves `self.bindings` [INFO] [stdout] --> /rustc/e071e73523bfcdcab2878dbf652ac8ebb9b9eee4/library/core/src/iter/traits/collect.rs:310:18 [INFO] [stdout] help: you could `clone` the value and consume it, if the `Binding: Clone` trait bound could be satisfied [INFO] [stdout] | [INFO] [stdout] 56 | as Clone>::clone(&self.bindings) [INFO] [stdout] | ++++++++++++++++++++++++++++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0373, E0382, E0502, E0505, E0507, E0521, E0599, E0631. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0373`. [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0373, E0382, E0502, E0505, E0507, E0521, E0599, E0631. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0373`. [INFO] [stdout] [INFO] [stderr] error: could not compile `proces-monitor` (bin "proces-monitor" test) due to 12 previous errors; 2 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: could not compile `proces-monitor` (bin "proces-monitor") due to 12 previous errors; 2 warnings emitted [INFO] running `Command { std: "docker" "inspect" "b420140b6e6e5c29513d11be4020b26c9e471590449eb8d586afafe59888b4dd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b420140b6e6e5c29513d11be4020b26c9e471590449eb8d586afafe59888b4dd", kill_on_drop: false }` [INFO] [stdout] b420140b6e6e5c29513d11be4020b26c9e471590449eb8d586afafe59888b4dd