[INFO] cloning repository https://github.com/gd0st/kadeu [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/gd0st/kadeu" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgd0st%2Fkadeu", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgd0st%2Fkadeu'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 6214e3439eb668e143a29c3397abf9fb6e827825 [INFO] testing gd0st/kadeu/6214e3439eb668e143a29c3397abf9fb6e827825 against 1.85.0 for beta-1.86-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgd0st%2Fkadeu" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/gd0st/kadeu on toolchain 1.85.0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.85.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/gd0st/kadeu [INFO] finished tweaking git repo https://github.com/gd0st/kadeu [INFO] tweaked toml for git repo https://github.com/gd0st/kadeu written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/gd0st/kadeu 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.85.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded clio v0.3.4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+1.85.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 12c5c3f7395d0144d772cdae578f5b0a788237a421857886b5bb9ad874eb9cac [INFO] running `Command { std: "docker" "start" "-a" "12c5c3f7395d0144d772cdae578f5b0a788237a421857886b5bb9ad874eb9cac", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "12c5c3f7395d0144d772cdae578f5b0a788237a421857886b5bb9ad874eb9cac", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "12c5c3f7395d0144d772cdae578f5b0a788237a421857886b5bb9ad874eb9cac", kill_on_drop: false }` [INFO] [stdout] 12c5c3f7395d0144d772cdae578f5b0a788237a421857886b5bb9ad874eb9cac [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=warn" "-e" "RUSTDOCFLAGS=--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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+1.85.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ecb1df19e3fac6adc493a6fea8998a9a9109ba461b3a27ea0bbe548efdbc68f5 [INFO] running `Command { std: "docker" "start" "-a" "ecb1df19e3fac6adc493a6fea8998a9a9109ba461b3a27ea0bbe548efdbc68f5", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.155 [INFO] [stderr] Compiling unicode-ident v1.0.12 [INFO] [stderr] Compiling serde v1.0.203 [INFO] [stderr] Compiling rustix v0.38.34 [INFO] [stderr] Compiling bitflags v2.4.1 [INFO] [stderr] Compiling autocfg v1.3.0 [INFO] [stderr] Compiling rustversion v1.0.17 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling proc-macro2 v1.0.86 [INFO] [stderr] Compiling signal-hook v0.3.17 [INFO] [stderr] Compiling log v0.4.21 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Compiling linux-raw-sys v0.4.14 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Compiling scopeguard v1.2.0 [INFO] [stderr] Compiling utf8parse v0.2.1 [INFO] [stderr] Compiling ryu v1.0.15 [INFO] [stderr] Compiling zerocopy v0.7.34 [INFO] [stderr] Compiling quote v1.0.36 [INFO] [stderr] Compiling hashbrown v0.15.0 [INFO] [stderr] Compiling syn v2.0.68 [INFO] [stderr] Compiling either v1.12.0 [INFO] [stderr] Compiling itoa v1.0.9 [INFO] [stderr] Compiling anstyle-parse v0.2.2 [INFO] [stderr] Compiling colorchoice v1.0.0 [INFO] [stderr] Compiling allocator-api2 v0.2.18 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Compiling anstyle-query v1.0.0 [INFO] [stderr] Compiling anstyle v1.0.4 [INFO] [stderr] Compiling castaway v0.2.3 [INFO] [stderr] Compiling itertools v0.12.1 [INFO] [stderr] Compiling signal-hook-registry v1.4.2 [INFO] [stderr] Compiling mio v0.8.11 [INFO] [stderr] Compiling mio v1.0.2 [INFO] [stderr] Compiling parking_lot v0.12.3 [INFO] [stderr] Compiling indexmap v2.6.0 [INFO] [stderr] Compiling signal-hook-mio v0.2.4 [INFO] [stderr] Compiling getrandom v0.2.11 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling anstream v0.6.4 [INFO] [stderr] Compiling ppv-lite86 v0.2.17 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling strsim v0.10.0 [INFO] [stderr] Compiling static_assertions v1.1.0 [INFO] [stderr] Compiling winnow v0.6.20 [INFO] [stderr] Compiling clap_lex v0.6.0 [INFO] [stderr] Compiling serde_json v1.0.108 [INFO] [stderr] Compiling heck v0.4.1 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Compiling fastrand v2.0.1 [INFO] [stderr] Compiling unicode-width v0.1.13 [INFO] [stderr] Compiling unicode-truncate v1.0.0 [INFO] [stderr] Compiling clap_builder v4.4.8 [INFO] [stderr] Compiling walkdir v2.4.0 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling lru v0.12.3 [INFO] [stderr] Compiling compact_str v0.8.0 [INFO] [stderr] Compiling itertools v0.13.0 [INFO] [stderr] Compiling tempfile v3.8.1 [INFO] [stderr] Compiling crossterm v0.28.1 [INFO] [stderr] Compiling is-terminal v0.4.9 [INFO] [stderr] Compiling unsafe-libyaml v0.2.11 [INFO] [stderr] Compiling unicode-segmentation v1.11.0 [INFO] [stderr] Compiling cassowary v0.3.0 [INFO] [stderr] Compiling clio v0.3.4 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling crossterm v0.27.0 [INFO] [stderr] Compiling serde_derive v1.0.203 [INFO] [stderr] Compiling strum_macros v0.26.4 [INFO] [stderr] Compiling clap_derive v4.4.7 [INFO] [stderr] Compiling instability v0.3.2 [INFO] [stderr] Compiling strum v0.26.2 [INFO] [stderr] Compiling ratatui v0.28.0 [INFO] [stderr] Compiling clap v4.4.8 [INFO] [stderr] Compiling toml_datetime v0.6.8 [INFO] [stderr] Compiling serde_spanned v0.6.8 [INFO] [stderr] Compiling serde_yaml v0.9.34+deprecated [INFO] [stderr] Compiling toml_edit v0.22.22 [INFO] [stderr] Compiling toml v0.8.19 [INFO] [stderr] Compiling kadeu v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `collections::VecDeque` [INFO] [stdout] --> src/app.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{collections::VecDeque, fmt::Display}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ffi::OsStr` [INFO] [stdout] --> src/cli.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::ffi::OsStr; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `default` [INFO] [stdout] --> src/cli.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{default, env, fs::OpenOptions, io::Read, path::PathBuf}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Arg` [INFO] [stdout] --> src/cli.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 5 | use clap::{self, Arg, Parser}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ui::KadeuApp` [INFO] [stdout] --> src/cli.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::ui::KadeuApp; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::fmt` [INFO] [stdout] --> src/io.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use core::fmt; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Deserialize` [INFO] [stdout] --> src/io.rs:2:35 [INFO] [stdout] | [INFO] [stdout] 2 | use serde::{de::DeserializeOwned, Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `File`, `OsStr`, and `Path` [INFO] [stdout] --> src/io.rs:5:17 [INFO] [stdout] | [INFO] [stdout] 5 | ffi::{self, OsStr}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 6 | fs::{self, File, OpenOptions}, [INFO] [stdout] | ^^^^ [INFO] [stdout] 7 | path::{Path, PathBuf}, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `app::Deck` and `cli::Config` [INFO] [stdout] --> src/io.rs:10:13 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::{app::Deck, cli::Config}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Card` [INFO] [stdout] --> src/ui/deck_browser.rs:1:18 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::app::{Card, Deck}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `default` [INFO] [stdout] --> src/ui/inputs.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{collections::HashMap, default}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `KeyEventKind` and `KeyEvent` [INFO] [stdout] --> src/ui/inputs.rs:3:46 [INFO] [stdout] | [INFO] [stdout] 3 | use crossterm::event::{self, Event, KeyCode, KeyEvent, KeyEventKind}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::Debugger` [INFO] [stdout] --> src/ui/inputs.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use super::Debugger; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ListItem` [INFO] [stdout] --> src/ui/style.rs:6:28 [INFO] [stdout] | [INFO] [stdout] 6 | widgets::{Block, List, ListItem}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::PathBuf` [INFO] [stdout] --> src/ui/mod.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::path::PathBuf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `deck_browser::DeckBrowser` [INFO] [stdout] --> src/ui/mod.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use deck_browser::DeckBrowser; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Block` [INFO] [stdout] --> src/ui/mod.rs:13:15 [INFO] [stdout] | [INFO] [stdout] 13 | widgets::{Block, Paragraph, Widget, WidgetRef}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `strat` should have an upper camel case name [INFO] [stdout] --> src/lib.rs:62:10 [INFO] [stdout] | [INFO] [stdout] 62 | type strat = fn(&[T]) -> T; [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Strat` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `items` [INFO] [stdout] --> src/game/engine.rs:28:28 [INFO] [stdout] | [INFO] [stdout] 28 | fn sequence(&self, items: &mut VecDeque) -> impl Iterator { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_items` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/io.rs:103:5 [INFO] [stdout] | [INFO] [stdout] 102 | todo!("List the files here"); [INFO] [stdout] | ---------------------------- any code following this expression is unreachable [INFO] [stdout] 103 | vec![] [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] = note: this warning originates in the macro `vec` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Widget` [INFO] [stdout] --> src/ui/mod.rs:13:33 [INFO] [stdout] | [INFO] [stdout] 13 | widgets::{Block, Paragraph, Widget, WidgetRef}, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rng` [INFO] [stdout] --> src/game/engine.rs:24:21 [INFO] [stdout] | [INFO] [stdout] 24 | let mut rng = thread_rng(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_rng` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `items` [INFO] [stdout] --> src/game/engine.rs:23:17 [INFO] [stdout] | [INFO] [stdout] 23 | fn next(items: &mut VecDeque) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_items` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/game/engine.rs:24:17 [INFO] [stdout] | [INFO] [stdout] 24 | let mut rng = 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: unused variable: `path` [INFO] [stdout] --> src/io.rs:101:22 [INFO] [stdout] | [INFO] [stdout] 101 | pub fn list_files(path: &PathBuf) -> Vec { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Serialization` is never used [INFO] [stdout] --> src/app.rs:12:14 [INFO] [stdout] | [INFO] [stdout] 12 | pub enum Serialization { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `write`, `write_json`, and `write_yaml` are never used [INFO] [stdout] --> src/app.rs:17:16 [INFO] [stdout] | [INFO] [stdout] 16 | impl Serialization { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 17 | pub fn write( [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | fn write_json(deck: &Deck, writer: impl Write) -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | fn write_yaml(deck: &Deck, writer: impl Write) -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `NoHome` is never constructed [INFO] [stdout] --> src/cli.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | enum Error<'a> { [INFO] [stdout] | ----- variant in this enum [INFO] [stdout] 23 | NoHome, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Error` 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: field `item` is never read [INFO] [stdout] --> src/game/mod.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 42 | pub struct Progress { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 43 | item: T, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `score` is never used [INFO] [stdout] --> src/game/mod.rs:52:8 [INFO] [stdout] | [INFO] [stdout] 47 | impl Progress { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 52 | fn score(&self) -> Option<&Score> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `next` and `sequence` are never used [INFO] [stdout] --> src/game/engine.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub trait Strat { [INFO] [stdout] | ----- associated items in this trait [INFO] [stdout] 12 | fn next(items: &mut VecDeque) -> Option; [INFO] [stdout] | ^^^^ [INFO] [stdout] 13 | fn sequence(&self, items: &mut VecDeque) -> impl Iterator; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `seed` is never read [INFO] [stdout] --> src/game/engine.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Random { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 19 | seed: usize, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Strategy` is never used [INFO] [stdout] --> src/game/engine.rs:33:14 [INFO] [stdout] | [INFO] [stdout] 33 | pub enum Strategy { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `random` is never used [INFO] [stdout] --> src/game/engine.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 41 | pub fn random(items: &mut VecDeque) -> Option { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `filename` is never used [INFO] [stdout] --> src/io.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 18 | impl ImportEntry { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] 19 | fn filename(&self) -> Option<&ffi::OsStr> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `imports` is never read [INFO] [stdout] --> src/io.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 37 | pub struct Directories { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 38 | imports: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `front` and `back` are never read [INFO] [stdout] --> src/ui/mod.rs:147:5 [INFO] [stdout] | [INFO] [stdout] 145 | pub struct CardSide { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 146 | deck_title: Option, [INFO] [stdout] 147 | front: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 148 | back: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CardSide` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `index` is never read [INFO] [stdout] --> src/ui/deck_browser.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct DeckBrowser { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 25 | index: usize, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Foobar` is never constructed [INFO] [stdout] --> src/ui/inputs.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 65 | struct Foobar; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `EventListener` is never used [INFO] [stdout] --> src/ui/inputs.rs:68:11 [INFO] [stdout] | [INFO] [stdout] 68 | trait EventListener { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `strat` is never used [INFO] [stdout] --> src/lib.rs:62:10 [INFO] [stdout] | [INFO] [stdout] 62 | type strat = fn(&[T]) -> T; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced [INFO] [stdout] --> src/lib.rs:62:19 [INFO] [stdout] | [INFO] [stdout] 62 | type strat = fn(&[T]) -> T; [INFO] [stdout] | --^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | will not be checked at usage sites of the type alias [INFO] [stdout] | help: remove this bound [INFO] [stdout] | [INFO] [stdout] = note: this is a known limitation of the type checker that may be lifted in a future edition. [INFO] [stdout] see issue #112792 for more information [INFO] [stdout] = note: `#[warn(type_alias_bounds)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Apps` is never used [INFO] [stdout] --> src/main.rs:19:6 [INFO] [stdout] | [INFO] [stdout] 19 | enum Apps { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `crossterm_terminal` is never used [INFO] [stdout] --> src/main.rs:24:4 [INFO] [stdout] | [INFO] [stdout] 24 | fn crossterm_terminal() -> std::io::Result>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 10s [INFO] running `Command { std: "docker" "inspect" "ecb1df19e3fac6adc493a6fea8998a9a9109ba461b3a27ea0bbe548efdbc68f5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ecb1df19e3fac6adc493a6fea8998a9a9109ba461b3a27ea0bbe548efdbc68f5", kill_on_drop: false }` [INFO] [stdout] ecb1df19e3fac6adc493a6fea8998a9a9109ba461b3a27ea0bbe548efdbc68f5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=warn" "-e" "RUSTDOCFLAGS=--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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+1.85.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 8f9f39d282e94a6522737d4b7dd61d8173e5494d93d3eb6691e54e6a85937e10 [INFO] running `Command { std: "docker" "start" "-a" "8f9f39d282e94a6522737d4b7dd61d8173e5494d93d3eb6691e54e6a85937e10", kill_on_drop: false }` [INFO] [stdout] warning: unused import: `collections::VecDeque` [INFO] [stdout] --> src/app.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{collections::VecDeque, fmt::Display}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ffi::OsStr` [INFO] [stdout] --> src/cli.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::ffi::OsStr; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `default` [INFO] [stdout] --> src/cli.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{default, env, fs::OpenOptions, io::Read, path::PathBuf}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Arg` [INFO] [stdout] --> src/cli.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 5 | use clap::{self, Arg, Parser}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ui::KadeuApp` [INFO] [stdout] --> src/cli.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::ui::KadeuApp; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::fmt` [INFO] [stdout] --> src/io.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use core::fmt; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Deserialize` [INFO] [stdout] --> src/io.rs:2:35 [INFO] [stdout] | [INFO] [stdout] 2 | use serde::{de::DeserializeOwned, Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `File`, `OsStr`, and `Path` [INFO] [stdout] --> src/io.rs:5:17 [INFO] [stdout] | [INFO] [stdout] 5 | ffi::{self, OsStr}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 6 | fs::{self, File, OpenOptions}, [INFO] [stdout] | ^^^^ [INFO] [stdout] 7 | path::{Path, PathBuf}, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `app::Deck` and `cli::Config` [INFO] [stdout] --> src/io.rs:10:13 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::{app::Deck, cli::Config}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Card` [INFO] [stdout] --> src/ui/deck_browser.rs:1:18 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::app::{Card, Deck}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `default` [INFO] [stdout] --> src/ui/inputs.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{collections::HashMap, default}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `KeyEventKind` and `KeyEvent` [INFO] [stdout] --> src/ui/inputs.rs:3:46 [INFO] [stdout] | [INFO] [stdout] 3 | use crossterm::event::{self, Event, KeyCode, KeyEvent, KeyEventKind}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::Debugger` [INFO] [stdout] --> src/ui/inputs.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use super::Debugger; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ListItem` [INFO] [stdout] --> src/ui/style.rs:6:28 [INFO] [stdout] | [INFO] [stdout] 6 | widgets::{Block, List, ListItem}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::PathBuf` [INFO] [stdout] --> src/ui/mod.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::path::PathBuf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `deck_browser::DeckBrowser` [INFO] [stdout] --> src/ui/mod.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use deck_browser::DeckBrowser; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Block` [INFO] [stdout] --> src/ui/mod.rs:13:15 [INFO] [stdout] | [INFO] [stdout] 13 | widgets::{Block, Paragraph, Widget, WidgetRef}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `strat` should have an upper camel case name [INFO] [stdout] --> src/lib.rs:62:10 [INFO] [stdout] | [INFO] [stdout] 62 | type strat = fn(&[T]) -> T; [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Strat` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `items` [INFO] [stdout] --> src/game/engine.rs:28:28 [INFO] [stdout] | [INFO] [stdout] 28 | fn sequence(&self, items: &mut VecDeque) -> impl Iterator { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_items` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/io.rs:103:5 [INFO] [stdout] | [INFO] [stdout] 102 | todo!("List the files here"); [INFO] [stdout] | ---------------------------- any code following this expression is unreachable [INFO] [stdout] 103 | vec![] [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] = note: this warning originates in the macro `vec` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Widget` [INFO] [stdout] --> src/ui/mod.rs:13:33 [INFO] [stdout] | [INFO] [stdout] 13 | widgets::{Block, Paragraph, Widget, WidgetRef}, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rng` [INFO] [stdout] --> src/game/engine.rs:24:21 [INFO] [stdout] | [INFO] [stdout] 24 | let mut rng = thread_rng(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_rng` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `items` [INFO] [stdout] --> src/game/engine.rs:23:17 [INFO] [stdout] | [INFO] [stdout] 23 | fn next(items: &mut VecDeque) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_items` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/game/engine.rs:24:17 [INFO] [stdout] | [INFO] [stdout] 24 | let mut rng = 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: unused variable: `path` [INFO] [stdout] --> src/io.rs:101:22 [INFO] [stdout] | [INFO] [stdout] 101 | pub fn list_files(path: &PathBuf) -> Vec { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Serialization` is never used [INFO] [stdout] --> src/app.rs:12:14 [INFO] [stdout] | [INFO] [stdout] 12 | pub enum Serialization { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `write`, `write_json`, and `write_yaml` are never used [INFO] [stdout] --> src/app.rs:17:16 [INFO] [stdout] | [INFO] [stdout] 16 | impl Serialization { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 17 | pub fn write( [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | fn write_json(deck: &Deck, writer: impl Write) -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | fn write_yaml(deck: &Deck, writer: impl Write) -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `NoHome` is never constructed [INFO] [stdout] --> src/cli.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | enum Error<'a> { [INFO] [stdout] | ----- variant in this enum [INFO] [stdout] 23 | NoHome, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Error` 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: field `item` is never read [INFO] [stdout] --> src/game/mod.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 42 | pub struct Progress { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 43 | item: T, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `score` is never used [INFO] [stdout] --> src/game/mod.rs:52:8 [INFO] [stdout] | [INFO] [stdout] 47 | impl Progress { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 52 | fn score(&self) -> Option<&Score> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `next` and `sequence` are never used [INFO] [stdout] --> src/game/engine.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub trait Strat { [INFO] [stdout] | ----- associated items in this trait [INFO] [stdout] 12 | fn next(items: &mut VecDeque) -> Option; [INFO] [stdout] | ^^^^ [INFO] [stdout] 13 | fn sequence(&self, items: &mut VecDeque) -> impl Iterator; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `seed` is never read [INFO] [stdout] --> src/game/engine.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Random { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 19 | seed: usize, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Strategy` is never used [INFO] [stdout] --> src/game/engine.rs:33:14 [INFO] [stdout] | [INFO] [stdout] 33 | pub enum Strategy { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `random` is never used [INFO] [stdout] --> src/game/engine.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 41 | pub fn random(items: &mut VecDeque) -> Option { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `filename` is never used [INFO] [stdout] --> src/io.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 18 | impl ImportEntry { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] 19 | fn filename(&self) -> Option<&ffi::OsStr> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `imports` is never read [INFO] [stdout] --> src/io.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 37 | pub struct Directories { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 38 | imports: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `front` and `back` are never read [INFO] [stdout] --> src/ui/mod.rs:147:5 [INFO] [stdout] | [INFO] [stdout] 145 | pub struct CardSide { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 146 | deck_title: Option, [INFO] [stdout] 147 | front: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 148 | back: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CardSide` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `index` is never read [INFO] [stdout] --> src/ui/deck_browser.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct DeckBrowser { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 25 | index: usize, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Foobar` is never constructed [INFO] [stdout] --> src/ui/inputs.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 65 | struct Foobar; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `EventListener` is never used [INFO] [stdout] --> src/ui/inputs.rs:68:11 [INFO] [stdout] | [INFO] [stdout] 68 | trait EventListener { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `strat` is never used [INFO] [stdout] --> src/lib.rs:62:10 [INFO] [stdout] | [INFO] [stdout] 62 | type strat = fn(&[T]) -> T; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced [INFO] [stdout] --> src/lib.rs:62:19 [INFO] [stdout] | [INFO] [stdout] 62 | type strat = fn(&[T]) -> T; [INFO] [stdout] | --^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | will not be checked at usage sites of the type alias [INFO] [stdout] | help: remove this bound [INFO] [stdout] | [INFO] [stdout] = note: this is a known limitation of the type checker that may be lifted in a future edition. [INFO] [stdout] see issue #112792 for more information [INFO] [stdout] = note: `#[warn(type_alias_bounds)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling kadeu v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `collections::VecDeque` [INFO] [stdout] --> src/app.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{collections::VecDeque, fmt::Display}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ffi::OsStr` [INFO] [stdout] --> src/cli.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::ffi::OsStr; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `default` [INFO] [stdout] --> src/cli.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{default, env, fs::OpenOptions, io::Read, path::PathBuf}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Arg` [INFO] [stdout] --> src/cli.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 5 | use clap::{self, Arg, Parser}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ui::KadeuApp` [INFO] [stdout] --> src/cli.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::ui::KadeuApp; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::fmt` [INFO] [stdout] --> src/io.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use core::fmt; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Deserialize` [INFO] [stdout] --> src/io.rs:2:35 [INFO] [stdout] | [INFO] [stdout] 2 | use serde::{de::DeserializeOwned, Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `File`, `OsStr`, and `Path` [INFO] [stdout] --> src/io.rs:5:17 [INFO] [stdout] | [INFO] [stdout] 5 | ffi::{self, OsStr}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 6 | fs::{self, File, OpenOptions}, [INFO] [stdout] | ^^^^ [INFO] [stdout] 7 | path::{Path, PathBuf}, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `app::Deck` and `cli::Config` [INFO] [stdout] --> src/io.rs:10:13 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::{app::Deck, cli::Config}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Card` [INFO] [stdout] --> src/ui/deck_browser.rs:1:18 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::app::{Card, Deck}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `default` [INFO] [stdout] --> src/ui/inputs.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{collections::HashMap, default}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `KeyEventKind` and `KeyEvent` [INFO] [stdout] --> src/ui/inputs.rs:3:46 [INFO] [stdout] | [INFO] [stdout] 3 | use crossterm::event::{self, Event, KeyCode, KeyEvent, KeyEventKind}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Apps` is never used [INFO] [stdout] --> src/main.rs:19:6 [INFO] [stdout] | [INFO] [stdout] 19 | enum Apps { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `crossterm_terminal` is never used [INFO] [stdout] --> src/main.rs:24:4 [INFO] [stdout] | [INFO] [stdout] 24 | fn crossterm_terminal() -> std::io::Result>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::Debugger` [INFO] [stdout] --> src/ui/inputs.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use super::Debugger; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ListItem` [INFO] [stdout] --> src/ui/style.rs:6:28 [INFO] [stdout] | [INFO] [stdout] 6 | widgets::{Block, List, ListItem}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::PathBuf` [INFO] [stdout] --> src/ui/mod.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::path::PathBuf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `deck_browser::DeckBrowser` [INFO] [stdout] --> src/ui/mod.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use deck_browser::DeckBrowser; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Block` [INFO] [stdout] --> src/ui/mod.rs:13:15 [INFO] [stdout] | [INFO] [stdout] 13 | widgets::{Block, Paragraph, Widget, WidgetRef}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `strat` should have an upper camel case name [INFO] [stdout] --> src/lib.rs:62:10 [INFO] [stdout] | [INFO] [stdout] 62 | type strat = fn(&[T]) -> T; [INFO] [stdout] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Strat` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `items` [INFO] [stdout] --> src/game/engine.rs:28:28 [INFO] [stdout] | [INFO] [stdout] 28 | fn sequence(&self, items: &mut VecDeque) -> impl Iterator { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_items` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/io.rs:103:5 [INFO] [stdout] | [INFO] [stdout] 102 | todo!("List the files here"); [INFO] [stdout] | ---------------------------- any code following this expression is unreachable [INFO] [stdout] 103 | vec![] [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] = note: this warning originates in the macro `vec` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Widget` [INFO] [stdout] --> src/ui/mod.rs:13:33 [INFO] [stdout] | [INFO] [stdout] 13 | widgets::{Block, Paragraph, Widget, WidgetRef}, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rng` [INFO] [stdout] --> src/game/engine.rs:24:21 [INFO] [stdout] | [INFO] [stdout] 24 | let mut rng = thread_rng(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_rng` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `items` [INFO] [stdout] --> src/game/engine.rs:23:17 [INFO] [stdout] | [INFO] [stdout] 23 | fn next(items: &mut VecDeque) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_items` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/game/engine.rs:24:17 [INFO] [stdout] | [INFO] [stdout] 24 | let mut rng = 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: unused variable: `path` [INFO] [stdout] --> src/io.rs:101:22 [INFO] [stdout] | [INFO] [stdout] 101 | pub fn list_files(path: &PathBuf) -> Vec { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `this` [INFO] [stdout] --> src/ui/inputs.rs:80:47 [INFO] [stdout] | [INFO] [stdout] 80 | foobar.add_event_listener(Input::Up, |this, event| assert!(true)); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_this` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `event` [INFO] [stdout] --> src/ui/inputs.rs:80:53 [INFO] [stdout] | [INFO] [stdout] 80 | foobar.add_event_listener(Input::Up, |this, event| assert!(true)); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_event` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Serialization` is never used [INFO] [stdout] --> src/app.rs:12:14 [INFO] [stdout] | [INFO] [stdout] 12 | pub enum Serialization { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `write`, `write_json`, and `write_yaml` are never used [INFO] [stdout] --> src/app.rs:17:16 [INFO] [stdout] | [INFO] [stdout] 16 | impl Serialization { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 17 | pub fn write( [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | fn write_json(deck: &Deck, writer: impl Write) -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | fn write_yaml(deck: &Deck, writer: impl Write) -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `NoHome` is never constructed [INFO] [stdout] --> src/cli.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | enum Error<'a> { [INFO] [stdout] | ----- variant in this enum [INFO] [stdout] 23 | NoHome, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Error` 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: field `item` is never read [INFO] [stdout] --> src/game/mod.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 42 | pub struct Progress { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 43 | item: T, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `score` is never used [INFO] [stdout] --> src/game/mod.rs:52:8 [INFO] [stdout] | [INFO] [stdout] 47 | impl Progress { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 52 | fn score(&self) -> Option<&Score> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `next` and `sequence` are never used [INFO] [stdout] --> src/game/engine.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub trait Strat { [INFO] [stdout] | ----- associated items in this trait [INFO] [stdout] 12 | fn next(items: &mut VecDeque) -> Option; [INFO] [stdout] | ^^^^ [INFO] [stdout] 13 | fn sequence(&self, items: &mut VecDeque) -> impl Iterator; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `seed` is never read [INFO] [stdout] --> src/game/engine.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Random { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 19 | seed: usize, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Strategy` is never used [INFO] [stdout] --> src/game/engine.rs:33:14 [INFO] [stdout] | [INFO] [stdout] 33 | pub enum Strategy { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `random` is never used [INFO] [stdout] --> src/game/engine.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 41 | pub fn random(items: &mut VecDeque) -> Option { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `filename` is never used [INFO] [stdout] --> src/io.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 18 | impl ImportEntry { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] 19 | fn filename(&self) -> Option<&ffi::OsStr> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `imports` is never read [INFO] [stdout] --> src/io.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 37 | pub struct Directories { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 38 | imports: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `front` and `back` are never read [INFO] [stdout] --> src/ui/mod.rs:147:5 [INFO] [stdout] | [INFO] [stdout] 145 | pub struct CardSide { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 146 | deck_title: Option, [INFO] [stdout] 147 | front: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 148 | back: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CardSide` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `index` is never read [INFO] [stdout] --> src/ui/deck_browser.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct DeckBrowser { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 25 | index: usize, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `strat` is never used [INFO] [stdout] --> src/lib.rs:62:10 [INFO] [stdout] | [INFO] [stdout] 62 | type strat = fn(&[T]) -> T; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced [INFO] [stdout] --> src/lib.rs:62:19 [INFO] [stdout] | [INFO] [stdout] 62 | type strat = fn(&[T]) -> T; [INFO] [stdout] | --^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | will not be checked at usage sites of the type alias [INFO] [stdout] | help: remove this bound [INFO] [stdout] | [INFO] [stdout] = note: this is a known limitation of the type checker that may be lifted in a future edition. [INFO] [stdout] see issue #112792 for more information [INFO] [stdout] = note: `#[warn(type_alias_bounds)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.58s [INFO] running `Command { std: "docker" "inspect" "8f9f39d282e94a6522737d4b7dd61d8173e5494d93d3eb6691e54e6a85937e10", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8f9f39d282e94a6522737d4b7dd61d8173e5494d93d3eb6691e54e6a85937e10", kill_on_drop: false }` [INFO] [stdout] 8f9f39d282e94a6522737d4b7dd61d8173e5494d93d3eb6691e54e6a85937e10 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=warn" "-e" "RUSTDOCFLAGS=--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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+1.85.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 84ce709f6b1a1e9abb431570016423f00ffb5f5f17f182a062538adc162b1042 [INFO] running `Command { std: "docker" "start" "-a" "84ce709f6b1a1e9abb431570016423f00ffb5f5f17f182a062538adc162b1042", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `collections::VecDeque` [INFO] [stderr] --> src/app.rs:2:11 [INFO] [stderr] | [INFO] [stderr] 2 | use std::{collections::VecDeque, fmt::Display}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ffi::OsStr` [INFO] [stderr] --> src/cli.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::ffi::OsStr; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `default` [INFO] [stderr] --> src/cli.rs:2:11 [INFO] [stderr] | [INFO] [stderr] 2 | use std::{default, env, fs::OpenOptions, io::Read, path::PathBuf}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Arg` [INFO] [stderr] --> src/cli.rs:5:18 [INFO] [stderr] | [INFO] [stderr] 5 | use clap::{self, Arg, Parser}; [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::ui::KadeuApp` [INFO] [stderr] --> src/cli.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use crate::ui::KadeuApp; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `core::fmt` [INFO] [stderr] --> src/io.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use core::fmt; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Deserialize` [INFO] [stderr] --> src/io.rs:2:35 [INFO] [stderr] | [INFO] [stderr] 2 | use serde::{de::DeserializeOwned, Deserialize, Serialize}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `File`, `OsStr`, and `Path` [INFO] [stderr] --> src/io.rs:5:17 [INFO] [stderr] | [INFO] [stderr] 5 | ffi::{self, OsStr}, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 6 | fs::{self, File, OpenOptions}, [INFO] [stderr] | ^^^^ [INFO] [stderr] 7 | path::{Path, PathBuf}, [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `app::Deck` and `cli::Config` [INFO] [stderr] --> src/io.rs:10:13 [INFO] [stderr] | [INFO] [stderr] 10 | use crate::{app::Deck, cli::Config}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Card` [INFO] [stderr] --> src/ui/deck_browser.rs:1:18 [INFO] [stderr] | [INFO] [stderr] 1 | use crate::app::{Card, Deck}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `default` [INFO] [stderr] --> src/ui/inputs.rs:1:33 [INFO] [stderr] | [INFO] [stderr] 1 | use std::{collections::HashMap, default}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `KeyEventKind` and `KeyEvent` [INFO] [stderr] --> src/ui/inputs.rs:3:46 [INFO] [stderr] | [INFO] [stderr] 3 | use crossterm::event::{self, Event, KeyCode, KeyEvent, KeyEventKind}; [INFO] [stderr] | ^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::Debugger` [INFO] [stderr] --> src/ui/inputs.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use super::Debugger; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ListItem` [INFO] [stderr] --> src/ui/style.rs:6:28 [INFO] [stderr] | [INFO] [stderr] 6 | widgets::{Block, List, ListItem}, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::path::PathBuf` [INFO] [stderr] --> src/ui/mod.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::path::PathBuf; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `deck_browser::DeckBrowser` [INFO] [stderr] --> src/ui/mod.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use deck_browser::DeckBrowser; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Block` [INFO] [stderr] --> src/ui/mod.rs:13:15 [INFO] [stderr] | [INFO] [stderr] 13 | widgets::{Block, Paragraph, Widget, WidgetRef}, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type `strat` should have an upper camel case name [INFO] [stderr] --> src/lib.rs:62:10 [INFO] [stderr] | [INFO] [stderr] 62 | type strat = fn(&[T]) -> T; [INFO] [stderr] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Strat` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `items` [INFO] [stderr] --> src/game/engine.rs:28:28 [INFO] [stderr] | [INFO] [stderr] 28 | fn sequence(&self, items: &mut VecDeque) -> impl Iterator { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_items` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/io.rs:103:5 [INFO] [stderr] | [INFO] [stderr] 102 | todo!("List the files here"); [INFO] [stderr] | ---------------------------- any code following this expression is unreachable [INFO] [stderr] 103 | vec![] [INFO] [stderr] | ^^^^^^ unreachable expression [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` on by default [INFO] [stderr] = note: this warning originates in the macro `vec` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused import: `Widget` [INFO] [stderr] --> src/ui/mod.rs:13:33 [INFO] [stderr] | [INFO] [stderr] 13 | widgets::{Block, Paragraph, Widget, WidgetRef}, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rng` [INFO] [stderr] --> src/game/engine.rs:24:21 [INFO] [stderr] | [INFO] [stderr] 24 | let mut rng = thread_rng(); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_rng` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `items` [INFO] [stderr] --> src/game/engine.rs:23:17 [INFO] [stderr] | [INFO] [stderr] 23 | fn next(items: &mut VecDeque) -> Option { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_items` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/game/engine.rs:24:17 [INFO] [stderr] | [INFO] [stderr] 24 | let mut rng = 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: unused variable: `path` [INFO] [stderr] --> src/io.rs:101:22 [INFO] [stderr] | [INFO] [stderr] 101 | pub fn list_files(path: &PathBuf) -> Vec { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stderr] [INFO] [stderr] warning: enum `Serialization` is never used [INFO] [stderr] --> src/app.rs:12:14 [INFO] [stderr] | [INFO] [stderr] 12 | pub enum Serialization { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated items `write`, `write_json`, and `write_yaml` are never used [INFO] [stderr] --> src/app.rs:17:16 [INFO] [stderr] | [INFO] [stderr] 16 | impl Serialization { [INFO] [stderr] | ------------------ associated items in this implementation [INFO] [stderr] 17 | pub fn write( [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 29 | fn write_json(deck: &Deck, writer: impl Write) -> std::io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 37 | fn write_yaml(deck: &Deck, writer: impl Write) -> std::io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `NoHome` is never constructed [INFO] [stderr] --> src/cli.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 22 | enum Error<'a> { [INFO] [stderr] | ----- variant in this enum [INFO] [stderr] 23 | NoHome, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Error` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `item` is never read [INFO] [stderr] --> src/game/mod.rs:43:5 [INFO] [stderr] | [INFO] [stderr] 42 | pub struct Progress { [INFO] [stderr] | -------- field in this struct [INFO] [stderr] 43 | item: T, [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `score` is never used [INFO] [stderr] --> src/game/mod.rs:52:8 [INFO] [stderr] | [INFO] [stderr] 47 | impl Progress { [INFO] [stderr] | ------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 52 | fn score(&self) -> Option<&Score> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `next` and `sequence` are never used [INFO] [stderr] --> src/game/engine.rs:12:12 [INFO] [stderr] | [INFO] [stderr] 11 | pub trait Strat { [INFO] [stderr] | ----- associated items in this trait [INFO] [stderr] 12 | fn next(items: &mut VecDeque) -> Option; [INFO] [stderr] | ^^^^ [INFO] [stderr] 13 | fn sequence(&self, items: &mut VecDeque) -> impl Iterator; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `seed` is never read [INFO] [stderr] --> src/game/engine.rs:19:9 [INFO] [stderr] | [INFO] [stderr] 18 | pub struct Random { [INFO] [stderr] | ------ field in this struct [INFO] [stderr] 19 | seed: usize, [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `Strategy` is never used [INFO] [stderr] --> src/game/engine.rs:33:14 [INFO] [stderr] | [INFO] [stderr] 33 | pub enum Strategy { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `random` is never used [INFO] [stderr] --> src/game/engine.rs:41:12 [INFO] [stderr] | [INFO] [stderr] 41 | pub fn random(items: &mut VecDeque) -> Option { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `filename` is never used [INFO] [stderr] --> src/io.rs:19:8 [INFO] [stderr] | [INFO] [stderr] 18 | impl ImportEntry { [INFO] [stderr] | ---------------- method in this implementation [INFO] [stderr] 19 | fn filename(&self) -> Option<&ffi::OsStr> { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `imports` is never read [INFO] [stderr] --> src/io.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 37 | pub struct Directories { [INFO] [stderr] | ----------- field in this struct [INFO] [stderr] 38 | imports: String, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `front` and `back` are never read [INFO] [stderr] --> src/ui/mod.rs:147:5 [INFO] [stderr] | [INFO] [stderr] 145 | pub struct CardSide { [INFO] [stderr] | -------- fields in this struct [INFO] [stderr] 146 | deck_title: Option, [INFO] [stderr] 147 | front: String, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 148 | back: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `CardSide` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `index` is never read [INFO] [stderr] --> src/ui/deck_browser.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 21 | pub struct DeckBrowser { [INFO] [stderr] | ----------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 25 | index: usize, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Foobar` is never constructed [INFO] [stderr] --> src/ui/inputs.rs:65:12 [INFO] [stderr] | [INFO] [stderr] 65 | struct Foobar; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `EventListener` is never used [INFO] [stderr] --> src/ui/inputs.rs:68:11 [INFO] [stderr] | [INFO] [stderr] 68 | trait EventListener { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias `strat` is never used [INFO] [stderr] --> src/lib.rs:62:10 [INFO] [stderr] | [INFO] [stderr] 62 | type strat = fn(&[T]) -> T; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: bounds on generic parameters in type aliases are not enforced [INFO] [stderr] --> src/lib.rs:62:19 [INFO] [stderr] | [INFO] [stderr] 62 | type strat = fn(&[T]) -> T; [INFO] [stderr] | --^^^^^ [INFO] [stderr] | | | [INFO] [stderr] | | will not be checked at usage sites of the type alias [INFO] [stderr] | help: remove this bound [INFO] [stderr] | [INFO] [stderr] = note: this is a known limitation of the type checker that may be lifted in a future edition. [INFO] [stderr] see issue #112792 for more information [INFO] [stderr] = note: `#[warn(type_alias_bounds)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `this` [INFO] [stderr] --> src/ui/inputs.rs:80:47 [INFO] [stderr] | [INFO] [stderr] 80 | foobar.add_event_listener(Input::Up, |this, event| assert!(true)); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_this` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `event` [INFO] [stderr] --> src/ui/inputs.rs:80:53 [INFO] [stderr] | [INFO] [stderr] 80 | foobar.add_event_listener(Input::Up, |this, event| assert!(true)); [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_event` [INFO] [stderr] [INFO] [stderr] warning: `kadeu` (lib) generated 42 warnings (run `cargo fix --lib -p kadeu` to apply 19 suggestions) [INFO] [stderr] warning: `kadeu` (lib test) generated 42 warnings (40 duplicates) [INFO] [stderr] warning: enum `Apps` is never used [INFO] [stderr] --> src/main.rs:19:6 [INFO] [stderr] | [INFO] [stderr] 19 | enum Apps { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function `crossterm_terminal` is never used [INFO] [stderr] --> src/main.rs:24:4 [INFO] [stderr] | [INFO] [stderr] 24 | fn crossterm_terminal() -> std::io::Result>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `kadeu` (bin "kadeu" test) generated 2 warnings [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.22s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/kadeu-e6d23d81d72d01f4) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/kadeu-d6623a516f3368eb) [INFO] [stdout] test ui::inputs::tests::add_event_listener ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [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] [stderr] Doc-tests kadeu [INFO] [stderr] warning: type `strat` should have an upper camel case name [INFO] [stderr] --> src/lib.rs:62:10 [INFO] [stderr] | [INFO] [stderr] 62 | type strat = fn(&[T]) -> T; [INFO] [stderr] | ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Strat` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 1 warning emitted [INFO] [stderr] [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" "84ce709f6b1a1e9abb431570016423f00ffb5f5f17f182a062538adc162b1042", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "84ce709f6b1a1e9abb431570016423f00ffb5f5f17f182a062538adc162b1042", kill_on_drop: false }` [INFO] [stdout] 84ce709f6b1a1e9abb431570016423f00ffb5f5f17f182a062538adc162b1042