[INFO] fetching crate solicit 0.4.4...
[INFO] building solicit-0.4.4 against try#d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6 for pr-146237-1
[INFO] extracting crate solicit 0.4.4 into /workspace/builds/worker-7-tc2/source
[INFO] started tweaking crates.io crate solicit 0.4.4
[INFO] finished tweaking crates.io crate solicit 0.4.4
[INFO] tweaked toml for crates.io crate solicit 0.4.4 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate solicit 0.4.4 on toolchain d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]      Locking 28 packages to latest compatible versions
[INFO] [stderr]       Adding hpack v0.2.0 (available: v0.3.0)
[INFO] [stderr]       Adding log v0.3.9 (available: v0.4.28)
[INFO] [stderr]       Adding openssl v0.8.3 (available: v0.10.73)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 01763f9b6def154190905f621f07f5beaaa3c103fe3ad36be3dfd98fd5c45be2
[INFO] running `Command { std: "docker" "start" "-a" "01763f9b6def154190905f621f07f5beaaa3c103fe3ad36be3dfd98fd5c45be2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "01763f9b6def154190905f621f07f5beaaa3c103fe3ad36be3dfd98fd5c45be2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "01763f9b6def154190905f621f07f5beaaa3c103fe3ad36be3dfd98fd5c45be2", kill_on_drop: false }`
[INFO] [stdout] 01763f9b6def154190905f621f07f5beaaa3c103fe3ad36be3dfd98fd5c45be2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1ebd6484540129b93d9d5c1244140bd893206887e8ee9c5649a1b3584b6f4107
[INFO] running `Command { std: "docker" "start" "-a" "1ebd6484540129b93d9d5c1244140bd893206887e8ee9c5649a1b3584b6f4107", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling log v0.4.28
[INFO] [stderr]    Compiling log v0.3.9
[INFO] [stderr]    Compiling hpack v0.2.0
[INFO] [stderr]    Compiling solicit v0.4.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/http/transport.rs:44:24
[INFO] [stdout]    |
[INFO] [stdout] 44 |             let read = try!(self.read(&mut buf[total..]));
[INFO] [stdout]    |                        ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/http/connection.rs:61:41
[INFO] [stdout]    |
[INFO] [stdout] 61 |             0x0 => HttpFrame::DataFrame(try!(HttpFrame::parse_frame(raw_frame))),
[INFO] [stdout]    |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/http/connection.rs:62:44
[INFO] [stdout]    |
[INFO] [stdout] 62 |             0x1 => HttpFrame::HeadersFrame(try!(HttpFrame::parse_frame(raw_frame))),
[INFO] [stdout]    |                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/http/connection.rs:63:45
[INFO] [stdout]    |
[INFO] [stdout] 63 |             0x4 => HttpFrame::SettingsFrame(try!(HttpFrame::parse_frame(raw_frame))),
[INFO] [stdout]    |                                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:140:9
[INFO] [stdout]     |
[INFO] [stdout] 140 |         try!(self.write_all(&frame.serialize()));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |         try!(self.write_all(&serialized));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:167:13
[INFO] [stdout]     |
[INFO] [stdout] 167 |             try!(TransportStream::read_exact(stream, &mut buf));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:180:13
[INFO] [stdout]     |
[INFO] [stdout] 180 |             try!(TransportStream::read_exact(stream, &mut buf));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:185:37
[INFO] [stdout]     |
[INFO] [stdout] 185 |         let header = unpack_header(&try!(read_header_bytes(self)));
[INFO] [stdout]     |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:188:23
[INFO] [stdout]     |
[INFO] [stdout] 188 |         let payload = try!(read_payload(self, header.0));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:194:21
[INFO] [stdout]     |
[INFO] [stdout] 194 |         let frame = try!(HttpFrame::from_raw(raw_frame));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:388:21
[INFO] [stdout]     |
[INFO] [stdout] 388 |         let chunk = try!(prioritizer.get_next_chunk());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:392:17
[INFO] [stdout]     |
[INFO] [stdout] 392 |                 try!(self.send_data(chunk));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:416:9
[INFO] [stdout]     |
[INFO] [stdout] 416 |         try!(self.handle_frame(frame.unwrap(), session));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:484:23
[INFO] [stdout]     |
[INFO] [stdout] 484 |         let headers = try!(self.decoder.decode(&frame.header_fragment)
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:503:13
[INFO] [stdout]     |
[INFO] [stdout] 503 |             try!(self.send_frame(SettingsFrame::new_ack()));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/http/client/mod.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     try!(stream.write_all(preface));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/http/client/mod.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 47 |     try!(stream.write_all(&settings.serialize()));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/client/mod.rs:156:9
[INFO] [stdout]     |
[INFO] [stdout] 156 |         try!(write_preface(&mut stream));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/client/mod.rs:153:26
[INFO] [stdout]     |
[INFO] [stdout] 153 |         let mut stream = try!(TcpStream::connect((self.host, self.port)));
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/client/mod.rs:211:9
[INFO] [stdout]     |
[INFO] [stdout] 211 |         try!(self.read_preface());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/client/mod.rs:237:9
[INFO] [stdout]     |
[INFO] [stdout] 237 |         try!(self.conn.send_headers(req.headers, req.stream.id(), end_stream));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/server.rs:118:9
[INFO] [stdout]     |
[INFO] [stdout] 118 |         try!(self.conn.sender.send_frame(SettingsFrame::new()));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/server.rs:119:9
[INFO] [stdout]     |
[INFO] [stdout] 119 |         try!(self.read_preface());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/mod.rs:176:16
[INFO] [stdout]     |
[INFO] [stdout] 176 |             Ok(try!(Response::parse_status_code(&self.headers[0].1)))
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/simple.rs:118:9
[INFO] [stdout]     |
[INFO] [stdout] 118 |         try!(client.init());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/simple.rs:132:22
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let stream = try!(connector.connect());
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/simple.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |         try!(self.conn.start_request(stream));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/simple.rs:173:38
[INFO] [stdout]     |
[INFO] [stdout] 173 |         while let SendStatus::Sent = try!(self.conn.send_next_data()) {
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/simple.rs:205:13
[INFO] [stdout]     |
[INFO] [stdout] 205 |             try!(self.handle_next_frame());
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/simple.rs:213:25
[INFO] [stdout]     |
[INFO] [stdout] 213 |         let stream_id = try!(self.request(b"GET", path, extra_headers, None));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/simple.rs:220:25
[INFO] [stdout]     |
[INFO] [stdout] 220 |         let stream_id = try!(self.request(b"POST", path, extra_headers, Some(body)));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/client/async.rs:78:21
[INFO] [stdout]    |
[INFO] [stdout] 78 |         let frame = try!(
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/async.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |         try!(self.tx.send(frame)
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/async.rs:150:9
[INFO] [stdout]     |
[INFO] [stdout] 150 |         try!(self.tx.send(frame)
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/async.rs:149:21
[INFO] [stdout]     |
[INFO] [stdout] 149 |         let frame = try!(self.inner.recv_frame());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/async.rs:390:21
[INFO] [stdout]     |
[INFO] [stdout] 390 |                     try!(self.conn.init());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/async.rs:399:17
[INFO] [stdout]     |
[INFO] [stdout] 399 |                 try!(self.conn.send_next_data());
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/async.rs:425:9
[INFO] [stdout]     |
[INFO] [stdout] 425 |         try!(self.conn.handle_next_frame());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/server/mod.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 96 |         try!(server.conn.init());
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server/mod.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |         try!(self.conn.handle_next_frame());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server/mod.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |         try!(self.prepare_responses(responses));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server/mod.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |         try!(self.flush_streams());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server/mod.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 |         try!(self.reap_streams());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server/mod.rs:109:25
[INFO] [stdout]     |
[INFO] [stdout] 109 |         let responses = try!(self.handle_requests());
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server/mod.rs:135:13
[INFO] [stdout]     |
[INFO] [stdout] 135 |             try!(self.conn.start_response(
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server/mod.rs:149:38
[INFO] [stdout]     |
[INFO] [stdout] 149 |         while let SendStatus::Sent = try!(self.conn.send_next_data()) {}
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/http/session.rs:38:47
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct StreamIter<'a, S: Stream + 'a>(Box<Iterator<Item=&'a mut S> + 'a>);
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct StreamIter<'a, S: Stream + 'a>(Box<dyn Iterator<Item=&'a mut S> + 'a>);
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/http/session.rs:157:15
[INFO] [stdout]     |
[INFO] [stdout] 157 |     Other(Box<Error + Send + Sync>),
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 157 |     Other(Box<dyn Error + Send + Sync>),
[INFO] [stdout]     |               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/http/mod.rs:48:15
[INFO] [stdout]    |
[INFO] [stdout] 48 |     Other(Box<Error + Send + Sync>),
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 48 |     Other(Box<dyn Error + Send + Sync>),
[INFO] [stdout]    |               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/http/connection.rs:497:93
[INFO] [stdout]     |
[INFO] [stdout] 497 |     fn handle_settings_frame<Sess: Session>(&mut self, frame: SettingsFrame, _session: &mut Session)
[INFO] [stdout]     |                                                                                             ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 497 |     fn handle_settings_frame<Sess: Session>(&mut self, frame: SettingsFrame, _session: &mut dyn Session)
[INFO] [stdout]     |                                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/http/client/mod.rs:132:32
[INFO] [stdout]     |
[INFO] [stdout] 132 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 132 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/http/mod.rs:78:32
[INFO] [stdout]    |
[INFO] [stdout] 78 |     fn cause(&self) -> Option<&Error> {
[INFO] [stdout]    |                                ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 78 |     fn cause(&self) -> Option<&dyn Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[macro_escape]` attribute cannot be used on macro defs
[INFO] [stdout]   --> src/http/frame/mod.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | #[macro_escape]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[macro_escape]` can be applied to modules, extern crates, and crates
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/http/client/mod.rs:123:69
[INFO] [stdout]     |
[INFO] [stdout] 123 |         write!(fmt, "Cleartext HTTP/2 connect error: {}", (self as &error::Error).description())
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 123 |         write!(fmt, "Cleartext HTTP/2 connect error: {}", (self as &dyn error::Error).description())
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/http/client/mod.rs:123:83
[INFO] [stdout]     |
[INFO] [stdout] 123 |         write!(fmt, "Cleartext HTTP/2 connect error: {}", (self as &error::Error).description())
[INFO] [stdout]     |                                                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/http/client/mod.rs:129:16
[INFO] [stdout]     |
[INFO] [stdout] 129 |         self.0.description()
[INFO] [stdout]     |                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]    --> src/http/client/mod.rs:133:16
[INFO] [stdout]     |
[INFO] [stdout] 133 |         self.0.cause()
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/http/mod.rs:61:46
[INFO] [stdout]    |
[INFO] [stdout] 61 |         write!(fmt, "HTTP/2 Error: {}", self.description())
[INFO] [stdout]    |                                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/http/client/mod.rs:310:13
[INFO] [stdout]     |
[INFO] [stdout] 310 |         let mut stream = match self.state.get_stream_mut(stream_id) {
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/http/client/mod.rs:323:13
[INFO] [stdout]     |
[INFO] [stdout] 323 |         let mut stream = match self.state.get_stream_mut(stream_id) {
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/http/server.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let mut stream = match self.state.get_stream_mut(stream_id) {
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/http/client/mod.rs:297:13
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let mut stream = match self.state.get_stream_mut(stream_id) {
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/http/server.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |         let mut stream = match self.state.get_stream_mut(stream_id) {
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server/mod.rs:139:17
[INFO] [stdout]     |
[INFO] [stdout] 139 |             let mut stream = self.conn.state.get_stream_mut(response.stream_id).unwrap();
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/client/async.rs:186:10
[INFO] [stdout]     |
[INFO] [stdout] 186 |     Http(HttpError),
[INFO] [stdout]     |     ---- ^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 186 -     Http(HttpError),
[INFO] [stdout] 186 +     Http(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/http/server.rs:32:41
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn new(state: &'a mut State) -> ServerSession<State> {
[INFO] [stdout]    |                        --               ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn new(state: &'a mut State) -> ServerSession<'a, State> {
[INFO] [stdout]    |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/http/client/mod.rs:105:34
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn new(host: &'a str) -> CleartextConnector {
[INFO] [stdout]     |                       --         ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn new(host: &'a str) -> CleartextConnector<'a> {
[INFO] [stdout]     |                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/http/client/mod.rs:111:51
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn with_port(host: &'a str, port: u16) -> CleartextConnector {
[INFO] [stdout]     |                             --                    ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn with_port(host: &'a str, port: u16) -> CleartextConnector<'a> {
[INFO] [stdout]     |                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]    --> src/http/frame/mod.rs:182:41
[INFO] [stdout]     |
[INFO] [stdout] 182 |         raw.extend(pack_header(&header).into_iter().map(|x| *x));
[INFO] [stdout]     |                                         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]     = note: `#[warn(array_into_iter)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 182 -         raw.extend(pack_header(&header).into_iter().map(|x| *x));
[INFO] [stdout] 182 +         raw.extend(pack_header(&header).iter().map(|x| *x));
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 182 -         raw.extend(pack_header(&header).into_iter().map(|x| *x));
[INFO] [stdout] 182 +         raw.extend(IntoIterator::into_iter(pack_header(&header)).map(|x| *x));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/http/client/mod.rs:287:41
[INFO] [stdout]     |
[INFO] [stdout] 287 |     pub fn new(state: &'a mut State) -> ClientSession<State> {
[INFO] [stdout]     |                        --               ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 287 |     pub fn new(state: &'a mut State) -> ClientSession<'a, State> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/http/priority.rs:23:23
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn get_next_chunk(&mut self) -> HttpResult<Option<DataChunk>>;
[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] 23 |     fn get_next_chunk(&mut self) -> HttpResult<Option<DataChunk<'_>>>;
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/http/priority.rs:51:23
[INFO] [stdout]    |
[INFO] [stdout] 51 |     fn get_next_chunk(&mut self) -> HttpResult<Option<DataChunk>> {
[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 |     fn get_next_chunk(&mut self) -> HttpResult<Option<DataChunk<'_>>> {
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/http/session.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn iter(&mut self) -> StreamIter<Self::Stream>;
[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] 74 |     fn iter(&mut self) -> StreamIter<'_, Self::Stream>;
[INFO] [stdout]    |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/http/session.rs:131:13
[INFO] [stdout]     |
[INFO] [stdout] 131 |     fn iter(&mut self) -> StreamIter<S> {
[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] 131 |     fn iter(&mut self) -> StreamIter<'_, S> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.14s
[INFO] running `Command { std: "docker" "inspect" "1ebd6484540129b93d9d5c1244140bd893206887e8ee9c5649a1b3584b6f4107", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1ebd6484540129b93d9d5c1244140bd893206887e8ee9c5649a1b3584b6f4107", kill_on_drop: false }`
[INFO] [stdout] 1ebd6484540129b93d9d5c1244140bd893206887e8ee9c5649a1b3584b6f4107
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 43bc171fe95e29762d2b4f2a1d69c3c37c3d38fb3dbd190f75418092c8793e63
[INFO] running `Command { std: "docker" "start" "-a" "43bc171fe95e29762d2b4f2a1d69c3c37c3d38fb3dbd190f75418092c8793e63", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/http/transport.rs:44:24
[INFO] [stdout]    |
[INFO] [stdout] 44 |             let read = try!(self.read(&mut buf[total..]));
[INFO] [stdout]    |                        ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/http/connection.rs:61:41
[INFO] [stdout]    |
[INFO] [stdout] 61 |             0x0 => HttpFrame::DataFrame(try!(HttpFrame::parse_frame(raw_frame))),
[INFO] [stdout]    |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/http/connection.rs:62:44
[INFO] [stdout]    |
[INFO] [stdout] 62 |             0x1 => HttpFrame::HeadersFrame(try!(HttpFrame::parse_frame(raw_frame))),
[INFO] [stdout]    |                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/http/connection.rs:63:45
[INFO] [stdout]    |
[INFO] [stdout] 63 |             0x4 => HttpFrame::SettingsFrame(try!(HttpFrame::parse_frame(raw_frame))),
[INFO] [stdout]    |                                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:140:9
[INFO] [stdout]     |
[INFO] [stdout] 140 |         try!(self.write_all(&frame.serialize()));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |         try!(self.write_all(&serialized));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:167:13
[INFO] [stdout]     |
[INFO] [stdout] 167 |             try!(TransportStream::read_exact(stream, &mut buf));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:180:13
[INFO] [stdout]     |
[INFO] [stdout] 180 |             try!(TransportStream::read_exact(stream, &mut buf));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:185:37
[INFO] [stdout]     |
[INFO] [stdout] 185 |         let header = unpack_header(&try!(read_header_bytes(self)));
[INFO] [stdout]     |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:188:23
[INFO] [stdout]     |
[INFO] [stdout] 188 |         let payload = try!(read_payload(self, header.0));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:194:21
[INFO] [stdout]     |
[INFO] [stdout] 194 |         let frame = try!(HttpFrame::from_raw(raw_frame));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:388:21
[INFO] [stdout]     |
[INFO] [stdout] 388 |         let chunk = try!(prioritizer.get_next_chunk());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:392:17
[INFO] [stdout]     |
[INFO] [stdout] 392 |                 try!(self.send_data(chunk));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:416:9
[INFO] [stdout]     |
[INFO] [stdout] 416 |         try!(self.handle_frame(frame.unwrap(), session));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:484:23
[INFO] [stdout]     |
[INFO] [stdout] 484 |         let headers = try!(self.decoder.decode(&frame.header_fragment)
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:503:13
[INFO] [stdout]     |
[INFO] [stdout] 503 |             try!(self.send_frame(SettingsFrame::new_ack()));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/http/client/mod.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     try!(stream.write_all(preface));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/http/client/mod.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 47 |     try!(stream.write_all(&settings.serialize()));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/client/mod.rs:156:9
[INFO] [stdout]     |
[INFO] [stdout] 156 |         try!(write_preface(&mut stream));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/client/mod.rs:153:26
[INFO] [stdout]     |
[INFO] [stdout] 153 |         let mut stream = try!(TcpStream::connect((self.host, self.port)));
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/client/mod.rs:211:9
[INFO] [stdout]     |
[INFO] [stdout] 211 |         try!(self.read_preface());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/client/mod.rs:237:9
[INFO] [stdout]     |
[INFO] [stdout] 237 |         try!(self.conn.send_headers(req.headers, req.stream.id(), end_stream));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/server.rs:118:9
[INFO] [stdout]     |
[INFO] [stdout] 118 |         try!(self.conn.sender.send_frame(SettingsFrame::new()));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/server.rs:119:9
[INFO] [stdout]     |
[INFO] [stdout] 119 |         try!(self.read_preface());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/mod.rs:176:16
[INFO] [stdout]     |
[INFO] [stdout] 176 |             Ok(try!(Response::parse_status_code(&self.headers[0].1)))
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/simple.rs:118:9
[INFO] [stdout]     |
[INFO] [stdout] 118 |         try!(client.init());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/simple.rs:132:22
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let stream = try!(connector.connect());
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/simple.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |         try!(self.conn.start_request(stream));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/simple.rs:173:38
[INFO] [stdout]     |
[INFO] [stdout] 173 |         while let SendStatus::Sent = try!(self.conn.send_next_data()) {
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/simple.rs:205:13
[INFO] [stdout]     |
[INFO] [stdout] 205 |             try!(self.handle_next_frame());
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/simple.rs:213:25
[INFO] [stdout]     |
[INFO] [stdout] 213 |         let stream_id = try!(self.request(b"GET", path, extra_headers, None));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/simple.rs:220:25
[INFO] [stdout]     |
[INFO] [stdout] 220 |         let stream_id = try!(self.request(b"POST", path, extra_headers, Some(body)));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/client/async.rs:78:21
[INFO] [stdout]    |
[INFO] [stdout] 78 |         let frame = try!(
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/async.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |         try!(self.tx.send(frame)
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/async.rs:150:9
[INFO] [stdout]     |
[INFO] [stdout] 150 |         try!(self.tx.send(frame)
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/async.rs:149:21
[INFO] [stdout]     |
[INFO] [stdout] 149 |         let frame = try!(self.inner.recv_frame());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/async.rs:390:21
[INFO] [stdout]     |
[INFO] [stdout] 390 |                     try!(self.conn.init());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/async.rs:399:17
[INFO] [stdout]     |
[INFO] [stdout] 399 |                 try!(self.conn.send_next_data());
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/async.rs:425:9
[INFO] [stdout]     |
[INFO] [stdout] 425 |         try!(self.conn.handle_next_frame());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/server/mod.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 96 |         try!(server.conn.init());
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server/mod.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |         try!(self.conn.handle_next_frame());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server/mod.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |         try!(self.prepare_responses(responses));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server/mod.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |         try!(self.flush_streams());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server/mod.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 |         try!(self.reap_streams());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server/mod.rs:109:25
[INFO] [stdout]     |
[INFO] [stdout] 109 |         let responses = try!(self.handle_requests());
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server/mod.rs:135:13
[INFO] [stdout]     |
[INFO] [stdout] 135 |             try!(self.conn.start_response(
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server/mod.rs:149:38
[INFO] [stdout]     |
[INFO] [stdout] 149 |         while let SendStatus::Sent = try!(self.conn.send_next_data()) {}
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/http/session.rs:38:47
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct StreamIter<'a, S: Stream + 'a>(Box<Iterator<Item=&'a mut S> + 'a>);
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct StreamIter<'a, S: Stream + 'a>(Box<dyn Iterator<Item=&'a mut S> + 'a>);
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/http/session.rs:157:15
[INFO] [stdout]     |
[INFO] [stdout] 157 |     Other(Box<Error + Send + Sync>),
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 157 |     Other(Box<dyn Error + Send + Sync>),
[INFO] [stdout]     |               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/http/mod.rs:48:15
[INFO] [stdout]    |
[INFO] [stdout] 48 |     Other(Box<Error + Send + Sync>),
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 48 |     Other(Box<dyn Error + Send + Sync>),
[INFO] [stdout]    |               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/http/connection.rs:497:93
[INFO] [stdout]     |
[INFO] [stdout] 497 |     fn handle_settings_frame<Sess: Session>(&mut self, frame: SettingsFrame, _session: &mut Session)
[INFO] [stdout]     |                                                                                             ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 497 |     fn handle_settings_frame<Sess: Session>(&mut self, frame: SettingsFrame, _session: &mut dyn Session)
[INFO] [stdout]     |                                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/http/client/mod.rs:132:32
[INFO] [stdout]     |
[INFO] [stdout] 132 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 132 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/http/mod.rs:78:32
[INFO] [stdout]    |
[INFO] [stdout] 78 |     fn cause(&self) -> Option<&Error> {
[INFO] [stdout]    |                                ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 78 |     fn cause(&self) -> Option<&dyn Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[macro_escape]` attribute cannot be used on macro defs
[INFO] [stdout]   --> src/http/frame/mod.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | #[macro_escape]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[macro_escape]` can be applied to modules, extern crates, and crates
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/http/client/mod.rs:123:69
[INFO] [stdout]     |
[INFO] [stdout] 123 |         write!(fmt, "Cleartext HTTP/2 connect error: {}", (self as &error::Error).description())
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 123 |         write!(fmt, "Cleartext HTTP/2 connect error: {}", (self as &dyn error::Error).description())
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/http/client/mod.rs:123:83
[INFO] [stdout]     |
[INFO] [stdout] 123 |         write!(fmt, "Cleartext HTTP/2 connect error: {}", (self as &error::Error).description())
[INFO] [stdout]     |                                                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/http/client/mod.rs:129:16
[INFO] [stdout]     |
[INFO] [stdout] 129 |         self.0.description()
[INFO] [stdout]     |                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]    --> src/http/client/mod.rs:133:16
[INFO] [stdout]     |
[INFO] [stdout] 133 |         self.0.cause()
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/http/mod.rs:61:46
[INFO] [stdout]    |
[INFO] [stdout] 61 |         write!(fmt, "HTTP/2 Error: {}", self.description())
[INFO] [stdout]    |                                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/http/client/mod.rs:310:13
[INFO] [stdout]     |
[INFO] [stdout] 310 |         let mut stream = match self.state.get_stream_mut(stream_id) {
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/http/client/mod.rs:323:13
[INFO] [stdout]     |
[INFO] [stdout] 323 |         let mut stream = match self.state.get_stream_mut(stream_id) {
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/http/server.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let mut stream = match self.state.get_stream_mut(stream_id) {
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/http/client/mod.rs:297:13
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let mut stream = match self.state.get_stream_mut(stream_id) {
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/http/server.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |         let mut stream = match self.state.get_stream_mut(stream_id) {
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server/mod.rs:139:17
[INFO] [stdout]     |
[INFO] [stdout] 139 |             let mut stream = self.conn.state.get_stream_mut(response.stream_id).unwrap();
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling solicit v0.4.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/client/async.rs:186:10
[INFO] [stdout]     |
[INFO] [stdout] 186 |     Http(HttpError),
[INFO] [stdout]     |     ---- ^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 186 -     Http(HttpError),
[INFO] [stdout] 186 +     Http(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/http/server.rs:32:41
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn new(state: &'a mut State) -> ServerSession<State> {
[INFO] [stdout]    |                        --               ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn new(state: &'a mut State) -> ServerSession<'a, State> {
[INFO] [stdout]    |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/http/client/mod.rs:105:34
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn new(host: &'a str) -> CleartextConnector {
[INFO] [stdout]     |                       --         ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn new(host: &'a str) -> CleartextConnector<'a> {
[INFO] [stdout]     |                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/http/client/mod.rs:111:51
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn with_port(host: &'a str, port: u16) -> CleartextConnector {
[INFO] [stdout]     |                             --                    ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn with_port(host: &'a str, port: u16) -> CleartextConnector<'a> {
[INFO] [stdout]     |                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]    --> src/http/frame/mod.rs:182:41
[INFO] [stdout]     |
[INFO] [stdout] 182 |         raw.extend(pack_header(&header).into_iter().map(|x| *x));
[INFO] [stdout]     |                                         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]     = note: `#[warn(array_into_iter)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 182 -         raw.extend(pack_header(&header).into_iter().map(|x| *x));
[INFO] [stdout] 182 +         raw.extend(pack_header(&header).iter().map(|x| *x));
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 182 -         raw.extend(pack_header(&header).into_iter().map(|x| *x));
[INFO] [stdout] 182 +         raw.extend(IntoIterator::into_iter(pack_header(&header)).map(|x| *x));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/http/client/mod.rs:287:41
[INFO] [stdout]     |
[INFO] [stdout] 287 |     pub fn new(state: &'a mut State) -> ClientSession<State> {
[INFO] [stdout]     |                        --               ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 287 |     pub fn new(state: &'a mut State) -> ClientSession<'a, State> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/http/priority.rs:23:23
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn get_next_chunk(&mut self) -> HttpResult<Option<DataChunk>>;
[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] 23 |     fn get_next_chunk(&mut self) -> HttpResult<Option<DataChunk<'_>>>;
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/http/priority.rs:51:23
[INFO] [stdout]    |
[INFO] [stdout] 51 |     fn get_next_chunk(&mut self) -> HttpResult<Option<DataChunk>> {
[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 |     fn get_next_chunk(&mut self) -> HttpResult<Option<DataChunk<'_>>> {
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/http/session.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn iter(&mut self) -> StreamIter<Self::Stream>;
[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] 74 |     fn iter(&mut self) -> StreamIter<'_, Self::Stream>;
[INFO] [stdout]    |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/http/session.rs:131:13
[INFO] [stdout]     |
[INFO] [stdout] 131 |     fn iter(&mut self) -> StreamIter<S> {
[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] 131 |     fn iter(&mut self) -> StreamIter<'_, S> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/http/transport.rs:44:24
[INFO] [stdout]    |
[INFO] [stdout] 44 |             let read = try!(self.read(&mut buf[total..]));
[INFO] [stdout]    |                        ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/http/connection.rs:61:41
[INFO] [stdout]    |
[INFO] [stdout] 61 |             0x0 => HttpFrame::DataFrame(try!(HttpFrame::parse_frame(raw_frame))),
[INFO] [stdout]    |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/http/connection.rs:62:44
[INFO] [stdout]    |
[INFO] [stdout] 62 |             0x1 => HttpFrame::HeadersFrame(try!(HttpFrame::parse_frame(raw_frame))),
[INFO] [stdout]    |                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/http/connection.rs:63:45
[INFO] [stdout]    |
[INFO] [stdout] 63 |             0x4 => HttpFrame::SettingsFrame(try!(HttpFrame::parse_frame(raw_frame))),
[INFO] [stdout]    |                                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:140:9
[INFO] [stdout]     |
[INFO] [stdout] 140 |         try!(self.write_all(&frame.serialize()));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |         try!(self.write_all(&serialized));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:167:13
[INFO] [stdout]     |
[INFO] [stdout] 167 |             try!(TransportStream::read_exact(stream, &mut buf));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:180:13
[INFO] [stdout]     |
[INFO] [stdout] 180 |             try!(TransportStream::read_exact(stream, &mut buf));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:185:37
[INFO] [stdout]     |
[INFO] [stdout] 185 |         let header = unpack_header(&try!(read_header_bytes(self)));
[INFO] [stdout]     |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:188:23
[INFO] [stdout]     |
[INFO] [stdout] 188 |         let payload = try!(read_payload(self, header.0));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:194:21
[INFO] [stdout]     |
[INFO] [stdout] 194 |         let frame = try!(HttpFrame::from_raw(raw_frame));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:388:21
[INFO] [stdout]     |
[INFO] [stdout] 388 |         let chunk = try!(prioritizer.get_next_chunk());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:392:17
[INFO] [stdout]     |
[INFO] [stdout] 392 |                 try!(self.send_data(chunk));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:416:9
[INFO] [stdout]     |
[INFO] [stdout] 416 |         try!(self.handle_frame(frame.unwrap(), session));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:484:23
[INFO] [stdout]     |
[INFO] [stdout] 484 |         let headers = try!(self.decoder.decode(&frame.header_fragment)
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/connection.rs:503:13
[INFO] [stdout]     |
[INFO] [stdout] 503 |             try!(self.send_frame(SettingsFrame::new_ack()));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/http/client/mod.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     try!(stream.write_all(preface));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/http/client/mod.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 47 |     try!(stream.write_all(&settings.serialize()));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/client/mod.rs:156:9
[INFO] [stdout]     |
[INFO] [stdout] 156 |         try!(write_preface(&mut stream));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/client/mod.rs:153:26
[INFO] [stdout]     |
[INFO] [stdout] 153 |         let mut stream = try!(TcpStream::connect((self.host, self.port)));
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/client/mod.rs:211:9
[INFO] [stdout]     |
[INFO] [stdout] 211 |         try!(self.read_preface());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/client/mod.rs:237:9
[INFO] [stdout]     |
[INFO] [stdout] 237 |         try!(self.conn.send_headers(req.headers, req.stream.id(), end_stream));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/server.rs:118:9
[INFO] [stdout]     |
[INFO] [stdout] 118 |         try!(self.conn.sender.send_frame(SettingsFrame::new()));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/server.rs:119:9
[INFO] [stdout]     |
[INFO] [stdout] 119 |         try!(self.read_preface());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/http/mod.rs:176:16
[INFO] [stdout]     |
[INFO] [stdout] 176 |             Ok(try!(Response::parse_status_code(&self.headers[0].1)))
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/simple.rs:118:9
[INFO] [stdout]     |
[INFO] [stdout] 118 |         try!(client.init());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/simple.rs:132:22
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let stream = try!(connector.connect());
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/simple.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |         try!(self.conn.start_request(stream));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/simple.rs:173:38
[INFO] [stdout]     |
[INFO] [stdout] 173 |         while let SendStatus::Sent = try!(self.conn.send_next_data()) {
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/simple.rs:205:13
[INFO] [stdout]     |
[INFO] [stdout] 205 |             try!(self.handle_next_frame());
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/simple.rs:213:25
[INFO] [stdout]     |
[INFO] [stdout] 213 |         let stream_id = try!(self.request(b"GET", path, extra_headers, None));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/simple.rs:220:25
[INFO] [stdout]     |
[INFO] [stdout] 220 |         let stream_id = try!(self.request(b"POST", path, extra_headers, Some(body)));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/client/async.rs:78:21
[INFO] [stdout]    |
[INFO] [stdout] 78 |         let frame = try!(
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/async.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |         try!(self.tx.send(frame)
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/async.rs:150:9
[INFO] [stdout]     |
[INFO] [stdout] 150 |         try!(self.tx.send(frame)
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/async.rs:149:21
[INFO] [stdout]     |
[INFO] [stdout] 149 |         let frame = try!(self.inner.recv_frame());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/async.rs:390:21
[INFO] [stdout]     |
[INFO] [stdout] 390 |                     try!(self.conn.init());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/async.rs:399:17
[INFO] [stdout]     |
[INFO] [stdout] 399 |                 try!(self.conn.send_next_data());
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/client/async.rs:425:9
[INFO] [stdout]     |
[INFO] [stdout] 425 |         try!(self.conn.handle_next_frame());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/server/mod.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 96 |         try!(server.conn.init());
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server/mod.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |         try!(self.conn.handle_next_frame());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server/mod.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |         try!(self.prepare_responses(responses));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server/mod.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |         try!(self.flush_streams());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server/mod.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 |         try!(self.reap_streams());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server/mod.rs:109:25
[INFO] [stdout]     |
[INFO] [stdout] 109 |         let responses = try!(self.handle_requests());
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server/mod.rs:135:13
[INFO] [stdout]     |
[INFO] [stdout] 135 |             try!(self.conn.start_response(
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/server/mod.rs:149:38
[INFO] [stdout]     |
[INFO] [stdout] 149 |         while let SendStatus::Sent = try!(self.conn.send_next_data()) {}
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/http/session.rs:38:47
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct StreamIter<'a, S: Stream + 'a>(Box<Iterator<Item=&'a mut S> + 'a>);
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct StreamIter<'a, S: Stream + 'a>(Box<dyn Iterator<Item=&'a mut S> + 'a>);
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/http/session.rs:157:15
[INFO] [stdout]     |
[INFO] [stdout] 157 |     Other(Box<Error + Send + Sync>),
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 157 |     Other(Box<dyn Error + Send + Sync>),
[INFO] [stdout]     |               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/http/mod.rs:48:15
[INFO] [stdout]    |
[INFO] [stdout] 48 |     Other(Box<Error + Send + Sync>),
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 48 |     Other(Box<dyn Error + Send + Sync>),
[INFO] [stdout]    |               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/http/connection.rs:497:93
[INFO] [stdout]     |
[INFO] [stdout] 497 |     fn handle_settings_frame<Sess: Session>(&mut self, frame: SettingsFrame, _session: &mut Session)
[INFO] [stdout]     |                                                                                             ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 497 |     fn handle_settings_frame<Sess: Session>(&mut self, frame: SettingsFrame, _session: &mut dyn Session)
[INFO] [stdout]     |                                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/http/mod.rs:78:32
[INFO] [stdout]    |
[INFO] [stdout] 78 |     fn cause(&self) -> Option<&Error> {
[INFO] [stdout]    |                                ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 78 |     fn cause(&self) -> Option<&dyn Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/http/client/mod.rs:132:32
[INFO] [stdout]     |
[INFO] [stdout] 132 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 132 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[macro_escape]` attribute cannot be used on macro defs
[INFO] [stdout]   --> src/http/frame/mod.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | #[macro_escape]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[macro_escape]` can be applied to modules, extern crates, and crates
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/http/client/mod.rs:123:69
[INFO] [stdout]     |
[INFO] [stdout] 123 |         write!(fmt, "Cleartext HTTP/2 connect error: {}", (self as &error::Error).description())
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 123 |         write!(fmt, "Cleartext HTTP/2 connect error: {}", (self as &dyn error::Error).description())
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/http/client/mod.rs:123:83
[INFO] [stdout]     |
[INFO] [stdout] 123 |         write!(fmt, "Cleartext HTTP/2 connect error: {}", (self as &error::Error).description())
[INFO] [stdout]     |                                                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/http/client/mod.rs:129:16
[INFO] [stdout]     |
[INFO] [stdout] 129 |         self.0.description()
[INFO] [stdout]     |                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]    --> src/http/client/mod.rs:133:16
[INFO] [stdout]     |
[INFO] [stdout] 133 |         self.0.cause()
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/http/mod.rs:93:46
[INFO] [stdout]    |
[INFO] [stdout] 93 |                 e1.kind() == e2.kind() && e1.description() == e2.description()
[INFO] [stdout]    |                                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/http/mod.rs:93:66
[INFO] [stdout]    |
[INFO] [stdout] 93 |                 e1.kind() == e2.kind() && e1.description() == e2.description()
[INFO] [stdout]    |                                                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/http/mod.rs:103:20
[INFO] [stdout]     |
[INFO] [stdout] 103 |                 e1.description() == e2.description()
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/http/mod.rs:103:40
[INFO] [stdout]     |
[INFO] [stdout] 103 |                 e1.description() == e2.description()
[INFO] [stdout]     |                                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/http/mod.rs:61:46
[INFO] [stdout]    |
[INFO] [stdout] 61 |         write!(fmt, "HTTP/2 Error: {}", self.description())
[INFO] [stdout]    |                                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SessionState`
[INFO] [stdout]   --> src/http/tests/common.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     SessionState,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server/mod.rs:139:17
[INFO] [stdout]     |
[INFO] [stdout] 139 |             let mut stream = self.conn.state.get_stream_mut(response.stream_id).unwrap();
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/http/server.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let mut stream = match self.state.get_stream_mut(stream_id) {
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/http/server.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |         let mut stream = match self.state.get_stream_mut(stream_id) {
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/http/client/mod.rs:297:13
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let mut stream = match self.state.get_stream_mut(stream_id) {
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/http/client/mod.rs:310:13
[INFO] [stdout]     |
[INFO] [stdout] 310 |         let mut stream = match self.state.get_stream_mut(stream_id) {
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/http/client/mod.rs:323:13
[INFO] [stdout]     |
[INFO] [stdout] 323 |         let mut stream = match self.state.get_stream_mut(stream_id) {
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/client/async.rs:186:10
[INFO] [stdout]     |
[INFO] [stdout] 186 |     Http(HttpError),
[INFO] [stdout]     |     ---- ^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 186 -     Http(HttpError),
[INFO] [stdout] 186 +     Http(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/http/server.rs:32:41
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn new(state: &'a mut State) -> ServerSession<State> {
[INFO] [stdout]    |                        --               ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn new(state: &'a mut State) -> ServerSession<'a, State> {
[INFO] [stdout]    |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/http/priority.rs:23:23
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn get_next_chunk(&mut self) -> HttpResult<Option<DataChunk>>;
[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] 23 |     fn get_next_chunk(&mut self) -> HttpResult<Option<DataChunk<'_>>>;
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]    --> src/http/frame/mod.rs:182:41
[INFO] [stdout]     |
[INFO] [stdout] 182 |         raw.extend(pack_header(&header).into_iter().map(|x| *x));
[INFO] [stdout]     |                                         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]     = note: `#[warn(array_into_iter)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 182 -         raw.extend(pack_header(&header).into_iter().map(|x| *x));
[INFO] [stdout] 182 +         raw.extend(pack_header(&header).iter().map(|x| *x));
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 182 -         raw.extend(pack_header(&header).into_iter().map(|x| *x));
[INFO] [stdout] 182 +         raw.extend(IntoIterator::into_iter(pack_header(&header)).map(|x| *x));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/http/priority.rs:51:23
[INFO] [stdout]    |
[INFO] [stdout] 51 |     fn get_next_chunk(&mut self) -> HttpResult<Option<DataChunk>> {
[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 |     fn get_next_chunk(&mut self) -> HttpResult<Option<DataChunk<'_>>> {
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/http/tests/common.rs:364:23
[INFO] [stdout]     |
[INFO] [stdout] 364 |     fn get_next_chunk(&mut self) -> HttpResult<Option<DataChunk>> {
[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] 364 |     fn get_next_chunk(&mut self) -> HttpResult<Option<DataChunk<'_>>> {
[INFO] [stdout]     |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/http/client/mod.rs:105:34
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn new(host: &'a str) -> CleartextConnector {
[INFO] [stdout]     |                       --         ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn new(host: &'a str) -> CleartextConnector<'a> {
[INFO] [stdout]     |                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/http/client/mod.rs:111:51
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn with_port(host: &'a str, port: u16) -> CleartextConnector {
[INFO] [stdout]     |                             --                    ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn with_port(host: &'a str, port: u16) -> CleartextConnector<'a> {
[INFO] [stdout]     |                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/http/client/mod.rs:287:41
[INFO] [stdout]     |
[INFO] [stdout] 287 |     pub fn new(state: &'a mut State) -> ClientSession<State> {
[INFO] [stdout]     |                        --               ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 287 |     pub fn new(state: &'a mut State) -> ClientSession<'a, State> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/http/session.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn iter(&mut self) -> StreamIter<Self::Stream>;
[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] 74 |     fn iter(&mut self) -> StreamIter<'_, Self::Stream>;
[INFO] [stdout]    |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/http/session.rs:131:13
[INFO] [stdout]     |
[INFO] [stdout] 131 |     fn iter(&mut self) -> StreamIter<S> {
[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] 131 |     fn iter(&mut self) -> StreamIter<'_, S> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.68s
[INFO] running `Command { std: "docker" "inspect" "43bc171fe95e29762d2b4f2a1d69c3c37c3d38fb3dbd190f75418092c8793e63", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "43bc171fe95e29762d2b4f2a1d69c3c37c3d38fb3dbd190f75418092c8793e63", kill_on_drop: false }`
[INFO] [stdout] 43bc171fe95e29762d2b4f2a1d69c3c37c3d38fb3dbd190f75418092c8793e63
