[INFO] cloning repository https://github.com/ear7h/plumb [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ear7h/plumb" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fear7h%2Fplumb", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fear7h%2Fplumb'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 8c221bac2152637e81246332cada352bd1492935 [INFO] checking ear7h/plumb against try#2277c63fa464d237b17b68d3b87f9fbb89e58a3e for pr-133570-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fear7h%2Fplumb" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/ear7h/plumb on toolchain 2277c63fa464d237b17b68d3b87f9fbb89e58a3e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2277c63fa464d237b17b68d3b87f9fbb89e58a3e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/ear7h/plumb [INFO] finished tweaking git repo https://github.com/ear7h/plumb [INFO] tweaked toml for git repo https://github.com/ear7h/plumb written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/ear7h/plumb 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" "+2277c63fa464d237b17b68d3b87f9fbb89e58a3e" "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-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+2277c63fa464d237b17b68d3b87f9fbb89e58a3e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 92b2b4fcf9522e0157904dbbf44e743f397628e1416d4f01df5c07af6424a469 [INFO] running `Command { std: "docker" "start" "-a" "92b2b4fcf9522e0157904dbbf44e743f397628e1416d4f01df5c07af6424a469", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "92b2b4fcf9522e0157904dbbf44e743f397628e1416d4f01df5c07af6424a469", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "92b2b4fcf9522e0157904dbbf44e743f397628e1416d4f01df5c07af6424a469", kill_on_drop: false }` [INFO] [stdout] 92b2b4fcf9522e0157904dbbf44e743f397628e1416d4f01df5c07af6424a469 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+2277c63fa464d237b17b68d3b87f9fbb89e58a3e" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 45df766395140770581fbf52baca5665334e56b47eb441196d2a14b63ef556c7 [INFO] running `Command { std: "docker" "start" "-a" "45df766395140770581fbf52baca5665334e56b47eb441196d2a14b63ef556c7", kill_on_drop: false }` [INFO] [stderr] Checking plumb v0.2.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0432]: unresolved imports `Append`, `Merge`, `Pluck`, `PluckTail`, `Prepend`, `Split`, `Call`, `RefCall` [INFO] [stdout] --> src/tuple_utils.rs:248:10 [INFO] [stdout] | [INFO] [stdout] 248 | use {Append, Merge, Pluck, PluckTail, Prepend, Split, Call, RefCall}; [INFO] [stdout] | ^^^^^^ ^^^^^ ^^^^^ ^^^^^^^^^ ^^^^^^^ ^^^^^ ^^^^ ^^^^^^^ no external crate `RefCall` [INFO] [stdout] | | | | | | | | [INFO] [stdout] | | | | | | | no external crate `Call` [INFO] [stdout] | | | | | | no external crate `Split` [INFO] [stdout] | | | | | no external crate `Prepend` [INFO] [stdout] | | | | no external crate `PluckTail` [INFO] [stdout] | | | no external crate `Pluck` [INFO] [stdout] | | no external crate `Merge` [INFO] [stdout] | no external crate `Append` [INFO] [stdout] | [INFO] [stdout] = help: consider importing this trait through its public re-export instead: [INFO] [stdout] crate::Append [INFO] [stdout] = help: consider importing this trait instead: [INFO] [stdout] crate::tuple_utils::Merge [INFO] [stdout] = help: consider importing this trait instead: [INFO] [stdout] crate::tuple_utils::Pluck [INFO] [stdout] = help: consider importing this trait instead: [INFO] [stdout] crate::tuple_utils::PluckTail [INFO] [stdout] = help: consider importing this trait instead: [INFO] [stdout] crate::tuple_utils::Prepend [INFO] [stdout] = help: consider importing one of these items instead: [INFO] [stdout] crate::tuple_utils::Split [INFO] [stdout] std::io::Split [INFO] [stdout] std::slice::Split [INFO] [stdout] std::str::Split [INFO] [stdout] core::slice::Split [INFO] [stdout] core::str::Split [INFO] [stdout] = help: consider importing this trait through its public re-export instead: [INFO] [stdout] crate::Call [INFO] [stdout] = help: consider importing this trait instead: [INFO] [stdout] crate::tuple_utils::RefCall [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `append` found for tuple `({integer},)` in the current scope [INFO] [stdout] --> src/tuple_utils.rs:252:24 [INFO] [stdout] | [INFO] [stdout] 11 | fn append(self, other: T) -> Self::Output; [INFO] [stdout] | ------ the method is available for `({integer},)` here [INFO] [stdout] ... [INFO] [stdout] 252 | let out = (0,).append(1); [INFO] [stdout] | ^^^^^^ method not found in `({integer},)` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is in scope [INFO] [stdout] help: trait `Append` which provides `append` is implemented but not in scope; perhaps you want to import it [INFO] [stdout] | [INFO] [stdout] 248 + use crate::tuple_utils::Append; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `pluck_tail` found for tuple `({integer}, {integer}, {integer}, {integer})` in the current scope [INFO] [stdout] --> src/tuple_utils.rs:273:33 [INFO] [stdout] | [INFO] [stdout] 21 | fn pluck_tail(self) -> (Self::Head, Self::Tail); [INFO] [stdout] | ---------- the method is available for `({integer}, {integer}, {integer}, {integer})` here [INFO] [stdout] ... [INFO] [stdout] 273 | let (head, tail) = head.pluck_tail(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is in scope [INFO] [stdout] help: trait `PluckTail` which provides `pluck_tail` is implemented but not in scope; perhaps you want to import it [INFO] [stdout] | [INFO] [stdout] 248 + use crate::tuple_utils::PluckTail; [INFO] [stdout] | [INFO] [stdout] help: there is a method `pluck` with a similar name [INFO] [stdout] | [INFO] [stdout] 273 | let (head, tail) = head.pluck(); [INFO] [stdout] | ~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `prepend` found for tuple `({integer},)` in the current scope [INFO] [stdout] --> src/tuple_utils.rs:279:24 [INFO] [stdout] | [INFO] [stdout] 30 | fn prepend(self, other: T) -> Self::Output; [INFO] [stdout] | ------- the method is available for `({integer},)` here [INFO] [stdout] ... [INFO] [stdout] 279 | let out = (0,).prepend(1); [INFO] [stdout] | ^^^^^^^ method not found in `({integer},)` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is in scope [INFO] [stdout] help: trait `Prepend` which provides `prepend` is implemented but not in scope; perhaps you want to import it [INFO] [stdout] | [INFO] [stdout] 248 + use crate::tuple_utils::Prepend; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `pluck` found for tuple `({integer}, {integer}, {integer}, {integer})` in the current scope [INFO] [stdout] --> src/tuple_utils.rs:300:33 [INFO] [stdout] | [INFO] [stdout] 40 | fn pluck(self) -> (Self::Head, Self::Tail); [INFO] [stdout] | ----- the method is available for `({integer}, {integer}, {integer}, {integer})` here [INFO] [stdout] ... [INFO] [stdout] 300 | let (head, tail) = tail.pluck(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is in scope [INFO] [stdout] help: trait `Pluck` which provides `pluck` is implemented but not in scope; perhaps you want to import it [INFO] [stdout] | [INFO] [stdout] 248 + use crate::tuple_utils::Pluck; [INFO] [stdout] | [INFO] [stdout] help: there is a method `pluck_tail` with a similar name [INFO] [stdout] | [INFO] [stdout] 300 | let (head, tail) = tail.pluck_tail(); [INFO] [stdout] | ~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `merge` found for tuple `({integer}, {integer}, {integer})` in the current scope [INFO] [stdout] --> src/tuple_utils.rs:334:19 [INFO] [stdout] | [INFO] [stdout] 178 | fn merge(self, other: T) -> Self::Output; [INFO] [stdout] | ----- the method is available for `({integer}, {integer}, {integer})` here [INFO] [stdout] ... [INFO] [stdout] 334 | let c = a.merge(b); [INFO] [stdout] | ^^^^^ method not found in `({integer}, {integer}, {integer})` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is in scope [INFO] [stdout] help: trait `Merge` which provides `merge` is implemented but not in scope; perhaps you want to import it [INFO] [stdout] | [INFO] [stdout] 248 + use crate::tuple_utils::Merge; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `merge` found for tuple `(&str,)` in the current scope [INFO] [stdout] --> src/tuple_utils.rs:344:21 [INFO] [stdout] | [INFO] [stdout] 178 | fn merge(self, other: T) -> Self::Output; [INFO] [stdout] | ----- the method is available for `(&str,)` here [INFO] [stdout] ... [INFO] [stdout] 344 | let out = a.merge(()); [INFO] [stdout] | ^^^^^ method not found in `(&str,)` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is in scope [INFO] [stdout] help: trait `Merge` which provides `merge` is implemented but not in scope; perhaps you want to import it [INFO] [stdout] | [INFO] [stdout] 248 + use crate::tuple_utils::Merge; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `merge` found for unit type `()` in the current scope [INFO] [stdout] --> src/tuple_utils.rs:348:22 [INFO] [stdout] | [INFO] [stdout] 178 | fn merge(self, other: T) -> Self::Output; [INFO] [stdout] | ----- the method is available for `()` here [INFO] [stdout] ... [INFO] [stdout] 348 | let out = ().merge(a); [INFO] [stdout] | ^^^^^ method not found in `()` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is in scope [INFO] [stdout] help: trait `Merge` which provides `merge` is implemented but not in scope; perhaps you want to import it [INFO] [stdout] | [INFO] [stdout] 248 + use crate::tuple_utils::Merge; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `merge` found for unit type `()` in the current scope [INFO] [stdout] --> src/tuple_utils.rs:350:23 [INFO] [stdout] | [INFO] [stdout] 178 | fn merge(self, other: T) -> Self::Output; [INFO] [stdout] | ----- the method is available for `()` here [INFO] [stdout] ... [INFO] [stdout] 350 | assert_eq!(().merge(()), ()); [INFO] [stdout] | ^^^^^ method not found in `()` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is in scope [INFO] [stdout] help: trait `Merge` which provides `merge` is implemented but not in scope; perhaps you want to import it [INFO] [stdout] | [INFO] [stdout] 248 + use crate::tuple_utils::Merge; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `merge` found for unit type `()` in the current scope [INFO] [stdout] --> src/tuple_utils.rs:351:23 [INFO] [stdout] | [INFO] [stdout] 178 | fn merge(self, other: T) -> Self::Output; [INFO] [stdout] | ----- the method is available for `()` here [INFO] [stdout] ... [INFO] [stdout] 351 | assert_eq!(().merge((1,)), (1,)); [INFO] [stdout] | ^^^^^ method not found in `()` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is in scope [INFO] [stdout] help: trait `Merge` which provides `merge` is implemented but not in scope; perhaps you want to import it [INFO] [stdout] | [INFO] [stdout] 248 + use crate::tuple_utils::Merge; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `merge` found for tuple `({integer},)` in the current scope [INFO] [stdout] --> src/tuple_utils.rs:352:25 [INFO] [stdout] | [INFO] [stdout] 178 | fn merge(self, other: T) -> Self::Output; [INFO] [stdout] | ----- the method is available for `({integer},)` here [INFO] [stdout] ... [INFO] [stdout] 352 | assert_eq!((1,).merge(()), (1,)); [INFO] [stdout] | ^^^^^ method not found in `({integer},)` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is in scope [INFO] [stdout] help: trait `Merge` which provides `merge` is implemented but not in scope; perhaps you want to import it [INFO] [stdout] | [INFO] [stdout] 248 + use crate::tuple_utils::Merge; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `split` found for tuple `({integer}, {integer}, {integer})` in the current scope [INFO] [stdout] --> src/tuple_utils.rs:358:24 [INFO] [stdout] | [INFO] [stdout] 213 | fn split(self) -> (Self::Left, Self::Right); [INFO] [stdout] | ----- the method is available for `({integer}, {integer}, {integer})` here [INFO] [stdout] ... [INFO] [stdout] 358 | let (b, c) = a.split(); [INFO] [stdout] | ^^^^^ method not found in `({integer}, {integer}, {integer})` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is in scope [INFO] [stdout] help: trait `Split` which provides `split` is implemented but not in scope; perhaps you want to import it [INFO] [stdout] | [INFO] [stdout] 248 + use crate::tuple_utils::Split; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `split` found for unit type `()` in the current scope [INFO] [stdout] --> src/tuple_utils.rs:362:23 [INFO] [stdout] | [INFO] [stdout] 213 | fn split(self) -> (Self::Left, Self::Right); [INFO] [stdout] | ----- the method is available for `()` here [INFO] [stdout] ... [INFO] [stdout] 362 | assert_eq!(().split(), ((), ())); [INFO] [stdout] | ^^^^^ method not found in `()` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is in scope [INFO] [stdout] help: trait `Split` which provides `split` is implemented but not in scope; perhaps you want to import it [INFO] [stdout] | [INFO] [stdout] 248 + use crate::tuple_utils::Split; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `split` found for tuple `({integer},)` in the current scope [INFO] [stdout] --> src/tuple_utils.rs:363:25 [INFO] [stdout] | [INFO] [stdout] 213 | fn split(self) -> (Self::Left, Self::Right); [INFO] [stdout] | ----- the method is available for `({integer},)` here [INFO] [stdout] ... [INFO] [stdout] 363 | assert_eq!((1,).split(), ((), (1,))); [INFO] [stdout] | ^^^^^ method not found in `({integer},)` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is in scope [INFO] [stdout] help: trait `Split` which provides `split` is implemented but not in scope; perhaps you want to import it [INFO] [stdout] | [INFO] [stdout] 248 + use crate::tuple_utils::Split; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `split` found for tuple `({integer}, {integer})` in the current scope [INFO] [stdout] --> src/tuple_utils.rs:364:27 [INFO] [stdout] | [INFO] [stdout] 213 | fn split(self) -> (Self::Left, Self::Right); [INFO] [stdout] | ----- the method is available for `({integer}, {integer})` here [INFO] [stdout] ... [INFO] [stdout] 364 | assert_eq!((1, 2).split(), ((1,), (2,))); [INFO] [stdout] | ^^^^^ method not found in `({integer}, {integer})` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is in scope [INFO] [stdout] help: trait `Split` which provides `split` is implemented but not in scope; perhaps you want to import it [INFO] [stdout] | [INFO] [stdout] 248 + use crate::tuple_utils::Split; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `split` found for tuple `({integer}, {integer}, {integer})` in the current scope [INFO] [stdout] --> src/tuple_utils.rs:365:30 [INFO] [stdout] | [INFO] [stdout] 213 | fn split(self) -> (Self::Left, Self::Right); [INFO] [stdout] | ----- the method is available for `({integer}, {integer}, {integer})` here [INFO] [stdout] ... [INFO] [stdout] 365 | assert_eq!((1, 2, 3).split(), ((1,), (2, 3))); [INFO] [stdout] | ^^^^^ method not found in `({integer}, {integer}, {integer})` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is in scope [INFO] [stdout] help: trait `Split` which provides `split` is implemented but not in scope; perhaps you want to import it [INFO] [stdout] | [INFO] [stdout] 248 + use crate::tuple_utils::Split; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0432, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0432`. [INFO] [stdout] [INFO] [stderr] error: could not compile `plumb` (lib test) due to 16 previous errors [INFO] running `Command { std: "docker" "inspect" "45df766395140770581fbf52baca5665334e56b47eb441196d2a14b63ef556c7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "45df766395140770581fbf52baca5665334e56b47eb441196d2a14b63ef556c7", kill_on_drop: false }` [INFO] [stdout] 45df766395140770581fbf52baca5665334e56b47eb441196d2a14b63ef556c7