[INFO] fetching crate pingora-cache 0.6.0...
[INFO] testing pingora-cache-0.6.0 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate pingora-cache 0.6.0 into /workspace/builds/worker-5-tc1/source
[INFO] started tweaking crates.io crate pingora-cache 0.6.0
[INFO] finished tweaking crates.io crate pingora-cache 0.6.0
[INFO] tweaked toml for crates.io crate pingora-cache 0.6.0 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate pingora-cache 0.6.0 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate pingora-cache 0.6.0 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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded pingora-timeout v0.6.0
[INFO] [stderr]   Downloaded pingora-lru v0.6.0
[INFO] [stderr]   Downloaded pingora-header-serde v0.6.0
[INFO] [stderr]   Downloaded pingora-error v0.6.0
[INFO] [stderr]   Downloaded sfv v0.10.4
[INFO] [stderr]   Downloaded pingora-http v0.6.0
[INFO] [stderr]   Downloaded cf-rustracing v1.1.0
[INFO] [stderr]   Downloaded alloc-stdlib v0.2.2
[INFO] [stderr]   Downloaded match_cfg v0.1.0
[INFO] [stderr]   Downloaded mintex v0.1.4
[INFO] [stderr]   Downloaded hostname v0.3.1
[INFO] [stderr]   Downloaded pingora-openssl v0.6.0
[INFO] [stderr]   Downloaded thousands v0.2.0
[INFO] [stderr]   Downloaded alloc-no-stdlib v2.0.4
[INFO] [stderr]   Downloaded neli-proc-macros v0.1.4
[INFO] [stderr]   Downloaded trackable_derive v1.0.0
[INFO] [stderr]   Downloaded neli v0.6.5
[INFO] [stderr]   Downloaded dhat v0.3.3
[INFO] [stderr]   Downloaded cc v1.2.31
[INFO] [stderr]   Downloaded prometheus v0.13.4
[INFO] [stderr]   Downloaded cf-rustracing-jaeger v1.2.0
[INFO] [stderr]   Downloaded rust_decimal v1.37.2
[INFO] [stderr]   Downloaded pingora-core v0.6.0
[INFO] [stderr]   Downloaded brotli-decompressor v2.5.1
[INFO] [stderr]   Downloaded aws-lc-rs v1.13.3
[INFO] [stderr]   Downloaded h2 v0.4.11
[INFO] [stderr]   Downloaded boring v4.17.0
[INFO] [stderr]   Downloaded protobuf v2.28.0
[INFO] [stderr]   Downloaded rustls-native-certs v0.7.3
[INFO] [stderr]   Downloaded pingora-rustls v0.6.0
[INFO] [stderr]   Downloaded trackable v1.3.0
[INFO] [stderr]   Downloaded fslock v0.2.1
[INFO] [stderr]   Downloaded pingora-boringssl v0.6.0
[INFO] [stderr]   Downloaded pingora-pool v0.6.0
[INFO] [stderr]   Downloaded serde_yaml v0.8.26
[INFO] [stderr]   Downloaded local-ip-address v0.5.7
[INFO] [stderr]   Downloaded thrift_codec v0.2.0
[INFO] [stderr]   Downloaded humantime v2.2.0
[INFO] [stderr]   Downloaded tokio-openssl v0.6.5
[INFO] [stderr]   Downloaded libz-ng-sys v1.1.22
[INFO] [stderr]   Downloaded pingora-runtime v0.6.0
[INFO] [stderr]   Downloaded no_debug v3.1.0
[INFO] [stderr]   Downloaded brotli v3.5.0
[INFO] [stderr]   Downloaded boring-sys v4.17.0
[INFO] [stderr]   Downloaded aws-lc-sys v0.30.0
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f9950edd72368ed2c68e5355df558dda53802b4d7cfeb48c334caf709fa70b59
[INFO] running `Command { std: "docker" "start" "-a" "f9950edd72368ed2c68e5355df558dda53802b4d7cfeb48c334caf709fa70b59", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f9950edd72368ed2c68e5355df558dda53802b4d7cfeb48c334caf709fa70b59", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f9950edd72368ed2c68e5355df558dda53802b4d7cfeb48c334caf709fa70b59", kill_on_drop: false }`
[INFO] [stdout] f9950edd72368ed2c68e5355df558dda53802b4d7cfeb48c334caf709fa70b59
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0733a8c27d7ecd3b3ad0d62c9f890af3aa5b5f5d79b21c5f10730859f0ee68f3
[INFO] running `Command { std: "docker" "start" "-a" "0733a8c27d7ecd3b3ad0d62c9f890af3aa5b5f5d79b21c5f10730859f0ee68f3", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.95
[INFO] [stderr]    Compiling libc v0.2.174
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling memchr v2.7.5
[INFO] [stderr]    Compiling zerocopy v0.8.26
[INFO] [stderr]    Compiling lock_api v0.4.13
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling ahash v0.7.8
[INFO] [stderr]    Compiling parking_lot_core v0.9.11
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling typenum v1.18.0
[INFO] [stderr]    Compiling hashbrown v0.15.4
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling log v0.4.27
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]    Compiling syn v2.0.104
[INFO] [stderr]    Compiling jobserver v0.1.33
[INFO] [stderr]    Compiling object v0.36.7
[INFO] [stderr]    Compiling slab v0.4.10
[INFO] [stderr]    Compiling rustversion v1.0.21
[INFO] [stderr]    Compiling cc v1.2.31
[INFO] [stderr]    Compiling http v1.3.1
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling socket2 v0.6.0
[INFO] [stderr]    Compiling signal-hook-registry v1.4.5
[INFO] [stderr]    Compiling mio v1.0.4
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling hashbrown v0.12.3
[INFO] [stderr]    Compiling cmake v0.1.54
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling protobuf v2.28.0
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling parking_lot v0.12.4
[INFO] [stderr]    Compiling zstd-sys v2.0.15+zstd.1.5.7
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling libz-ng-sys v1.1.22
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling rust_decimal v1.37.2
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]    Compiling gimli v0.31.1
[INFO] [stderr]    Compiling adler2 v2.0.1
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling alloc-no-stdlib v2.0.4
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling alloc-stdlib v0.2.2
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling indexmap v2.10.0
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling rustc-demangle v0.1.26
[INFO] [stderr]    Compiling pingora-error v0.6.0
[INFO] [stderr]    Compiling addr2line v0.24.2
[INFO] [stderr]    Compiling os_str_bytes v6.6.1
[INFO] [stderr]    Compiling heck v0.4.1
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling prometheus v0.13.4
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling tokio v1.47.1
[INFO] [stderr]    Compiling trackable_derive v1.0.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling trackable v1.3.0
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling linked-hash-map v0.5.6
[INFO] [stderr]    Compiling async-stream v0.3.6
[INFO] [stderr]    Compiling yaml-rust v0.4.5
[INFO] [stderr]    Compiling backtrace v0.3.75
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling clap_derive v3.2.25
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling clap_lex v0.2.4
[INFO] [stderr]    Compiling pingora-http v0.6.0
[INFO] [stderr]    Compiling crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling tokio-stream v0.1.17
[INFO] [stderr]    Compiling pingora-timeout v0.6.0
[INFO] [stderr]    Compiling tokio-util v0.7.15
[INFO] [stderr]    Compiling neli-proc-macros v0.1.4
[INFO] [stderr]    Compiling brotli-decompressor v2.5.1
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling neli v0.6.5
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling lru v0.14.0
[INFO] [stderr]    Compiling match_cfg v0.1.0
[INFO] [stderr]    Compiling textwrap v0.16.2
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]    Compiling h2 v0.4.11
[INFO] [stderr]    Compiling clap v3.2.25
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling pingora-pool v0.6.0
[INFO] [stderr]    Compiling sfv v0.10.4
[INFO] [stderr]    Compiling serde_yaml v0.8.26
[INFO] [stderr]    Compiling local-ip-address v0.5.7
[INFO] [stderr]    Compiling hostname v0.3.1
[INFO] [stderr]    Compiling brotli v3.5.0
[INFO] [stderr]    Compiling rmp v0.8.14
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling nix v0.24.3
[INFO] [stderr]    Compiling zstd v0.13.3
[INFO] [stderr]    Compiling tokio-test v0.4.4
[INFO] [stderr]    Compiling strum v0.26.3
[INFO] [stderr]    Compiling pingora-runtime v0.6.0
[INFO] [stderr]    Compiling cf-rustracing v1.1.0
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling flate2 v1.1.2
[INFO] [stderr]    Compiling thrift_codec v0.2.0
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]    Compiling async-trait v0.1.88
[INFO] [stderr]    Compiling daemonize v0.5.0
[INFO] [stderr]    Compiling socket2 v0.5.10
[INFO] [stderr]    Compiling chrono v0.4.41
[INFO] [stderr]    Compiling unicase v2.8.1
[INFO] [stderr]    Compiling cf-rustracing-jaeger v1.2.0
[INFO] [stderr]    Compiling pingora-header-serde v0.6.0
[INFO] [stderr]    Compiling rmp-serde v1.3.0
[INFO] [stderr]    Compiling blake2 v0.10.6
[INFO] [stderr]    Compiling pingora-core v0.6.0
[INFO] [stderr]    Compiling pingora-lru v0.6.0
[INFO] [stderr]    Compiling pingora-cache v0.6.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/lock.rs:23:29
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub type CacheKeyLockImpl = (dyn CacheKeyLock + Send + Sync);
[INFO] [stdout]    |                             ^                              ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 23 - pub type CacheKeyLockImpl = (dyn CacheKeyLock + Send + Sync);
[INFO] [stdout] 23 + pub type CacheKeyLockImpl = dyn CacheKeyLock + Send + Sync;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/storage.rs:160:27
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub type HitHandler = Box<(dyn HandleHit + Sync + Send)>;
[INFO] [stdout]     |                           ^                           ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 160 - pub type HitHandler = Box<(dyn HandleHit + Sync + Send)>;
[INFO] [stdout] 160 + pub type HitHandler = Box<dyn HandleHit + Sync + Send>;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/storage.rs:200:28
[INFO] [stdout]     |
[INFO] [stdout] 200 | pub type MissHandler = Box<(dyn HandleMiss + Sync + Send)>;
[INFO] [stdout]     |                            ^                            ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 200 - pub type MissHandler = Box<(dyn HandleMiss + Sync + Send)>;
[INFO] [stdout] 200 + pub type MissHandler = Box<dyn HandleMiss + Sync + Send>;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/cache_control.rs:258:24
[INFO] [stdout]     |
[INFO] [stdout] 258 |     fn get_field_names(&self, key: &str) -> Option<ListValueIter> {
[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]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 258 |     fn get_field_names(&self, key: &str) -> Option<ListValueIter<'_>> {
[INFO] [stdout]     |                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/cache_control.rs:267:32
[INFO] [stdout]     |
[INFO] [stdout] 267 |     pub fn private_field_names(&self) -> Option<ListValueIter> {
[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] 267 |     pub fn private_field_names(&self) -> Option<ListValueIter<'_>> {
[INFO] [stdout]     |                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/cache_control.rs:277:33
[INFO] [stdout]     |
[INFO] [stdout] 277 |     pub fn no_cache_field_names(&self) -> Option<ListValueIter> {
[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] 277 |     pub fn no_cache_field_names(&self) -> Option<ListValueIter<'_>> {
[INFO] [stdout]     |                                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/hashtable.rs:47:17
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub fn read(&self, key: u128) -> RwLockReadGuard<HashMap<u128, V>> {
[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] 47 |     pub fn read(&self, key: u128) -> RwLockReadGuard<'_, HashMap<u128, V>> {
[INFO] [stdout]    |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/hashtable.rs:51:18
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn write(&self, key: u128) -> RwLockWriteGuard<HashMap<u128, V>> {
[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] 51 |     pub fn write(&self, key: u128) -> RwLockWriteGuard<'_, HashMap<u128, V>> {
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hashtable.rs:116:17
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub fn read(&self, key: u128) -> RwLockReadGuard<LruCache<u128, V>> {
[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] 116 |     pub fn read(&self, key: u128) -> RwLockReadGuard<'_, LruCache<u128, V>> {
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hashtable.rs:120:18
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn write(&self, key: u128) -> RwLockWriteGuard<LruCache<u128, V>> {
[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] 120 |     pub fn write(&self, key: u128) -> RwLockWriteGuard<'_, LruCache<u128, V>> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 49s
[INFO] running `Command { std: "docker" "inspect" "0733a8c27d7ecd3b3ad0d62c9f890af3aa5b5f5d79b21c5f10730859f0ee68f3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0733a8c27d7ecd3b3ad0d62c9f890af3aa5b5f5d79b21c5f10730859f0ee68f3", kill_on_drop: false }`
[INFO] [stdout] 0733a8c27d7ecd3b3ad0d62c9f890af3aa5b5f5d79b21c5f10730859f0ee68f3
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 450e688552ae384ff15bcde0f78407009e173c198c09c254996c453dc3614437
[INFO] running `Command { std: "docker" "start" "-a" "450e688552ae384ff15bcde0f78407009e173c198c09c254996c453dc3614437", kill_on_drop: false }`
[INFO] [stderr]    Compiling tokio v1.47.1
[INFO] [stderr]    Compiling neli v0.6.5
[INFO] [stderr]    Compiling serde_json v1.0.142
[INFO] [stderr]    Compiling mintex v0.1.4
[INFO] [stderr]    Compiling humantime v2.2.0
[INFO] [stderr]    Compiling thousands v0.2.0
[INFO] [stderr]    Compiling env_logger v0.9.3
[INFO] [stderr]    Compiling local-ip-address v0.5.7
[INFO] [stderr]    Compiling dhat v0.3.3
[INFO] [stderr]    Compiling tokio-stream v0.1.17
[INFO] [stderr]    Compiling tokio-util v0.7.15
[INFO] [stderr]    Compiling pingora-timeout v0.6.0
[INFO] [stderr]    Compiling cf-rustracing v1.1.0
[INFO] [stderr]    Compiling pingora-runtime v0.6.0
[INFO] [stderr]    Compiling pingora-pool v0.6.0
[INFO] [stderr]    Compiling cf-rustracing-jaeger v1.2.0
[INFO] [stderr]    Compiling tokio-test v0.4.4
[INFO] [stderr]    Compiling h2 v0.4.11
[INFO] [stderr]    Compiling pingora-core v0.6.0
[INFO] [stderr]    Compiling pingora-cache v0.6.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/lock.rs:23:29
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub type CacheKeyLockImpl = (dyn CacheKeyLock + Send + Sync);
[INFO] [stdout]    |                             ^                              ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 23 - pub type CacheKeyLockImpl = (dyn CacheKeyLock + Send + Sync);
[INFO] [stdout] 23 + pub type CacheKeyLockImpl = dyn CacheKeyLock + Send + Sync;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/storage.rs:160:27
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub type HitHandler = Box<(dyn HandleHit + Sync + Send)>;
[INFO] [stdout]     |                           ^                           ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 160 - pub type HitHandler = Box<(dyn HandleHit + Sync + Send)>;
[INFO] [stdout] 160 + pub type HitHandler = Box<dyn HandleHit + Sync + Send>;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/storage.rs:200:28
[INFO] [stdout]     |
[INFO] [stdout] 200 | pub type MissHandler = Box<(dyn HandleMiss + Sync + Send)>;
[INFO] [stdout]     |                            ^                            ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 200 - pub type MissHandler = Box<(dyn HandleMiss + Sync + Send)>;
[INFO] [stdout] 200 + pub type MissHandler = Box<dyn HandleMiss + Sync + Send>;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/cache_control.rs:258:24
[INFO] [stdout]     |
[INFO] [stdout] 258 |     fn get_field_names(&self, key: &str) -> Option<ListValueIter> {
[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]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 258 |     fn get_field_names(&self, key: &str) -> Option<ListValueIter<'_>> {
[INFO] [stdout]     |                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/cache_control.rs:267:32
[INFO] [stdout]     |
[INFO] [stdout] 267 |     pub fn private_field_names(&self) -> Option<ListValueIter> {
[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] 267 |     pub fn private_field_names(&self) -> Option<ListValueIter<'_>> {
[INFO] [stdout]     |                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/cache_control.rs:277:33
[INFO] [stdout]     |
[INFO] [stdout] 277 |     pub fn no_cache_field_names(&self) -> Option<ListValueIter> {
[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] 277 |     pub fn no_cache_field_names(&self) -> Option<ListValueIter<'_>> {
[INFO] [stdout]     |                                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/hashtable.rs:47:17
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub fn read(&self, key: u128) -> RwLockReadGuard<HashMap<u128, V>> {
[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] 47 |     pub fn read(&self, key: u128) -> RwLockReadGuard<'_, HashMap<u128, V>> {
[INFO] [stdout]    |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/hashtable.rs:51:18
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn write(&self, key: u128) -> RwLockWriteGuard<HashMap<u128, V>> {
[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] 51 |     pub fn write(&self, key: u128) -> RwLockWriteGuard<'_, HashMap<u128, V>> {
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hashtable.rs:116:17
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub fn read(&self, key: u128) -> RwLockReadGuard<LruCache<u128, V>> {
[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] 116 |     pub fn read(&self, key: u128) -> RwLockReadGuard<'_, LruCache<u128, V>> {
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hashtable.rs:120:18
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn write(&self, key: u128) -> RwLockWriteGuard<LruCache<u128, V>> {
[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] 120 |     pub fn write(&self, key: u128) -> RwLockWriteGuard<'_, LruCache<u128, V>> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/lock.rs:23:29
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub type CacheKeyLockImpl = (dyn CacheKeyLock + Send + Sync);
[INFO] [stdout]    |                             ^                              ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 23 - pub type CacheKeyLockImpl = (dyn CacheKeyLock + Send + Sync);
[INFO] [stdout] 23 + pub type CacheKeyLockImpl = dyn CacheKeyLock + Send + Sync;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/storage.rs:160:27
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub type HitHandler = Box<(dyn HandleHit + Sync + Send)>;
[INFO] [stdout]     |                           ^                           ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 160 - pub type HitHandler = Box<(dyn HandleHit + Sync + Send)>;
[INFO] [stdout] 160 + pub type HitHandler = Box<dyn HandleHit + Sync + Send>;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/storage.rs:200:28
[INFO] [stdout]     |
[INFO] [stdout] 200 | pub type MissHandler = Box<(dyn HandleMiss + Sync + Send)>;
[INFO] [stdout]     |                            ^                            ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 200 - pub type MissHandler = Box<(dyn HandleMiss + Sync + Send)>;
[INFO] [stdout] 200 + pub type MissHandler = Box<dyn HandleMiss + Sync + Send>;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/cache_control.rs:258:24
[INFO] [stdout]     |
[INFO] [stdout] 258 |     fn get_field_names(&self, key: &str) -> Option<ListValueIter> {
[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]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 258 |     fn get_field_names(&self, key: &str) -> Option<ListValueIter<'_>> {
[INFO] [stdout]     |                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/cache_control.rs:267:32
[INFO] [stdout]     |
[INFO] [stdout] 267 |     pub fn private_field_names(&self) -> Option<ListValueIter> {
[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] 267 |     pub fn private_field_names(&self) -> Option<ListValueIter<'_>> {
[INFO] [stdout]     |                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/cache_control.rs:277:33
[INFO] [stdout]     |
[INFO] [stdout] 277 |     pub fn no_cache_field_names(&self) -> Option<ListValueIter> {
[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] 277 |     pub fn no_cache_field_names(&self) -> Option<ListValueIter<'_>> {
[INFO] [stdout]     |                                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/hashtable.rs:47:17
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub fn read(&self, key: u128) -> RwLockReadGuard<HashMap<u128, V>> {
[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] 47 |     pub fn read(&self, key: u128) -> RwLockReadGuard<'_, HashMap<u128, V>> {
[INFO] [stdout]    |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/hashtable.rs:51:18
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn write(&self, key: u128) -> RwLockWriteGuard<HashMap<u128, V>> {
[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] 51 |     pub fn write(&self, key: u128) -> RwLockWriteGuard<'_, HashMap<u128, V>> {
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hashtable.rs:116:17
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub fn read(&self, key: u128) -> RwLockReadGuard<LruCache<u128, V>> {
[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] 116 |     pub fn read(&self, key: u128) -> RwLockReadGuard<'_, LruCache<u128, V>> {
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/hashtable.rs:120:18
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn write(&self, key: u128) -> RwLockWriteGuard<LruCache<u128, V>> {
[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] 120 |     pub fn write(&self, key: u128) -> RwLockWriteGuard<'_, LruCache<u128, V>> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 40.21s
[INFO] running `Command { std: "docker" "inspect" "450e688552ae384ff15bcde0f78407009e173c198c09c254996c453dc3614437", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "450e688552ae384ff15bcde0f78407009e173c198c09c254996c453dc3614437", kill_on_drop: false }`
[INFO] [stdout] 450e688552ae384ff15bcde0f78407009e173c198c09c254996c453dc3614437
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 5fcf810d71606664e07c29976d660d40d89e43701b2d93b578e28a4324131ace
[INFO] running `Command { std: "docker" "start" "-a" "5fcf810d71606664e07c29976d660d40d89e43701b2d93b578e28a4324131ace", kill_on_drop: false }`
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/lock.rs:23:29
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub type CacheKeyLockImpl = (dyn CacheKeyLock + Send + Sync);
[INFO] [stderr]    |                             ^                              ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 23 - pub type CacheKeyLockImpl = (dyn CacheKeyLock + Send + Sync);
[INFO] [stderr] 23 + pub type CacheKeyLockImpl = dyn CacheKeyLock + Send + Sync;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]    --> src/storage.rs:160:27
[INFO] [stderr]     |
[INFO] [stderr] 160 | pub type HitHandler = Box<(dyn HandleHit + Sync + Send)>;
[INFO] [stderr]     |                           ^                           ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 160 - pub type HitHandler = Box<(dyn HandleHit + Sync + Send)>;
[INFO] [stderr] 160 + pub type HitHandler = Box<dyn HandleHit + Sync + Send>;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]    --> src/storage.rs:200:28
[INFO] [stderr]     |
[INFO] [stderr] 200 | pub type MissHandler = Box<(dyn HandleMiss + Sync + Send)>;
[INFO] [stderr]     |                            ^                            ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 200 - pub type MissHandler = Box<(dyn HandleMiss + Sync + Send)>;
[INFO] [stderr] 200 + pub type MissHandler = Box<dyn HandleMiss + Sync + Send>;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/cache_control.rs:258:24
[INFO] [stderr]     |
[INFO] [stderr] 258 |     fn get_field_names(&self, key: &str) -> Option<ListValueIter> {
[INFO] [stderr]     |                        ^^^^^                       ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                        |
[INFO] [stderr]     |                        the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 258 |     fn get_field_names(&self, key: &str) -> Option<ListValueIter<'_>> {
[INFO] [stderr]     |                                                                 ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/cache_control.rs:267:32
[INFO] [stderr]     |
[INFO] [stderr] 267 |     pub fn private_field_names(&self) -> Option<ListValueIter> {
[INFO] [stderr]     |                                ^^^^^            ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                                |
[INFO] [stderr]     |                                the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 267 |     pub fn private_field_names(&self) -> Option<ListValueIter<'_>> {
[INFO] [stderr]     |                                                              ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/cache_control.rs:277:33
[INFO] [stderr]     |
[INFO] [stderr] 277 |     pub fn no_cache_field_names(&self) -> Option<ListValueIter> {
[INFO] [stderr]     |                                 ^^^^^            ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                                 |
[INFO] [stderr]     |                                 the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 277 |     pub fn no_cache_field_names(&self) -> Option<ListValueIter<'_>> {
[INFO] [stderr]     |                                                               ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/hashtable.rs:47:17
[INFO] [stderr]    |
[INFO] [stderr] 47 |     pub fn read(&self, key: u128) -> RwLockReadGuard<HashMap<u128, V>> {
[INFO] [stderr]    |                 ^^^^^                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 47 |     pub fn read(&self, key: u128) -> RwLockReadGuard<'_, HashMap<u128, V>> {
[INFO] [stderr]    |                                                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/hashtable.rs:51:18
[INFO] [stderr]    |
[INFO] [stderr] 51 |     pub fn write(&self, key: u128) -> RwLockWriteGuard<HashMap<u128, V>> {
[INFO] [stderr]    |                  ^^^^^                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                  |
[INFO] [stderr]    |                  the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 51 |     pub fn write(&self, key: u128) -> RwLockWriteGuard<'_, HashMap<u128, V>> {
[INFO] [stderr]    |                                                        +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/hashtable.rs:116:17
[INFO] [stderr]     |
[INFO] [stderr] 116 |     pub fn read(&self, key: u128) -> RwLockReadGuard<LruCache<u128, V>> {
[INFO] [stderr]     |                 ^^^^^                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 116 |     pub fn read(&self, key: u128) -> RwLockReadGuard<'_, LruCache<u128, V>> {
[INFO] [stderr]     |                                                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/hashtable.rs:120:18
[INFO] [stderr]     |
[INFO] [stderr] 120 |     pub fn write(&self, key: u128) -> RwLockWriteGuard<LruCache<u128, V>> {
[INFO] [stderr]     |                  ^^^^^                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                  |
[INFO] [stderr]     |                  the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 120 |     pub fn write(&self, key: u128) -> RwLockWriteGuard<'_, LruCache<u128, V>> {
[INFO] [stderr]     |                                                        +++
[INFO] [stderr] 
[INFO] [stderr] warning: `pingora-cache` (lib) generated 10 warnings (run `cargo fix --lib -p pingora-cache` to apply 10 suggestions)
[INFO] [stderr] warning: `pingora-cache` (lib test) generated 10 warnings (10 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.35s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pingora_cache-89fe123e97af0d67)
[INFO] [stdout] 
[INFO] [stdout] running 96 tests
[INFO] [stdout] test cache_control::tests::test_age_overflow ... ok
[INFO] [stdout] test cache_control::tests::test_directives_across_header_lines ... ok
[INFO] [stdout] test cache_control::tests::test_no_cache ... ok
[INFO] [stdout] test cache_control::tests::test_case_insensitive_directive_keys ... ok
[INFO] [stdout] test cache_control::tests::test_fresh_sec ... ok
[INFO] [stdout] test cache_control::tests::test_cacheability ... ok
[INFO] [stdout] test cache_control::tests::test_must_revalidate ... ok
[INFO] [stdout] test cache_control::tests::test_recognizes_semicolons_as_delimiters ... ok
[INFO] [stdout] test cache_control::tests::test_no_cache_field_names ... ok
[INFO] [stdout] test cache_control::tests::test_proxy_revalidate ... ok
[INFO] [stdout] test cache_control::tests::test_authorized_request ... ok
[INFO] [stdout] test cache_control::tests::test_non_ascii ... ok
[INFO] [stdout] test cache_control::tests::test_request_only_if_cached ... ok
[INFO] [stdout] test cache_control::tests::test_simple_cache_control ... ok
[INFO] [stdout] test cache_control::tests::test_non_utf8_value ... ok
[INFO] [stdout] test cache_control::tests::test_s_maxage_stale ... ok
[INFO] [stdout] test cache_control::tests::test_private_cache_control ... ok
[INFO] [stdout] test cache_control::tests::test_stale_while_revalidate ... ok
[INFO] [stdout] test cache_control::tests::test_non_utf8_key ... ok
[INFO] [stdout] test cache_control::tests::test_stale_if_error ... ok
[INFO] [stdout] test eviction::lru::test::test_access ... ok
[INFO] [stdout] test cache_control::tests::test_strip_private_headers ... ok
[INFO] [stdout] test cache_control::tests::test_unknown_directives ... ok
[INFO] [stdout] test eviction::lru::test::test_access_add ... ok
[INFO] [stdout] test eviction::lru::test::test_admission ... ok
[INFO] [stdout] test eviction::lru::test::test_peek ... ok
[INFO] [stdout] test eviction::lru::test::test_serde ... ok
[INFO] [stdout] test eviction::simple_lru::test::test_access ... ok
[INFO] [stdout] test eviction::simple_lru::test::test_admit_update ... ok
[INFO] [stdout] test eviction::simple_lru::test::test_remove ... ok
[INFO] [stdout] test eviction::lru::test::test_admit_update ... ok
[INFO] [stdout] test eviction::simple_lru::test::test_access_add ... ok
[INFO] [stdout] test eviction::simple_lru::test::test_admission ... ok
[INFO] [stdout] test eviction::lru::test::test_remove ... ok
[INFO] [stdout] test filters::tests::test_resp_cache_control_with_expires ... ok
[INFO] [stdout] test filters::tests::test_resp_expires ... ok
[INFO] [stdout] test filters::tests::test_resp_multiple_expires ... ok
[INFO] [stdout] test filters::tests::test_resp_nonstandard_expires ... ok
[INFO] [stdout] test eviction::lru::test::test_save_to_disk ... ok
[INFO] [stdout] test filters::tests::test_resp_past_expires ... ok
[INFO] [stdout] test filters::tests::test_resp_stale_while_revalidate ... ok
[INFO] [stdout] test filters::tests::test_resp_stale_if_error ... ok
[INFO] [stdout] test filters::tests::test_resp_cache_no_cache_fields ... ok
[INFO] [stdout] test filters::tests::test_resp_uncacheable_directives ... ok
[INFO] [stdout] test filters::tests::test_resp_status_cache_defaults ... ok
[INFO] [stdout] test key::tests::test_cache_key_hash ... ok
[INFO] [stdout] test filters::tests::test_resp_zero_max_age ... ok
[INFO] [stdout] test eviction::simple_lru::test::test_serde ... ok
[INFO] [stdout] test filters::tests::test_resp_cacheable ... ok
[INFO] [stdout] test key::tests::test_hex_str ... ok
[INFO] [stdout] test key::tests::test_cache_key_vary_hash_override ... ok
[INFO] [stdout] test key::tests::test_cache_key_hash_override ... ok
[INFO] [stdout] test key::tests::test_cache_key_vary_hash ... ok
[INFO] [stdout] test filters::tests::test_resp_cache_authorization ... ok
[INFO] [stdout] test key::tests::test_primary_key_str_invalid_utf8 ... ok
[INFO] [stdout] test key::tests::test_primary_key_str_valid_utf8 ... ok
[INFO] [stdout] test lock::test::test_get_release ... ok
[INFO] [stdout] test lock::test::test_lock ... ok
[INFO] [stdout] test memory::test::test_purge_partial ... ok
[INFO] [stdout] test memory::test::test_purge_complete ... ok
[INFO] [stdout] test eviction::simple_lru::test::test_save_to_disk ... ok
[INFO] [stdout] test meta::internal_meta::tests::test_internal_meta_serde_across_versions ... ok
[INFO] [stdout] test meta::internal_meta::tests::test_internal_meta_serde_v0 ... ok
[INFO] [stdout] test meta::internal_meta::tests::test_internal_meta_serde_v1 ... ok
[INFO] [stdout] test meta::internal_meta::tests::test_internal_meta_serde_v2 ... ok
[INFO] [stdout] test meta::internal_meta::tests::test_internal_meta_serde_v2_extend_fields ... ok
[INFO] [stdout] test memory::test::test_read_range ... ok
[INFO] [stdout] test memory::test::test_write_then_read ... ok
[INFO] [stdout] test predictor::tests::test_mark_cacheability ... ok
[INFO] [stdout] test memory::test::test_write_while_read ... ok
[INFO] [stdout] test put::parse_response::test::test_200_with_zero_content_length_more_data ... ok
[INFO] [stdout] test put::parse_response::test::test_204_with_chunked_body ... ok
[INFO] [stdout] test put::parse_response::test::test_204_with_content_length ... ok
[INFO] [stdout] test predictor::tests::test_custom_skip_predicate ... ok
[INFO] [stdout] test put::parse_response::test::test_basic_response ... ok
[INFO] [stdout] test predictor::tests::test_mark_uncacheable_lru ... ok
[INFO] [stdout] test put::parse_response::test::test_body_chunked ... ok
[INFO] [stdout] test put::parse_response::test::test_body_content_length ... ok
[INFO] [stdout] test put::parse_response::test::test_body_chunked_partial_chunk ... ok
[INFO] [stdout] test put::parse_response::test::test_body_content_length_early ... ok
[INFO] [stdout] test put::parse_response::test::test_body_content_length_more_data ... ok
[INFO] [stdout] test put::parse_response::test::test_no_body_content_length ... ok
[INFO] [stdout] test put::test::test_cache_put ... ok
[INFO] [stdout] test put::test::test_cache_put_204_invalid_body ... ok
[INFO] [stdout] test put::parse_response::test::test_partial_response_headers ... ok
[INFO] [stdout] test put::parse_response::test::test_invalid_headers ... ok
[INFO] [stdout] test put::parse_response::test::test_no_body_304_no_content_length ... ok
[INFO] [stdout] test put::test::test_cache_put_extra_body ... ok
[INFO] [stdout] test variance::test::test_basic ... ok
[INFO] [stdout] test put::test::test_cache_put_uncacheable ... ok
[INFO] [stdout] test variance::test::test_value_overriding ... ok
[INFO] [stdout] test variance::test::test_value_ordering ... ok
[INFO] [stdout] test lock::test::test_lock_concurrent ... ok
[INFO] [stdout] test lock::test::test_lock_expired_release ... ok
[INFO] [stdout] test lock::test::test_lock_expired_no_reader ... ok
[INFO] [stderr]    Doc-tests pingora_cache
[INFO] [stdout] test lock::test::test_lock_timeout ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 96 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.19s
[INFO] [stdout] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/lock.rs:23:29
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub type CacheKeyLockImpl = (dyn CacheKeyLock + Send + Sync);
[INFO] [stderr]    |                             ^                              ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 23 - pub type CacheKeyLockImpl = (dyn CacheKeyLock + Send + Sync);
[INFO] [stderr] 23 + pub type CacheKeyLockImpl = dyn CacheKeyLock + Send + Sync;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]    --> src/storage.rs:160:27
[INFO] [stderr]     |
[INFO] [stderr] 160 | pub type HitHandler = Box<(dyn HandleHit + Sync + Send)>;
[INFO] [stderr]     |                           ^                           ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 160 - pub type HitHandler = Box<(dyn HandleHit + Sync + Send)>;
[INFO] [stderr] 160 + pub type HitHandler = Box<dyn HandleHit + Sync + Send>;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]    --> src/storage.rs:200:28
[INFO] [stderr]     |
[INFO] [stderr] 200 | pub type MissHandler = Box<(dyn HandleMiss + Sync + Send)>;
[INFO] [stderr]     |                            ^                            ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 200 - pub type MissHandler = Box<(dyn HandleMiss + Sync + Send)>;
[INFO] [stderr] 200 + pub type MissHandler = Box<dyn HandleMiss + Sync + Send>;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: 3 warnings emitted
[INFO] [stderr] 
[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] running `Command { std: "docker" "inspect" "5fcf810d71606664e07c29976d660d40d89e43701b2d93b578e28a4324131ace", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5fcf810d71606664e07c29976d660d40d89e43701b2d93b578e28a4324131ace", kill_on_drop: false }`
[INFO] [stdout] 5fcf810d71606664e07c29976d660d40d89e43701b2d93b578e28a4324131ace
