[INFO] cloning repository https://github.com/Shaka-h/library-management-system-in-rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Shaka-h/library-management-system-in-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FShaka-h%2Flibrary-management-system-in-rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FShaka-h%2Flibrary-management-system-in-rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d38c41490eb9b696c2464a1358f8bb43b1b851d2 [INFO] testing Shaka-h/library-management-system-in-rust/d38c41490eb9b696c2464a1358f8bb43b1b851d2 against nightly-2024-10-28+rustflags=-Zrandomize-layout for randomize-layout [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FShaka-h%2Flibrary-management-system-in-rust" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Shaka-h/library-management-system-in-rust on toolchain nightly-2024-10-28 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-10-28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Shaka-h/library-management-system-in-rust [INFO] finished tweaking git repo https://github.com/Shaka-h/library-management-system-in-rust [INFO] tweaked toml for git repo https://github.com/Shaka-h/library-management-system-in-rust written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/Shaka-h/library-management-system-in-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" "+nightly-2024-10-28" "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-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 93dd278b6c89ce39e07bfeb67ae0a9b07fd0c32c4ad4e0fa1e8791e2095b78b4 [INFO] running `Command { std: "docker" "start" "-a" "93dd278b6c89ce39e07bfeb67ae0a9b07fd0c32c4ad4e0fa1e8791e2095b78b4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "93dd278b6c89ce39e07bfeb67ae0a9b07fd0c32c4ad4e0fa1e8791e2095b78b4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "93dd278b6c89ce39e07bfeb67ae0a9b07fd0c32c4ad4e0fa1e8791e2095b78b4", kill_on_drop: false }` [INFO] [stdout] 93dd278b6c89ce39e07bfeb67ae0a9b07fd0c32c4ad4e0fa1e8791e2095b78b4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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 -Zrandomize-layout" "-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4fba8cfc5ba491f12236a90dd4db69c0ea5302c4eb10caeb01e92e95bcbb2b9c [INFO] running `Command { std: "docker" "start" "-a" "4fba8cfc5ba491f12236a90dd4db69c0ea5302c4eb10caeb01e92e95bcbb2b9c", kill_on_drop: false }` [INFO] [stderr] Compiling library_management_system v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0106]: missing lifetime specifier [INFO] [stdout] --> src/books.rs:30:95 [INFO] [stdout] | [INFO] [stdout] 30 | pub fn publish_book (name: String, author: String, year: u16, copies: u32, votes: u32) -> Book { [INFO] [stdout] | ^^^^ expected named lifetime parameter [INFO] [stdout] | [INFO] [stdout] = help: this function's return type contains a borrowed value, but there is no value for it to be borrowed from [INFO] [stdout] help: consider using the `'a` lifetime [INFO] [stdout] | [INFO] [stdout] 30 | pub fn publish_book (name: String, author: String, year: u16, copies: u32, votes: u32) -> Book<'a> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0106]: missing lifetime specifier [INFO] [stdout] --> src/patron.rs:14:37 [INFO] [stdout] | [INFO] [stdout] 14 | pub borrowed_books: Vec<&'a mut Book>, // Use the same lifetime here [INFO] [stdout] | ^^^^ expected named lifetime parameter [INFO] [stdout] | [INFO] [stdout] help: consider using the `'a` lifetime [INFO] [stdout] | [INFO] [stdout] 14 | pub borrowed_books: Vec<&'a mut Book<'a>>, // Use the same lifetime here [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `author::Author` [INFO] [stdout] --> src/patron.rs:3:13 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::{author::Author, books::{Book, BookStatus}}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/books.rs:39:23 [INFO] [stdout] | [INFO] [stdout] 39 | borrower: null() [INFO] [stdout] | ^^^^^^ expected `&mut Patron`, found `*const _` [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut Patron` [INFO] [stdout] found raw pointer `*const _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/patron.rs:49:29 [INFO] [stdout] | [INFO] [stdout] 49 | book.borrower = null(); [INFO] [stdout] | ------------- ^^^^^^ expected `&mut Patron`, found `*const _` [INFO] [stdout] | | [INFO] [stdout] | expected due to the type of this binding [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut Patron` [INFO] [stdout] found raw pointer `*const _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0621]: explicit lifetime required in the type of `book` [INFO] [stdout] --> src/books.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 46 | pub fn add_book(&mut self, book:&'a mut Book) { [INFO] [stdout] | ------------ help: add explicit lifetime `'a` to the type of `book`: `&'a mut Book<'a>` [INFO] [stdout] 47 | self.book.push(book); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ lifetime `'a` required [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0594]: cannot assign to `book.status`, which is behind a `&` reference [INFO] [stdout] --> src/patron.rs:37:13 [INFO] [stdout] | [INFO] [stdout] 37 | book.status = BookStatus::Available; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `book` is a `&` reference, so the data it refers to cannot be written [INFO] [stdout] | [INFO] [stdout] help: consider changing this to be a mutable reference [INFO] [stdout] | [INFO] [stdout] 31 | pub fn borrow_book (&mut self, book: &mut Book, patron: &mut Patron){ [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> src/patron.rs:38:13 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn borrow_book (&mut self, book: &Book, patron: &mut Patron){ [INFO] [stdout] | ---- - let's call the lifetime of this reference `'1` [INFO] [stdout] | | [INFO] [stdout] | has type `&Book<'2>` [INFO] [stdout] ... [INFO] [stdout] 38 | book.borrower = patron; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ assignment requires that `'1` must outlive `'2` [INFO] [stdout] | [INFO] [stdout] help: consider introducing a named lifetime parameter and update trait if needed [INFO] [stdout] | [INFO] [stdout] 31 | pub fn borrow_book<'b> (&mut self, book: &Book<'b>, patron: &'b mut Patron){ [INFO] [stdout] | ++++ ++++ ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0594]: cannot assign to `book.borrower`, which is behind a `&` reference [INFO] [stdout] --> src/patron.rs:38:13 [INFO] [stdout] | [INFO] [stdout] 38 | book.borrower = patron; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ `book` is a `&` reference, so the data it refers to cannot be written [INFO] [stdout] | [INFO] [stdout] help: consider changing this to be a mutable reference [INFO] [stdout] | [INFO] [stdout] 31 | pub fn borrow_book (&mut self, book: &mut Book, patron: &mut Patron){ [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0106, E0308, E0594, E0621. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0106`. [INFO] [stdout] [INFO] [stderr] error: could not compile `library_management_system` (bin "library_management_system") due to 8 previous errors; 1 warning emitted [INFO] running `Command { std: "docker" "inspect" "4fba8cfc5ba491f12236a90dd4db69c0ea5302c4eb10caeb01e92e95bcbb2b9c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4fba8cfc5ba491f12236a90dd4db69c0ea5302c4eb10caeb01e92e95bcbb2b9c", kill_on_drop: false }` [INFO] [stdout] 4fba8cfc5ba491f12236a90dd4db69c0ea5302c4eb10caeb01e92e95bcbb2b9c