[INFO] fetching crate redis_cluster_async 0.8.1... [INFO] checking redis_cluster_async-0.8.1 against try#23ffd2897cbb44320ca18dfe4d05dbacb37d55e0 for pr-115950 [INFO] extracting crate redis_cluster_async 0.8.1 into /workspace/builds/worker-5-tc2/source [INFO] validating manifest of crates.io crate redis_cluster_async 0.8.1 on toolchain 23ffd2897cbb44320ca18dfe4d05dbacb37d55e0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+23ffd2897cbb44320ca18dfe4d05dbacb37d55e0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate redis_cluster_async 0.8.1 [INFO] finished tweaking crates.io crate redis_cluster_async 0.8.1 [INFO] tweaked toml for crates.io crate redis_cluster_async 0.8.1 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+23ffd2897cbb44320ca18dfe4d05dbacb37d55e0" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+23ffd2897cbb44320ca18dfe4d05dbacb37d55e0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4f8da3c744d2da974e54ce020a79f4ad54313e914ebeaab8fc086f07e8d8b066" "/opt/rustwide/cargo-home/bin/cargo" "+23ffd2897cbb44320ca18dfe4d05dbacb37d55e0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] f0caa37eb4eb2d1ad503cedf9ecd2dc28ff488b8b984e3759b46162ed4705a23 [INFO] running `Command { std: "docker" "start" "-a" "f0caa37eb4eb2d1ad503cedf9ecd2dc28ff488b8b984e3759b46162ed4705a23", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f0caa37eb4eb2d1ad503cedf9ecd2dc28ff488b8b984e3759b46162ed4705a23", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f0caa37eb4eb2d1ad503cedf9ecd2dc28ff488b8b984e3759b46162ed4705a23", kill_on_drop: false }` [INFO] [stdout] f0caa37eb4eb2d1ad503cedf9ecd2dc28ff488b8b984e3759b46162ed4705a23 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-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:4f8da3c744d2da974e54ce020a79f4ad54313e914ebeaab8fc086f07e8d8b066" "/opt/rustwide/cargo-home/bin/cargo" "+23ffd2897cbb44320ca18dfe4d05dbacb37d55e0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 11dcb56e54664a106295aae68ec73776e47ac23d9a2799ca88036e90769e7faa [INFO] running `Command { std: "docker" "start" "-a" "11dcb56e54664a106295aae68ec73776e47ac23d9a2799ca88036e90769e7faa", kill_on_drop: false }` [INFO] [stderr] Compiling lock_api v0.4.10 [INFO] [stderr] Compiling parking_lot_core v0.9.8 [INFO] [stderr] Compiling syn v2.0.37 [INFO] [stderr] Checking smallvec v1.11.0 [INFO] [stderr] Compiling futures-channel v0.3.28 [INFO] [stderr] Compiling rustix v0.38.13 [INFO] [stderr] Checking tracing-core v0.1.31 [INFO] [stderr] Checking socket2 v0.5.4 [INFO] [stderr] Checking signal-hook-registry v1.4.1 [INFO] [stderr] Checking mio v0.8.8 [INFO] [stderr] Checking num_cpus v1.16.0 [INFO] [stderr] Checking tracing v0.1.37 [INFO] [stderr] Compiling async-trait v0.1.73 [INFO] [stderr] Compiling libm v0.2.7 [INFO] [stderr] Checking aho-corasick v1.1.0 [INFO] [stderr] Checking parking_lot v0.12.1 [INFO] [stderr] Compiling num-traits v0.2.16 [INFO] [stderr] Compiling crc16 v0.4.0 [INFO] [stderr] Checking regex-syntax v0.7.5 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking socket2 v0.4.9 [INFO] [stderr] Checking wait-timeout v0.2.0 [INFO] [stderr] Checking sha1_smol v1.0.0 [INFO] [stderr] Checking bit-vec v0.6.3 [INFO] [stderr] Checking quick-error v1.2.3 [INFO] [stderr] Checking log v0.4.20 [INFO] [stderr] Checking bit-set v0.5.3 [INFO] [stderr] Checking rand_xorshift v0.3.0 [INFO] [stderr] Checking termcolor v1.3.0 [INFO] [stderr] Checking byteorder v1.4.3 [INFO] [stderr] Checking unarray v0.1.4 [INFO] [stderr] Checking regex-syntax v0.6.29 [INFO] [stderr] Checking humantime v2.1.0 [INFO] [stderr] Checking regex-automata v0.3.8 [INFO] [stderr] Checking tempfile v3.8.0 [INFO] [stderr] Checking is-terminal v0.4.9 [INFO] [stderr] Checking rusty-fork v0.3.0 [INFO] [stderr] Compiling tokio-macros v2.1.0 [INFO] [stderr] Compiling futures-macro v0.3.28 [INFO] [stderr] Checking proptest v1.2.0 [INFO] [stderr] Checking regex v1.9.5 [INFO] [stderr] Checking env_logger v0.10.0 [INFO] [stderr] Checking tokio v1.32.0 [INFO] [stderr] Checking futures-util v0.3.28 [INFO] [stderr] Checking futures-executor v0.3.28 [INFO] [stderr] Checking futures v0.3.28 [INFO] [stderr] Checking tokio-util v0.7.8 [INFO] [stderr] Checking combine v4.6.6 [INFO] [stderr] Checking redis v0.23.3 [INFO] [stderr] Checking redis_cluster_async v0.8.1 (/opt/rustwide/workdir) [INFO] [stdout] error[E0506]: cannot assign to `self.state` because it is borrowed [INFO] [stdout] --> src/lib.rs:707:17 [INFO] [stdout] | [INFO] [stdout] 707 | self.state = ConnectionState::Recover(Box::pin(self.refresh_slots())); [INFO] [stdout] | ^^^^^^^^^^ ------------------------------ [INFO] [stdout] | | | | [INFO] [stdout] | | | `self.state` is borrowed here [INFO] [stdout] | | cast requires that `*self` is borrowed for `'static` [INFO] [stdout] | `self.state` is assigned to here but it was already borrowed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0506]: cannot assign to `self.state` because it is borrowed [INFO] [stdout] --> src/lib.rs:707:17 [INFO] [stdout] | [INFO] [stdout] 707 | self.state = ConnectionState::Recover(Box::pin(self.refresh_slots())); [INFO] [stdout] | ^^^^^^^^^^ ------------------------------ [INFO] [stdout] | | | | [INFO] [stdout] | | | `self.state` is borrowed here [INFO] [stdout] | | cast requires that `*self` is borrowed for `'static` [INFO] [stdout] | `self.state` is assigned to here but it was already borrowed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> src/lib.rs:707:55 [INFO] [stdout] | [INFO] [stdout] 688 | &mut self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 707 | self.state = ConnectionState::Recover(Box::pin(self.refresh_slots())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cast requires that `'1` must outlive `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> src/lib.rs:707:55 [INFO] [stdout] | [INFO] [stdout] 688 | &mut self, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 707 | self.state = ConnectionState::Recover(Box::pin(self.refresh_slots())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cast requires that `'1` must outlive `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `*self` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:726:30 [INFO] [stdout] | [INFO] [stdout] 726 | let future = self.try_request(&request.info); [INFO] [stdout] | ^^^^ `*self` was mutably borrowed here in the previous iteration of the loop [INFO] [stdout] ... [INFO] [stdout] 731 | future: future.boxed(), [INFO] [stdout] | -------------- cast requires that `*self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `*self` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:726:30 [INFO] [stdout] | [INFO] [stdout] 726 | let future = self.try_request(&request.info); [INFO] [stdout] | ^^^^ `*self` was mutably borrowed here in the previous iteration of the loop [INFO] [stdout] ... [INFO] [stdout] 731 | future: future.boxed(), [INFO] [stdout] | -------------- cast requires that `*self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `request.info` does not live long enough [INFO] [stdout] --> src/lib.rs:726:47 [INFO] [stdout] | [INFO] [stdout] 718 | for request in pending_requests.drain(..) { [INFO] [stdout] | ------- binding `request` declared here [INFO] [stdout] ... [INFO] [stdout] 726 | let future = self.try_request(&request.info); [INFO] [stdout] | ^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 731 | future: future.boxed(), [INFO] [stdout] | -------------- cast requires that `request.info` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 734 | } [INFO] [stdout] | - `request.info` dropped here while still borrowed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `request.info` does not live long enough [INFO] [stdout] --> src/lib.rs:726:47 [INFO] [stdout] | [INFO] [stdout] 718 | for request in pending_requests.drain(..) { [INFO] [stdout] | ------- binding `request` declared here [INFO] [stdout] ... [INFO] [stdout] 726 | let future = self.try_request(&request.info); [INFO] [stdout] | ^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 731 | future: future.boxed(), [INFO] [stdout] | -------------- cast requires that `request.info` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 734 | } [INFO] [stdout] | - `request.info` dropped here while still borrowed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0502]: cannot borrow `self.in_flight_requests` as immutable because it is also borrowed as mutable [INFO] [stdout] --> src/lib.rs:727:17 [INFO] [stdout] | [INFO] [stdout] 726 | let future = self.try_request(&request.info); [INFO] [stdout] | ---- mutable borrow occurs here [INFO] [stdout] 727 | self.in_flight_requests.push(Box::pin(Request { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ immutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 731 | future: future.boxed(), [INFO] [stdout] | -------------- cast requires that `*self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0502]: cannot borrow `self.in_flight_requests` as immutable because it is also borrowed as mutable [INFO] [stdout] --> src/lib.rs:727:17 [INFO] [stdout] | [INFO] [stdout] 726 | let future = self.try_request(&request.info); [INFO] [stdout] | ---- mutable borrow occurs here [INFO] [stdout] 727 | self.in_flight_requests.push(Box::pin(Request { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ immutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 731 | future: future.boxed(), [INFO] [stdout] | -------------- cast requires that `*self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0503]: cannot use `self.retries` because it was mutably borrowed [INFO] [stdout] --> src/lib.rs:728:34 [INFO] [stdout] | [INFO] [stdout] 726 | let future = self.try_request(&request.info); [INFO] [stdout] | ---- `*self` is borrowed here [INFO] [stdout] 727 | self.in_flight_requests.push(Box::pin(Request { [INFO] [stdout] | ---- borrow later used by call [INFO] [stdout] 728 | max_retries: self.retries, [INFO] [stdout] | ^^^^^^^^^^^^ use of borrowed `*self` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0503]: cannot use `self.retries` because it was mutably borrowed [INFO] [stdout] --> src/lib.rs:728:34 [INFO] [stdout] | [INFO] [stdout] 726 | let future = self.try_request(&request.info); [INFO] [stdout] | ---- `*self` is borrowed here [INFO] [stdout] 727 | self.in_flight_requests.push(Box::pin(Request { [INFO] [stdout] | ---- borrow later used by call [INFO] [stdout] 728 | max_retries: self.retries, [INFO] [stdout] | ^^^^^^^^^^^^ use of borrowed `*self` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0505]: cannot move out of `request` because it is borrowed [INFO] [stdout] --> src/lib.rs:729:35 [INFO] [stdout] | [INFO] [stdout] 718 | for request in pending_requests.drain(..) { [INFO] [stdout] | ------- binding `request` declared here [INFO] [stdout] ... [INFO] [stdout] 726 | let future = self.try_request(&request.info); [INFO] [stdout] | ------------- borrow of `request.info` occurs here [INFO] [stdout] 727 | self.in_flight_requests.push(Box::pin(Request { [INFO] [stdout] | ---- borrow later used by call [INFO] [stdout] 728 | max_retries: self.retries, [INFO] [stdout] 729 | request: Some(request), [INFO] [stdout] | ^^^^^^^ move out of `request` occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0506]: cannot assign to `self.pending_requests` because it is borrowed [INFO] [stdout] --> src/lib.rs:735:13 [INFO] [stdout] | [INFO] [stdout] 726 | let future = self.try_request(&request.info); [INFO] [stdout] | ---- `self.pending_requests` is borrowed here [INFO] [stdout] ... [INFO] [stdout] 731 | future: future.boxed(), [INFO] [stdout] | -------------- cast requires that `*self` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 735 | self.pending_requests = pending_requests; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ `self.pending_requests` is assigned to here but it was already borrowed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0505]: cannot move out of `request` because it is borrowed [INFO] [stdout] --> src/lib.rs:729:35 [INFO] [stdout] | [INFO] [stdout] 718 | for request in pending_requests.drain(..) { [INFO] [stdout] | ------- binding `request` declared here [INFO] [stdout] ... [INFO] [stdout] 726 | let future = self.try_request(&request.info); [INFO] [stdout] | ------------- borrow of `request.info` occurs here [INFO] [stdout] 727 | self.in_flight_requests.push(Box::pin(Request { [INFO] [stdout] | ---- borrow later used by call [INFO] [stdout] 728 | max_retries: self.retries, [INFO] [stdout] 729 | request: Some(request), [INFO] [stdout] | ^^^^^^^ move out of `request` occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `self.in_flight_requests` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:739:41 [INFO] [stdout] | [INFO] [stdout] 739 | let result = match Pin::new(&mut self.in_flight_requests).poll_next(cx) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ second mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 753 | let future = self.try_request(&request.info); [INFO] [stdout] | ---- first mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 758 | future: Box::pin(future), [INFO] [stdout] | ---------------- cast requires that `*self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0506]: cannot assign to `self.pending_requests` because it is borrowed [INFO] [stdout] --> src/lib.rs:735:13 [INFO] [stdout] | [INFO] [stdout] 726 | let future = self.try_request(&request.info); [INFO] [stdout] | ---- `self.pending_requests` is borrowed here [INFO] [stdout] ... [INFO] [stdout] 731 | future: future.boxed(), [INFO] [stdout] | -------------- cast requires that `*self` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 735 | self.pending_requests = pending_requests; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ `self.pending_requests` is assigned to here but it was already borrowed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `*self` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:743:25 [INFO] [stdout] | [INFO] [stdout] 743 | let self_ = &mut *self; [INFO] [stdout] | ^^^^^^^^^^ second mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 753 | let future = self.try_request(&request.info); [INFO] [stdout] | ---- first mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 758 | future: Box::pin(future), [INFO] [stdout] | ---------------- cast requires that `*self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `self.in_flight_requests` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:739:41 [INFO] [stdout] | [INFO] [stdout] 739 | let result = match Pin::new(&mut self.in_flight_requests).poll_next(cx) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ second mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 753 | let future = self.try_request(&request.info); [INFO] [stdout] | ---- first mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 758 | future: Box::pin(future), [INFO] [stdout] | ---------------- cast requires that `*self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `*self` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:753:34 [INFO] [stdout] | [INFO] [stdout] 753 | let future = self.try_request(&request.info); [INFO] [stdout] | ^^^^ `*self` was mutably borrowed here in the previous iteration of the loop [INFO] [stdout] ... [INFO] [stdout] 758 | future: Box::pin(future), [INFO] [stdout] | ---------------- cast requires that `*self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `*self` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:743:25 [INFO] [stdout] | [INFO] [stdout] 743 | let self_ = &mut *self; [INFO] [stdout] | ^^^^^^^^^^ second mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 753 | let future = self.try_request(&request.info); [INFO] [stdout] | ---- first mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 758 | future: Box::pin(future), [INFO] [stdout] | ---------------- cast requires that `*self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `*self` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:753:34 [INFO] [stdout] | [INFO] [stdout] 753 | let future = self.try_request(&request.info); [INFO] [stdout] | ^^^^ `*self` was mutably borrowed here in the previous iteration of the loop [INFO] [stdout] ... [INFO] [stdout] 758 | future: Box::pin(future), [INFO] [stdout] | ---------------- cast requires that `*self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `request.info` does not live long enough [INFO] [stdout] --> src/lib.rs:753:51 [INFO] [stdout] | [INFO] [stdout] 746 | Next::TryNewConnection { request, error } => { [INFO] [stdout] | ------- binding `request` declared here [INFO] [stdout] ... [INFO] [stdout] 753 | let future = self.try_request(&request.info); [INFO] [stdout] | ^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 758 | future: Box::pin(future), [INFO] [stdout] | ---------------- cast requires that `request.info` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 761 | } [INFO] [stdout] | - `request.info` dropped here while still borrowed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0502]: cannot borrow `self.in_flight_requests` as immutable because it is also borrowed as mutable [INFO] [stdout] --> src/lib.rs:754:21 [INFO] [stdout] | [INFO] [stdout] 753 | let future = self.try_request(&request.info); [INFO] [stdout] | ---- mutable borrow occurs here [INFO] [stdout] 754 | self.in_flight_requests.push(Box::pin(Request { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ immutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 758 | future: Box::pin(future), [INFO] [stdout] | ---------------- cast requires that `*self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `request.info` does not live long enough [INFO] [stdout] --> src/lib.rs:753:51 [INFO] [stdout] | [INFO] [stdout] 746 | Next::TryNewConnection { request, error } => { [INFO] [stdout] | ------- binding `request` declared here [INFO] [stdout] ... [INFO] [stdout] 753 | let future = self.try_request(&request.info); [INFO] [stdout] | ^^^^^^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 758 | future: Box::pin(future), [INFO] [stdout] | ---------------- cast requires that `request.info` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 761 | } [INFO] [stdout] | - `request.info` dropped here while still borrowed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0503]: cannot use `self.retries` because it was mutably borrowed [INFO] [stdout] --> src/lib.rs:755:38 [INFO] [stdout] | [INFO] [stdout] 753 | let future = self.try_request(&request.info); [INFO] [stdout] | ---- `*self` is borrowed here [INFO] [stdout] 754 | self.in_flight_requests.push(Box::pin(Request { [INFO] [stdout] | ---- borrow later used by call [INFO] [stdout] 755 | max_retries: self.retries, [INFO] [stdout] | ^^^^^^^^^^^^ use of borrowed `*self` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0502]: cannot borrow `self.in_flight_requests` as immutable because it is also borrowed as mutable [INFO] [stdout] --> src/lib.rs:754:21 [INFO] [stdout] | [INFO] [stdout] 753 | let future = self.try_request(&request.info); [INFO] [stdout] | ---- mutable borrow occurs here [INFO] [stdout] 754 | self.in_flight_requests.push(Box::pin(Request { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ immutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 758 | future: Box::pin(future), [INFO] [stdout] | ---------------- cast requires that `*self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0503]: cannot use `self.retries` because it was mutably borrowed [INFO] [stdout] --> src/lib.rs:755:38 [INFO] [stdout] | [INFO] [stdout] 753 | let future = self.try_request(&request.info); [INFO] [stdout] | ---- `*self` is borrowed here [INFO] [stdout] 754 | self.in_flight_requests.push(Box::pin(Request { [INFO] [stdout] | ---- borrow later used by call [INFO] [stdout] 755 | max_retries: self.retries, [INFO] [stdout] | ^^^^^^^^^^^^ use of borrowed `*self` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0505]: cannot move out of `request` because it is borrowed [INFO] [stdout] --> src/lib.rs:756:39 [INFO] [stdout] | [INFO] [stdout] 746 | Next::TryNewConnection { request, error } => { [INFO] [stdout] | ------- binding `request` declared here [INFO] [stdout] ... [INFO] [stdout] 753 | let future = self.try_request(&request.info); [INFO] [stdout] | ------------- borrow of `request.info` occurs here [INFO] [stdout] 754 | self.in_flight_requests.push(Box::pin(Request { [INFO] [stdout] | ---- borrow later used by call [INFO] [stdout] 755 | max_retries: self.retries, [INFO] [stdout] 756 | request: Some(request), [INFO] [stdout] | ^^^^^^^ move out of `request` occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> src/lib.rs:758:37 [INFO] [stdout] | [INFO] [stdout] 713 | fn poll_complete(&mut self, cx: &mut task::Context<'_>) -> Poll> { [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 758 | future: Box::pin(future), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ cast requires that `'1` must outlive `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0505]: cannot move out of `request` because it is borrowed [INFO] [stdout] --> src/lib.rs:756:39 [INFO] [stdout] | [INFO] [stdout] 746 | Next::TryNewConnection { request, error } => { [INFO] [stdout] | ------- binding `request` declared here [INFO] [stdout] ... [INFO] [stdout] 753 | let future = self.try_request(&request.info); [INFO] [stdout] | ------------- borrow of `request.info` occurs here [INFO] [stdout] 754 | self.in_flight_requests.push(Box::pin(Request { [INFO] [stdout] | ---- borrow later used by call [INFO] [stdout] 755 | max_retries: self.retries, [INFO] [stdout] 756 | request: Some(request), [INFO] [stdout] | ^^^^^^^ move out of `request` occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `self.pending_requests` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:764:21 [INFO] [stdout] | [INFO] [stdout] 753 | let future = self.try_request(&request.info); [INFO] [stdout] | ---- first mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 758 | future: Box::pin(future), [INFO] [stdout] | ---------------- cast requires that `*self` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 764 | self.pending_requests.push(request); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ second mutable borrow occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> src/lib.rs:758:37 [INFO] [stdout] | [INFO] [stdout] 713 | fn poll_complete(&mut self, cx: &mut task::Context<'_>) -> Poll> { [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 758 | future: Box::pin(future), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ cast requires that `'1` must outlive `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0502]: cannot borrow `self.in_flight_requests` as immutable because it is also borrowed as mutable [INFO] [stdout] --> src/lib.rs:771:19 [INFO] [stdout] | [INFO] [stdout] 753 | let future = self.try_request(&request.info); [INFO] [stdout] | ---- mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 758 | future: Box::pin(future), [INFO] [stdout] | ---------------- cast requires that `*self` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 771 | } else if self.in_flight_requests.is_empty() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ immutable borrow occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `self.pending_requests` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:764:21 [INFO] [stdout] | [INFO] [stdout] 753 | let future = self.try_request(&request.info); [INFO] [stdout] | ---- first mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 758 | future: Box::pin(future), [INFO] [stdout] | ---------------- cast requires that `*self` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 764 | self.pending_requests.push(request); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ second mutable borrow occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0502]: cannot borrow `self.in_flight_requests` as immutable because it is also borrowed as mutable [INFO] [stdout] --> src/lib.rs:771:19 [INFO] [stdout] | [INFO] [stdout] 753 | let future = self.try_request(&request.info); [INFO] [stdout] | ---- mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 758 | future: Box::pin(future), [INFO] [stdout] | ---------------- cast requires that `*self` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 771 | } else if self.in_flight_requests.is_empty() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ immutable borrow occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `self` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:855:13 [INFO] [stdout] | [INFO] [stdout] 855 | self.send_refresh_error(); [INFO] [stdout] | ^^^^ second mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 879 | self.state = ConnectionState::Recover(Box::pin(self.refresh_slots())); [INFO] [stdout] | ------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | first mutable borrow occurs here [INFO] [stdout] | cast requires that `self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `self` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:855:13 [INFO] [stdout] | [INFO] [stdout] 855 | self.send_refresh_error(); [INFO] [stdout] | ^^^^ second mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 879 | self.state = ConnectionState::Recover(Box::pin(self.refresh_slots())); [INFO] [stdout] | ------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | first mutable borrow occurs here [INFO] [stdout] | cast requires that `self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `self` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:857:37 [INFO] [stdout] | [INFO] [stdout] 857 | match mem::replace(&mut self.state, ConnectionState::PollComplete) { [INFO] [stdout] | ^^^^ second mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 879 | self.state = ConnectionState::Recover(Box::pin(self.refresh_slots())); [INFO] [stdout] | ------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | first mutable borrow occurs here [INFO] [stdout] | cast requires that `self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `self` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:857:37 [INFO] [stdout] | [INFO] [stdout] 857 | match mem::replace(&mut self.state, ConnectionState::PollComplete) { [INFO] [stdout] | ^^^^ second mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 879 | self.state = ConnectionState::Recover(Box::pin(self.refresh_slots())); [INFO] [stdout] | ------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | first mutable borrow occurs here [INFO] [stdout] | cast requires that `self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `self` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:859:34 [INFO] [stdout] | [INFO] [stdout] 859 | match ready!(self.as_mut().poll_recover(cx, future)) { [INFO] [stdout] | ^^^^ second mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 879 | self.state = ConnectionState::Recover(Box::pin(self.refresh_slots())); [INFO] [stdout] | ------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | first mutable borrow occurs here [INFO] [stdout] | cast requires that `self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `self` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:859:34 [INFO] [stdout] | [INFO] [stdout] 859 | match ready!(self.as_mut().poll_recover(cx, future)) { [INFO] [stdout] | ^^^^ second mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 879 | self.state = ConnectionState::Recover(Box::pin(self.refresh_slots())); [INFO] [stdout] | ------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | first mutable borrow occurs here [INFO] [stdout] | cast requires that `self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `self` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:865:29 [INFO] [stdout] | [INFO] [stdout] 865 | self.refresh_error = Some(err); [INFO] [stdout] | ^^^^ second mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 879 | self.state = ConnectionState::Recover(Box::pin(self.refresh_slots())); [INFO] [stdout] | ------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | first mutable borrow occurs here [INFO] [stdout] | cast requires that `self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `self` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:865:29 [INFO] [stdout] | [INFO] [stdout] 865 | self.refresh_error = Some(err); [INFO] [stdout] | ^^^^ second mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 879 | self.state = ConnectionState::Recover(Box::pin(self.refresh_slots())); [INFO] [stdout] | ------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | first mutable borrow occurs here [INFO] [stdout] | cast requires that `self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `self` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:875:63 [INFO] [stdout] | [INFO] [stdout] 875 | ConnectionState::PollComplete => match ready!(self.poll_complete(cx)) { [INFO] [stdout] | ^^^^ second mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 879 | self.state = ConnectionState::Recover(Box::pin(self.refresh_slots())); [INFO] [stdout] | ------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | first mutable borrow occurs here [INFO] [stdout] | cast requires that `self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `self` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:875:63 [INFO] [stdout] | [INFO] [stdout] 875 | ConnectionState::PollComplete => match ready!(self.poll_complete(cx)) { [INFO] [stdout] | ^^^^ second mutable borrow occurs here [INFO] [stdout] ... [INFO] [stdout] 879 | self.state = ConnectionState::Recover(Box::pin(self.refresh_slots())); [INFO] [stdout] | ------------------------------ [INFO] [stdout] | | | [INFO] [stdout] | | first mutable borrow occurs here [INFO] [stdout] | cast requires that `self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `self` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:879:25 [INFO] [stdout] | [INFO] [stdout] 879 | self.state = ConnectionState::Recover(Box::pin(self.refresh_slots())); [INFO] [stdout] | ^^^^ ------------------------------ [INFO] [stdout] | | | | [INFO] [stdout] | | | first mutable borrow occurs here [INFO] [stdout] | | cast requires that `self` is borrowed for `'static` [INFO] [stdout] | second mutable borrow occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `self` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:879:25 [INFO] [stdout] | [INFO] [stdout] 879 | self.state = ConnectionState::Recover(Box::pin(self.refresh_slots())); [INFO] [stdout] | ^^^^ ------------------------------ [INFO] [stdout] | | | | [INFO] [stdout] | | | first mutable borrow occurs here [INFO] [stdout] | | cast requires that `self` is borrowed for `'static` [INFO] [stdout] | second mutable borrow occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> src/lib.rs:879:63 [INFO] [stdout] | [INFO] [stdout] 850 | mut self: Pin<&mut Self>, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 879 | self.state = ConnectionState::Recover(Box::pin(self.refresh_slots())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cast requires that `'1` must outlive `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> src/lib.rs:879:63 [INFO] [stdout] | [INFO] [stdout] 850 | mut self: Pin<&mut Self>, [INFO] [stdout] | - let's call the lifetime of this reference `'1` [INFO] [stdout] ... [INFO] [stdout] 879 | self.state = ConnectionState::Recover(Box::pin(self.refresh_slots())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cast requires that `'1` must outlive `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `self` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:879:72 [INFO] [stdout] | [INFO] [stdout] 879 | self.state = ConnectionState::Recover(Box::pin(self.refresh_slots())); [INFO] [stdout] | ---------^^^^----------------- [INFO] [stdout] | | | [INFO] [stdout] | | `self` was mutably borrowed here in the previous iteration of the loop [INFO] [stdout] | cast requires that `self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `self` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:879:72 [INFO] [stdout] | [INFO] [stdout] 879 | self.state = ConnectionState::Recover(Box::pin(self.refresh_slots())); [INFO] [stdout] | ---------^^^^----------------- [INFO] [stdout] | | | [INFO] [stdout] | | `self` was mutably borrowed here in the previous iteration of the loop [INFO] [stdout] | cast requires that `self` is borrowed for `'static` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 26 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0499, E0502, E0503, E0505, E0506, E0597. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0499`. [INFO] [stdout] [INFO] [stdout] error: aborting due to 26 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0499, E0502, E0503, E0505, E0506, E0597. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0499`. [INFO] [stdout] [INFO] [stderr] error: could not compile `redis_cluster_async` (lib) due to 27 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: could not compile `redis_cluster_async` (lib test) due to 27 previous errors [INFO] running `Command { std: "docker" "inspect" "11dcb56e54664a106295aae68ec73776e47ac23d9a2799ca88036e90769e7faa", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "11dcb56e54664a106295aae68ec73776e47ac23d9a2799ca88036e90769e7faa", kill_on_drop: false }` [INFO] [stdout] 11dcb56e54664a106295aae68ec73776e47ac23d9a2799ca88036e90769e7faa