[INFO] cloning repository https://github.com/Ethan-Arrowood/100-exercises-to-learn-rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Ethan-Arrowood/100-exercises-to-learn-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FEthan-Arrowood%2F100-exercises-to-learn-rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FEthan-Arrowood%2F100-exercises-to-learn-rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 51d4410a79a34295b6c991927d1392215de7d6e2
[INFO] checking Ethan-Arrowood/100-exercises-to-learn-rust against try#7b3da9103634dffd4f4365cfd8642427c781d99f+rustflags=-Dinherent-method-on-receiver for 152214-denied
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FEthan-Arrowood%2F100-exercises-to-learn-rust" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Ethan-Arrowood/100-exercises-to-learn-rust
[INFO] finished tweaking git repo https://github.com/Ethan-Arrowood/100-exercises-to-learn-rust
[INFO] tweaked toml for git repo https://github.com/Ethan-Arrowood/100-exercises-to-learn-rust written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Ethan-Arrowood/100-exercises-to-learn-rust on toolchain 7b3da9103634dffd4f4365cfd8642427c781d99f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7b3da9103634dffd4f4365cfd8642427c781d99f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Ethan-Arrowood/100-exercises-to-learn-rust 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" "+7b3da9103634dffd4f4365cfd8642427c781d99f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded proc-macro2 v1.0.82
[INFO] [stderr]   Downloaded anyhow v1.0.83
[INFO] [stderr]   Downloaded syn v2.0.63
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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" "+7b3da9103634dffd4f4365cfd8642427c781d99f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f3d6c55939e8f5cb9898cf0d8cedb648fa97c091d5677d0b3fbfaf9c63a4f1f9
[INFO] running `Command { std: "docker" "start" "-a" "f3d6c55939e8f5cb9898cf0d8cedb648fa97c091d5677d0b3fbfaf9c63a4f1f9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f3d6c55939e8f5cb9898cf0d8cedb648fa97c091d5677d0b3fbfaf9c63a4f1f9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f3d6c55939e8f5cb9898cf0d8cedb648fa97c091d5677d0b3fbfaf9c63a4f1f9", kill_on_drop: false }`
[INFO] [stdout] f3d6c55939e8f5cb9898cf0d8cedb648fa97c091d5677d0b3fbfaf9c63a4f1f9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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 -Dinherent-method-on-receiver" "-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" "+7b3da9103634dffd4f4365cfd8642427c781d99f" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6ac00c277f62bd104b1038a013759124b49002dcd7d9eff4186da29b87b4985a
[INFO] running `Command { std: "docker" "start" "-a" "6ac00c277f62bd104b1038a013759124b49002dcd7d9eff4186da29b87b4985a", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.82
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]     Checking common v0.1.0 (/opt/rustwide/workdir/helpers/common)
[INFO] [stderr]    Compiling thiserror v1.0.60
[INFO] [stderr]    Compiling libc v0.2.154
[INFO] [stderr]    Compiling autocfg v1.3.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]     Checking smallvec v1.13.2
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]     Checking bytes v1.6.0
[INFO] [stderr]     Checking pin-project-lite v0.2.14
[INFO] [stderr]    Compiling anyhow v1.0.83
[INFO] [stderr]     Checking static_assertions v1.1.0
[INFO] [stderr]     Checking outro_03 v0.1.0 (/opt/rustwide/workdir/exercises/04_traits/13_outro)
[INFO] [stderr]     Checking outro_02 v0.1.0 (/opt/rustwide/workdir/exercises/03_ticket_v1/12_outro)
[INFO] [stderr]     Checking assoc_vs_generic v0.1.0 (/opt/rustwide/workdir/exercises/04_traits/09_assoc_vs_generic)
[INFO] [stderr]     Checking encapsulation v0.1.0 (/opt/rustwide/workdir/exercises/03_ticket_v1/05_encapsulation)
[INFO] [stderr]     Checking tryfrom v0.1.0 (/opt/rustwide/workdir/exercises/05_ticket_v2/13_try_from)
[INFO] [stderr]     Checking derives v0.1.0 (/opt/rustwide/workdir/exercises/04_traits/04_derive)
[INFO] [stdout] warning: struct `SaturatingU16` is never constructed
[INFO] [stdout]   --> exercises/04_traits/13_outro/src/lib.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | struct SaturatingU16 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking intro_03 v0.1.0 (/opt/rustwide/workdir/exercises/04_traits/00_intro)
[INFO] [stderr]     Checking nullability v0.1.0 (/opt/rustwide/workdir/exercises/05_ticket_v2/05_nullability)
[INFO] [stderr]     Checking setters v0.1.0 (/opt/rustwide/workdir/exercises/03_ticket_v1/07_setters)
[INFO] [stdout] warning: enum `Status` is never used
[INFO] [stdout]  --> exercises/05_ticket_v2/13_try_from/src/lib.rs:5:6
[INFO] [stdout]   |
[INFO] [stdout] 5 | enum Status {
[INFO] [stdout]   |      ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: struct `SaturatingU16` is private
[INFO] [stdout]   --> exercises/04_traits/13_outro/tests/integration.rs:1:15
[INFO] [stdout]    |
[INFO] [stdout]  1 | use outro_03::SaturatingU16;
[INFO] [stdout]    |               ^^^^^^^^^^^^^ private struct
[INFO] [stdout]    |
[INFO] [stdout] note: the struct `SaturatingU16` is defined here
[INFO] [stdout]   --> exercises/04_traits/13_outro/src/lib.rs:14:1
[INFO] [stdout]    |
[INFO] [stdout] 14 | struct SaturatingU16 {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking thiserror_ v0.1.0 (/opt/rustwide/workdir/exercises/05_ticket_v2/12_thiserror)
[INFO] [stderr]     Checking validation v0.1.0 (/opt/rustwide/workdir/exercises/03_ticket_v1/02_validation)
[INFO] [stderr]     Checking error_trait v0.1.0 (/opt/rustwide/workdir/exercises/05_ticket_v2/09_error_trait)
[INFO] [stdout] For more information about this error, try `rustc --explain E0603`.
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `TicketNewError` doesn't implement `std::fmt::Display`
[INFO] [stdout]    --> exercises/05_ticket_v2/09_error_trait/src/lib.rs:101:34
[INFO] [stdout]     |
[INFO] [stdout] 101 |         assert_eq!(format!("{}", ticket.unwrap_err()), "Title cannot be empty");
[INFO] [stdout]     |                             --   ^^^^^^^^^^^^^^^^^^^ `TicketNewError` cannot be formatted with the default formatter
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             required by this formatting parameter
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `std::fmt::Display` is not implemented for `TicketNewError`
[INFO] [stdout]    --> exercises/05_ticket_v2/09_error_trait/src/lib.rs:6:1
[INFO] [stdout]     |
[INFO] [stdout]   6 | enum TicketNewError {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `TicketNewError: AmbiguousIfMoreThanOne<Token>` is not satisfied
[INFO] [stdout]    --> exercises/05_ticket_v2/09_error_trait/src/lib.rs:104:22
[INFO] [stdout]     |
[INFO] [stdout] 104 |     assert_impl_one!(TicketNewError: std::error::Error);
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `std::error::Error` is not implemented for `TicketNewError`
[INFO] [stdout]    --> exercises/05_ticket_v2/09_error_trait/src/lib.rs:6:1
[INFO] [stdout]     |
[INFO] [stdout]   6 | enum TicketNewError {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required for `TicketNewError` to implement `AmbiguousIfMoreThanOne<Token>`
[INFO] [stdout]    --> exercises/05_ticket_v2/09_error_trait/src/lib.rs:104:5
[INFO] [stdout]     |
[INFO] [stdout] 104 |     assert_impl_one!(TicketNewError: std::error::Error);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here
[INFO] [stdout]     = note: this error originates in the macro `assert_impl_one` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking variants_with_data v0.1.0 (/opt/rustwide/workdir/exercises/05_ticket_v2/03_variants_with_data)
[INFO] [stdout] warning: unused variable: `title`
[INFO] [stdout]   --> exercises/05_ticket_v2/09_error_trait/src/lib.rs:15:16
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn easy_ticket(title: String, description: String, status: Status) -> Ticket {
[INFO] [stdout]    |                ^^^^^ help: if this is intentional, prefix it with an underscore: `_title`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `description`
[INFO] [stdout]   --> exercises/05_ticket_v2/09_error_trait/src/lib.rs:15:31
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn easy_ticket(title: String, description: String, status: Status) -> Ticket {
[INFO] [stdout]    |                               ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_description`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `status`
[INFO] [stdout]   --> exercises/05_ticket_v2/09_error_trait/src/lib.rs:15:52
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn easy_ticket(title: String, description: String, status: Status) -> Ticket {
[INFO] [stdout]    |                                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking enum_ v0.1.0 (/opt/rustwide/workdir/exercises/05_ticket_v2/01_enum)
[INFO] [stderr] error: could not compile `outro_03` (test "integration") due to 1 previous error
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] For more information about this error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stdout] warning: fields `title`, `description`, and `status` are never read
[INFO] [stdout]  --> exercises/03_ticket_v1/02_validation/src/lib.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct Ticket {
[INFO] [stdout]   |        ------ fields in this struct
[INFO] [stdout] 2 |     title: String,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout] 3 |     description: String,
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 4 |     status: String,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `error_trait` (lib test) due to 2 previous errors; 3 warnings emitted
[INFO] [stdout] error[E0599]: no variant or associated item named `ToDo` found for enum `Status` in the current scope
[INFO] [stdout]   --> exercises/05_ticket_v2/01_enum/src/lib.rs:67:29
[INFO] [stdout]    |
[INFO] [stdout] 13 | enum Status {
[INFO] [stdout]    | ----------- variant or associated item `ToDo` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 67 |             status: Status::ToDo,
[INFO] [stdout]    |                             ^^^^ variant or associated item not found in `Status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `ToDo` found for enum `Status` in the current scope
[INFO] [stdout]   --> exercises/05_ticket_v2/01_enum/src/lib.rs:72:29
[INFO] [stdout]    |
[INFO] [stdout] 13 | enum Status {
[INFO] [stdout]    | ----------- variant or associated item `ToDo` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 72 |             status: Status::ToDo,
[INFO] [stdout]    |                             ^^^^ variant or associated item not found in `Status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `ToDo` found for enum `Status` in the current scope
[INFO] [stdout]   --> exercises/05_ticket_v2/01_enum/src/lib.rs:80:30
[INFO] [stdout]    |
[INFO] [stdout] 13 | enum Status {
[INFO] [stdout]    | ----------- variant or associated item `ToDo` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 80 |         let status = Status::ToDo;
[INFO] [stdout]    |                              ^^^^ variant or associated item not found in `Status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `InProgress` found for enum `Status` in the current scope
[INFO] [stdout]   --> exercises/05_ticket_v2/01_enum/src/lib.rs:97:30
[INFO] [stdout]    |
[INFO] [stdout] 13 | enum Status {
[INFO] [stdout]    | ----------- variant or associated item `InProgress` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 97 |         let status = Status::InProgress;
[INFO] [stdout]    |                              ^^^^^^^^^^ variant or associated item not found in `Status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `InProgress` found for enum `Status` in the current scope
[INFO] [stdout]    --> exercises/05_ticket_v2/01_enum/src/lib.rs:118:29
[INFO] [stdout]     |
[INFO] [stdout]  13 | enum Status {
[INFO] [stdout]     | ----------- variant or associated item `InProgress` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 118 |             status: Status::InProgress,
[INFO] [stdout]     |                             ^^^^^^^^^^ variant or associated item not found in `Status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant or associated item named `Done` found for enum `Status` in the current scope
[INFO] [stdout]    --> exercises/05_ticket_v2/01_enum/src/lib.rs:123:29
[INFO] [stdout]     |
[INFO] [stdout]  13 | enum Status {
[INFO] [stdout]     | ----------- variant or associated item `Done` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 123 |             status: Status::Done,
[INFO] [stdout]     |                             ^^^^ variant or associated item not found in `Status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `enum_` (lib test) due to 6 previous errors
[INFO] [stdout] For more information about this error, try `rustc --explain E0599`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `TicketNewError` doesn't implement `std::fmt::Display`
[INFO] [stdout]   --> exercises/05_ticket_v2/12_thiserror/src/lib.rs:62:24
[INFO] [stdout]    |
[INFO] [stdout]  6 | enum TicketNewError {
[INFO] [stdout]    | ------------------- method `to_string` not found for this enum because it doesn't satisfy `TicketNewError: ToString` or `TicketNewError: std::fmt::Display`
[INFO] [stdout] ...
[INFO] [stdout] 62 |         assert_eq!(err.to_string(), "Title cannot be empty");
[INFO] [stdout]    |                        ^^^^^^^^^ method cannot be called on `TicketNewError` due to unsatisfied trait bounds
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `TicketNewError: std::fmt::Display`
[INFO] [stdout]            which is required by `TicketNewError: ToString`
[INFO] [stdout] note: the trait `std::fmt::Display` must be implemented
[INFO] [stdout]   --> /rustc/7b3da9103634dffd4f4365cfd8642427c781d99f/library/core/src/fmt/mod.rs:1186:0
[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 `to_string`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `ToString`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `TicketNewError` doesn't implement `std::fmt::Display`
[INFO] [stdout]   --> exercises/05_ticket_v2/12_thiserror/src/lib.rs:68:24
[INFO] [stdout]    |
[INFO] [stdout]  6 | enum TicketNewError {
[INFO] [stdout]    | ------------------- method `to_string` not found for this enum because it doesn't satisfy `TicketNewError: ToString` or `TicketNewError: std::fmt::Display`
[INFO] [stdout] ...
[INFO] [stdout] 68 |         assert_eq!(err.to_string(), "Description cannot be empty");
[INFO] [stdout]    |                        ^^^^^^^^^ method cannot be called on `TicketNewError` due to unsatisfied trait bounds
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `TicketNewError: std::fmt::Display`
[INFO] [stdout]            which is required by `TicketNewError: ToString`
[INFO] [stdout] note: the trait `std::fmt::Display` must be implemented
[INFO] [stdout]   --> /rustc/7b3da9103634dffd4f4365cfd8642427c781d99f/library/core/src/fmt/mod.rs:1186:0
[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 `to_string`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `ToString`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `TicketNewError` doesn't implement `std::fmt::Display`
[INFO] [stdout]   --> exercises/05_ticket_v2/12_thiserror/src/lib.rs:74:24
[INFO] [stdout]    |
[INFO] [stdout]  6 | enum TicketNewError {
[INFO] [stdout]    | ------------------- method `to_string` not found for this enum because it doesn't satisfy `TicketNewError: ToString` or `TicketNewError: std::fmt::Display`
[INFO] [stdout] ...
[INFO] [stdout] 74 |         assert_eq!(err.to_string(), "Title cannot be longer than 50 characters");
[INFO] [stdout]    |                        ^^^^^^^^^ method cannot be called on `TicketNewError` due to unsatisfied trait bounds
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `TicketNewError: std::fmt::Display`
[INFO] [stdout]            which is required by `TicketNewError: ToString`
[INFO] [stdout] note: the trait `std::fmt::Display` must be implemented
[INFO] [stdout]   --> /rustc/7b3da9103634dffd4f4365cfd8642427c781d99f/library/core/src/fmt/mod.rs:1186:0
[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 `to_string`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `ToString`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `TicketNewError` doesn't implement `std::fmt::Display`
[INFO] [stdout]   --> exercises/05_ticket_v2/12_thiserror/src/lib.rs:81:17
[INFO] [stdout]    |
[INFO] [stdout]  6 | enum TicketNewError {
[INFO] [stdout]    | ------------------- method `to_string` not found for this enum because it doesn't satisfy `TicketNewError: ToString` or `TicketNewError: std::fmt::Display`
[INFO] [stdout] ...
[INFO] [stdout] 81 |             err.to_string(),
[INFO] [stdout]    |                 ^^^^^^^^^ method cannot be called on `TicketNewError` due to unsatisfied trait bounds
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `TicketNewError: std::fmt::Display`
[INFO] [stdout]            which is required by `TicketNewError: ToString`
[INFO] [stdout] note: the trait `std::fmt::Display` must be implemented
[INFO] [stdout]   --> /rustc/7b3da9103634dffd4f4365cfd8642427c781d99f/library/core/src/fmt/mod.rs:1186:0
[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 `to_string`, perhaps you need to implement it:
[INFO] [stdout]            candidate #1: `ToString`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0599`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `thiserror_` (lib test) due to 4 previous errors
[INFO] running `Command { std: "docker" "inspect" "6ac00c277f62bd104b1038a013759124b49002dcd7d9eff4186da29b87b4985a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6ac00c277f62bd104b1038a013759124b49002dcd7d9eff4186da29b87b4985a", kill_on_drop: false }`
[INFO] [stdout] 6ac00c277f62bd104b1038a013759124b49002dcd7d9eff4186da29b87b4985a
