[INFO] crate zmtp 0.6.0 is already in cache
[INFO] checking zmtp-0.6.0 against master#209b2be09fcaff937480d1fbbe8b31646e361c7a for pr-70917
[INFO] extracting crate zmtp 0.6.0 into /workspace/builds/worker-1/source
[INFO] validating manifest of crates.io crate zmtp 0.6.0 on toolchain 209b2be09fcaff937480d1fbbe8b31646e361c7a
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "read-manifest" "--manifest-path" "Cargo.toml"`
[INFO] started tweaking crates.io crate zmtp 0.6.0
[INFO] finished tweaking crates.io crate zmtp 0.6.0
[INFO] tweaked toml for crates.io crate zmtp 0.6.0 written to /workspace/builds/worker-1/source/Cargo.toml
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"`
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "check" "--frozen" "--all" "--all-targets"`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 717cb72c7500ee34c2008b4bcaf40d96f67cb4a36080e80f9dbb9ac03e86634e
[INFO] running `"docker" "start" "-a" "717cb72c7500ee34c2008b4bcaf40d96f67cb4a36080e80f9dbb9ac03e86634e"`
[INFO] [stderr]     Checking zmtp v0.6.0 (/opt/rustwide/workdir)
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/peer.rs:29:9
[INFO] [stderr]    |
[INFO] [stderr] 29 |         try!{ self.validate_cmd(&local, peer) }
[INFO] [stderr]    |         ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/peer.rs:30:9
[INFO] [stderr]    |
[INFO] [stderr] 30 |         try!{ CommandWriter::write(&local, peer) }
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/peer.rs:32:22
[INFO] [stderr]    |
[INFO] [stderr] 32 |         let remote = try!(CommandReader::read(peer));
[INFO] [stderr]    |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/peer.rs:33:9
[INFO] [stderr]    |
[INFO] [stderr] 33 |         try!{ self.validate_cmd(&remote, peer) }
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/peer.rs:51:25
[INFO] [stderr]    |
[INFO] [stderr] 51 |                         try!{ self.send_error_cmd(&reason, peer) }
[INFO] [stderr]    |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/peer.rs:102:9
[INFO] [stderr]     |
[INFO] [stderr] 102 |         try!{ GreetingWriter::write(&peer.local.greeting.clone(), peer) };
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/peer.rs:103:32
[INFO] [stderr]     |
[INFO] [stderr] 103 |         peer.remote.greeting = try!{ GreetingReader::read(peer) };
[INFO] [stderr]     |                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/peer.rs:111:9
[INFO] [stderr]     |
[INFO] [stderr] 111 |         try!{ GreetingWriter::write_signature(&greeting, peer) }
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/peer.rs:112:9
[INFO] [stderr]     |
[INFO] [stderr] 112 |         try!{ GreetingWriter::write_version(&greeting, peer) }
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/peer.rs:341:29
[INFO] [stderr]     |
[INFO] [stderr] 341 |             0 => assert_eq!(try!{ self.source.read_exact(buf) }, ()),
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/peer.rs:349:28
[INFO] [stderr]     |
[INFO] [stderr] 349 |                 assert_eq!(try!{ self.source.read_exact(rest) }, ());
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/peer.rs:368:28
[INFO] [stderr]     |
[INFO] [stderr] 368 |                 assert_eq!(try!{ self.source.read_exact(buf) }, ());
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/peer.rs:375:28
[INFO] [stderr]     |
[INFO] [stderr] 375 |                 assert_eq!(try!{ self.source.read_exact(rest) }, ());
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/reader.rs:55:20
[INFO] [stderr]    |
[INFO] [stderr] 55 |         assert_eq!(try!(reader.read_exact(&mut bytes)),  ());
[INFO] [stderr]    |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/reader.rs:74:25
[INFO] [stderr]    |
[INFO] [stderr] 74 |         let mut frame = try!(result);
[INFO] [stderr]    |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/reader.rs:75:20
[INFO] [stderr]    |
[INFO] [stderr] 75 |         let size = try!(self.read_frame_size(reader, &mut frame));
[INFO] [stderr]    |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/reader.rs:85:28
[INFO] [stderr]    |
[INFO] [stderr] 85 |                 assert_eq!(try!(reader.read_exact(&mut bytes)), ());
[INFO] [stderr]    |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/reader.rs:90:28
[INFO] [stderr]    |
[INFO] [stderr] 90 |                 assert_eq!(try!(reader.read_exact(&mut bytes)), ());
[INFO] [stderr]    |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/reader.rs:99:25
[INFO] [stderr]    |
[INFO] [stderr] 99 |         let mut frame = try!(result);
[INFO] [stderr]    |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reader.rs:102:20
[INFO] [stderr]     |
[INFO] [stderr] 102 |         assert_eq!(try!(reader.read_exact(&mut bytes)),  ());
[INFO] [stderr]     |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reader.rs:161:21
[INFO] [stderr]     |
[INFO] [stderr] 161 |         let frame = try!(FrameReader::read(peeker));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reader.rs:166:25
[INFO] [stderr]     |
[INFO] [stderr] 166 |             let frame = try!(FrameReader::read(peeker));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reader.rs:184:20
[INFO] [stderr]     |
[INFO] [stderr] 184 |         assert_eq!(try!{ peeker.read_exact(&mut bytes) },  ());
[INFO] [stderr]     |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reader.rs:203:27
[INFO] [stderr]     |
[INFO] [stderr] 203 |                 let cmd = try!(CommandReader::read(peeker));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reader.rs:206:27
[INFO] [stderr]     |
[INFO] [stderr] 206 |                 let msg = try!(MessageReader::read(peeker));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/writer.rs:27:21
[INFO] [stderr]    |
[INFO] [stderr] 27 |         let frame = try!{ result };
[INFO] [stderr]    |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/writer.rs:38:20
[INFO] [stderr]    |
[INFO] [stderr] 38 |         assert_eq!(try!{ writer.write(&[flags]) },  1);
[INFO] [stderr]    |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/writer.rs:45:21
[INFO] [stderr]    |
[INFO] [stderr] 45 |         let frame = try!{ result };
[INFO] [stderr]    |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/writer.rs:48:28
[INFO] [stderr]    |
[INFO] [stderr] 48 |                 assert_eq!(try!{ writer.write(&[size]) },  1),
[INFO] [stderr]    |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/writer.rs:52:28
[INFO] [stderr]    |
[INFO] [stderr] 52 |                 assert_eq!(try!{ writer.write(&bytes) }, BYTES_PER_U64);
[INFO] [stderr]    |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/writer.rs:61:21
[INFO] [stderr]    |
[INFO] [stderr] 61 |         let frame = try!{ result };
[INFO] [stderr]    |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:145:9
[INFO] [stderr]     |
[INFO] [stderr] 145 |         try!{ Self::write_signature(g, writer) }
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:146:9
[INFO] [stderr]     |
[INFO] [stderr] 146 |         try!{ Self::write_version(  g, writer) }
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:147:9
[INFO] [stderr]     |
[INFO] [stderr] 147 |         try!{ Self::write_mechanism(g, writer) }
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:148:9
[INFO] [stderr]     |
[INFO] [stderr] 148 |         try!{ Self::write_as_server(g, writer) }
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:149:9
[INFO] [stderr]     |
[INFO] [stderr] 149 |         try!{ Self::write_filler(   g, writer) }
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:150:23
[INFO] [stderr]     |
[INFO] [stderr] 150 |         Ok(assert_eq!(try!{ writer.flush() }, ()))
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:154:23
[INFO] [stderr]     |
[INFO] [stderr] 154 |         Ok(assert_eq!(try!{ writer.write(&g.signature) },  g.signature.len()))
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:159:23
[INFO] [stderr]     |
[INFO] [stderr] 159 |         Ok(assert_eq!(try!{ writer.write(&[major, minor]) },  2))
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:163:23
[INFO] [stderr]     |
[INFO] [stderr] 163 |         Ok(assert_eq!(try!{ writer.write(&g.mechanism) },   g.mechanism.len()))
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:167:23
[INFO] [stderr]     |
[INFO] [stderr] 167 |         Ok(assert_eq!(try!{ writer.write(&[g.as_server as u8]) },  1))
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:171:23
[INFO] [stderr]     |
[INFO] [stderr] 171 |         Ok(assert_eq!(try!{ writer.write(&g.filler) },  g.filler.len()))
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] error: patterns aren't allowed in functions without bodies
[INFO] [stderr]   --> src/types.rs:36:24
[INFO] [stderr]    |
[INFO] [stderr] 36 |     fn peek(&mut self, mut buf: &mut [u8])  -> io::Result<usize>;
[INFO] [stderr]    |                        ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[deny(patterns_in_fns_without_body)]` on by default
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]    = note: for more information, see issue #35203 <https://github.com/rust-lang/rust/issues/35203>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/types.rs:219:14
[INFO] [stderr]     |
[INFO] [stderr] 219 |             0...U8_MAX =>  Size::Short(size as u8),
[INFO] [stderr]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/types.rs:318:19
[INFO] [stderr]     |
[INFO] [stderr] 318 |             size@0...U8_MAX => Size::Short(size as u8),
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/peer.rs:214:17
[INFO] [stderr]     |
[INFO] [stderr] 214 |     source: Box<PeerSource>,
[INFO] [stderr]     |                 ^^^^^^^^^^ help: use `dyn`: `dyn PeerSource`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/peer.rs:222:28
[INFO] [stderr]     |
[INFO] [stderr] 222 |     pub fn new(source: Box<PeerSource>) -> Self {
[INFO] [stderr]     |                            ^^^^^^^^^^ help: use `dyn`: `dyn PeerSource`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/peer.rs:233:39
[INFO] [stderr]     |
[INFO] [stderr] 233 |     pub fn ref_mut(&mut self) -> &mut PeerSource { &mut self.source }
[INFO] [stderr]     |                                       ^^^^^^^^^^ help: use `dyn`: `dyn PeerSource`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/peer.rs:235:30
[INFO] [stderr]     |
[INFO] [stderr] 235 |     pub fn as_ref(&self) -> &PeerSource { &self.source }
[INFO] [stderr]     |                              ^^^^^^^^^^ help: use `dyn`: `dyn PeerSource`
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/writer.rs:94:21
[INFO] [stderr]    |
[INFO] [stderr] 94 |             size @ 0...0xFF => Size::Short(size as u8),
[INFO] [stderr]    |                     ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] error[E0283]: type annotations needed
[INFO] [stderr]    --> src/reader.rs:152:35
[INFO] [stderr]     |
[INFO] [stderr] 152 |             cmd.add_metadata(name.borrow(), val_bytes);
[INFO] [stderr]     |                                   ^^^^^^ cannot infer type for enum `std::borrow::Cow<'_, str>`
[INFO] [stderr]     |
[INFO] [stderr]     = note: cannot satisfy `std::borrow::Cow<'_, str>: std::borrow::Borrow<_>`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/peer.rs:29:9
[INFO] [stderr]    |
[INFO] [stderr] 29 |         try!{ self.validate_cmd(&local, peer) }
[INFO] [stderr]    |         ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/peer.rs:30:9
[INFO] [stderr]    |
[INFO] [stderr] 30 |         try!{ CommandWriter::write(&local, peer) }
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/peer.rs:32:22
[INFO] [stderr]    |
[INFO] [stderr] 32 |         let remote = try!(CommandReader::read(peer));
[INFO] [stderr]    |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/peer.rs:33:9
[INFO] [stderr]    |
[INFO] [stderr] 33 |         try!{ self.validate_cmd(&remote, peer) }
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/peer.rs:51:25
[INFO] [stderr]    |
[INFO] [stderr] 51 |                         try!{ self.send_error_cmd(&reason, peer) }
[INFO] [stderr]    |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/peer.rs:102:9
[INFO] [stderr]     |
[INFO] [stderr] 102 |         try!{ GreetingWriter::write(&peer.local.greeting.clone(), peer) };
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/peer.rs:103:32
[INFO] [stderr]     |
[INFO] [stderr] 103 |         peer.remote.greeting = try!{ GreetingReader::read(peer) };
[INFO] [stderr]     |                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/peer.rs:111:9
[INFO] [stderr]     |
[INFO] [stderr] 111 |         try!{ GreetingWriter::write_signature(&greeting, peer) }
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/peer.rs:112:9
[INFO] [stderr]     |
[INFO] [stderr] 112 |         try!{ GreetingWriter::write_version(&greeting, peer) }
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/peer.rs:341:29
[INFO] [stderr]     |
[INFO] [stderr] 341 |             0 => assert_eq!(try!{ self.source.read_exact(buf) }, ()),
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/peer.rs:349:28
[INFO] [stderr]     |
[INFO] [stderr] 349 |                 assert_eq!(try!{ self.source.read_exact(rest) }, ());
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/peer.rs:368:28
[INFO] [stderr]     |
[INFO] [stderr] 368 |                 assert_eq!(try!{ self.source.read_exact(buf) }, ());
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/peer.rs:375:28
[INFO] [stderr]     |
[INFO] [stderr] 375 |                 assert_eq!(try!{ self.source.read_exact(rest) }, ());
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/reader.rs:55:20
[INFO] [stderr]    |
[INFO] [stderr] 55 |         assert_eq!(try!(reader.read_exact(&mut bytes)),  ());
[INFO] [stderr]    |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/reader.rs:74:25
[INFO] [stderr]    |
[INFO] [stderr] 74 |         let mut frame = try!(result);
[INFO] [stderr]    |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/reader.rs:75:20
[INFO] [stderr]    |
[INFO] [stderr] 75 |         let size = try!(self.read_frame_size(reader, &mut frame));
[INFO] [stderr]    |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/reader.rs:85:28
[INFO] [stderr]    |
[INFO] [stderr] 85 |                 assert_eq!(try!(reader.read_exact(&mut bytes)), ());
[INFO] [stderr]    |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/reader.rs:90:28
[INFO] [stderr]    |
[INFO] [stderr] 90 |                 assert_eq!(try!(reader.read_exact(&mut bytes)), ());
[INFO] [stderr]    |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/reader.rs:99:25
[INFO] [stderr]    |
[INFO] [stderr] 99 |         let mut frame = try!(result);
[INFO] [stderr]    |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reader.rs:102:20
[INFO] [stderr]     |
[INFO] [stderr] 102 |         assert_eq!(try!(reader.read_exact(&mut bytes)),  ());
[INFO] [stderr]     |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reader.rs:161:21
[INFO] [stderr]     |
[INFO] [stderr] 161 |         let frame = try!(FrameReader::read(peeker));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reader.rs:166:25
[INFO] [stderr]     |
[INFO] [stderr] 166 |             let frame = try!(FrameReader::read(peeker));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reader.rs:184:20
[INFO] [stderr]     |
[INFO] [stderr] 184 |         assert_eq!(try!{ peeker.read_exact(&mut bytes) },  ());
[INFO] [stderr]     |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reader.rs:203:27
[INFO] [stderr]     |
[INFO] [stderr] 203 |                 let cmd = try!(CommandReader::read(peeker));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/reader.rs:206:27
[INFO] [stderr]     |
[INFO] [stderr] 206 |                 let msg = try!(MessageReader::read(peeker));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/writer.rs:27:21
[INFO] [stderr]    |
[INFO] [stderr] 27 |         let frame = try!{ result };
[INFO] [stderr]    |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/writer.rs:38:20
[INFO] [stderr]    |
[INFO] [stderr] 38 |         assert_eq!(try!{ writer.write(&[flags]) },  1);
[INFO] [stderr]    |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/writer.rs:45:21
[INFO] [stderr]    |
[INFO] [stderr] 45 |         let frame = try!{ result };
[INFO] [stderr]    |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/writer.rs:48:28
[INFO] [stderr]    |
[INFO] [stderr] 48 |                 assert_eq!(try!{ writer.write(&[size]) },  1),
[INFO] [stderr]    |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/writer.rs:52:28
[INFO] [stderr]    |
[INFO] [stderr] 52 |                 assert_eq!(try!{ writer.write(&bytes) }, BYTES_PER_U64);
[INFO] [stderr]    |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/writer.rs:61:21
[INFO] [stderr]    |
[INFO] [stderr] 61 |         let frame = try!{ result };
[INFO] [stderr]    |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:145:9
[INFO] [stderr]     |
[INFO] [stderr] 145 |         try!{ Self::write_signature(g, writer) }
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:146:9
[INFO] [stderr]     |
[INFO] [stderr] 146 |         try!{ Self::write_version(  g, writer) }
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:147:9
[INFO] [stderr]     |
[INFO] [stderr] 147 |         try!{ Self::write_mechanism(g, writer) }
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:148:9
[INFO] [stderr]     |
[INFO] [stderr] 148 |         try!{ Self::write_as_server(g, writer) }
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:149:9
[INFO] [stderr]     |
[INFO] [stderr] 149 |         try!{ Self::write_filler(   g, writer) }
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:150:23
[INFO] [stderr]     |
[INFO] [stderr] 150 |         Ok(assert_eq!(try!{ writer.flush() }, ()))
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:154:23
[INFO] [stderr]     |
[INFO] [stderr] 154 |         Ok(assert_eq!(try!{ writer.write(&g.signature) },  g.signature.len()))
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:159:23
[INFO] [stderr]     |
[INFO] [stderr] 159 |         Ok(assert_eq!(try!{ writer.write(&[major, minor]) },  2))
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:163:23
[INFO] [stderr]     |
[INFO] [stderr] 163 |         Ok(assert_eq!(try!{ writer.write(&g.mechanism) },   g.mechanism.len()))
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:167:23
[INFO] [stderr]     |
[INFO] [stderr] 167 |         Ok(assert_eq!(try!{ writer.write(&[g.as_server as u8]) },  1))
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/writer.rs:171:23
[INFO] [stderr]     |
[INFO] [stderr] 171 |         Ok(assert_eq!(try!{ writer.write(&g.filler) },  g.filler.len()))
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] error: patterns aren't allowed in functions without bodies
[INFO] [stderr]   --> src/types.rs:36:24
[INFO] [stderr]    |
[INFO] [stderr] 36 |     fn peek(&mut self, mut buf: &mut [u8])  -> io::Result<usize>;
[INFO] [stderr]    |                        ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[deny(patterns_in_fns_without_body)]` on by default
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]    = note: for more information, see issue #35203 <https://github.com/rust-lang/rust/issues/35203>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/types.rs:219:14
[INFO] [stderr]     |
[INFO] [stderr] 219 |             0...U8_MAX =>  Size::Short(size as u8),
[INFO] [stderr]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/types.rs:318:19
[INFO] [stderr]     |
[INFO] [stderr] 318 |             size@0...U8_MAX => Size::Short(size as u8),
[INFO] [stderr]     |                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/peer.rs:214:17
[INFO] [stderr]     |
[INFO] [stderr] 214 |     source: Box<PeerSource>,
[INFO] [stderr]     |                 ^^^^^^^^^^ help: use `dyn`: `dyn PeerSource`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/peer.rs:222:28
[INFO] [stderr]     |
[INFO] [stderr] 222 |     pub fn new(source: Box<PeerSource>) -> Self {
[INFO] [stderr]     |                            ^^^^^^^^^^ help: use `dyn`: `dyn PeerSource`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/peer.rs:233:39
[INFO] [stderr]     |
[INFO] [stderr] 233 |     pub fn ref_mut(&mut self) -> &mut PeerSource { &mut self.source }
[INFO] [stderr]     |                                       ^^^^^^^^^^ help: use `dyn`: `dyn PeerSource`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/peer.rs:235:30
[INFO] [stderr]     |
[INFO] [stderr] 235 |     pub fn as_ref(&self) -> &PeerSource { &self.source }
[INFO] [stderr]     |                              ^^^^^^^^^^ help: use `dyn`: `dyn PeerSource`
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/writer.rs:94:21
[INFO] [stderr]    |
[INFO] [stderr] 94 |             size @ 0...0xFF => Size::Short(size as u8),
[INFO] [stderr]    |                     ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ReadBytesExt`
[INFO] [stderr]  --> src/reader.rs:4:34
[INFO] [stderr]   |
[INFO] [stderr] 4 | use self::byteorder::{ByteOrder, ReadBytesExt, BigEndian};
[INFO] [stderr]   |                                  ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to 2 previous errors
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0283`.
[INFO] [stderr] error: could not compile `zmtp`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error[E0283]: type annotations needed
[INFO] [stderr]    --> src/reader.rs:152:35
[INFO] [stderr]     |
[INFO] [stderr] 152 |             cmd.add_metadata(name.borrow(), val_bytes);
[INFO] [stderr]     |                                   ^^^^^^ cannot infer type for enum `std::borrow::Cow<'_, str>`
[INFO] [stderr]     |
[INFO] [stderr]     = note: cannot satisfy `std::borrow::Cow<'_, str>: std::borrow::Borrow<_>`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ReadBytesExt`
[INFO] [stderr]  --> src/reader.rs:4:34
[INFO] [stderr]   |
[INFO] [stderr] 4 | use self::byteorder::{ByteOrder, ReadBytesExt, BigEndian};
[INFO] [stderr]   |                                  ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Read`
[INFO] [stderr]   --> src/lib.rs:17:19
[INFO] [stderr]    |
[INFO] [stderr] 17 |     use std::io::{Read, Write};
[INFO] [stderr]    |                   ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Write`
[INFO] [stderr]   --> src/lib.rs:17:25
[INFO] [stderr]    |
[INFO] [stderr] 17 |     use std::io::{Read, Write};
[INFO] [stderr]    |                         ^^^^^
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to 2 previous errors
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0283`.
[INFO] [stderr] error: could not compile `zmtp`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] running `"docker" "inspect" "717cb72c7500ee34c2008b4bcaf40d96f67cb4a36080e80f9dbb9ac03e86634e"`
[INFO] running `"docker" "rm" "-f" "717cb72c7500ee34c2008b4bcaf40d96f67cb4a36080e80f9dbb9ac03e86634e"`
[INFO] [stdout] 717cb72c7500ee34c2008b4bcaf40d96f67cb4a36080e80f9dbb9ac03e86634e
