[INFO] cloning repository https://github.com/OreAkintobi/rust-learning [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/OreAkintobi/rust-learning" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FOreAkintobi%2Frust-learning", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FOreAkintobi%2Frust-learning'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 7e916ff048f51d2a73e84fdf5b06ca01280dfab5 [INFO] testing OreAkintobi/rust-learning against master#160e7623e8cbbf1feab2b6e2a24733a98c7bde9c for pr-145628-retry-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FOreAkintobi%2Frust-learning" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/OreAkintobi/rust-learning [INFO] finished tweaking git repo https://github.com/OreAkintobi/rust-learning [INFO] tweaked toml for git repo https://github.com/OreAkintobi/rust-learning written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/OreAkintobi/rust-learning on toolchain 160e7623e8cbbf1feab2b6e2a24733a98c7bde9c [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+160e7623e8cbbf1feab2b6e2a24733a98c7bde9c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/OreAkintobi/rust-learning 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" "+160e7623e8cbbf1feab2b6e2a24733a98c7bde9c" "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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+160e7623e8cbbf1feab2b6e2a24733a98c7bde9c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 3f27f698a233ddf41982466baf93d0c7b0fe0aa30cf3c8044fdd9234726e3da5 [INFO] running `Command { std: "docker" "start" "-a" "3f27f698a233ddf41982466baf93d0c7b0fe0aa30cf3c8044fdd9234726e3da5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3f27f698a233ddf41982466baf93d0c7b0fe0aa30cf3c8044fdd9234726e3da5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3f27f698a233ddf41982466baf93d0c7b0fe0aa30cf3c8044fdd9234726e3da5", kill_on_drop: false }` [INFO] [stdout] 3f27f698a233ddf41982466baf93d0c7b0fe0aa30cf3c8044fdd9234726e3da5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+160e7623e8cbbf1feab2b6e2a24733a98c7bde9c" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4f8e4064abfe68d82b06c7c561aba725f328f2c49210e27d9dd38aa13341026a [INFO] running `Command { std: "docker" "start" "-a" "4f8e4064abfe68d82b06c7c561aba725f328f2c49210e27d9dd38aa13341026a", kill_on_drop: false }` [INFO] [stderr] Compiling activities v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/bin/a24.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 12 | let data = vec![1, 2, 3, 4, 5]; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `structopt` [INFO] [stdout] --> src/bin/p2-example.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | use structopt::StructOpt; [INFO] [stdout] | ^^^^^^^^^ use of unresolved module or unlinked crate `structopt` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `structopt`, use `cargo add structopt` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `thiserror` [INFO] [stdout] --> src/bin/p2-example.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | use thiserror::Error; [INFO] [stdout] | ^^^^^^^^^ use of unresolved module or unlinked crate `thiserror` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `thiserror`, use `cargo add thiserror` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `thiserror` [INFO] [stdout] --> src/bin/a27.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use thiserror::Error; [INFO] [stdout] | ^^^^^^^^^ use of unresolved module or unlinked crate `thiserror` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `thiserror`, use `cargo add thiserror` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clamp` is never used [INFO] [stdout] --> src/bin/a22.rs:14:4 [INFO] [stdout] | [INFO] [stdout] 14 | fn clamp(n: i32, lower: i32, upper: i32) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `div` is never used [INFO] [stdout] --> src/bin/a22.rs:25:4 [INFO] [stdout] | [INFO] [stdout] 25 | fn div(a: i32, b: i32) -> Option { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `concat` is never used [INFO] [stdout] --> src/bin/a22.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn concat(first: &str, second: &str) -> String { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Color` is never used [INFO] [stdout] --> src/bin/a28.rs:13:6 [INFO] [stdout] | [INFO] [stdout] 13 | enum Color { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `error` in this scope [INFO] [stdout] --> src/bin/p2-example.rs:125:7 [INFO] [stdout] | [INFO] [stdout] 125 | #[error("id must be a number: {0}")] [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `from` in this scope [INFO] [stdout] --> src/bin/p2-example.rs:126:17 [INFO] [stdout] | [INFO] [stdout] 126 | InvalidId(#[from] std::num::ParseIntError), [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `error` in this scope [INFO] [stdout] --> src/bin/p2-example.rs:127:7 [INFO] [stdout] | [INFO] [stdout] 127 | #[error("empty record")] [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `error` in this scope [INFO] [stdout] --> src/bin/p2-example.rs:129:7 [INFO] [stdout] | [INFO] [stdout] 129 | #[error("missing field: {0}")] [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/bin/a23.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 11 | fn part_1() -> bool { [INFO] [stdout] | ---- expected `bool` because of return type [INFO] [stdout] ... [INFO] [stdout] 16 | maybe_access("admin") [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ expected `bool`, found `Option` [INFO] [stdout] | [INFO] [stdout] = note: expected type `bool` [INFO] [stdout] found enum `Option` [INFO] [stdout] help: use `Option::is_some` to test if the `Option` has a value [INFO] [stdout] | [INFO] [stdout] 16 | maybe_access("admin").is_some() [INFO] [stdout] | ++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `structopt` in this scope [INFO] [stdout] --> src/bin/p2-example.rs:259:3 [INFO] [stdout] | [INFO] [stdout] 259 | #[structopt(about = "project 2: contact manager")] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/bin/a23.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 26 | fn part_3() -> Access { [INFO] [stdout] | ------ expected `Access` because of return type [INFO] [stdout] ... [INFO] [stdout] 29 | maybe_access("Alice") [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ expected `Access`, found `Option` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Access` [INFO] [stdout] found enum `Option` [INFO] [stdout] help: consider using `Option::expect` to unwrap the `Option` value, panicking if the value is an `Option::None` [INFO] [stdout] | [INFO] [stdout] 29 | maybe_access("Alice").expect("REASON") [INFO] [stdout] | +++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `structopt` in this scope [INFO] [stdout] --> src/bin/p2-example.rs:261:7 [INFO] [stdout] | [INFO] [stdout] 261 | #[structopt(short, parse(from_os_str), default_value = "p2_data.csv")] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `error` in this scope [INFO] [stdout] --> src/bin/a27.rs:18:7 [INFO] [stdout] | [INFO] [stdout] 18 | #[error("menu item not found")] [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `structopt` in this scope [INFO] [stdout] --> src/bin/p2-example.rs:263:7 [INFO] [stdout] | [INFO] [stdout] 263 | #[structopt(subcommand)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `error` in this scope [INFO] [stdout] --> src/bin/a27.rs:24:7 [INFO] [stdout] | [INFO] [stdout] 24 | #[error("divide by zero error")] [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `structopt` in this scope [INFO] [stdout] --> src/bin/p2-example.rs:265:7 [INFO] [stdout] | [INFO] [stdout] 265 | #[structopt(short, help = "verbose")] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `structopt` in this scope [INFO] [stdout] --> src/bin/p2-example.rs:273:11 [INFO] [stdout] | [INFO] [stdout] 273 | #[structopt(short)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0308`. [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `structopt` in this scope [INFO] [stdout] --> src/bin/p2-example.rs:279:11 [INFO] [stdout] | [INFO] [stdout] 279 | #[structopt(short)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `activities` (bin "a23") due to 2 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `ProgramError` [INFO] [stdout] --> src/bin/a27.rs:47:23 [INFO] [stdout] | [INFO] [stdout] 45 | fn run(step: i32) -> Result<(), ProgramError> { [INFO] [stdout] | ------------------------ expected `ProgramError` because of this [INFO] [stdout] 46 | if step == 1 { [INFO] [stdout] 47 | pick_menu("4")?; [INFO] [stdout] | --------------^ the trait `From` is not implemented for `ProgramError` [INFO] [stdout] | | [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, MenuError>` [INFO] [stdout] | [INFO] [stdout] note: `ProgramError` needs to implement `From` [INFO] [stdout] --> src/bin/a27.rs:14:1 [INFO] [stdout] | [INFO] [stdout] 14 | enum ProgramError {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: alternatively, `MenuError` needs to implement `Into` [INFO] [stdout] --> src/bin/a27.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | enum MenuError { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `ProgramError` [INFO] [stdout] --> src/bin/a27.rs:49:21 [INFO] [stdout] | [INFO] [stdout] 45 | fn run(step: i32) -> Result<(), ProgramError> { [INFO] [stdout] | ------------------------ expected `ProgramError` because of this [INFO] [stdout] ... [INFO] [stdout] 49 | divide(1, 0)?; [INFO] [stdout] | ------------^ the trait `From` is not implemented for `ProgramError` [INFO] [stdout] | | [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, MathError>` [INFO] [stdout] | [INFO] [stdout] note: `ProgramError` needs to implement `From` [INFO] [stdout] --> src/bin/a27.rs:14:1 [INFO] [stdout] | [INFO] [stdout] 14 | enum ProgramError {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: alternatively, `MathError` needs to implement `Into` [INFO] [stdout] --> src/bin/a27.rs:23:1 [INFO] [stdout] | [INFO] [stdout] 23 | enum MathError { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `ProgramError` doesn't implement `Debug` [INFO] [stdout] --> src/bin/a27.rs:55:22 [INFO] [stdout] | [INFO] [stdout] 55 | println!("{:?}", run(1)); [INFO] [stdout] | ---- ^^^^^^ `ProgramError` cannot be formatted using `{:?}` because it doesn't implement `Debug` [INFO] [stdout] | | [INFO] [stdout] | required by this formatting parameter [INFO] [stdout] | [INFO] [stdout] = help: the trait `Debug` is not implemented for `ProgramError` [INFO] [stdout] = note: add `#[derive(Debug)]` to `ProgramError` or manually `impl Debug for ProgramError` [INFO] [stdout] = help: the trait `Debug` is implemented for `Result` [INFO] [stdout] = note: required for `Result<(), ProgramError>` to implement `Debug` [INFO] [stdout] = note: this error originates in the macro `$crate::format_args_nl` which comes from the expansion of the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `ProgramError` with `#[derive(Debug)]` [INFO] [stdout] | [INFO] [stdout] 14 + #[derive(Debug)] [INFO] [stdout] 15 | enum ProgramError {} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `ProgramError` doesn't implement `Debug` [INFO] [stdout] --> src/bin/a27.rs:56:22 [INFO] [stdout] | [INFO] [stdout] 56 | println!("{:?}", run(2)); [INFO] [stdout] | ---- ^^^^^^ `ProgramError` cannot be formatted using `{:?}` because it doesn't implement `Debug` [INFO] [stdout] | | [INFO] [stdout] | required by this formatting parameter [INFO] [stdout] | [INFO] [stdout] = help: the trait `Debug` is not implemented for `ProgramError` [INFO] [stdout] = note: add `#[derive(Debug)]` to `ProgramError` or manually `impl Debug for ProgramError` [INFO] [stdout] = help: the trait `Debug` is implemented for `Result` [INFO] [stdout] = note: required for `Result<(), ProgramError>` to implement `Debug` [INFO] [stdout] = note: this error originates in the macro `$crate::format_args_nl` which comes from the expansion of the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `ProgramError` with `#[derive(Debug)]` [INFO] [stdout] | [INFO] [stdout] 14 + #[derive(Debug)] [INFO] [stdout] 15 | enum ProgramError {} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0432. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stdout] error[E0277]: `?` couldn't convert the error to `ParseError` [INFO] [stdout] --> src/bin/p2-example.rs:149:48 [INFO] [stdout] | [INFO] [stdout] 134 | fn parse_record(record: &str) -> Result { [INFO] [stdout] | -------------------------- expected `ParseError` because of this [INFO] [stdout] ... [INFO] [stdout] 149 | Some(id) => i64::from_str_radix(id, 10)?, [INFO] [stdout] | ---------------------------^ the trait `From` is not implemented for `ParseError` [INFO] [stdout] | | [INFO] [stdout] | this can't be annotated with `?` because it has type `Result<_, ParseIntError>` [INFO] [stdout] | [INFO] [stdout] note: `ParseError` needs to implement `From` [INFO] [stdout] --> src/bin/p2-example.rs:124:1 [INFO] [stdout] | [INFO] [stdout] 124 | enum ParseError { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `activities` (bin "a27") due to 7 previous errors [INFO] [stdout] error[E0277]: `ParseError` doesn't implement `std::fmt::Display` [INFO] [stdout] --> src/bin/p2-example.rs:196:29 [INFO] [stdout] | [INFO] [stdout] 194 | ... "error on line number {}: {}\n > \"{}\"\n", [INFO] [stdout] | -- required by this formatting parameter [INFO] [stdout] 195 | ... num + 1, [INFO] [stdout] 196 | ... e, [INFO] [stdout] | ^ `ParseError` cannot be formatted with the default formatter [INFO] [stdout] | [INFO] [stdout] help: the trait `std::fmt::Display` is not implemented for `ParseError` [INFO] [stdout] --> src/bin/p2-example.rs:124:1 [INFO] [stdout] | [INFO] [stdout] 124 | enum ParseError { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead [INFO] [stdout] = note: this error originates in the macro `$crate::format_args_nl` which comes from the expansion of the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `from_args` found for struct `Opt` in the current scope [INFO] [stdout] --> src/bin/p2-example.rs:340:20 [INFO] [stdout] | [INFO] [stdout] 260 | struct Opt { [INFO] [stdout] | ---------- function or associated item `from_args` not found for this struct [INFO] [stdout] ... [INFO] [stdout] 340 | let opt = Opt::from_args(); [INFO] [stdout] | ^^^^^^^^^ function or associated item not found in `Opt` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0432, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: could not compile `activities` (bin "p2-example") due to 15 previous errors [INFO] running `Command { std: "docker" "inspect" "4f8e4064abfe68d82b06c7c561aba725f328f2c49210e27d9dd38aa13341026a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4f8e4064abfe68d82b06c7c561aba725f328f2c49210e27d9dd38aa13341026a", kill_on_drop: false }` [INFO] [stdout] 4f8e4064abfe68d82b06c7c561aba725f328f2c49210e27d9dd38aa13341026a