[INFO] cloning repository https://github.com/marcwenz/shopper
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/marcwenz/shopper" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmarcwenz%2Fshopper", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmarcwenz%2Fshopper'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a4ca596547ea9a89bfee921c2e0d3f2c3b17b898
[INFO] testing marcwenz/shopper against nightly-2025-01-18 for randomize-layout-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmarcwenz%2Fshopper" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/marcwenz/shopper on toolchain nightly-2025-01-18
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2025-01-18" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/marcwenz/shopper
[INFO] finished tweaking git repo https://github.com/marcwenz/shopper
[INFO] tweaked toml for git repo https://github.com/marcwenz/shopper written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/marcwenz/shopper 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" "+nightly-2025-01-18" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded term_size v0.3.2
[INFO] [stderr]   Downloaded darling_macro v0.10.2
[INFO] [stderr]   Downloaded darling v0.10.2
[INFO] [stderr]   Downloaded quote v1.0.6
[INFO] [stderr]   Downloaded enumset_derive v0.4.4
[INFO] [stderr]   Downloaded enumset v0.4.5
[INFO] [stderr]   Downloaded cc v1.0.53
[INFO] [stderr]   Downloaded pkg-config v0.3.17
[INFO] [stderr]   Downloaded num-iter v0.1.40
[INFO] [stderr]   Downloaded ident_case v1.0.1
[INFO] [stderr]   Downloaded maplit v1.0.2
[INFO] [stderr]   Downloaded num v0.2.1
[INFO] [stderr]   Downloaded num-complex v0.2.4
[INFO] [stderr]   Downloaded num-rational v0.2.4
[INFO] [stderr]   Downloaded num-integer v0.1.42
[INFO] [stderr]   Downloaded const-random-macro v0.1.8
[INFO] [stderr]   Downloaded unicode-segmentation v1.6.0
[INFO] [stderr]   Downloaded proc-macro-hack v0.5.15
[INFO] [stderr]   Downloaded const-random v0.1.8
[INFO] [stderr]   Downloaded time v0.1.43
[INFO] [stderr]   Downloaded chrono v0.4.11
[INFO] [stderr]   Downloaded crossbeam-channel v0.4.2
[INFO] [stderr]   Downloaded array-macro v1.0.5
[INFO] [stderr]   Downloaded enum-map v0.6.2
[INFO] [stderr]   Downloaded strsim v0.9.3
[INFO] [stderr]   Downloaded ahash v0.2.18
[INFO] [stderr]   Downloaded darling_core v0.10.2
[INFO] [stderr]   Downloaded proc-macro2 v1.0.13
[INFO] [stderr]   Downloaded unicode-xid v0.2.0
[INFO] [stderr]   Downloaded syn v1.0.22
[INFO] [stderr]   Downloaded log v0.4.8
[INFO] [stderr]   Downloaded autocfg v1.0.0
[INFO] [stderr]   Downloaded num-traits v0.2.11
[INFO] [stderr]   Downloaded owning_ref v0.4.1
[INFO] [stderr]   Downloaded arc-swap v0.4.6
[INFO] [stderr]   Downloaded signal-hook v0.1.15
[INFO] [stderr]   Downloaded xi-unicode v0.2.0
[INFO] [stderr]   Downloaded cursive v0.14.1
[INFO] [stderr]   Downloaded rand_chacha v0.2.2
[INFO] [stderr]   Downloaded libc v0.2.69
[INFO] [stderr]   Downloaded enum-map-derive v0.4.3
[INFO] [stderr]   Downloaded signal-hook-registry v1.2.0
[INFO] [stderr]   Downloaded stable_deref_trait v1.1.1
[INFO] [stderr]   Downloaded ncurses v5.99.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:819108c5571ea2e421544af4d832f968d213c87fbe3707a016657f43d2f853bc" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2025-01-18" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0e1636c266ff7af6dfcc87979a1d859527ba04972997791ec04b398172d47393
[INFO] running `Command { std: "docker" "start" "-a" "0e1636c266ff7af6dfcc87979a1d859527ba04972997791ec04b398172d47393", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0e1636c266ff7af6dfcc87979a1d859527ba04972997791ec04b398172d47393", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0e1636c266ff7af6dfcc87979a1d859527ba04972997791ec04b398172d47393", kill_on_drop: false }`
[INFO] [stdout] 0e1636c266ff7af6dfcc87979a1d859527ba04972997791ec04b398172d47393
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:819108c5571ea2e421544af4d832f968d213c87fbe3707a016657f43d2f853bc" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2025-01-18" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] df383bbfbe6339546ef9c3598d754d51f6a65c2535bcb5dba09bdd75b42b5f82
[INFO] running `Command { std: "docker" "start" "-a" "df383bbfbe6339546ef9c3598d754d51f6a65c2535bcb5dba09bdd75b42b5f82", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.0.0
[INFO] [stderr]    Compiling libc v0.2.69
[INFO] [stderr]    Compiling proc-macro2 v1.0.13
[INFO] [stderr]    Compiling unicode-xid v0.2.0
[INFO] [stderr]    Compiling syn v1.0.22
[INFO] [stderr]    Compiling getrandom v0.1.14
[INFO] [stderr]    Compiling strsim v0.9.3
[INFO] [stderr]    Compiling proc-macro-hack v0.5.15
[INFO] [stderr]    Compiling cc v1.0.53
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling pkg-config v0.3.17
[INFO] [stderr]    Compiling log v0.4.8
[INFO] [stderr]    Compiling arc-swap v0.4.6
[INFO] [stderr]    Compiling num-traits v0.2.11
[INFO] [stderr]    Compiling num-integer v0.1.42
[INFO] [stderr]    Compiling num-iter v0.1.40
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling num-rational v0.2.4
[INFO] [stderr]    Compiling quote v1.0.6
[INFO] [stderr]    Compiling num-complex v0.2.4
[INFO] [stderr]    Compiling const-random-macro v0.1.8
[INFO] [stderr]    Compiling ncurses v5.99.0
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling time v0.1.43
[INFO] [stderr]    Compiling const-random v0.1.8
[INFO] [stderr]    Compiling signal-hook-registry v1.2.0
[INFO] [stderr]    Compiling array-macro v1.0.5
[INFO] [stderr]    Compiling stable_deref_trait v1.1.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.6
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling chrono v0.4.11
[INFO] [stderr]    Compiling owning_ref v0.4.1
[INFO] [stderr]    Compiling signal-hook v0.1.15
[INFO] [stderr]    Compiling crossbeam-channel v0.4.2
[INFO] [stderr]    Compiling num v0.2.1
[INFO] [stderr]    Compiling ahash v0.2.18
[INFO] [stderr]    Compiling term_size v0.3.2
[INFO] [stderr]    Compiling maplit v1.0.2
[INFO] [stderr]    Compiling xi-unicode v0.2.0
[INFO] [stderr]    Compiling unicode-width v0.1.7
[INFO] [stderr]    Compiling unicode-segmentation v1.6.0
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling darling_core v0.10.2
[INFO] [stderr]    Compiling enum-map-derive v0.4.3
[INFO] [stderr]    Compiling enum-map v0.6.2
[INFO] [stderr]    Compiling darling_macro v0.10.2
[INFO] [stderr]    Compiling darling v0.10.2
[INFO] [stderr]    Compiling enumset_derive v0.4.4
[INFO] [stderr]    Compiling enumset v0.4.5
[INFO] [stderr]    Compiling cursive v0.14.1
[INFO] [stderr]    Compiling shopper v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: found module declaration for lib.rs
[INFO] [stdout]  --> src/main.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | mod lib;
[INFO] [stdout]   | ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: lib.rs is the root of this crate's library target
[INFO] [stdout]   = help: to refer to it from other targets, use the library's name as the path
[INFO] [stdout]   = note: `#[warn(special_module_name)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EventTrigger` and `MouseEvent`
[INFO] [stdout]  --> src/curses.rs:2:42
[INFO] [stdout]   |
[INFO] [stdout] 2 | use cursive::event::{Event, EventResult, EventTrigger, Key, MouseEvent};
[INFO] [stdout]   |                                          ^^^^^^^^^^^^       ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OnEventView`
[INFO] [stdout]  --> src/curses.rs:7:44
[INFO] [stdout]   |
[INFO] [stdout] 7 | use cursive::views::{Button, LinearLayout, OnEventView};
[INFO] [stdout]   |                                            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rng`
[INFO] [stdout]    --> src/shops.rs:220:13
[INFO] [stdout]     |
[INFO] [stdout] 220 |     let mut rng = rand::thread_rng();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_rng`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/shops.rs:220:9
[INFO] [stdout]     |
[INFO] [stdout] 220 |     let mut rng = rand::thread_rng();
[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: function `base_loop` is never used
[INFO] [stdout]   --> src/main.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn base_loop(shopper: &mut Shopper, mall: &mut Mall) {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `in_shop` is never used
[INFO] [stdout]   --> src/main.rs:65:4
[INFO] [stdout]    |
[INFO] [stdout] 65 | fn in_shop<'a>(
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_idx` is never used
[INFO] [stdout]    --> src/shops.rs:105:8
[INFO] [stdout]     |
[INFO] [stdout] 87  | impl ShopTypeDir {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 105 |     fn get_idx(&self, i: usize) -> Option<&ShopType> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `random_item` is never used
[INFO] [stdout]    --> src/shops.rs:185:4
[INFO] [stdout]     |
[INFO] [stdout] 185 | fn random_item(name: &str, in_money: &f32, in_capacity: &u32) -> Item {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]    --> src/shops.rs:219:8
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub fn main() {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Mall` is never constructed
[INFO] [stdout]  --> src/structs.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Mall {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_shops`, `get_mut_shop`, and `find_shop` are never used
[INFO] [stdout]   --> src/structs.rs:7:12
[INFO] [stdout]    |
[INFO] [stdout] 5  | impl Mall {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 6  |     // creates new mall
[INFO] [stdout] 7  |     pub fn new(shops: Vec<Shop>) -> Mall {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 11 |     pub fn get_shops(&self) -> &Vec<Shop> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub fn get_mut_shop(&mut self, index: usize) -> Option<&mut Shop> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn find_shop(&self, sh_name: &str) -> Option<(&Shop, usize)> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Shopper` is never constructed
[INFO] [stdout]   --> src/structs.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct Shopper {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/structs.rs:38:12
[INFO] [stdout]     |
[INFO] [stdout] 36  | impl Shopper {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 37  |     // create new shopper
[INFO] [stdout] 38  |     pub fn new(money: f32, capacity: u32) -> Shopper {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 46  |     pub fn get_money(&self) -> &f32 {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50  |     pub fn get_capacity(&self) -> &u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54  |     pub fn buy_basket(&mut self, basket: &mut Basket) -> Result<(), &str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77  |     pub fn update_inventory(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98  |     pub fn cal_remaining_capacity(&self) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn cal_taken_capacity(&self) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Shop` is never constructed
[INFO] [stdout]    --> src/structs.rs:111:12
[INFO] [stdout]     |
[INFO] [stdout] 111 | pub struct Shop {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Shop` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/structs.rs:118:12
[INFO] [stdout]     |
[INFO] [stdout] 117 | impl Shop {
[INFO] [stdout]     | --------- associated items in this implementation
[INFO] [stdout] 118 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub fn get_basket_capacity(&self) -> &u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub fn get_inventory(&self) -> &Vec<Item> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub fn take_item(
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     pub fn put_item_back(&mut self, item: &Item) -> Result<(), &str> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn put_amount_back(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 179 |     pub fn get_item(&self, item_name: &str) -> Option<&Item> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Item` is never constructed
[INFO] [stdout]    --> src/structs.rs:190:12
[INFO] [stdout]     |
[INFO] [stdout] 190 | pub struct Item {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Item` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_name`, `get_size`, `get_quantity`, `get_cost`, and `get_is_stolen` are never used
[INFO] [stdout]    --> src/structs.rs:199:12
[INFO] [stdout]     |
[INFO] [stdout] 198 | impl Item {
[INFO] [stdout]     | --------- associated items in this implementation
[INFO] [stdout] 199 |     pub fn new(name: String, cost: f32, size: u32, quantity: u32) -> Item {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 209 |     pub fn get_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 213 |     pub fn get_size(&self) -> &u32 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 217 |     pub fn get_quantity(&self) -> &u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 221 |     pub fn get_cost(&self) -> &f32 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     pub fn get_is_stolen(&self) -> &bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Basket` is never constructed
[INFO] [stdout]    --> src/structs.rs:230:12
[INFO] [stdout]     |
[INFO] [stdout] 230 | pub struct Basket {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_basket_capacity`, `add`, and `remove` are never used
[INFO] [stdout]    --> src/structs.rs:236:12
[INFO] [stdout]     |
[INFO] [stdout] 235 | impl Basket {
[INFO] [stdout]     | ----------- associated items in this implementation
[INFO] [stdout] 236 |     pub fn new(basket_capacity: u32) -> Basket {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn get_basket_capacity(&self) -> &u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 247 |     pub fn add(&mut self, item: Item) {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 |     pub fn remove(&mut self, item_index: usize) -> Result<Item, &str> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `as_boxed_view` is never used
[INFO] [stdout]  --> src/traits.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub trait IntoBoxedView {
[INFO] [stdout]   |           ------------- method in this trait
[INFO] [stdout] 6 |     /// Returns a `Box<View>`.
[INFO] [stdout] 7 |     fn as_boxed_view(self) -> Box<dyn ViewAndTest>;
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_three` is never used
[INFO] [stdout]   --> src/traits.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub trait Test: Any {
[INFO] [stdout]    |           ---- method in this trait
[INFO] [stdout] 26 |     fn get_three(self) -> usize;
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_generic_shop` is never used
[INFO] [stdout]  --> src/utils.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn create_generic_shop() -> Shop {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_generic_mall` is never used
[INFO] [stdout]   --> src/utils.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn create_generic_mall() -> Mall {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_item_in_inventory` is never used
[INFO] [stdout]   --> src/utils.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn find_item_in_inventory<'b>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_user_input` is never used
[INFO] [stdout]   --> src/utils.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn get_user_input(prompt: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_f32` is never used
[INFO] [stdout]   --> src/utils.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn parse_f32(prompt: &str) -> f32 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_u32` is never used
[INFO] [stdout]   --> src/utils.rs:66:8
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub fn parse_u32(prompt: &str) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `init_game` is never used
[INFO] [stdout]   --> src/utils.rs:81:8
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub fn init_game() -> (Shopper, Mall) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `return_basket` is never used
[INFO] [stdout]   --> src/utils.rs:91:8
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub fn return_basket(basket: &mut Basket, shop: &mut Shop) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_stolen` is never used
[INFO] [stdout]   --> src/utils.rs:98:8
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub fn print_stolen(shopper: &Shopper) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_stats` is never used
[INFO] [stdout]    --> src/utils.rs:124:8
[INFO] [stdout]     |
[INFO] [stdout] 124 | pub fn print_stats(shopper: &Shopper) {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/curses.rs:210:13
[INFO] [stdout]     |
[INFO] [stdout] 210 |             mem::replace(&mut texts[ll - 4], format!(" |{:7}| ", label));
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 210 |             let _ = mem::replace(&mut texts[ll - 4], format!(" |{:7}| ", label));
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 22.67s
[INFO] running `Command { std: "docker" "inspect" "df383bbfbe6339546ef9c3598d754d51f6a65c2535bcb5dba09bdd75b42b5f82", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "df383bbfbe6339546ef9c3598d754d51f6a65c2535bcb5dba09bdd75b42b5f82", kill_on_drop: false }`
[INFO] [stdout] df383bbfbe6339546ef9c3598d754d51f6a65c2535bcb5dba09bdd75b42b5f82
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:819108c5571ea2e421544af4d832f968d213c87fbe3707a016657f43d2f853bc" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2025-01-18" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ff51c0307fabc1eccc380976f81aec4700c901b47ecb4507f2a23fb56270b7c0
[INFO] running `Command { std: "docker" "start" "-a" "ff51c0307fabc1eccc380976f81aec4700c901b47ecb4507f2a23fb56270b7c0", kill_on_drop: false }`
[INFO] [stderr]    Compiling shopper v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: found module declaration for lib.rs
[INFO] [stdout]  --> src/main.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | mod lib;
[INFO] [stdout]   | ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: lib.rs is the root of this crate's library target
[INFO] [stdout]   = help: to refer to it from other targets, use the library's name as the path
[INFO] [stdout]   = note: `#[warn(special_module_name)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EventTrigger` and `MouseEvent`
[INFO] [stdout]  --> src/curses.rs:2:42
[INFO] [stdout]   |
[INFO] [stdout] 2 | use cursive::event::{Event, EventResult, EventTrigger, Key, MouseEvent};
[INFO] [stdout]   |                                          ^^^^^^^^^^^^       ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OnEventView`
[INFO] [stdout]  --> src/curses.rs:7:44
[INFO] [stdout]   |
[INFO] [stdout] 7 | use cursive::views::{Button, LinearLayout, OnEventView};
[INFO] [stdout]   |                                            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rng`
[INFO] [stdout]    --> src/shops.rs:220:13
[INFO] [stdout]     |
[INFO] [stdout] 220 |     let mut rng = rand::thread_rng();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_rng`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/shops.rs:220:9
[INFO] [stdout]     |
[INFO] [stdout] 220 |     let mut rng = rand::thread_rng();
[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: function `base_loop` is never used
[INFO] [stdout]   --> src/main.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn base_loop(shopper: &mut Shopper, mall: &mut Mall) {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `in_shop` is never used
[INFO] [stdout]   --> src/main.rs:65:4
[INFO] [stdout]    |
[INFO] [stdout] 65 | fn in_shop<'a>(
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_idx` is never used
[INFO] [stdout]    --> src/shops.rs:105:8
[INFO] [stdout]     |
[INFO] [stdout] 87  | impl ShopTypeDir {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 105 |     fn get_idx(&self, i: usize) -> Option<&ShopType> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `random_item` is never used
[INFO] [stdout]    --> src/shops.rs:185:4
[INFO] [stdout]     |
[INFO] [stdout] 185 | fn random_item(name: &str, in_money: &f32, in_capacity: &u32) -> Item {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]    --> src/shops.rs:219:8
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub fn main() {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Mall` is never constructed
[INFO] [stdout]  --> src/structs.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Mall {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_shops`, `get_mut_shop`, and `find_shop` are never used
[INFO] [stdout]   --> src/structs.rs:7:12
[INFO] [stdout]    |
[INFO] [stdout] 5  | impl Mall {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 6  |     // creates new mall
[INFO] [stdout] 7  |     pub fn new(shops: Vec<Shop>) -> Mall {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 11 |     pub fn get_shops(&self) -> &Vec<Shop> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub fn get_mut_shop(&mut self, index: usize) -> Option<&mut Shop> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn find_shop(&self, sh_name: &str) -> Option<(&Shop, usize)> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Shopper` is never constructed
[INFO] [stdout]   --> src/structs.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct Shopper {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/structs.rs:38:12
[INFO] [stdout]     |
[INFO] [stdout] 36  | impl Shopper {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 37  |     // create new shopper
[INFO] [stdout] 38  |     pub fn new(money: f32, capacity: u32) -> Shopper {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 46  |     pub fn get_money(&self) -> &f32 {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50  |     pub fn get_capacity(&self) -> &u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54  |     pub fn buy_basket(&mut self, basket: &mut Basket) -> Result<(), &str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77  |     pub fn update_inventory(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98  |     pub fn cal_remaining_capacity(&self) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn cal_taken_capacity(&self) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Shop` is never constructed
[INFO] [stdout]    --> src/structs.rs:111:12
[INFO] [stdout]     |
[INFO] [stdout] 111 | pub struct Shop {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Shop` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/structs.rs:118:12
[INFO] [stdout]     |
[INFO] [stdout] 117 | impl Shop {
[INFO] [stdout]     | --------- associated items in this implementation
[INFO] [stdout] 118 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub fn get_basket_capacity(&self) -> &u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub fn get_inventory(&self) -> &Vec<Item> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub fn take_item(
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     pub fn put_item_back(&mut self, item: &Item) -> Result<(), &str> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn put_amount_back(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 179 |     pub fn get_item(&self, item_name: &str) -> Option<&Item> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Item` is never constructed
[INFO] [stdout]    --> src/structs.rs:190:12
[INFO] [stdout]     |
[INFO] [stdout] 190 | pub struct Item {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Item` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_name`, `get_size`, `get_quantity`, `get_cost`, and `get_is_stolen` are never used
[INFO] [stdout]    --> src/structs.rs:199:12
[INFO] [stdout]     |
[INFO] [stdout] 198 | impl Item {
[INFO] [stdout]     | --------- associated items in this implementation
[INFO] [stdout] 199 |     pub fn new(name: String, cost: f32, size: u32, quantity: u32) -> Item {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 209 |     pub fn get_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 213 |     pub fn get_size(&self) -> &u32 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 217 |     pub fn get_quantity(&self) -> &u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 221 |     pub fn get_cost(&self) -> &f32 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     pub fn get_is_stolen(&self) -> &bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Basket` is never constructed
[INFO] [stdout]    --> src/structs.rs:230:12
[INFO] [stdout]     |
[INFO] [stdout] 230 | pub struct Basket {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_basket_capacity`, `add`, and `remove` are never used
[INFO] [stdout]    --> src/structs.rs:236:12
[INFO] [stdout]     |
[INFO] [stdout] 235 | impl Basket {
[INFO] [stdout]     | ----------- associated items in this implementation
[INFO] [stdout] 236 |     pub fn new(basket_capacity: u32) -> Basket {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn get_basket_capacity(&self) -> &u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 247 |     pub fn add(&mut self, item: Item) {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 |     pub fn remove(&mut self, item_index: usize) -> Result<Item, &str> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `as_boxed_view` is never used
[INFO] [stdout]  --> src/traits.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub trait IntoBoxedView {
[INFO] [stdout]   |           ------------- method in this trait
[INFO] [stdout] 6 |     /// Returns a `Box<View>`.
[INFO] [stdout] 7 |     fn as_boxed_view(self) -> Box<dyn ViewAndTest>;
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_three` is never used
[INFO] [stdout]   --> src/traits.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub trait Test: Any {
[INFO] [stdout]    |           ---- method in this trait
[INFO] [stdout] 26 |     fn get_three(self) -> usize;
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_generic_shop` is never used
[INFO] [stdout]  --> src/utils.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn create_generic_shop() -> Shop {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_generic_mall` is never used
[INFO] [stdout]   --> src/utils.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn create_generic_mall() -> Mall {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_item_in_inventory` is never used
[INFO] [stdout]   --> src/utils.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn find_item_in_inventory<'b>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_user_input` is never used
[INFO] [stdout]   --> src/utils.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn get_user_input(prompt: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_f32` is never used
[INFO] [stdout]   --> src/utils.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn parse_f32(prompt: &str) -> f32 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_u32` is never used
[INFO] [stdout]   --> src/utils.rs:66:8
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub fn parse_u32(prompt: &str) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `init_game` is never used
[INFO] [stdout]   --> src/utils.rs:81:8
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub fn init_game() -> (Shopper, Mall) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `return_basket` is never used
[INFO] [stdout]   --> src/utils.rs:91:8
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub fn return_basket(basket: &mut Basket, shop: &mut Shop) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_stolen` is never used
[INFO] [stdout]   --> src/utils.rs:98:8
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub fn print_stolen(shopper: &Shopper) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_stats` is never used
[INFO] [stdout]    --> src/utils.rs:124:8
[INFO] [stdout]     |
[INFO] [stdout] 124 | pub fn print_stats(shopper: &Shopper) {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/curses.rs:210:13
[INFO] [stdout]     |
[INFO] [stdout] 210 |             mem::replace(&mut texts[ll - 4], format!(" |{:7}| ", label));
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 210 |             let _ = mem::replace(&mut texts[ll - 4], format!(" |{:7}| ", label));
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.76s
[INFO] running `Command { std: "docker" "inspect" "ff51c0307fabc1eccc380976f81aec4700c901b47ecb4507f2a23fb56270b7c0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ff51c0307fabc1eccc380976f81aec4700c901b47ecb4507f2a23fb56270b7c0", kill_on_drop: false }`
[INFO] [stdout] ff51c0307fabc1eccc380976f81aec4700c901b47ecb4507f2a23fb56270b7c0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:819108c5571ea2e421544af4d832f968d213c87fbe3707a016657f43d2f853bc" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2025-01-18" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] e6a40f7a53bdf48981b4a66b7ddc64564332d5ba97111a560ce88e025ca65bd4
[INFO] running `Command { std: "docker" "start" "-a" "e6a40f7a53bdf48981b4a66b7ddc64564332d5ba97111a560ce88e025ca65bd4", kill_on_drop: false }`
[INFO] [stderr] warning: found module declaration for lib.rs
[INFO] [stderr]  --> src/main.rs:5:1
[INFO] [stderr]   |
[INFO] [stderr] 5 | mod lib;
[INFO] [stderr]   | ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: lib.rs is the root of this crate's library target
[INFO] [stderr]   = help: to refer to it from other targets, use the library's name as the path
[INFO] [stderr]   = note: `#[warn(special_module_name)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `EventTrigger` and `MouseEvent`
[INFO] [stderr]  --> src/curses.rs:2:42
[INFO] [stderr]   |
[INFO] [stderr] 2 | use cursive::event::{Event, EventResult, EventTrigger, Key, MouseEvent};
[INFO] [stderr]   |                                          ^^^^^^^^^^^^       ^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `OnEventView`
[INFO] [stderr]  --> src/curses.rs:7:44
[INFO] [stderr]   |
[INFO] [stderr] 7 | use cursive::views::{Button, LinearLayout, OnEventView};
[INFO] [stderr]   |                                            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `rng`
[INFO] [stderr]    --> src/shops.rs:220:13
[INFO] [stderr]     |
[INFO] [stderr] 220 |     let mut rng = rand::thread_rng();
[INFO] [stderr]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_rng`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/shops.rs:220:9
[INFO] [stderr]     |
[INFO] [stderr] 220 |     let mut rng = rand::thread_rng();
[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: function `base_loop` is never used
[INFO] [stderr]   --> src/main.rs:17:4
[INFO] [stderr]    |
[INFO] [stderr] 17 | fn base_loop(shopper: &mut Shopper, mall: &mut Mall) {
[INFO] [stderr]    |    ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `in_shop` is never used
[INFO] [stderr]   --> src/main.rs:65:4
[INFO] [stderr]    |
[INFO] [stderr] 65 | fn in_shop<'a>(
[INFO] [stderr]    |    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `get_idx` is never used
[INFO] [stderr]    --> src/shops.rs:105:8
[INFO] [stderr]     |
[INFO] [stderr] 87  | impl ShopTypeDir {
[INFO] [stderr]     | ---------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 105 |     fn get_idx(&self, i: usize) -> Option<&ShopType> {
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `random_item` is never used
[INFO] [stderr]    --> src/shops.rs:185:4
[INFO] [stderr]     |
[INFO] [stderr] 185 | fn random_item(name: &str, in_money: &f32, in_capacity: &u32) -> Item {
[INFO] [stderr]     |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `main` is never used
[INFO] [stderr]    --> src/shops.rs:219:8
[INFO] [stderr]     |
[INFO] [stderr] 219 | pub fn main() {
[INFO] [stderr]     |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Mall` is never constructed
[INFO] [stderr]  --> src/structs.rs:1:12
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub struct Mall {
[INFO] [stderr]   |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `get_shops`, `get_mut_shop`, and `find_shop` are never used
[INFO] [stderr]   --> src/structs.rs:7:12
[INFO] [stderr]    |
[INFO] [stderr] 5  | impl Mall {
[INFO] [stderr]    | --------- associated items in this implementation
[INFO] [stderr] 6  |     // creates new mall
[INFO] [stderr] 7  |     pub fn new(shops: Vec<Shop>) -> Mall {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 11 |     pub fn get_shops(&self) -> &Vec<Shop> {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 16 |     pub fn get_mut_shop(&mut self, index: usize) -> Option<&mut Shop> {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 20 |     pub fn find_shop(&self, sh_name: &str) -> Option<(&Shop, usize)> {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Shopper` is never constructed
[INFO] [stderr]   --> src/structs.rs:30:12
[INFO] [stderr]    |
[INFO] [stderr] 30 | pub struct Shopper {
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/structs.rs:38:12
[INFO] [stderr]     |
[INFO] [stderr] 36  | impl Shopper {
[INFO] [stderr]     | ------------ associated items in this implementation
[INFO] [stderr] 37  |     // create new shopper
[INFO] [stderr] 38  |     pub fn new(money: f32, capacity: u32) -> Shopper {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 46  |     pub fn get_money(&self) -> &f32 {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 50  |     pub fn get_capacity(&self) -> &u32 {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 54  |     pub fn buy_basket(&mut self, basket: &mut Basket) -> Result<(), &str> {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 77  |     pub fn update_inventory(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 98  |     pub fn cal_remaining_capacity(&self) -> u32 {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 102 |     pub fn cal_taken_capacity(&self) -> u32 {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Shop` is never constructed
[INFO] [stderr]    --> src/structs.rs:111:12
[INFO] [stderr]     |
[INFO] [stderr] 111 | pub struct Shop {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `Shop` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/structs.rs:118:12
[INFO] [stderr]     |
[INFO] [stderr] 117 | impl Shop {
[INFO] [stderr]     | --------- associated items in this implementation
[INFO] [stderr] 118 |     pub fn new(
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 130 |     pub fn get_basket_capacity(&self) -> &u32 {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 134 |     pub fn get_inventory(&self) -> &Vec<Item> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 138 |     pub fn take_item(
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 161 |     pub fn put_item_back(&mut self, item: &Item) -> Result<(), &str> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 166 |     pub fn put_amount_back(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 179 |     pub fn get_item(&self, item_name: &str) -> Option<&Item> {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Item` is never constructed
[INFO] [stderr]    --> src/structs.rs:190:12
[INFO] [stderr]     |
[INFO] [stderr] 190 | pub struct Item {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `Item` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `get_name`, `get_size`, `get_quantity`, `get_cost`, and `get_is_stolen` are never used
[INFO] [stderr]    --> src/structs.rs:199:12
[INFO] [stderr]     |
[INFO] [stderr] 198 | impl Item {
[INFO] [stderr]     | --------- associated items in this implementation
[INFO] [stderr] 199 |     pub fn new(name: String, cost: f32, size: u32, quantity: u32) -> Item {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 209 |     pub fn get_name(&self) -> &str {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 213 |     pub fn get_size(&self) -> &u32 {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 217 |     pub fn get_quantity(&self) -> &u32 {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 221 |     pub fn get_cost(&self) -> &f32 {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 225 |     pub fn get_is_stolen(&self) -> &bool {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Basket` is never constructed
[INFO] [stderr]    --> src/structs.rs:230:12
[INFO] [stderr]     |
[INFO] [stderr] 230 | pub struct Basket {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `get_basket_capacity`, `add`, and `remove` are never used
[INFO] [stderr]    --> src/structs.rs:236:12
[INFO] [stderr]     |
[INFO] [stderr] 235 | impl Basket {
[INFO] [stderr]     | ----------- associated items in this implementation
[INFO] [stderr] 236 |     pub fn new(basket_capacity: u32) -> Basket {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 243 |     pub fn get_basket_capacity(&self) -> &u32 {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 247 |     pub fn add(&mut self, item: Item) {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 251 |     pub fn remove(&mut self, item_index: usize) -> Result<Item, &str> {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `as_boxed_view` is never used
[INFO] [stderr]  --> src/traits.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub trait IntoBoxedView {
[INFO] [stderr]   |           ------------- method in this trait
[INFO] [stderr] 6 |     /// Returns a `Box<View>`.
[INFO] [stderr] 7 |     fn as_boxed_view(self) -> Box<dyn ViewAndTest>;
[INFO] [stderr]   |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `get_three` is never used
[INFO] [stderr]   --> src/traits.rs:26:8
[INFO] [stderr]    |
[INFO] [stderr] 25 | pub trait Test: Any {
[INFO] [stderr]    |           ---- method in this trait
[INFO] [stderr] 26 |     fn get_three(self) -> usize;
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `create_generic_shop` is never used
[INFO] [stderr]  --> src/utils.rs:4:8
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub fn create_generic_shop() -> Shop {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `create_generic_mall` is never used
[INFO] [stderr]   --> src/utils.rs:15:8
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub fn create_generic_mall() -> Mall {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `find_item_in_inventory` is never used
[INFO] [stderr]   --> src/utils.rs:22:8
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub fn find_item_in_inventory<'b>(
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_user_input` is never used
[INFO] [stderr]   --> src/utils.rs:39:8
[INFO] [stderr]    |
[INFO] [stderr] 39 | pub fn get_user_input(prompt: &str) -> String {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_f32` is never used
[INFO] [stderr]   --> src/utils.rs:51:8
[INFO] [stderr]    |
[INFO] [stderr] 51 | pub fn parse_f32(prompt: &str) -> f32 {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_u32` is never used
[INFO] [stderr]   --> src/utils.rs:66:8
[INFO] [stderr]    |
[INFO] [stderr] 66 | pub fn parse_u32(prompt: &str) -> u32 {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `init_game` is never used
[INFO] [stderr]   --> src/utils.rs:81:8
[INFO] [stderr]    |
[INFO] [stderr] 81 | pub fn init_game() -> (Shopper, Mall) {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `return_basket` is never used
[INFO] [stderr]   --> src/utils.rs:91:8
[INFO] [stderr]    |
[INFO] [stderr] 91 | pub fn return_basket(basket: &mut Basket, shop: &mut Shop) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `print_stolen` is never used
[INFO] [stderr]   --> src/utils.rs:98:8
[INFO] [stderr]    |
[INFO] [stderr] 98 | pub fn print_stolen(shopper: &Shopper) {
[INFO] [stderr]    |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `print_stats` is never used
[INFO] [stderr]    --> src/utils.rs:124:8
[INFO] [stderr]     |
[INFO] [stderr] 124 | pub fn print_stats(shopper: &Shopper) {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stderr]    --> src/curses.rs:210:13
[INFO] [stderr]     |
[INFO] [stderr] 210 |             mem::replace(&mut texts[ll - 4], format!(" |{:7}| ", label));
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 210 |             let _ = mem::replace(&mut texts[ll - 4], format!(" |{:7}| ", label));
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `shopper` (bin "shopper" test) generated 33 warnings (run `cargo fix --bin "shopper" --tests` to apply 3 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.08s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/shopper-c4fab38eec9f85c5)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/shopper-3052a86c048395a7)
[INFO] [stderr]    Doc-tests shopper
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "e6a40f7a53bdf48981b4a66b7ddc64564332d5ba97111a560ce88e025ca65bd4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e6a40f7a53bdf48981b4a66b7ddc64564332d5ba97111a560ce88e025ca65bd4", kill_on_drop: false }`
[INFO] [stdout] e6a40f7a53bdf48981b4a66b7ddc64564332d5ba97111a560ce88e025ca65bd4
