[INFO] cloning repository https://github.com/publicmatt/rust_intro
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/publicmatt/rust_intro" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpublicmatt%2Frust_intro", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpublicmatt%2Frust_intro'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 2fa87ef5fb5bee251d082f8d97089396f62658fd
[INFO] checking publicmatt/rust_intro against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpublicmatt%2Frust_intro" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/publicmatt/rust_intro
[INFO] finished tweaking git repo https://github.com/publicmatt/rust_intro
[INFO] tweaked toml for git repo https://github.com/publicmatt/rust_intro written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/publicmatt/rust_intro on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/publicmatt/rust_intro 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" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded clap_derive v4.1.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0986ba630eba76aac027a4952ab51a1bb2bb85201b7ab4acb2a44465abd5ab20
[INFO] running `Command { std: "docker" "start" "-a" "0986ba630eba76aac027a4952ab51a1bb2bb85201b7ab4acb2a44465abd5ab20", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0986ba630eba76aac027a4952ab51a1bb2bb85201b7ab4acb2a44465abd5ab20", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0986ba630eba76aac027a4952ab51a1bb2bb85201b7ab4acb2a44465abd5ab20", kill_on_drop: false }`
[INFO] [stdout] 0986ba630eba76aac027a4952ab51a1bb2bb85201b7ab4acb2a44465abd5ab20
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e4578df91e83517756795624e98811e7f144325ab327e25799a4b38598b0c178
[INFO] running `Command { std: "docker" "start" "-a" "e4578df91e83517756795624e98811e7f144325ab327e25799a4b38598b0c178", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.139
[INFO] [stderr]    Compiling rustix v0.36.8
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking io-lifetimes v1.0.5
[INFO] [stderr]     Checking is-terminal v0.4.4
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling clap_derive v4.1.0
[INFO] [stderr]     Checking clap v4.1.6
[INFO] [stderr]     Checking elvis v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `levels`
[INFO] [stdout]   --> src/skip_list.rs:30:51
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn new(key: NodeKey<T>, value: Option<U>, levels: usize) -> Self {
[INFO] [stdout]    |                                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_levels`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Tree` is never constructed
[INFO] [stdout]  --> src/binary_tree.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct Tree<T>
[INFO] [stdout]   |        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `in_order`, `print`, and `add` are never used
[INFO] [stdout]   --> src/binary_tree.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | / impl<T> Tree<T>
[INFO] [stdout] 15 | | where
[INFO] [stdout] 16 | |     T: Display + PartialOrd,
[INFO] [stdout]    | |____________________________- associated items in this implementation
[INFO] [stdout] 17 |   {
[INFO] [stdout] 18 |       pub fn new(value: T, left: Option<Box<Tree<T>>>, right: Option<Box<Tree<T>>>) -> Self {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |       pub fn in_order(&self, depth: usize) -> Vec<(&Tree<T>, usize)> {
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |       pub fn print(&self) -> String {
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |       pub fn add(&mut self, node: Tree<T>) {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]  --> src/compleat/potion.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Potion {
[INFO] [stdout]   |            ------ field in this struct
[INFO] [stdout] 2 |     name: String,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]  --> src/compleat/weapon.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Weapon {
[INFO] [stdout]   |            ------ field in this struct
[INFO] [stdout] 2 |     name: String,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Hungry` is never used
[INFO] [stdout]  --> src/restarant.rs:6:7
[INFO] [stdout]   |
[INFO] [stdout] 6 | trait Hungry {
[INFO] [stdout]   |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Restaurant` is never constructed
[INFO] [stdout]  --> src/restarant.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | struct Restaurant {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `distance`, and `closer` are never used
[INFO] [stdout]   --> src/restarant.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Restaurant {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 15 |     fn new(name: &str, lat: f32, long: f32) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     fn distance(&self, rest: &Restaurant) -> f32 {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     fn closer<'a>(&self, first: &'a Restaurant, second: &'a Restaurant) -> &'a Restaurant {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `greedy_path` is never used
[INFO] [stdout]   --> src/restarant.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn greedy_path<'a>(
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `NodeKey` is never used
[INFO] [stdout]   --> src/skip_list.rs:11:6
[INFO] [stdout]    |
[INFO] [stdout] 11 | enum NodeKey<T> {
[INFO] [stdout]    |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]   --> src/skip_list.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct Node<T, U>
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_next`, `get_key`, `get_value`, `get_levels`, and `set_next` are never used
[INFO] [stdout]   --> src/skip_list.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | / impl<T, U> Node<T, U>
[INFO] [stdout] 27 | | where
[INFO] [stdout] 28 | |     T: PartialOrd,
[INFO] [stdout]    | |__________________- associated items in this implementation
[INFO] [stdout] 29 |   {
[INFO] [stdout] 30 |       pub fn new(key: NodeKey<T>, value: Option<U>, levels: usize) -> Self {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |       pub fn get_next(&self, level: usize) -> Option<&Box<Self>> {
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |       pub fn get_key(&self) -> &NodeKey<T> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |       pub fn get_value(&self) -> &Option<U> {
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |       pub fn get_levels(&self) -> usize {
[INFO] [stdout]    |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |       pub fn set_next(&mut self, level: usize, next: Self) -> () {
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/binary_tree.rs:110:13
[INFO] [stdout]     |
[INFO] [stdout] 110 |         let mut left = Tree::new("left", None, None);
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `levels`
[INFO] [stdout]   --> src/skip_list.rs:30:51
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn new(key: NodeKey<T>, value: Option<U>, levels: usize) -> Self {
[INFO] [stdout]    |                                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_levels`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]  --> src/compleat/potion.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Potion {
[INFO] [stdout]   |            ------ field in this struct
[INFO] [stdout] 2 |     name: String,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]  --> src/compleat/weapon.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Weapon {
[INFO] [stdout]   |            ------ field in this struct
[INFO] [stdout] 2 |     name: String,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Hungry` is never used
[INFO] [stdout]  --> src/restarant.rs:6:7
[INFO] [stdout]   |
[INFO] [stdout] 6 | trait Hungry {
[INFO] [stdout]   |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `distance` and `closer` are never used
[INFO] [stdout]   --> src/restarant.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Restaurant {
[INFO] [stdout]    | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 22 |     fn distance(&self, rest: &Restaurant) -> f32 {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     fn closer<'a>(&self, first: &'a Restaurant, second: &'a Restaurant) -> &'a Restaurant {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]   --> src/skip_list.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct Node<T, U>
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_next`, `get_key`, `get_value`, `get_levels`, and `set_next` are never used
[INFO] [stdout]   --> src/skip_list.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | / impl<T, U> Node<T, U>
[INFO] [stdout] 27 | | where
[INFO] [stdout] 28 | |     T: PartialOrd,
[INFO] [stdout]    | |__________________- associated items in this implementation
[INFO] [stdout] 29 |   {
[INFO] [stdout] 30 |       pub fn new(key: NodeKey<T>, value: Option<U>, levels: usize) -> Self {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |       pub fn get_next(&self, level: usize) -> Option<&Box<Self>> {
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |       pub fn get_key(&self) -> &NodeKey<T> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |       pub fn get_value(&self) -> &Option<U> {
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |       pub fn get_levels(&self) -> usize {
[INFO] [stdout]    |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |       pub fn set_next(&mut self, level: usize, next: Self) -> () {
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.43s
[INFO] running `Command { std: "docker" "inspect" "e4578df91e83517756795624e98811e7f144325ab327e25799a4b38598b0c178", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e4578df91e83517756795624e98811e7f144325ab327e25799a4b38598b0c178", kill_on_drop: false }`
[INFO] [stdout] e4578df91e83517756795624e98811e7f144325ab327e25799a4b38598b0c178
