[INFO] cloning repository https://github.com/LatjoLajbin/advent-of-code-2023 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/LatjoLajbin/advent-of-code-2023" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLatjoLajbin%2Fadvent-of-code-2023", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLatjoLajbin%2Fadvent-of-code-2023'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] eb657b4ff4a60b2c143f383606c6850851b2fc6c [INFO] checking LatjoLajbin/advent-of-code-2023 against try#349c4bfa6ac87b818f6fd19d4869c0b24790ac6a for pr-152856 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLatjoLajbin%2Fadvent-of-code-2023" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-5-tc2/source/.cargo/config.toml [INFO] started tweaking git repo https://github.com/LatjoLajbin/advent-of-code-2023 [INFO] finished tweaking git repo https://github.com/LatjoLajbin/advent-of-code-2023 [INFO] tweaked toml for git repo https://github.com/LatjoLajbin/advent-of-code-2023 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/LatjoLajbin/advent-of-code-2023 on toolchain 349c4bfa6ac87b818f6fd19d4869c0b24790ac6a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+349c4bfa6ac87b818f6fd19d4869c0b24790ac6a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/LatjoLajbin/advent-of-code-2023 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" "+349c4bfa6ac87b818f6fd19d4869c0b24790ac6a" "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 pico-args v0.5.0 [INFO] [stderr] Downloaded indexmap v2.1.0 [INFO] [stderr] Downloaded memchr v2.6.4 [INFO] [stderr] Downloaded itertools v0.12.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+349c4bfa6ac87b818f6fd19d4869c0b24790ac6a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 7f6317f5a85cd5a30d12011b7feaf4016370e3273a785cb485f0dda9d4d726cb [INFO] running `Command { std: "docker" "start" "-a" "7f6317f5a85cd5a30d12011b7feaf4016370e3273a785cb485f0dda9d4d726cb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "7f6317f5a85cd5a30d12011b7feaf4016370e3273a785cb485f0dda9d4d726cb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7f6317f5a85cd5a30d12011b7feaf4016370e3273a785cb485f0dda9d4d726cb", kill_on_drop: false }` [INFO] [stdout] 7f6317f5a85cd5a30d12011b7feaf4016370e3273a785cb485f0dda9d4d726cb [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+349c4bfa6ac87b818f6fd19d4869c0b24790ac6a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] fdf1794c7d8e7c93a8bcc93f61d6f56f23bf65a3e5db14da7d2bc7b47e50b1b3 [INFO] running `Command { std: "docker" "start" "-a" "fdf1794c7d8e7c93a8bcc93f61d6f56f23bf65a3e5db14da7d2bc7b47e50b1b3", kill_on_drop: false }` [INFO] [stderr] Checking memchr v2.6.4 [INFO] [stderr] Checking regex-syntax v0.8.2 [INFO] [stderr] Checking equivalent v1.0.1 [INFO] [stderr] Checking either v1.9.0 [INFO] [stderr] Checking hashbrown v0.14.3 [INFO] [stderr] Checking pico-args v0.5.0 [INFO] [stderr] Checking itertools v0.12.0 [INFO] [stderr] Checking aho-corasick v1.1.2 [INFO] [stderr] Checking indexmap v2.1.0 [INFO] [stderr] Checking regex-automata v0.4.3 [INFO] [stderr] Checking regex v1.10.2 [INFO] [stderr] Checking advent_of_code v0.9.3 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/bin/08.rs:3:17 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn part_one(input: &str) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/bin/08.rs:7:17 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn part_two(input: &str) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/bin/10.rs:3:17 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn part_one(input: &str) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/bin/10.rs:7:17 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn part_two(input: &str) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/bin/08.rs:3:17 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn part_one(input: &str) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/bin/08.rs:7:17 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn part_two(input: &str) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/bin/09.rs:3:17 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn part_one(input: &str) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/bin/09.rs:7:17 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn part_two(input: &str) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/bin/02.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn part_two(input: &str) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/bin/02.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn part_two(input: &str) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/bin/04.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn part_two(input: &str) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/bin/04.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn part_two(input: &str) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `index` is never read [INFO] [stdout] --> src/bin/04.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 4 | struct Card { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 5 | index: usize, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Card` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `index` is never read [INFO] [stdout] --> src/bin/04.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 4 | struct Card { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 5 | index: usize, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Card` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `HashMap` [INFO] [stdout] --> src/bin/07.rs:106:5 [INFO] [stdout] | [INFO] [stdout] 99 | #[derive(Debug, PartialEq)] [INFO] [stdout] | --------- in this derive macro expansion [INFO] [stdout] ... [INFO] [stdout] 106 | card_occurences: HashMap, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Eq` [INFO] [stdout] | [INFO] [stdout] 102 | T: Card + PartialEq + std::cmp::Eq, [INFO] [stdout] | ++++++++++++++ [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Hash` [INFO] [stdout] | [INFO] [stdout] 102 | T: Card + PartialEq + std::hash::Hash, [INFO] [stdout] | +++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `HashSet` [INFO] [stdout] --> src/bin/07.rs:107:5 [INFO] [stdout] | [INFO] [stdout] 99 | #[derive(Debug, PartialEq)] [INFO] [stdout] | --------- in this derive macro expansion [INFO] [stdout] ... [INFO] [stdout] 107 | cards_not_in_type: HashSet, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Eq` [INFO] [stdout] | [INFO] [stdout] 102 | T: Card + PartialEq + std::cmp::Eq, [INFO] [stdout] | ++++++++++++++ [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Hash` [INFO] [stdout] | [INFO] [stdout] 102 | T: Card + PartialEq + std::hash::Hash, [INFO] [stdout] | +++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/bin/09.rs:3:17 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn part_one(input: &str) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/bin/09.rs:7:17 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn part_two(input: &str) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: can't compare `Hand` with `Hand` [INFO] [stdout] --> src/bin/07.rs:281:5 [INFO] [stdout] | [INFO] [stdout] 276 | #[derive(Debug, PartialEq, PartialOrd)] [INFO] [stdout] | ---------- in this derive macro expansion [INFO] [stdout] ... [INFO] [stdout] 281 | hand: Hand, [INFO] [stdout] | ^^^^^^^^^^^^^ no implementation for `Hand < Hand` and `Hand > Hand` [INFO] [stdout] | [INFO] [stdout] help: the trait `PartialOrd` is not implemented for `Hand` [INFO] [stdout] --> src/bin/07.rs:100:1 [INFO] [stdout] | [INFO] [stdout] 100 | struct Hand [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] help: consider extending the `where` clause, but there might be an alternative better way to express this requirement [INFO] [stdout] | [INFO] [stdout] 279 | T: Card + PartialEq + PartialOrd, Hand: PartialOrd, [INFO] [stdout] | +++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `HashMap` [INFO] [stdout] --> src/bin/07.rs:106:5 [INFO] [stdout] | [INFO] [stdout] 99 | #[derive(Debug, PartialEq)] [INFO] [stdout] | --------- in this derive macro expansion [INFO] [stdout] ... [INFO] [stdout] 106 | card_occurences: HashMap, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Eq` [INFO] [stdout] | [INFO] [stdout] 102 | T: Card + PartialEq + std::cmp::Eq, [INFO] [stdout] | ++++++++++++++ [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Hash` [INFO] [stdout] | [INFO] [stdout] 102 | T: Card + PartialEq + std::hash::Hash, [INFO] [stdout] | +++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `HashSet` [INFO] [stdout] --> src/bin/07.rs:107:5 [INFO] [stdout] | [INFO] [stdout] 99 | #[derive(Debug, PartialEq)] [INFO] [stdout] | --------- in this derive macro expansion [INFO] [stdout] ... [INFO] [stdout] 107 | cards_not_in_type: HashSet, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Eq` [INFO] [stdout] | [INFO] [stdout] 102 | T: Card + PartialEq + std::cmp::Eq, [INFO] [stdout] | ++++++++++++++ [INFO] [stdout] help: consider further restricting type parameter `T` with trait `Hash` [INFO] [stdout] | [INFO] [stdout] 102 | T: Card + PartialEq + std::hash::Hash, [INFO] [stdout] | +++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `from_str` found for struct `Hand` in the current scope [INFO] [stdout] --> src/bin/07.rs:294:29 [INFO] [stdout] | [INFO] [stdout] 100 | struct Hand [INFO] [stdout] | -------------- function or associated item `from_str` not found for this struct [INFO] [stdout] ... [INFO] [stdout] 294 | hand: Hand::from_str(hand.trim()), [INFO] [stdout] | ^^^^^^^^ function or associated item not found in `Hand<_>` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `Hand<_>` consider using one of the following associated functions: [INFO] [stdout] Hand::::new [INFO] [stdout] Hand::::from_str_jacks [INFO] [stdout] --> src/bin/07.rs:183:5 [INFO] [stdout] | [INFO] [stdout] 183 | fn new(cards: [JackCard; 5], as_str: &str) -> Hand { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 202 | fn from_str_jacks(cards: &str) -> Hand { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following trait defines an item `from_str`, perhaps you need to implement it: [INFO] [stdout] candidate #1: `FromStr` [INFO] [stdout] help: there is an associated function `from` with a similar name [INFO] [stdout] | [INFO] [stdout] 294 - hand: Hand::from_str(hand.trim()), [INFO] [stdout] 294 + hand: Hand::from(hand.trim()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `from_str` found for struct `Hand` in the current scope [INFO] [stdout] --> src/bin/07.rs:310:29 [INFO] [stdout] | [INFO] [stdout] 100 | struct Hand [INFO] [stdout] | -------------- function or associated item `from_str` not found for this struct [INFO] [stdout] ... [INFO] [stdout] 310 | hand: Hand::from_str(hand.trim()), [INFO] [stdout] | ^^^^^^^^ function or associated item not found in `Hand<_>` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `Hand<_>` consider using one of the following associated functions: [INFO] [stdout] Hand::::new [INFO] [stdout] Hand::::from_str_jacks [INFO] [stdout] --> src/bin/07.rs:183:5 [INFO] [stdout] | [INFO] [stdout] 183 | fn new(cards: [JackCard; 5], as_str: &str) -> Hand { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 202 | fn from_str_jacks(cards: &str) -> Hand { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following trait defines an item `from_str`, perhaps you need to implement it: [INFO] [stdout] candidate #1: `FromStr` [INFO] [stdout] help: there is an associated function `from` with a similar name [INFO] [stdout] | [INFO] [stdout] 310 - hand: Hand::from_str(hand.trim()), [INFO] [stdout] 310 + hand: Hand::from(hand.trim()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: can't compare `Hand` with `Hand` [INFO] [stdout] --> src/bin/07.rs:281:5 [INFO] [stdout] | [INFO] [stdout] 276 | #[derive(Debug, PartialEq, PartialOrd)] [INFO] [stdout] | ---------- in this derive macro expansion [INFO] [stdout] ... [INFO] [stdout] 281 | hand: Hand, [INFO] [stdout] | ^^^^^^^^^^^^^ no implementation for `Hand < Hand` and `Hand > Hand` [INFO] [stdout] | [INFO] [stdout] help: the trait `PartialOrd` is not implemented for `Hand` [INFO] [stdout] --> src/bin/07.rs:100:1 [INFO] [stdout] | [INFO] [stdout] 100 | struct Hand [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] help: consider extending the `where` clause, but there might be an alternative better way to express this requirement [INFO] [stdout] | [INFO] [stdout] 279 | T: Card + PartialEq + PartialOrd, Hand: PartialOrd, [INFO] [stdout] | +++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `from_str` found for struct `Hand` in the current scope [INFO] [stdout] --> src/bin/07.rs:294:29 [INFO] [stdout] | [INFO] [stdout] 100 | struct Hand [INFO] [stdout] | -------------- function or associated item `from_str` not found for this struct [INFO] [stdout] ... [INFO] [stdout] 294 | hand: Hand::from_str(hand.trim()), [INFO] [stdout] | ^^^^^^^^ function or associated item not found in `Hand<_>` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `Hand<_>` consider using one of the following associated functions: [INFO] [stdout] Hand::::new [INFO] [stdout] Hand::::from_str_jacks [INFO] [stdout] --> src/bin/07.rs:183:5 [INFO] [stdout] | [INFO] [stdout] 183 | fn new(cards: [JackCard; 5], as_str: &str) -> Hand { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 202 | fn from_str_jacks(cards: &str) -> Hand { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following trait defines an item `from_str`, perhaps you need to implement it: [INFO] [stdout] candidate #1: `FromStr` [INFO] [stdout] help: there is an associated function `from` with a similar name [INFO] [stdout] | [INFO] [stdout] 294 - hand: Hand::from_str(hand.trim()), [INFO] [stdout] 294 + hand: Hand::from(hand.trim()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `advent_of_code` (bin "07" test) due to 5 previous errors; 1 warning emitted [INFO] [stdout] warning: unused variable: `other` [INFO] [stdout] --> src/bin/07.rs:112:27 [INFO] [stdout] | [INFO] [stdout] 112 | fn partial_cmp(&self, other: &Hand) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_other` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0599]: no function or associated item named `from_str` found for struct `Hand` in the current scope [INFO] [stdout] --> src/bin/07.rs:310:29 [INFO] [stdout] | [INFO] [stdout] 100 | struct Hand [INFO] [stdout] | -------------- function or associated item `from_str` not found for this struct [INFO] [stdout] ... [INFO] [stdout] 310 | hand: Hand::from_str(hand.trim()), [INFO] [stdout] | ^^^^^^^^ function or associated item not found in `Hand<_>` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `Hand<_>` consider using one of the following associated functions: [INFO] [stdout] Hand::::new [INFO] [stdout] Hand::::from_str_jacks [INFO] [stdout] --> src/bin/07.rs:183:5 [INFO] [stdout] | [INFO] [stdout] 183 | fn new(cards: [JackCard; 5], as_str: &str) -> Hand { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 202 | fn from_str_jacks(cards: &str) -> Hand { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following trait defines an item `from_str`, perhaps you need to implement it: [INFO] [stdout] candidate #1: `FromStr` [INFO] [stdout] help: there is an associated function `from` with a similar name [INFO] [stdout] | [INFO] [stdout] 310 - hand: Hand::from_str(hand.trim()), [INFO] [stdout] 310 + hand: Hand::from(hand.trim()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `advent_of_code` (bin "07") due to 5 previous errors; 1 warning emitted [INFO] [stdout] warning: unused variable: `other` [INFO] [stdout] --> src/bin/07.rs:112:27 [INFO] [stdout] | [INFO] [stdout] 112 | fn partial_cmp(&self, other: &Hand) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_other` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0369, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0369, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/bin/10.rs:3:17 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn part_one(input: &str) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/bin/10.rs:7:17 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn part_two(input: &str) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "fdf1794c7d8e7c93a8bcc93f61d6f56f23bf65a3e5db14da7d2bc7b47e50b1b3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fdf1794c7d8e7c93a8bcc93f61d6f56f23bf65a3e5db14da7d2bc7b47e50b1b3", kill_on_drop: false }` [INFO] [stdout] fdf1794c7d8e7c93a8bcc93f61d6f56f23bf65a3e5db14da7d2bc7b47e50b1b3