[INFO] cloning repository https://github.com/danhaw/projcli
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/danhaw/projcli" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdanhaw%2Fprojcli", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdanhaw%2Fprojcli'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d7113a966300a6eb4553aff67a094816a9a7a91d
[INFO] checking danhaw/projcli against master#bca37a20bd376ce3fd138e7cdee7fe704e0f8814 for pr-139493-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdanhaw%2Fprojcli" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/danhaw/projcli
[INFO] finished tweaking git repo https://github.com/danhaw/projcli
[INFO] tweaked toml for git repo https://github.com/danhaw/projcli written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/danhaw/projcli on toolchain bca37a20bd376ce3fd138e7cdee7fe704e0f8814
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/danhaw/projcli 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" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded pin-project-lite v0.1.7
[INFO] [stderr]   Downloaded subtle v2.2.3
[INFO] [stderr]   Downloaded futures-core v0.3.5
[INFO] [stderr]   Downloaded futures-macro v0.3.5
[INFO] [stderr]   Downloaded instant v0.1.6
[INFO] [stderr]   Downloaded siphasher v0.3.3
[INFO] [stderr]   Downloaded futures-task v0.3.5
[INFO] [stderr]   Downloaded futures-executor v0.3.5
[INFO] [stderr]   Downloaded async-trait v0.1.36
[INFO] [stderr]   Downloaded proc-macro-hack v0.5.16
[INFO] [stderr]   Downloaded futures-channel v0.3.5
[INFO] [stderr]   Downloaded futures v0.3.5
[INFO] [stderr]   Downloaded pin-project v0.4.22
[INFO] [stderr]   Downloaded aho-corasick v0.7.13
[INFO] [stderr]   Downloaded futures-util v0.3.5
[INFO] [stderr]   Downloaded smallvec v1.4.1
[INFO] [stderr]   Downloaded chrono v0.4.13
[INFO] [stderr]   Downloaded regex v1.3.9
[INFO] [stderr]   Downloaded unicode-normalization v0.1.13
[INFO] [stderr]   Downloaded syn v1.0.34
[INFO] [stderr]   Downloaded proc-macro2 v1.0.19
[INFO] [stderr]   Downloaded parking_lot_core v0.8.0
[INFO] [stderr]   Downloaded parking_lot v0.11.0
[INFO] [stderr]   Downloaded generic-array v0.14.3
[INFO] [stderr]   Downloaded regex-syntax v0.6.18
[INFO] [stderr]   Downloaded sha2 v0.9.1
[INFO] [stderr]   Downloaded postgres-types v0.1.2
[INFO] [stderr]   Downloaded cloudabi v0.1.0
[INFO] [stderr]   Downloaded tinyvec v0.3.3
[INFO] [stderr]   Downloaded tokio v0.2.21
[INFO] [stderr]   Downloaded postgres-protocol v0.5.2
[INFO] [stderr]   Downloaded futures-io v0.3.5
[INFO] [stderr]   Downloaded pin-project-internal v0.4.22
[INFO] [stderr]   Downloaded libc v0.2.72
[INFO] [stderr]   Downloaded proc-macro-nested v0.1.6
[INFO] [stderr]   Downloaded lock_api v0.4.1
[INFO] [stderr]   Downloaded ppv-lite86 v0.2.8
[INFO] [stderr]   Downloaded futures-sink v0.3.5
[INFO] [stderr]   Downloaded postgres v0.17.5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 693bdf57aac0594fe1cbbee512e97b9c112afab7dd39b653bb8abe5c6415a651
[INFO] running `Command { std: "docker" "start" "-a" "693bdf57aac0594fe1cbbee512e97b9c112afab7dd39b653bb8abe5c6415a651", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "693bdf57aac0594fe1cbbee512e97b9c112afab7dd39b653bb8abe5c6415a651", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "693bdf57aac0594fe1cbbee512e97b9c112afab7dd39b653bb8abe5c6415a651", kill_on_drop: false }`
[INFO] [stdout] 693bdf57aac0594fe1cbbee512e97b9c112afab7dd39b653bb8abe5c6415a651
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a496f8a8f5fca206c6fbbc302dbd10d48fe8ecb842a16a6ebc83aa33045dfc5e
[INFO] running `Command { std: "docker" "start" "-a" "a496f8a8f5fca206c6fbbc302dbd10d48fe8ecb842a16a6ebc83aa33045dfc5e", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.72
[INFO] [stderr]    Compiling memchr v2.3.3
[INFO] [stderr]    Compiling proc-macro2 v1.0.19
[INFO] [stderr]    Compiling typenum v1.12.0
[INFO] [stderr]    Compiling version_check v0.9.2
[INFO] [stderr]    Compiling syn v1.0.34
[INFO] [stderr]    Compiling getrandom v0.1.14
[INFO] [stderr]    Compiling pin-project-internal v0.4.22
[INFO] [stderr]     Checking futures-core v0.3.5
[INFO] [stderr]    Compiling log v0.4.11
[INFO] [stderr]     Checking futures-sink v0.3.5
[INFO] [stderr]    Compiling proc-macro-nested v0.1.6
[INFO] [stderr]     Checking subtle v2.2.3
[INFO] [stderr]     Checking ppv-lite86 v0.2.8
[INFO] [stderr]    Compiling proc-macro-hack v0.5.16
[INFO] [stderr]     Checking tinyvec v0.3.3
[INFO] [stderr]     Checking once_cell v1.4.0
[INFO] [stderr]    Compiling generic-array v0.14.3
[INFO] [stderr]     Checking futures-task v0.3.5
[INFO] [stderr]     Checking futures-channel v0.3.5
[INFO] [stderr]     Checking unicode-normalization v0.1.13
[INFO] [stderr]     Checking net2 v0.2.34
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]    Compiling quote v1.0.7
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking cpuid-bool v0.1.2
[INFO] [stderr]     Checking futures-io v0.3.5
[INFO] [stderr]     Checking mio v0.6.22
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]    Compiling num-traits v0.2.12
[INFO] [stderr]     Checking siphasher v0.3.3
[INFO] [stderr]     Checking base64 v0.12.3
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking smallvec v1.4.1
[INFO] [stderr]     Checking pin-project-lite v0.1.7
[INFO] [stderr]     Checking instant v0.1.6
[INFO] [stderr]     Checking phf_shared v0.8.0
[INFO] [stderr]     Checking stringprep v0.1.2
[INFO] [stderr]     Checking lock_api v0.4.1
[INFO] [stderr]     Checking digest v0.9.0
[INFO] [stderr]     Checking block-buffer v0.9.0
[INFO] [stderr]     Checking crypto-mac v0.8.0
[INFO] [stderr]     Checking mio-uds v0.6.8
[INFO] [stderr]     Checking parking_lot_core v0.8.0
[INFO] [stderr]     Checking sha2 v0.9.1
[INFO] [stderr]     Checking hmac v0.8.1
[INFO] [stderr]    Compiling num-integer v0.1.43
[INFO] [stderr]     Checking tokio v0.2.21
[INFO] [stderr]     Checking phf v0.8.0
[INFO] [stderr]     Checking time v0.1.43
[INFO] [stderr]     Checking aho-corasick v0.7.13
[INFO] [stderr]     Checking parking_lot v0.11.0
[INFO] [stderr]     Checking regex-syntax v0.6.18
[INFO] [stderr]     Checking postgres-protocol v0.5.2
[INFO] [stderr]     Checking chrono v0.4.13
[INFO] [stderr]     Checking postgres-types v0.1.2
[INFO] [stderr]     Checking tokio-util v0.3.1
[INFO] [stderr]     Checking regex v1.3.9
[INFO] [stderr]    Compiling futures-macro v0.3.5
[INFO] [stderr]    Compiling async-trait v0.1.36
[INFO] [stderr]     Checking pin-project v0.4.22
[INFO] [stderr]     Checking futures-util v0.3.5
[INFO] [stderr]     Checking futures-executor v0.3.5
[INFO] [stderr]     Checking futures v0.3.5
[INFO] [stderr]     Checking tokio-postgres v0.5.5
[INFO] [stderr]     Checking postgres v0.17.5
[INFO] [stderr]     Checking projcli v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Client`
[INFO] [stdout]  --> src/main.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | use postgres::{Error, Client};
[INFO] [stdout]   |                       ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Datelike` and `Timelike`
[INFO] [stdout]  --> src/main.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use chrono::{DateTime, Datelike, Timelike, Utc};
[INFO] [stdout]   |                        ^^^^^^^^  ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Client`
[INFO] [stdout]  --> src/main.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | use postgres::{Error, Client};
[INFO] [stdout]   |                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Medium` and `Low` are never constructed
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | enum Priority {
[INFO] [stdout]    |      -------- variants in this enum
[INFO] [stdout]  9 |     High,
[INFO] [stdout] 10 |     Medium,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 11 |     Low,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Priority` 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: variants `InProgress` and `Done` are never constructed
[INFO] [stdout]   --> src/main.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Status {
[INFO] [stdout]    |      ------ variants in this enum
[INFO] [stdout] 15 |     Todo,
[INFO] [stdout] 16 |     InProgress,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 17 |     Done,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/main.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | enum Color {
[INFO] [stdout]    |      ----- variants in this enum
[INFO] [stdout] 22 |     Black,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 23 |     Red,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 24 |     Green,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 25 |     Yellow,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 26 |     Blue,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 27 |     Magenta,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 28 |     Cyan,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 29 |     White,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 30 |     BrightBlack,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 31 |     BrightRed,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 32 |     BrightGreen,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 33 |     BrightYellow,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 34 |     BrightBlue,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 35 |     BrightMagenta,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 36 |     BrightCyan,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 37 |     BrightWhite,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 38 |     TrueColor { r: u8, g: u8, b: u8 },
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Remindable` is never used
[INFO] [stdout]   --> src/main.rs:43:7
[INFO] [stdout]    |
[INFO] [stdout] 43 | trait Remindable<'a> {
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Reminder` is never constructed
[INFO] [stdout]   --> src/main.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | struct Reminder<'a> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/main.rs:52:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | impl<'a> Reminder<'a> {
[INFO] [stdout]    | --------------------- associated function in this implementation
[INFO] [stdout] 52 |     fn new(reminder_date: DateTime<Utc>, message: &'a str) -> Reminder<'a> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `title`, `body`, `created_at`, and `updated_at` are never read
[INFO] [stdout]   --> src/main.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 59 | struct Note<'a> {
[INFO] [stdout]    |        ---- fields in this struct
[INFO] [stdout] 60 |     id: u32,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 61 |     title: &'a str,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 62 |     body: &'a str,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 63 |     created_at: DateTime<Utc>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 64 |     updated_at: DateTime<Utc>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Note` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `edit_title`, and `edit_body` are never used
[INFO] [stdout]   --> src/main.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 75 | impl<'a> Note<'a> {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout] 76 |     fn new(title: &'a str, body: &'a str) -> Note<'a> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 86 |     fn edit_title(&mut self, new_title: &'a str) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91 |     fn edit_body(&mut self, new_body: &'a str) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `title`, `description`, and `color` are never read
[INFO] [stdout]    --> src/main.rs:98:5
[INFO] [stdout]     |
[INFO] [stdout]  97 | struct Tag<'a> {
[INFO] [stdout]     |        --- fields in this struct
[INFO] [stdout]  98 |     id: u32,
[INFO] [stdout]     |     ^^
[INFO] [stdout]  99 |     title: &'a str,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 100 |     description: Option<&'a str>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 101 |     color: Color,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start_date` and `end_date` are never read
[INFO] [stdout]    --> src/main.rs:106:5
[INFO] [stdout]     |
[INFO] [stdout] 104 | struct Duration {
[INFO] [stdout]     |        -------- fields in this struct
[INFO] [stdout] 105 |     // start_date: datetime
[INFO] [stdout] 106 |     start_date: DateTime<Utc>,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 107 |     end_date: DateTime<Utc>,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_duration_days`, `get_duration_weeks`, `remaining_days_from_now`, and `remaining_weeks_from_now` are never used
[INFO] [stdout]    --> src/main.rs:110:8
[INFO] [stdout]     |
[INFO] [stdout] 109 | impl Duration {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 110 |     fn new(start_date: DateTime<Utc>, end_date: DateTime<Utc>) -> Duration {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     fn get_duration_days(&self) -> u32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     fn get_duration_weeks(&self) -> u32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 127 |     fn remaining_days_from_now(&self) -> Option<u32> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 137 |     fn remaining_weeks_from_now(&self) -> Option<u32> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `title`, `is_completed`, `created_at`, and `completed_at` are never read
[INFO] [stdout]    --> src/main.rs:150:5
[INFO] [stdout]     |
[INFO] [stdout] 149 | struct TodoItem<'a> {
[INFO] [stdout]     |        -------- fields in this struct
[INFO] [stdout] 150 |     id: u32,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 151 |     title: &'a str,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 152 |     is_completed: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 153 |     created_at: DateTime<Utc>,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 154 |     completed_at: Option<DateTime<Utc>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TodoItem` 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: associated items `new` and `set_completed` are never used
[INFO] [stdout]    --> src/main.rs:158:8
[INFO] [stdout]     |
[INFO] [stdout] 157 | impl<'a> TodoItem<'a> {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] 158 |     fn new(title: &'a str) -> TodoItem<'a> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     fn set_completed(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `title`, `items`, `created_at`, and `updated_at` are never read
[INFO] [stdout]    --> src/main.rs:175:5
[INFO] [stdout]     |
[INFO] [stdout] 174 | struct TodoList<'a> {
[INFO] [stdout]     |        -------- fields in this struct
[INFO] [stdout] 175 |     id: u32,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 176 |     title: &'a str,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 177 |     items: Vec<TodoItem<'a>>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 178 |     created_at: DateTime<Utc>,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 179 |     updated_at: DateTime<Utc>,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_todo_item`, `get_completed_items`, and `get_uncompleted_items` are never used
[INFO] [stdout]    --> src/main.rs:183:8
[INFO] [stdout]     |
[INFO] [stdout] 182 | impl<'a> TodoList<'a> {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] 183 |     fn new(title: &'a str) -> TodoList<'a> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 |     fn add_todo_item(&mut self, title: &'a str) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 |     fn get_completed_items(&self) -> Vec<TodoItem> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 208 |     fn get_uncompleted_items(&self) -> Vec<TodoItem> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `notes`, `todo_lists`, `duration`, `tags`, and `status` are never read
[INFO] [stdout]    --> src/main.rs:220:5
[INFO] [stdout]     |
[INFO] [stdout] 217 | struct Project<'a> {
[INFO] [stdout]     |        ------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 220 |     notes: Vec<Note<'a>>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 221 |     todo_lists: Vec<TodoList<'a>>,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 222 |     duration: Option<Duration>,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 223 |     priority: Option<Priority>,
[INFO] [stdout] 224 |     tags: Vec<Tag<'a>>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 225 |     status: Option<Status>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `duration`, `add_tag`, `add_note`, and `add_todo_list` are never used
[INFO] [stdout]    --> src/main.rs:248:8
[INFO] [stdout]     |
[INFO] [stdout] 229 | impl<'a> Project<'a> {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 248 |     fn duration(&mut self, start_date: DateTime<Utc>, end_date: DateTime<Utc>) -> &mut Project<'a> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 258 |     fn add_tag(&mut self, tag: Tag<'a>) -> &mut Project<'a> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 263 |     fn add_note(&mut self, note: Note<'a>) -> &mut Project<'a> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 268 |     fn add_todo_list(&mut self, todo_list: TodoList<'a>) -> &mut Project<'a> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_table_data` is never used
[INFO] [stdout]   --> src/database.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl PgDatabase {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn get_table_data(&mut self, table_name: &str) -> Result<Vec<Row>, Error> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/main.rs:44:63
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn set_reminder(date: DateTime<Utc>, message: &'a str) -> Reminder;
[INFO] [stdout]    |                                                    --         ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                                    |
[INFO] [stdout]    |                                                    the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn set_reminder(date: DateTime<Utc>, message: &'a str) -> Reminder<'a>;
[INFO] [stdout]    |                                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/main.rs:201:28
[INFO] [stdout]     |
[INFO] [stdout] 201 |     fn get_completed_items(&self) -> Vec<TodoItem> {
[INFO] [stdout]     |                            ^^^^^         ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 201 |     fn get_completed_items(&self) -> Vec<TodoItem<'_>> {
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/main.rs:208:30
[INFO] [stdout]     |
[INFO] [stdout] 208 |     fn get_uncompleted_items(&self) -> Vec<TodoItem> {
[INFO] [stdout]     |                              ^^^^^         ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 208 |     fn get_uncompleted_items(&self) -> Vec<TodoItem<'_>> {
[INFO] [stdout]     |                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/main.rs:289:26
[INFO] [stdout]     |
[INFO] [stdout] 289 |         Err(e) => panic!(e),
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 289 |         Err(e) => panic!("{}", e),
[INFO] [stdout]     |                          +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 289 -         Err(e) => panic!(e),
[INFO] [stdout] 289 +         Err(e) => std::panic::panic_any(e),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Medium` and `Low` are never constructed
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | enum Priority {
[INFO] [stdout]    |      -------- variants in this enum
[INFO] [stdout]  9 |     High,
[INFO] [stdout] 10 |     Medium,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 11 |     Low,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Priority` 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: variants `InProgress` and `Done` are never constructed
[INFO] [stdout]   --> src/main.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | enum Status {
[INFO] [stdout]    |      ------ variants in this enum
[INFO] [stdout] 15 |     Todo,
[INFO] [stdout] 16 |     InProgress,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 17 |     Done,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/main.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | enum Color {
[INFO] [stdout]    |      ----- variants in this enum
[INFO] [stdout] 22 |     Black,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 23 |     Red,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 24 |     Green,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 25 |     Yellow,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 26 |     Blue,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 27 |     Magenta,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 28 |     Cyan,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 29 |     White,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 30 |     BrightBlack,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 31 |     BrightRed,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 32 |     BrightGreen,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 33 |     BrightYellow,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 34 |     BrightBlue,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 35 |     BrightMagenta,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 36 |     BrightCyan,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 37 |     BrightWhite,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 38 |     TrueColor { r: u8, g: u8, b: u8 },
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Remindable` is never used
[INFO] [stdout]   --> src/main.rs:43:7
[INFO] [stdout]    |
[INFO] [stdout] 43 | trait Remindable<'a> {
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Reminder` is never constructed
[INFO] [stdout]   --> src/main.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | struct Reminder<'a> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/main.rs:52:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | impl<'a> Reminder<'a> {
[INFO] [stdout]    | --------------------- associated function in this implementation
[INFO] [stdout] 52 |     fn new(reminder_date: DateTime<Utc>, message: &'a str) -> Reminder<'a> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/main.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 59 | struct Note<'a> {
[INFO] [stdout]    |        ---- field in this struct
[INFO] [stdout] 60 |     id: u32,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Note` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `title`, `description`, and `color` are never read
[INFO] [stdout]    --> src/main.rs:98:5
[INFO] [stdout]     |
[INFO] [stdout]  97 | struct Tag<'a> {
[INFO] [stdout]     |        --- fields in this struct
[INFO] [stdout]  98 |     id: u32,
[INFO] [stdout]     |     ^^
[INFO] [stdout]  99 |     title: &'a str,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 100 |     description: Option<&'a str>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 101 |     color: Color,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]    --> src/main.rs:150:5
[INFO] [stdout]     |
[INFO] [stdout] 149 | struct TodoItem<'a> {
[INFO] [stdout]     |        -------- field in this struct
[INFO] [stdout] 150 |     id: u32,
[INFO] [stdout]     |     ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TodoItem` 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: fields `id`, `title`, `items`, `created_at`, and `updated_at` are never read
[INFO] [stdout]    --> src/main.rs:175:5
[INFO] [stdout]     |
[INFO] [stdout] 174 | struct TodoList<'a> {
[INFO] [stdout]     |        -------- fields in this struct
[INFO] [stdout] 175 |     id: u32,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 176 |     title: &'a str,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 177 |     items: Vec<TodoItem<'a>>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 178 |     created_at: DateTime<Utc>,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 179 |     updated_at: DateTime<Utc>,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_todo_item`, `get_completed_items`, and `get_uncompleted_items` are never used
[INFO] [stdout]    --> src/main.rs:183:8
[INFO] [stdout]     |
[INFO] [stdout] 182 | impl<'a> TodoList<'a> {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] 183 |     fn new(title: &'a str) -> TodoList<'a> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 |     fn add_todo_item(&mut self, title: &'a str) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 |     fn get_completed_items(&self) -> Vec<TodoItem> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 208 |     fn get_uncompleted_items(&self) -> Vec<TodoItem> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `notes`, `todo_lists`, `duration`, `tags`, and `status` are never read
[INFO] [stdout]    --> src/main.rs:220:5
[INFO] [stdout]     |
[INFO] [stdout] 217 | struct Project<'a> {
[INFO] [stdout]     |        ------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 220 |     notes: Vec<Note<'a>>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 221 |     todo_lists: Vec<TodoList<'a>>,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 222 |     duration: Option<Duration>,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 223 |     priority: Option<Priority>,
[INFO] [stdout] 224 |     tags: Vec<Tag<'a>>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 225 |     status: Option<Status>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `duration`, `add_tag`, `add_note`, and `add_todo_list` are never used
[INFO] [stdout]    --> src/main.rs:248:8
[INFO] [stdout]     |
[INFO] [stdout] 229 | impl<'a> Project<'a> {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 248 |     fn duration(&mut self, start_date: DateTime<Utc>, end_date: DateTime<Utc>) -> &mut Project<'a> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 258 |     fn add_tag(&mut self, tag: Tag<'a>) -> &mut Project<'a> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 263 |     fn add_note(&mut self, note: Note<'a>) -> &mut Project<'a> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 268 |     fn add_todo_list(&mut self, todo_list: TodoList<'a>) -> &mut Project<'a> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_table_data` is never used
[INFO] [stdout]   --> src/database.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl PgDatabase {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn get_table_data(&mut self, table_name: &str) -> Result<Vec<Row>, Error> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/main.rs:44:63
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn set_reminder(date: DateTime<Utc>, message: &'a str) -> Reminder;
[INFO] [stdout]    |                                                    --         ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                                    |
[INFO] [stdout]    |                                                    the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn set_reminder(date: DateTime<Utc>, message: &'a str) -> Reminder<'a>;
[INFO] [stdout]    |                                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/main.rs:201:28
[INFO] [stdout]     |
[INFO] [stdout] 201 |     fn get_completed_items(&self) -> Vec<TodoItem> {
[INFO] [stdout]     |                            ^^^^^         ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 201 |     fn get_completed_items(&self) -> Vec<TodoItem<'_>> {
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/main.rs:208:30
[INFO] [stdout]     |
[INFO] [stdout] 208 |     fn get_uncompleted_items(&self) -> Vec<TodoItem> {
[INFO] [stdout]     |                              ^^^^^         ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 208 |     fn get_uncompleted_items(&self) -> Vec<TodoItem<'_>> {
[INFO] [stdout]     |                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/main.rs:289:26
[INFO] [stdout]     |
[INFO] [stdout] 289 |         Err(e) => panic!(e),
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 289 |         Err(e) => panic!("{}", e),
[INFO] [stdout]     |                          +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 289 -         Err(e) => panic!(e),
[INFO] [stdout] 289 +         Err(e) => std::panic::panic_any(e),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 29.13s
[INFO] running `Command { std: "docker" "inspect" "a496f8a8f5fca206c6fbbc302dbd10d48fe8ecb842a16a6ebc83aa33045dfc5e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a496f8a8f5fca206c6fbbc302dbd10d48fe8ecb842a16a6ebc83aa33045dfc5e", kill_on_drop: false }`
[INFO] [stdout] a496f8a8f5fca206c6fbbc302dbd10d48fe8ecb842a16a6ebc83aa33045dfc5e
