[INFO] fetching crate rive-cache-inmemory 1.0.0...
[INFO] testing rive-cache-inmemory-1.0.0 against master#d98a5da813da67eb189387b8ccfb73cf481275d8+rustflags=-Copt-level=3 for pr-138759
[INFO] extracting crate rive-cache-inmemory 1.0.0 into /workspace/builds/worker-3-tc1/source
[INFO] started tweaking crates.io crate rive-cache-inmemory 1.0.0
[INFO] finished tweaking crates.io crate rive-cache-inmemory 1.0.0
[INFO] tweaked toml for crates.io crate rive-cache-inmemory 1.0.0 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate rive-cache-inmemory 1.0.0 on toolchain d98a5da813da67eb189387b8ccfb73cf481275d8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 34 packages to latest compatible versions
[INFO] [stderr]       Adding dashmap v5.5.3 (available: v6.1.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded rive-models v1.2.1
[INFO] [stderr]   Downloaded iso8601-timestamp v0.4.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2ce1d87567af1736db07fc2f587c1af6cf12e6f908fec6ac4497279f1dc88475
[INFO] running `Command { std: "docker" "start" "-a" "2ce1d87567af1736db07fc2f587c1af6cf12e6f908fec6ac4497279f1dc88475", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2ce1d87567af1736db07fc2f587c1af6cf12e6f908fec6ac4497279f1dc88475", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2ce1d87567af1736db07fc2f587c1af6cf12e6f908fec6ac4497279f1dc88475", kill_on_drop: false }`
[INFO] [stdout] 2ce1d87567af1736db07fc2f587c1af6cf12e6f908fec6ac4497279f1dc88475
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e5c8543bb6f10ccd6949d770459dbafe0596844bd095094a3df8e4c4ea08ef12
[INFO] running `Command { std: "docker" "start" "-a" "e5c8543bb6f10ccd6949d770459dbafe0596844bd095094a3df8e4c4ea08ef12", kill_on_drop: false }`
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling time-macros v0.2.24
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling dashmap v5.5.3
[INFO] [stderr]    Compiling time v0.3.44
[INFO] [stderr]    Compiling generic-array v1.3.3
[INFO] [stderr]    Compiling iso8601-timestamp v0.4.0
[INFO] [stderr]    Compiling rive-models v1.2.1
[INFO] [stderr]    Compiling rive-cache-inmemory v1.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/lib.rs:94:24
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub const fn stats(&self) -> InMemoryCacheStats {
[INFO] [stdout]    |                        ^^^^^     ------------------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub const fn stats(&self) -> InMemoryCacheStats<'_> {
[INFO] [stdout]    |                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/lib.rs:113:23
[INFO] [stdout]     |
[INFO] [stdout] 113 |     pub const fn iter(&self) -> InMemoryCacheIter {
[INFO] [stdout]     |                       ^^^^^     ----------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 113 |     pub const fn iter(&self) -> InMemoryCacheIter<'_> {
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/lib.rs:118:17
[INFO] [stdout]     |
[INFO] [stdout] 118 |     pub fn user(&self, id: &str) -> Option<Reference<String, User>> {
[INFO] [stdout]     |                 ^^^^^                      ----------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 118 |     pub fn user(&self, id: &str) -> Option<Reference<'_, String, User>> {
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/lib.rs:123:19
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub fn server(&self, id: &str) -> Option<Reference<String, Server>> {
[INFO] [stdout]     |                   ^^^^^                      ------------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub fn server(&self, id: &str) -> Option<Reference<'_, String, Server>> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/lib.rs:128:20
[INFO] [stdout]     |
[INFO] [stdout] 128 |     pub fn channel(&self, id: &str) -> Option<Reference<String, Channel>> {
[INFO] [stdout]     |                    ^^^^^                      -------------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 128 |     pub fn channel(&self, id: &str) -> Option<Reference<'_, String, Channel>> {
[INFO] [stdout]     |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/lib.rs:133:20
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn message(&self, id: &str) -> Option<Reference<String, Message>> {
[INFO] [stdout]     |                    ^^^^^                      -------------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn message(&self, id: &str) -> Option<Reference<'_, String, Message>> {
[INFO] [stdout]     |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/lib.rs:138:18
[INFO] [stdout]     |
[INFO] [stdout] 138 |     pub fn emoji(&self, id: &str) -> Option<Reference<String, Emoji>> {
[INFO] [stdout]     |                  ^^^^^                      ------------------------ the lifetime gets resolved as `'_`
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 138 |     pub fn emoji(&self, id: &str) -> Option<Reference<'_, String, Emoji>> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/lib.rs:145:19
[INFO] [stdout]     |
[INFO] [stdout] 145 |     pub fn member(&self, id: &MemberCompositeKey) -> Option<Reference<MemberCompositeKey, Member>> {
[INFO] [stdout]     |                   ^^^^^ this lifetime flows to the output   ------------------------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 145 |     pub fn member(&self, id: &MemberCompositeKey) -> Option<Reference<'_, MemberCompositeKey, Member>> {
[INFO] [stdout]     |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/iter.rs:65:19
[INFO] [stdout]    |
[INFO] [stdout] 65 |     pub fn users(&'a self) -> ResourceIter<String, User> {
[INFO] [stdout]    |                   ^^          -------------------------- the lifetime gets resolved as `'a`
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 65 |     pub fn users(&'a self) -> ResourceIter<'a, String, User> {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/iter.rs:70:21
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub fn serevrs(&'a self) -> ResourceIter<String, Server> {
[INFO] [stdout]    |                     ^^          ---------------------------- the lifetime gets resolved as `'a`
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub fn serevrs(&'a self) -> ResourceIter<'a, String, Server> {
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/iter.rs:75:22
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn channels(&'a self) -> ResourceIter<String, Channel> {
[INFO] [stdout]    |                      ^^          ----------------------------- the lifetime gets resolved as `'a`
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn channels(&'a self) -> ResourceIter<'a, String, Channel> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/iter.rs:80:22
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub fn messages(&'a self) -> ResourceIter<String, Message> {
[INFO] [stdout]    |                      ^^          ----------------------------- the lifetime gets resolved as `'a`
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub fn messages(&'a self) -> ResourceIter<'a, String, Message> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/iter.rs:85:20
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn emojis(&'a self) -> ResourceIter<String, Emoji> {
[INFO] [stdout]    |                    ^^          --------------------------- the lifetime gets resolved as `'a`
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn emojis(&'a self) -> ResourceIter<'a, String, Emoji> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/iter.rs:90:21
[INFO] [stdout]    |
[INFO] [stdout] 90 |     pub fn members(&'a self) -> ResourceIter<MemberCompositeKey, Member> {
[INFO] [stdout]    |                     ^^          ---------------------------------------- the lifetime gets resolved as `'a`
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 90 |     pub fn members(&'a self) -> ResourceIter<'a, MemberCompositeKey, Member> {
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 13.77s
[INFO] running `Command { std: "docker" "inspect" "e5c8543bb6f10ccd6949d770459dbafe0596844bd095094a3df8e4c4ea08ef12", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e5c8543bb6f10ccd6949d770459dbafe0596844bd095094a3df8e4c4ea08ef12", kill_on_drop: false }`
[INFO] [stdout] e5c8543bb6f10ccd6949d770459dbafe0596844bd095094a3df8e4c4ea08ef12
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a2759a3359de8206711ea54b87e4d3e527263487220a274d4f33bcdad275526e
[INFO] running `Command { std: "docker" "start" "-a" "a2759a3359de8206711ea54b87e4d3e527263487220a274d4f33bcdad275526e", kill_on_drop: false }`
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/lib.rs:94:24
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub const fn stats(&self) -> InMemoryCacheStats {
[INFO] [stdout]    |                        ^^^^^     ------------------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub const fn stats(&self) -> InMemoryCacheStats<'_> {
[INFO] [stdout]    |                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/lib.rs:113:23
[INFO] [stdout]     |
[INFO] [stdout] 113 |     pub const fn iter(&self) -> InMemoryCacheIter {
[INFO] [stdout]     |                       ^^^^^     ----------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 113 |     pub const fn iter(&self) -> InMemoryCacheIter<'_> {
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/lib.rs:118:17
[INFO] [stdout]     |
[INFO] [stdout] 118 |     pub fn user(&self, id: &str) -> Option<Reference<String, User>> {
[INFO] [stdout]     |                 ^^^^^                      ----------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 118 |     pub fn user(&self, id: &str) -> Option<Reference<'_, String, User>> {
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/lib.rs:123:19
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub fn server(&self, id: &str) -> Option<Reference<String, Server>> {
[INFO] [stdout]     |                   ^^^^^                      ------------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub fn server(&self, id: &str) -> Option<Reference<'_, String, Server>> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/lib.rs:128:20
[INFO] [stdout]     |
[INFO] [stdout] 128 |     pub fn channel(&self, id: &str) -> Option<Reference<String, Channel>> {
[INFO] [stdout]     |                    ^^^^^                      -------------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 128 |     pub fn channel(&self, id: &str) -> Option<Reference<'_, String, Channel>> {
[INFO] [stdout]     |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/lib.rs:133:20
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn message(&self, id: &str) -> Option<Reference<String, Message>> {
[INFO] [stdout]     |                    ^^^^^                      -------------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn message(&self, id: &str) -> Option<Reference<'_, String, Message>> {
[INFO] [stdout]     |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/lib.rs:138:18
[INFO] [stdout]     |
[INFO] [stdout] 138 |     pub fn emoji(&self, id: &str) -> Option<Reference<String, Emoji>> {
[INFO] [stdout]     |                  ^^^^^                      ------------------------ the lifetime gets resolved as `'_`
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 138 |     pub fn emoji(&self, id: &str) -> Option<Reference<'_, String, Emoji>> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/lib.rs:145:19
[INFO] [stdout]     |
[INFO] [stdout] 145 |     pub fn member(&self, id: &MemberCompositeKey) -> Option<Reference<MemberCompositeKey, Member>> {
[INFO] [stdout]     |                   ^^^^^ this lifetime flows to the output   ------------------------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 145 |     pub fn member(&self, id: &MemberCompositeKey) -> Option<Reference<'_, MemberCompositeKey, Member>> {
[INFO] [stdout]     |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/iter.rs:65:19
[INFO] [stdout]    |
[INFO] [stdout] 65 |     pub fn users(&'a self) -> ResourceIter<String, User> {
[INFO] [stdout]    |                   ^^          -------------------------- the lifetime gets resolved as `'a`
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 65 |     pub fn users(&'a self) -> ResourceIter<'a, String, User> {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/iter.rs:70:21
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub fn serevrs(&'a self) -> ResourceIter<String, Server> {
[INFO] [stdout]    |                     ^^          ---------------------------- the lifetime gets resolved as `'a`
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub fn serevrs(&'a self) -> ResourceIter<'a, String, Server> {
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/iter.rs:75:22
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn channels(&'a self) -> ResourceIter<String, Channel> {
[INFO] [stdout]    |                      ^^          ----------------------------- the lifetime gets resolved as `'a`
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn channels(&'a self) -> ResourceIter<'a, String, Channel> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/iter.rs:80:22
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub fn messages(&'a self) -> ResourceIter<String, Message> {
[INFO] [stdout]    |                      ^^          ----------------------------- the lifetime gets resolved as `'a`
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub fn messages(&'a self) -> ResourceIter<'a, String, Message> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/iter.rs:85:20
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn emojis(&'a self) -> ResourceIter<String, Emoji> {
[INFO] [stdout]    |                    ^^          --------------------------- the lifetime gets resolved as `'a`
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn emojis(&'a self) -> ResourceIter<'a, String, Emoji> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rive-cache-inmemory v1.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/iter.rs:90:21
[INFO] [stdout]    |
[INFO] [stdout] 90 |     pub fn members(&'a self) -> ResourceIter<MemberCompositeKey, Member> {
[INFO] [stdout]    |                     ^^          ---------------------------------------- the lifetime gets resolved as `'a`
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 90 |     pub fn members(&'a self) -> ResourceIter<'a, MemberCompositeKey, Member> {
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/lib.rs:94:24
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub const fn stats(&self) -> InMemoryCacheStats {
[INFO] [stdout]    |                        ^^^^^     ------------------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub const fn stats(&self) -> InMemoryCacheStats<'_> {
[INFO] [stdout]    |                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/lib.rs:113:23
[INFO] [stdout]     |
[INFO] [stdout] 113 |     pub const fn iter(&self) -> InMemoryCacheIter {
[INFO] [stdout]     |                       ^^^^^     ----------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 113 |     pub const fn iter(&self) -> InMemoryCacheIter<'_> {
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/lib.rs:118:17
[INFO] [stdout]     |
[INFO] [stdout] 118 |     pub fn user(&self, id: &str) -> Option<Reference<String, User>> {
[INFO] [stdout]     |                 ^^^^^                      ----------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 118 |     pub fn user(&self, id: &str) -> Option<Reference<'_, String, User>> {
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/lib.rs:123:19
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub fn server(&self, id: &str) -> Option<Reference<String, Server>> {
[INFO] [stdout]     |                   ^^^^^                      ------------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub fn server(&self, id: &str) -> Option<Reference<'_, String, Server>> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/lib.rs:128:20
[INFO] [stdout]     |
[INFO] [stdout] 128 |     pub fn channel(&self, id: &str) -> Option<Reference<String, Channel>> {
[INFO] [stdout]     |                    ^^^^^                      -------------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 128 |     pub fn channel(&self, id: &str) -> Option<Reference<'_, String, Channel>> {
[INFO] [stdout]     |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/lib.rs:133:20
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn message(&self, id: &str) -> Option<Reference<String, Message>> {
[INFO] [stdout]     |                    ^^^^^                      -------------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn message(&self, id: &str) -> Option<Reference<'_, String, Message>> {
[INFO] [stdout]     |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/lib.rs:138:18
[INFO] [stdout]     |
[INFO] [stdout] 138 |     pub fn emoji(&self, id: &str) -> Option<Reference<String, Emoji>> {
[INFO] [stdout]     |                  ^^^^^                      ------------------------ the lifetime gets resolved as `'_`
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 138 |     pub fn emoji(&self, id: &str) -> Option<Reference<'_, String, Emoji>> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/lib.rs:145:19
[INFO] [stdout]     |
[INFO] [stdout] 145 |     pub fn member(&self, id: &MemberCompositeKey) -> Option<Reference<MemberCompositeKey, Member>> {
[INFO] [stdout]     |                   ^^^^^ this lifetime flows to the output   ------------------------------------- the lifetime gets resolved as `'_`
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 145 |     pub fn member(&self, id: &MemberCompositeKey) -> Option<Reference<'_, MemberCompositeKey, Member>> {
[INFO] [stdout]     |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/iter.rs:65:19
[INFO] [stdout]    |
[INFO] [stdout] 65 |     pub fn users(&'a self) -> ResourceIter<String, User> {
[INFO] [stdout]    |                   ^^          -------------------------- the lifetime gets resolved as `'a`
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 65 |     pub fn users(&'a self) -> ResourceIter<'a, String, User> {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/iter.rs:70:21
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub fn serevrs(&'a self) -> ResourceIter<String, Server> {
[INFO] [stdout]    |                     ^^          ---------------------------- the lifetime gets resolved as `'a`
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub fn serevrs(&'a self) -> ResourceIter<'a, String, Server> {
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/iter.rs:75:22
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn channels(&'a self) -> ResourceIter<String, Channel> {
[INFO] [stdout]    |                      ^^          ----------------------------- the lifetime gets resolved as `'a`
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn channels(&'a self) -> ResourceIter<'a, String, Channel> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/iter.rs:80:22
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub fn messages(&'a self) -> ResourceIter<String, Message> {
[INFO] [stdout]    |                      ^^          ----------------------------- the lifetime gets resolved as `'a`
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub fn messages(&'a self) -> ResourceIter<'a, String, Message> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/iter.rs:85:20
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn emojis(&'a self) -> ResourceIter<String, Emoji> {
[INFO] [stdout]    |                    ^^          --------------------------- the lifetime gets resolved as `'a`
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub fn emojis(&'a self) -> ResourceIter<'a, String, Emoji> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/iter.rs:90:21
[INFO] [stdout]    |
[INFO] [stdout] 90 |     pub fn members(&'a self) -> ResourceIter<MemberCompositeKey, Member> {
[INFO] [stdout]    |                     ^^          ---------------------------------------- the lifetime gets resolved as `'a`
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     this lifetime flows to the output
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 90 |     pub fn members(&'a self) -> ResourceIter<'a, MemberCompositeKey, Member> {
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.67s
[INFO] running `Command { std: "docker" "inspect" "a2759a3359de8206711ea54b87e4d3e527263487220a274d4f33bcdad275526e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a2759a3359de8206711ea54b87e4d3e527263487220a274d4f33bcdad275526e", kill_on_drop: false }`
[INFO] [stdout] a2759a3359de8206711ea54b87e4d3e527263487220a274d4f33bcdad275526e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 2c34030cf95967e1993f4a10142be373c35092c8ac68079bbad86105f918b1d3
[INFO] running `Command { std: "docker" "start" "-a" "2c34030cf95967e1993f4a10142be373c35092c8ac68079bbad86105f918b1d3", kill_on_drop: false }`
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> src/lib.rs:94:24
[INFO] [stderr]    |
[INFO] [stderr] 94 |     pub const fn stats(&self) -> InMemoryCacheStats {
[INFO] [stderr]    |                        ^^^^^     ------------------ the lifetime gets resolved as `'_`
[INFO] [stderr]    |                        |
[INFO] [stderr]    |                        this lifetime flows to the output
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]    |
[INFO] [stderr] 94 |     pub const fn stats(&self) -> InMemoryCacheStats<'_> {
[INFO] [stderr]    |                                                    ++++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/lib.rs:113:23
[INFO] [stderr]     |
[INFO] [stderr] 113 |     pub const fn iter(&self) -> InMemoryCacheIter {
[INFO] [stderr]     |                       ^^^^^     ----------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |                       |
[INFO] [stderr]     |                       this lifetime flows to the output
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 113 |     pub const fn iter(&self) -> InMemoryCacheIter<'_> {
[INFO] [stderr]     |                                                  ++++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/lib.rs:118:17
[INFO] [stderr]     |
[INFO] [stderr] 118 |     pub fn user(&self, id: &str) -> Option<Reference<String, User>> {
[INFO] [stderr]     |                 ^^^^^                      ----------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 this lifetime flows to the output
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 118 |     pub fn user(&self, id: &str) -> Option<Reference<'_, String, User>> {
[INFO] [stderr]     |                                                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/lib.rs:123:19
[INFO] [stderr]     |
[INFO] [stderr] 123 |     pub fn server(&self, id: &str) -> Option<Reference<String, Server>> {
[INFO] [stderr]     |                   ^^^^^                      ------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |                   |
[INFO] [stderr]     |                   this lifetime flows to the output
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 123 |     pub fn server(&self, id: &str) -> Option<Reference<'_, String, Server>> {
[INFO] [stderr]     |                                                        +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/lib.rs:128:20
[INFO] [stderr]     |
[INFO] [stderr] 128 |     pub fn channel(&self, id: &str) -> Option<Reference<String, Channel>> {
[INFO] [stderr]     |                    ^^^^^                      -------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |                    |
[INFO] [stderr]     |                    this lifetime flows to the output
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 128 |     pub fn channel(&self, id: &str) -> Option<Reference<'_, String, Channel>> {
[INFO] [stderr]     |                                                         +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/lib.rs:133:20
[INFO] [stderr]     |
[INFO] [stderr] 133 |     pub fn message(&self, id: &str) -> Option<Reference<String, Message>> {
[INFO] [stderr]     |                    ^^^^^                      -------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |                    |
[INFO] [stderr]     |                    this lifetime flows to the output
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 133 |     pub fn message(&self, id: &str) -> Option<Reference<'_, String, Message>> {
[INFO] [stderr]     |                                                         +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/lib.rs:138:18
[INFO] [stderr]     |
[INFO] [stderr] 138 |     pub fn emoji(&self, id: &str) -> Option<Reference<String, Emoji>> {
[INFO] [stderr]     |                  ^^^^^                      ------------------------ the lifetime gets resolved as `'_`
[INFO] [stderr]     |                  |
[INFO] [stderr]     |                  this lifetime flows to the output
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 138 |     pub fn emoji(&self, id: &str) -> Option<Reference<'_, String, Emoji>> {
[INFO] [stderr]     |                                                       +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]    --> src/lib.rs:145:19
[INFO] [stderr]     |
[INFO] [stderr] 145 |     pub fn member(&self, id: &MemberCompositeKey) -> Option<Reference<MemberCompositeKey, Member>> {
[INFO] [stderr]     |                   ^^^^^ this lifetime flows to the output   ------------------------------------- the lifetime gets resolved as `'_`
[INFO] [stderr]     |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]     |
[INFO] [stderr] 145 |     pub fn member(&self, id: &MemberCompositeKey) -> Option<Reference<'_, MemberCompositeKey, Member>> {
[INFO] [stderr]     |                                                                       +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> src/iter.rs:65:19
[INFO] [stderr]    |
[INFO] [stderr] 65 |     pub fn users(&'a self) -> ResourceIter<String, User> {
[INFO] [stderr]    |                   ^^          -------------------------- the lifetime gets resolved as `'a`
[INFO] [stderr]    |                   |
[INFO] [stderr]    |                   this lifetime flows to the output
[INFO] [stderr]    |
[INFO] [stderr] help: one option is to consistently use `'a`
[INFO] [stderr]    |
[INFO] [stderr] 65 |     pub fn users(&'a self) -> ResourceIter<'a, String, User> {
[INFO] [stderr]    |                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> src/iter.rs:70:21
[INFO] [stderr]    |
[INFO] [stderr] 70 |     pub fn serevrs(&'a self) -> ResourceIter<String, Server> {
[INFO] [stderr]    |                     ^^          ---------------------------- the lifetime gets resolved as `'a`
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     this lifetime flows to the output
[INFO] [stderr]    |
[INFO] [stderr] help: one option is to consistently use `'a`
[INFO] [stderr]    |
[INFO] [stderr] 70 |     pub fn serevrs(&'a self) -> ResourceIter<'a, String, Server> {
[INFO] [stderr]    |                                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> src/iter.rs:75:22
[INFO] [stderr]    |
[INFO] [stderr] 75 |     pub fn channels(&'a self) -> ResourceIter<String, Channel> {
[INFO] [stderr]    |                      ^^          ----------------------------- the lifetime gets resolved as `'a`
[INFO] [stderr]    |                      |
[INFO] [stderr]    |                      this lifetime flows to the output
[INFO] [stderr]    |
[INFO] [stderr] help: one option is to consistently use `'a`
[INFO] [stderr]    |
[INFO] [stderr] 75 |     pub fn channels(&'a self) -> ResourceIter<'a, String, Channel> {
[INFO] [stderr]    |                                               +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> src/iter.rs:80:22
[INFO] [stderr]    |
[INFO] [stderr] 80 |     pub fn messages(&'a self) -> ResourceIter<String, Message> {
[INFO] [stderr]    |                      ^^          ----------------------------- the lifetime gets resolved as `'a`
[INFO] [stderr]    |                      |
[INFO] [stderr]    |                      this lifetime flows to the output
[INFO] [stderr]    |
[INFO] [stderr] help: one option is to consistently use `'a`
[INFO] [stderr]    |
[INFO] [stderr] 80 |     pub fn messages(&'a self) -> ResourceIter<'a, String, Message> {
[INFO] [stderr]    |                                               +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> src/iter.rs:85:20
[INFO] [stderr]    |
[INFO] [stderr] 85 |     pub fn emojis(&'a self) -> ResourceIter<String, Emoji> {
[INFO] [stderr]    |                    ^^          --------------------------- the lifetime gets resolved as `'a`
[INFO] [stderr]    |                    |
[INFO] [stderr]    |                    this lifetime flows to the output
[INFO] [stderr]    |
[INFO] [stderr] help: one option is to consistently use `'a`
[INFO] [stderr]    |
[INFO] [stderr] 85 |     pub fn emojis(&'a self) -> ResourceIter<'a, String, Emoji> {
[INFO] [stderr]    |                                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> src/iter.rs:90:21
[INFO] [stderr]    |
[INFO] [stderr] 90 |     pub fn members(&'a self) -> ResourceIter<MemberCompositeKey, Member> {
[INFO] [stderr]    |                     ^^          ---------------------------------------- the lifetime gets resolved as `'a`
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     this lifetime flows to the output
[INFO] [stderr]    |
[INFO] [stderr] help: one option is to consistently use `'a`
[INFO] [stderr]    |
[INFO] [stderr] 90 |     pub fn members(&'a self) -> ResourceIter<'a, MemberCompositeKey, Member> {
[INFO] [stderr]    |                                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: `rive-cache-inmemory` (lib) generated 14 warnings
[INFO] [stderr] warning: `rive-cache-inmemory` (lib test) generated 14 warnings (14 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rive_cache_inmemory-8f24064b6a678a1e)
[INFO] [stderr]    Doc-tests rive_cache_inmemory
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test src/stats.rs - stats::InMemoryCacheStats (line 7) - compile ... ok
[INFO] [stdout] test src/iter.rs - iter::InMemoryCacheIter (line 41) - compile ... ok
[INFO] [stdout] test src/lib.rs - (line 13) ... FAILED
[INFO] [stdout] test src/lib.rs - InMemoryCache::iter (line 103) - compile ... ok
[INFO] [stdout] test src/lib.rs - InMemoryCache::stats (line 85) - compile ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/lib.rs - (line 13) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `futures`
[INFO] [stdout]  --> src/lib.rs:15:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use futures::StreamExt;
[INFO] [stdout]   |     ^^^^^^^ use of unresolved module or unlinked crate `futures`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `futures`, use `cargo add futures` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `rive_gateway`
[INFO] [stdout]  --> src/lib.rs:19:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use rive_gateway::Gateway;
[INFO] [stdout]   |     ^^^^^^^^^^^^ use of unresolved module or unlinked crate `rive_gateway`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `rive_gateway`, use `cargo add rive_gateway` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `tokio`
[INFO] [stdout]   --> src/lib.rs:22:3
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[tokio::main]
[INFO] [stdout]    |   ^^^^^ use of unresolved module or unlinked crate `tokio`
[INFO] [stdout] 
[INFO] [stdout] error[E0752]: `main` function is not allowed to be `async`
[INFO] [stdout]   --> src/lib.rs:23:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | async fn main() -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `main` function is not allowed to be `async`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0433, E0752.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/lib.rs - (line 13)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 4 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.27s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "2c34030cf95967e1993f4a10142be373c35092c8ac68079bbad86105f918b1d3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2c34030cf95967e1993f4a10142be373c35092c8ac68079bbad86105f918b1d3", kill_on_drop: false }`
[INFO] [stdout] 2c34030cf95967e1993f4a10142be373c35092c8ac68079bbad86105f918b1d3
