[INFO] cloning repository https://github.com/akr4/pero
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/akr4/pero" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fakr4%2Fpero", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fakr4%2Fpero'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 5e40cabe5bedcb432fd7bee1f823a68eb0a88cb0
[INFO] testing akr4/pero against 1.47.0 for beta-1.48-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fakr4%2Fpero" "/workspace/builds/worker-3/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/akr4/pero on toolchain 1.47.0
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/akr4/pero
[INFO] finished tweaking git repo https://github.com/akr4/pero
[INFO] tweaked toml for git repo https://github.com/akr4/pero written to /workspace/builds/worker-3/source/Cargo.toml
[INFO] crate git repo https://github.com/akr4/pero already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8a93af2eacdf49c466fc95701883f2f5239d4240cac28f327f9d1bd994b5839f
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "8a93af2eacdf49c466fc95701883f2f5239d4240cac28f327f9d1bd994b5839f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8a93af2eacdf49c466fc95701883f2f5239d4240cac28f327f9d1bd994b5839f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8a93af2eacdf49c466fc95701883f2f5239d4240cac28f327f9d1bd994b5839f", kill_on_drop: false }`
[INFO] [stdout] 8a93af2eacdf49c466fc95701883f2f5239d4240cac28f327f9d1bd994b5839f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4bc00bdae562982e24f95a922887bbd9df7ca37142d6116eba3f6fcabb14cc53
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "4bc00bdae562982e24f95a922887bbd9df7ca37142d6116eba3f6fcabb14cc53", kill_on_drop: false }`
[INFO] [stderr]    Compiling pero v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/cargo.rs:6:42
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn detect(path: &Path) -> Option<Box<project::Project>> {
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/cargo.rs:10:53
[INFO] [stdout]    |
[INFO] [stdout] 10 |             .map(|p| Box::new(Cargo::new(p)) as Box<project::Project>),
[INFO] [stdout]    |                                                     ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/display.rs:5:32
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn print_project(project: &Project) {
[INFO] [stdout]   |                                ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/gradle.rs:6:42
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn detect(path: &Path) -> Option<Box<project::Project>> {
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/gradle.rs:10:54
[INFO] [stdout]    |
[INFO] [stdout] 10 |             .map(|p| Box::new(Gradle::new(p)) as Box<project::Project>),
[INFO] [stdout]    |                                                      ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/maven.rs:6:42
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn detect(path: &Path) -> Option<Box<project::Project>> {
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/maven.rs:10:53
[INFO] [stdout]    |
[INFO] [stdout] 10 |             .map(|p| Box::new(Maven::new(p)) as Box<project::Project>),
[INFO] [stdout]    |                                                     ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/npm.rs:7:42
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn detect(path: &Path) -> Option<Box<Project>> {
[INFO] [stdout]   |                                          ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/npm.rs:12:60
[INFO] [stdout]    |
[INFO] [stdout] 12 |         path.parent().map(|p| Box::new(Npm::new(p)) as Box<Project>)
[INFO] [stdout]    |                                                            ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/sbt.rs:6:42
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn detect(path: &Path) -> Option<Box<project::Project>> {
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/sbt.rs:10:51
[INFO] [stdout]    |
[INFO] [stdout] 10 |             .map(|p| Box::new(Sbt::new(p)) as Box<project::Project>),
[INFO] [stdout]    |                                                   ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/statistics.rs:11:39
[INFO] [stdout]    |
[INFO] [stdout] 11 |     ITER: IntoIterator<Item = &'a Box<Project>>,
[INFO] [stdout]    |                                       ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:33:21
[INFO] [stdout]    |
[INFO] [stdout] 33 |     type Item = Box<Project>;
[INFO] [stdout]    |                     ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:50:54
[INFO] [stdout]    |
[INFO] [stdout] 50 | type ProjectDetector = fn(path: &Path) -> Option<Box<Project>>;
[INFO] [stdout]    |                                                      ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:52:46
[INFO] [stdout]    |
[INFO] [stdout] 52 | fn detect_project(path: &Path) -> Option<Box<Project>> {
[INFO] [stdout]    |                                              ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:101:13
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let mut projects = projects_map.entry(type_name).or_insert_with(Vec::new);
[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: 16 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 4.53s
[INFO] running `Command { std: "docker" "inspect" "4bc00bdae562982e24f95a922887bbd9df7ca37142d6116eba3f6fcabb14cc53", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4bc00bdae562982e24f95a922887bbd9df7ca37142d6116eba3f6fcabb14cc53", kill_on_drop: false }`
[INFO] [stdout] 4bc00bdae562982e24f95a922887bbd9df7ca37142d6116eba3f6fcabb14cc53
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c52855da30f813625b8919f91a2449c34f3d04f55a2b68a8182c9ade302359d0
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "c52855da30f813625b8919f91a2449c34f3d04f55a2b68a8182c9ade302359d0", kill_on_drop: false }`
[INFO] [stderr]    Compiling pero v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/cargo.rs:6:42
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn detect(path: &Path) -> Option<Box<project::Project>> {
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/cargo.rs:10:53
[INFO] [stdout]    |
[INFO] [stdout] 10 |             .map(|p| Box::new(Cargo::new(p)) as Box<project::Project>),
[INFO] [stdout]    |                                                     ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/display.rs:5:32
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn print_project(project: &Project) {
[INFO] [stdout]   |                                ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/gradle.rs:6:42
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn detect(path: &Path) -> Option<Box<project::Project>> {
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/gradle.rs:10:54
[INFO] [stdout]    |
[INFO] [stdout] 10 |             .map(|p| Box::new(Gradle::new(p)) as Box<project::Project>),
[INFO] [stdout]    |                                                      ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/maven.rs:6:42
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn detect(path: &Path) -> Option<Box<project::Project>> {
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/maven.rs:10:53
[INFO] [stdout]    |
[INFO] [stdout] 10 |             .map(|p| Box::new(Maven::new(p)) as Box<project::Project>),
[INFO] [stdout]    |                                                     ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/npm.rs:7:42
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn detect(path: &Path) -> Option<Box<Project>> {
[INFO] [stdout]   |                                          ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/npm.rs:12:60
[INFO] [stdout]    |
[INFO] [stdout] 12 |         path.parent().map(|p| Box::new(Npm::new(p)) as Box<Project>)
[INFO] [stdout]    |                                                            ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/sbt.rs:6:42
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn detect(path: &Path) -> Option<Box<project::Project>> {
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/sbt.rs:10:51
[INFO] [stdout]    |
[INFO] [stdout] 10 |             .map(|p| Box::new(Sbt::new(p)) as Box<project::Project>),
[INFO] [stdout]    |                                                   ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/statistics.rs:11:39
[INFO] [stdout]    |
[INFO] [stdout] 11 |     ITER: IntoIterator<Item = &'a Box<Project>>,
[INFO] [stdout]    |                                       ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/statistics.rs:38:17
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let p1: Box<Project> = Box::new(TestingProject {});
[INFO] [stdout]    |                 ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:33:21
[INFO] [stdout]    |
[INFO] [stdout] 33 |     type Item = Box<Project>;
[INFO] [stdout]    |                     ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:50:54
[INFO] [stdout]    |
[INFO] [stdout] 50 | type ProjectDetector = fn(path: &Path) -> Option<Box<Project>>;
[INFO] [stdout]    |                                                      ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:52:46
[INFO] [stdout]    |
[INFO] [stdout] 52 | fn detect_project(path: &Path) -> Option<Box<Project>> {
[INFO] [stdout]    |                                              ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:101:13
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let mut projects = projects_map.entry(type_name).or_insert_with(Vec::new);
[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: 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 1.74s
[INFO] running `Command { std: "docker" "inspect" "c52855da30f813625b8919f91a2449c34f3d04f55a2b68a8182c9ade302359d0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c52855da30f813625b8919f91a2449c34f3d04f55a2b68a8182c9ade302359d0", kill_on_drop: false }`
[INFO] [stdout] c52855da30f813625b8919f91a2449c34f3d04f55a2b68a8182c9ade302359d0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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=warn" "-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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 43fcf2f805d8fd54262f375ad886d10212923c0e5591286ebd5719e3dd28aaa3
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "43fcf2f805d8fd54262f375ad886d10212923c0e5591286ebd5719e3dd28aaa3", kill_on_drop: false }`
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/cargo.rs:6:42
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub fn detect(path: &Path) -> Option<Box<project::Project>> {
[INFO] [stderr]   |                                          ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/cargo.rs:10:53
[INFO] [stderr]    |
[INFO] [stderr] 10 |             .map(|p| Box::new(Cargo::new(p)) as Box<project::Project>),
[INFO] [stderr]    |                                                     ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/display.rs:5:32
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub fn print_project(project: &Project) {
[INFO] [stderr]   |                                ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/gradle.rs:6:42
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub fn detect(path: &Path) -> Option<Box<project::Project>> {
[INFO] [stderr]   |                                          ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/gradle.rs:10:54
[INFO] [stderr]    |
[INFO] [stderr] 10 |             .map(|p| Box::new(Gradle::new(p)) as Box<project::Project>),
[INFO] [stderr]    |                                                      ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/maven.rs:6:42
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub fn detect(path: &Path) -> Option<Box<project::Project>> {
[INFO] [stderr]   |                                          ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/maven.rs:10:53
[INFO] [stderr]    |
[INFO] [stderr] 10 |             .map(|p| Box::new(Maven::new(p)) as Box<project::Project>),
[INFO] [stderr]    |                                                     ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/npm.rs:7:42
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub fn detect(path: &Path) -> Option<Box<Project>> {
[INFO] [stderr]   |                                          ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/npm.rs:12:60
[INFO] [stderr]    |
[INFO] [stderr] 12 |         path.parent().map(|p| Box::new(Npm::new(p)) as Box<Project>)
[INFO] [stderr]    |                                                            ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/sbt.rs:6:42
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub fn detect(path: &Path) -> Option<Box<project::Project>> {
[INFO] [stderr]   |                                          ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/sbt.rs:10:51
[INFO] [stderr]    |
[INFO] [stderr] 10 |             .map(|p| Box::new(Sbt::new(p)) as Box<project::Project>),
[INFO] [stderr]    |                                                   ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn project::Project`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/statistics.rs:11:39
[INFO] [stderr]    |
[INFO] [stderr] 11 |     ITER: IntoIterator<Item = &'a Box<Project>>,
[INFO] [stderr]    |                                       ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/statistics.rs:38:17
[INFO] [stderr]    |
[INFO] [stderr] 38 |     let p1: Box<Project> = Box::new(TestingProject {});
[INFO] [stderr]    |                 ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/main.rs:33:21
[INFO] [stderr]    |
[INFO] [stderr] 33 |     type Item = Box<Project>;
[INFO] [stderr]    |                     ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/main.rs:50:54
[INFO] [stderr]    |
[INFO] [stderr] 50 | type ProjectDetector = fn(path: &Path) -> Option<Box<Project>>;
[INFO] [stderr]    |                                                      ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/main.rs:52:46
[INFO] [stderr]    |
[INFO] [stderr] 52 | fn detect_project(path: &Path) -> Option<Box<Project>> {
[INFO] [stderr]    |                                              ^^^^^^^ help: use `dyn`: `dyn Project`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/main.rs:101:13
[INFO] [stderr]     |
[INFO] [stderr] 101 |         let mut projects = projects_map.entry(type_name).or_insert_with(Vec::new);
[INFO] [stderr]     |             ----^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: 17 warnings emitted
[INFO] [stderr] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.06s
[INFO] [stdout] 
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/pero-1d5fb9e69d584ef3
[INFO] [stdout] running 2 tests
[INFO] [stdout] test display::test_format_number ... ok
[INFO] [stdout] test statistics::test_calc_statistics ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "43fcf2f805d8fd54262f375ad886d10212923c0e5591286ebd5719e3dd28aaa3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "43fcf2f805d8fd54262f375ad886d10212923c0e5591286ebd5719e3dd28aaa3", kill_on_drop: false }`
[INFO] [stdout] 43fcf2f805d8fd54262f375ad886d10212923c0e5591286ebd5719e3dd28aaa3
