[INFO] fetching crate bitcoin-chain 0.3.1...
[INFO] checking bitcoin-chain-0.3.1 against master#80399064afa4a2cd153f30d02c25f7ea0383ed65 for opaque-soundness-fix
[INFO] extracting crate bitcoin-chain 0.3.1 into /workspace/builds/worker-6-tc1/source
[INFO] validating manifest of crates.io crate bitcoin-chain 0.3.1 on toolchain 80399064afa4a2cd153f30d02c25f7ea0383ed65
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+80399064afa4a2cd153f30d02c25f7ea0383ed65" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate bitcoin-chain 0.3.1
[INFO] finished tweaking crates.io crate bitcoin-chain 0.3.1
[INFO] tweaked toml for crates.io crate bitcoin-chain 0.3.1 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+80399064afa4a2cd153f30d02c25f7ea0383ed65" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+80399064afa4a2cd153f30d02c25f7ea0383ed65" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded bitcoin-bech32 v0.8.1
[INFO] [stderr]   Downloaded cc v1.0.26
[INFO] [stderr]   Downloaded bech32 v0.5.0
[INFO] [stderr]   Downloaded secp256k1 v0.11.6
[INFO] [stderr]   Downloaded bitcoin v0.15.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+80399064afa4a2cd153f30d02c25f7ea0383ed65" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f36574ca433a6a31c3653fa0ce0b2deff2049102bbd733f6aa6f4e76c2147112
[INFO] running `Command { std: "docker" "start" "-a" "f36574ca433a6a31c3653fa0ce0b2deff2049102bbd733f6aa6f4e76c2147112", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f36574ca433a6a31c3653fa0ce0b2deff2049102bbd733f6aa6f4e76c2147112", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f36574ca433a6a31c3653fa0ce0b2deff2049102bbd733f6aa6f4e76c2147112", kill_on_drop: false }`
[INFO] [stdout] f36574ca433a6a31c3653fa0ce0b2deff2049102bbd733f6aa6f4e76c2147112
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+80399064afa4a2cd153f30d02c25f7ea0383ed65" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f5c9b823f9a25fa0079f44d99433ab7d29deaf3b19e8bc834bc29a538f8b4725
[INFO] running `Command { std: "docker" "start" "-a" "f5c9b823f9a25fa0079f44d99433ab7d29deaf3b19e8bc834bc29a538f8b4725", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition
[INFO] [stderr]    Compiling cc v1.0.26
[INFO] [stderr]    Compiling gcc v0.3.55
[INFO] [stderr]     Checking rustc-serialize v0.3.25
[INFO] [stderr]     Checking bech32 v0.5.0
[INFO] [stderr]     Checking hex v0.3.2
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking time v0.1.45
[INFO] [stderr]     Checking bitcoin-bech32 v0.8.1
[INFO] [stderr]    Compiling rust-crypto v0.2.36
[INFO] [stderr]     Checking rand v0.3.23
[INFO] [stderr]    Compiling secp256k1 v0.11.6
[INFO] [stderr]     Checking bitcoin v0.15.1
[INFO] [stderr]     Checking bitcoin-chain v0.3.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: the item `From` is imported redundantly
[INFO] [stdout]   --> src/blockchain.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use std::convert::From;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   --> /rustc/80399064afa4a2cd153f30d02c25f7ea0383ed65/library/std/src/prelude/mod.rs:105:13
[INFO] [stdout]    |
[INFO] [stdout]    = note: the item `From` is already defined here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `bitcoin` is imported redundantly
[INFO] [stdout]   --> src/blockchain.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | use bitcoin;
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/lib.rs:1:1
[INFO] [stdout]    |
[INFO] [stdout] 1  | extern crate bitcoin;
[INFO] [stdout]    | --------------------- the item `bitcoin` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:121:9
[INFO] [stdout]     |
[INFO] [stdout] 121 |         try!(self.block.consensus_encode(s));
[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/blockchain.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 122 |         try!(self.total_work.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:123:9
[INFO] [stdout]     |
[INFO] [stdout] 123 |         try!(self.required_difficulty.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:124:9
[INFO] [stdout]     |
[INFO] [stdout] 124 |         try!(self.height.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:125:9
[INFO] [stdout]     |
[INFO] [stdout] 125 |         try!(self.has_txdata.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:135:20
[INFO] [stdout]     |
[INFO] [stdout] 135 |             block: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:136:25
[INFO] [stdout]     |
[INFO] [stdout] 136 |             total_work: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:137:34
[INFO] [stdout]     |
[INFO] [stdout] 137 |             required_difficulty: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:138:21
[INFO] [stdout]     |
[INFO] [stdout] 138 |             height: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:139:25
[INFO] [stdout]     |
[INFO] [stdout] 139 |             has_txdata: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |         try!(self.network.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         try!(self.tree.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 168 |         try!(self.best_hash.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 169 |         try!(self.genesis_hash.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:176:32
[INFO] [stdout]     |
[INFO] [stdout] 176 |         let network: Network = try!(Decodable::consensus_decode(d));
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:177:35
[INFO] [stdout]     |
[INFO] [stdout] 177 |         let mut tree: BlockTree = try!(Decodable::consensus_decode(d));
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:178:38
[INFO] [stdout]     |
[INFO] [stdout] 178 |         let best_hash: Sha256dHash = try!(Decodable::consensus_decode(d));
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:179:41
[INFO] [stdout]     |
[INFO] [stdout] 179 |         let genesis_hash: Sha256dHash = try!(Decodable::consensus_decode(d));
[INFO] [stdout]     |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:540:9
[INFO] [stdout]     |
[INFO] [stdout] 540 |         try!(new_block.block.header.spv_validate(&new_block.required_difficulty));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:376:13
[INFO] [stdout]     |
[INFO] [stdout] 376 |             try!(writeln!(f, ": {:?}", tree.data));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:374:17
[INFO] [stdout]     |
[INFO] [stdout] 374 |                 try!(write!(f, "{:}", if tree.skip_prefix.bit(i) { 1 } else { 0 }));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:382:17
[INFO] [stdout]     |
[INFO] [stdout] 382 |                 try!(write!(f, "0"));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:383:17
[INFO] [stdout]     |
[INFO] [stdout] 383 |                 try!(recurse(&**t, f, depth + tree.skip_len as usize + 1));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:380:21
[INFO] [stdout]     |
[INFO] [stdout] 380 |                     try!(write!(f, "-"));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:390:17
[INFO] [stdout]     |
[INFO] [stdout] 390 |                 try!(write!(f, "1"));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:391:17
[INFO] [stdout]     |
[INFO] [stdout] 391 |                 try!(recurse(&**t, f, depth + tree.skip_len as usize + 1));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:388:21
[INFO] [stdout]     |
[INFO] [stdout] 388 |                     try!(write!(f, "_"));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:406:9
[INFO] [stdout]     |
[INFO] [stdout] 406 |         try!(self.skip_prefix.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:407:9
[INFO] [stdout]     |
[INFO] [stdout] 407 |         try!(self.skip_len.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:408:9
[INFO] [stdout]     |
[INFO] [stdout] 408 |         try!(self.data.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:409:9
[INFO] [stdout]     |
[INFO] [stdout] 409 |         try!(self.child_l.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:410:9
[INFO] [stdout]     |
[INFO] [stdout] 410 |         try!(self.child_r.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:422:26
[INFO] [stdout]     |
[INFO] [stdout] 422 |             skip_prefix: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:423:23
[INFO] [stdout]     |
[INFO] [stdout] 423 |             skip_len: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:424:19
[INFO] [stdout]     |
[INFO] [stdout] 424 |             data: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:425:22
[INFO] [stdout]     |
[INFO] [stdout] 425 |             child_l: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:426:22
[INFO] [stdout]     |
[INFO] [stdout] 426 |             child_r: try!(Decodable::consensus_decode(d))
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `From` is imported redundantly
[INFO] [stdout]   --> src/blockchain.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use std::convert::From;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   --> /rustc/80399064afa4a2cd153f30d02c25f7ea0383ed65/library/std/src/prelude/mod.rs:105:13
[INFO] [stdout]    |
[INFO] [stdout]    = note: the item `From` is already defined here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `bitcoin` is imported redundantly
[INFO] [stdout]   --> src/blockchain.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | use bitcoin;
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/lib.rs:1:1
[INFO] [stdout]    |
[INFO] [stdout] 1  | extern crate bitcoin;
[INFO] [stdout]    | --------------------- the item `bitcoin` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/blockchain.rs:73:19
[INFO] [stdout]    |
[INFO] [stdout] 73 |         (self as &fmt::Display).fmt(f)
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 73 |         (self as &dyn fmt::Display).fmt(f)
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:121:9
[INFO] [stdout]     |
[INFO] [stdout] 121 |         try!(self.block.consensus_encode(s));
[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/blockchain.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 122 |         try!(self.total_work.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:123:9
[INFO] [stdout]     |
[INFO] [stdout] 123 |         try!(self.required_difficulty.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:124:9
[INFO] [stdout]     |
[INFO] [stdout] 124 |         try!(self.height.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:125:9
[INFO] [stdout]     |
[INFO] [stdout] 125 |         try!(self.has_txdata.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:135:20
[INFO] [stdout]     |
[INFO] [stdout] 135 |             block: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:136:25
[INFO] [stdout]     |
[INFO] [stdout] 136 |             total_work: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:137:34
[INFO] [stdout]     |
[INFO] [stdout] 137 |             required_difficulty: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:138:21
[INFO] [stdout]     |
[INFO] [stdout] 138 |             height: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:139:25
[INFO] [stdout]     |
[INFO] [stdout] 139 |             has_txdata: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |         try!(self.network.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         try!(self.tree.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 168 |         try!(self.best_hash.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 169 |         try!(self.genesis_hash.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:176:32
[INFO] [stdout]     |
[INFO] [stdout] 176 |         let network: Network = try!(Decodable::consensus_decode(d));
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:177:35
[INFO] [stdout]     |
[INFO] [stdout] 177 |         let mut tree: BlockTree = try!(Decodable::consensus_decode(d));
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:178:38
[INFO] [stdout]     |
[INFO] [stdout] 178 |         let best_hash: Sha256dHash = try!(Decodable::consensus_decode(d));
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:179:41
[INFO] [stdout]     |
[INFO] [stdout] 179 |         let genesis_hash: Sha256dHash = try!(Decodable::consensus_decode(d));
[INFO] [stdout]     |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:540:9
[INFO] [stdout]     |
[INFO] [stdout] 540 |         try!(new_block.block.header.spv_validate(&new_block.required_difficulty));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:376:13
[INFO] [stdout]     |
[INFO] [stdout] 376 |             try!(writeln!(f, ": {:?}", tree.data));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:374:17
[INFO] [stdout]     |
[INFO] [stdout] 374 |                 try!(write!(f, "{:}", if tree.skip_prefix.bit(i) { 1 } else { 0 }));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:382:17
[INFO] [stdout]     |
[INFO] [stdout] 382 |                 try!(write!(f, "0"));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:383:17
[INFO] [stdout]     |
[INFO] [stdout] 383 |                 try!(recurse(&**t, f, depth + tree.skip_len as usize + 1));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:380:21
[INFO] [stdout]     |
[INFO] [stdout] 380 |                     try!(write!(f, "-"));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:390:17
[INFO] [stdout]     |
[INFO] [stdout] 390 |                 try!(write!(f, "1"));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:391:17
[INFO] [stdout]     |
[INFO] [stdout] 391 |                 try!(recurse(&**t, f, depth + tree.skip_len as usize + 1));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:388:21
[INFO] [stdout]     |
[INFO] [stdout] 388 |                     try!(write!(f, "_"));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:406:9
[INFO] [stdout]     |
[INFO] [stdout] 406 |         try!(self.skip_prefix.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:407:9
[INFO] [stdout]     |
[INFO] [stdout] 407 |         try!(self.skip_len.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:408:9
[INFO] [stdout]     |
[INFO] [stdout] 408 |         try!(self.data.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:409:9
[INFO] [stdout]     |
[INFO] [stdout] 409 |         try!(self.child_l.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:410:9
[INFO] [stdout]     |
[INFO] [stdout] 410 |         try!(self.child_r.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:422:26
[INFO] [stdout]     |
[INFO] [stdout] 422 |             skip_prefix: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:423:23
[INFO] [stdout]     |
[INFO] [stdout] 423 |             skip_len: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:424:19
[INFO] [stdout]     |
[INFO] [stdout] 424 |             data: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:425:22
[INFO] [stdout]     |
[INFO] [stdout] 425 |             child_l: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:426:22
[INFO] [stdout]     |
[INFO] [stdout] 426 |             child_r: try!(Decodable::consensus_decode(d))
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/blockchain.rs:73:19
[INFO] [stdout]    |
[INFO] [stdout] 73 |         (self as &fmt::Display).fmt(f)
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 73 |         (self as &dyn fmt::Display).fmt(f)
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 40 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 40 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.33s
[INFO] running `Command { std: "docker" "inspect" "f5c9b823f9a25fa0079f44d99433ab7d29deaf3b19e8bc834bc29a538f8b4725", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f5c9b823f9a25fa0079f44d99433ab7d29deaf3b19e8bc834bc29a538f8b4725", kill_on_drop: false }`
[INFO] [stdout] f5c9b823f9a25fa0079f44d99433ab7d29deaf3b19e8bc834bc29a538f8b4725
[INFO] checking bitcoin-chain-0.3.1 against master#09bc67b9158392361780e779d32997f14cc75c39 for opaque-soundness-fix
[INFO] extracting crate bitcoin-chain 0.3.1 into /workspace/builds/worker-6-tc2/source
[INFO] validating manifest of crates.io crate bitcoin-chain 0.3.1 on toolchain 09bc67b9158392361780e779d32997f14cc75c39
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+09bc67b9158392361780e779d32997f14cc75c39" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate bitcoin-chain 0.3.1
[INFO] finished tweaking crates.io crate bitcoin-chain 0.3.1
[INFO] tweaked toml for crates.io crate bitcoin-chain 0.3.1 written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+09bc67b9158392361780e779d32997f14cc75c39" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+09bc67b9158392361780e779d32997f14cc75c39" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+09bc67b9158392361780e779d32997f14cc75c39" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 686cd9d02c83aee821f1bbc557cd340863b49da5486989747a4a810eb30ea144
[INFO] running `Command { std: "docker" "start" "-a" "686cd9d02c83aee821f1bbc557cd340863b49da5486989747a4a810eb30ea144", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "686cd9d02c83aee821f1bbc557cd340863b49da5486989747a4a810eb30ea144", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "686cd9d02c83aee821f1bbc557cd340863b49da5486989747a4a810eb30ea144", kill_on_drop: false }`
[INFO] [stdout] 686cd9d02c83aee821f1bbc557cd340863b49da5486989747a4a810eb30ea144
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+09bc67b9158392361780e779d32997f14cc75c39" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a0762dc3a720a5ef0a9c8700ad71da9eedd8a696ffeb5d5276147076706e78cd
[INFO] running `Command { std: "docker" "start" "-a" "a0762dc3a720a5ef0a9c8700ad71da9eedd8a696ffeb5d5276147076706e78cd", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition
[INFO] [stderr]    Compiling gcc v0.3.55
[INFO] [stderr]    Compiling cc v1.0.26
[INFO] [stderr]     Checking bech32 v0.5.0
[INFO] [stderr]     Checking rustc-serialize v0.3.25
[INFO] [stderr]     Checking hex v0.3.2
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking time v0.1.45
[INFO] [stderr]     Checking bitcoin-bech32 v0.8.1
[INFO] [stderr]    Compiling rust-crypto v0.2.36
[INFO] [stderr]     Checking rand v0.3.23
[INFO] [stderr]    Compiling secp256k1 v0.11.6
[INFO] [stderr]     Checking bitcoin v0.15.1
[INFO] [stderr]     Checking bitcoin-chain v0.3.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: the item `From` is imported redundantly
[INFO] [stdout]   --> src/blockchain.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use std::convert::From;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   --> /rustc/09bc67b9158392361780e779d32997f14cc75c39/library/std/src/prelude/mod.rs:105:13
[INFO] [stdout]    |
[INFO] [stdout]    = note: the item `From` is already defined here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `bitcoin` is imported redundantly
[INFO] [stdout]   --> src/blockchain.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | use bitcoin;
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/lib.rs:1:1
[INFO] [stdout]    |
[INFO] [stdout] 1  | extern crate bitcoin;
[INFO] [stdout]    | --------------------- the item `bitcoin` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:121:9
[INFO] [stdout]     |
[INFO] [stdout] 121 |         try!(self.block.consensus_encode(s));
[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/blockchain.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 122 |         try!(self.total_work.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:123:9
[INFO] [stdout]     |
[INFO] [stdout] 123 |         try!(self.required_difficulty.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:124:9
[INFO] [stdout]     |
[INFO] [stdout] 124 |         try!(self.height.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:125:9
[INFO] [stdout]     |
[INFO] [stdout] 125 |         try!(self.has_txdata.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:135:20
[INFO] [stdout]     |
[INFO] [stdout] 135 |             block: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:136:25
[INFO] [stdout]     |
[INFO] [stdout] 136 |             total_work: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:137:34
[INFO] [stdout]     |
[INFO] [stdout] 137 |             required_difficulty: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:138:21
[INFO] [stdout]     |
[INFO] [stdout] 138 |             height: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:139:25
[INFO] [stdout]     |
[INFO] [stdout] 139 |             has_txdata: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |         try!(self.network.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         try!(self.tree.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 168 |         try!(self.best_hash.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 169 |         try!(self.genesis_hash.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:176:32
[INFO] [stdout]     |
[INFO] [stdout] 176 |         let network: Network = try!(Decodable::consensus_decode(d));
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:177:35
[INFO] [stdout]     |
[INFO] [stdout] 177 |         let mut tree: BlockTree = try!(Decodable::consensus_decode(d));
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:178:38
[INFO] [stdout]     |
[INFO] [stdout] 178 |         let best_hash: Sha256dHash = try!(Decodable::consensus_decode(d));
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:179:41
[INFO] [stdout]     |
[INFO] [stdout] 179 |         let genesis_hash: Sha256dHash = try!(Decodable::consensus_decode(d));
[INFO] [stdout]     |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:540:9
[INFO] [stdout]     |
[INFO] [stdout] 540 |         try!(new_block.block.header.spv_validate(&new_block.required_difficulty));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:376:13
[INFO] [stdout]     |
[INFO] [stdout] 376 |             try!(writeln!(f, ": {:?}", tree.data));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:374:17
[INFO] [stdout]     |
[INFO] [stdout] 374 |                 try!(write!(f, "{:}", if tree.skip_prefix.bit(i) { 1 } else { 0 }));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:382:17
[INFO] [stdout]     |
[INFO] [stdout] 382 |                 try!(write!(f, "0"));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:383:17
[INFO] [stdout]     |
[INFO] [stdout] 383 |                 try!(recurse(&**t, f, depth + tree.skip_len as usize + 1));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:380:21
[INFO] [stdout]     |
[INFO] [stdout] 380 |                     try!(write!(f, "-"));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:390:17
[INFO] [stdout]     |
[INFO] [stdout] 390 |                 try!(write!(f, "1"));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:391:17
[INFO] [stdout]     |
[INFO] [stdout] 391 |                 try!(recurse(&**t, f, depth + tree.skip_len as usize + 1));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:388:21
[INFO] [stdout]     |
[INFO] [stdout] 388 |                     try!(write!(f, "_"));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:406:9
[INFO] [stdout]     |
[INFO] [stdout] 406 |         try!(self.skip_prefix.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:407:9
[INFO] [stdout]     |
[INFO] [stdout] 407 |         try!(self.skip_len.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:408:9
[INFO] [stdout]     |
[INFO] [stdout] 408 |         try!(self.data.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:409:9
[INFO] [stdout]     |
[INFO] [stdout] 409 |         try!(self.child_l.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:410:9
[INFO] [stdout]     |
[INFO] [stdout] 410 |         try!(self.child_r.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:422:26
[INFO] [stdout]     |
[INFO] [stdout] 422 |             skip_prefix: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:423:23
[INFO] [stdout]     |
[INFO] [stdout] 423 |             skip_len: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:424:19
[INFO] [stdout]     |
[INFO] [stdout] 424 |             data: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:425:22
[INFO] [stdout]     |
[INFO] [stdout] 425 |             child_l: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:426:22
[INFO] [stdout]     |
[INFO] [stdout] 426 |             child_r: try!(Decodable::consensus_decode(d))
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `From` is imported redundantly
[INFO] [stdout]   --> src/blockchain.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use std::convert::From;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   --> /rustc/09bc67b9158392361780e779d32997f14cc75c39/library/std/src/prelude/mod.rs:105:13
[INFO] [stdout]    |
[INFO] [stdout]    = note: the item `From` is already defined here
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `bitcoin` is imported redundantly
[INFO] [stdout]   --> src/blockchain.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | use bitcoin;
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/lib.rs:1:1
[INFO] [stdout]    |
[INFO] [stdout] 1  | extern crate bitcoin;
[INFO] [stdout]    | --------------------- the item `bitcoin` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:121:9
[INFO] [stdout]     |
[INFO] [stdout] 121 |         try!(self.block.consensus_encode(s));
[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/blockchain.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 122 |         try!(self.total_work.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:123:9
[INFO] [stdout]     |
[INFO] [stdout] 123 |         try!(self.required_difficulty.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:124:9
[INFO] [stdout]     |
[INFO] [stdout] 124 |         try!(self.height.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:125:9
[INFO] [stdout]     |
[INFO] [stdout] 125 |         try!(self.has_txdata.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:135:20
[INFO] [stdout]     |
[INFO] [stdout] 135 |             block: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:136:25
[INFO] [stdout]     |
[INFO] [stdout] 136 |             total_work: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:137:34
[INFO] [stdout]     |
[INFO] [stdout] 137 |             required_difficulty: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:138:21
[INFO] [stdout]     |
[INFO] [stdout] 138 |             height: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:139:25
[INFO] [stdout]     |
[INFO] [stdout] 139 |             has_txdata: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |         try!(self.network.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         try!(self.tree.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 168 |         try!(self.best_hash.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 169 |         try!(self.genesis_hash.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:176:32
[INFO] [stdout]     |
[INFO] [stdout] 176 |         let network: Network = try!(Decodable::consensus_decode(d));
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:177:35
[INFO] [stdout]     |
[INFO] [stdout] 177 |         let mut tree: BlockTree = try!(Decodable::consensus_decode(d));
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:178:38
[INFO] [stdout]     |
[INFO] [stdout] 178 |         let best_hash: Sha256dHash = try!(Decodable::consensus_decode(d));
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:179:41
[INFO] [stdout]     |
[INFO] [stdout] 179 |         let genesis_hash: Sha256dHash = try!(Decodable::consensus_decode(d));
[INFO] [stdout]     |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/blockchain.rs:540:9
[INFO] [stdout]     |
[INFO] [stdout] 540 |         try!(new_block.block.header.spv_validate(&new_block.required_difficulty));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:376:13
[INFO] [stdout]     |
[INFO] [stdout] 376 |             try!(writeln!(f, ": {:?}", tree.data));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:374:17
[INFO] [stdout]     |
[INFO] [stdout] 374 |                 try!(write!(f, "{:}", if tree.skip_prefix.bit(i) { 1 } else { 0 }));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:382:17
[INFO] [stdout]     |
[INFO] [stdout] 382 |                 try!(write!(f, "0"));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:383:17
[INFO] [stdout]     |
[INFO] [stdout] 383 |                 try!(recurse(&**t, f, depth + tree.skip_len as usize + 1));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:380:21
[INFO] [stdout]     |
[INFO] [stdout] 380 |                     try!(write!(f, "-"));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:390:17
[INFO] [stdout]     |
[INFO] [stdout] 390 |                 try!(write!(f, "1"));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:391:17
[INFO] [stdout]     |
[INFO] [stdout] 391 |                 try!(recurse(&**t, f, depth + tree.skip_len as usize + 1));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:388:21
[INFO] [stdout]     |
[INFO] [stdout] 388 |                     try!(write!(f, "_"));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:406:9
[INFO] [stdout]     |
[INFO] [stdout] 406 |         try!(self.skip_prefix.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:407:9
[INFO] [stdout]     |
[INFO] [stdout] 407 |         try!(self.skip_len.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:408:9
[INFO] [stdout]     |
[INFO] [stdout] 408 |         try!(self.data.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:409:9
[INFO] [stdout]     |
[INFO] [stdout] 409 |         try!(self.child_l.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:410:9
[INFO] [stdout]     |
[INFO] [stdout] 410 |         try!(self.child_r.consensus_encode(s));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:422:26
[INFO] [stdout]     |
[INFO] [stdout] 422 |             skip_prefix: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:423:23
[INFO] [stdout]     |
[INFO] [stdout] 423 |             skip_len: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:424:19
[INFO] [stdout]     |
[INFO] [stdout] 424 |             data: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:425:22
[INFO] [stdout]     |
[INFO] [stdout] 425 |             child_l: try!(Decodable::consensus_decode(d)),
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/patricia_tree.rs:426:22
[INFO] [stdout]     |
[INFO] [stdout] 426 |             child_r: try!(Decodable::consensus_decode(d))
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/blockchain.rs:73:19
[INFO] [stdout]    |
[INFO] [stdout] 73 |         (self as &fmt::Display).fmt(f)
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 73 |         (self as &dyn fmt::Display).fmt(f)
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/blockchain.rs:73:19
[INFO] [stdout]    |
[INFO] [stdout] 73 |         (self as &fmt::Display).fmt(f)
[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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 73 |         (self as &dyn fmt::Display).fmt(f)
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 40 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 40 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.04s
[INFO] running `Command { std: "docker" "inspect" "a0762dc3a720a5ef0a9c8700ad71da9eedd8a696ffeb5d5276147076706e78cd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a0762dc3a720a5ef0a9c8700ad71da9eedd8a696ffeb5d5276147076706e78cd", kill_on_drop: false }`
[INFO] [stdout] a0762dc3a720a5ef0a9c8700ad71da9eedd8a696ffeb5d5276147076706e78cd
