[INFO] fetching crate sflow 0.0.1...
[INFO] building sflow-0.0.1 against try#d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6 for pr-146237-1
[INFO] extracting crate sflow 0.0.1 into /workspace/builds/worker-5-tc2/source
[INFO] started tweaking crates.io crate sflow 0.0.1
[INFO] finished tweaking crates.io crate sflow 0.0.1
[INFO] tweaked toml for crates.io crate sflow 0.0.1 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate sflow 0.0.1 on toolchain d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 19 packages to latest compatible versions
[INFO] [stderr]       Adding byteorder v0.4.2 (available: v1.5.0)
[INFO] [stderr]       Adding num v0.1.43 (available: v0.4.3)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr] warning: only one of `license` or `license-file` is necessary
[INFO] [stderr] `license` should be used if the package license can be expressed with a standard SPDX expression.
[INFO] [stderr] `license-file` should be used if the package uses a non-standard license.
[INFO] [stderr] See https://doc.rust-lang.org/cargo/reference/manifest.html#the-license-and-license-file-fields for more information.
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5e89e59a24ca698a1000ff243231fe41e94150db43845d8511dab83aed7bc7df
[INFO] running `Command { std: "docker" "start" "-a" "5e89e59a24ca698a1000ff243231fe41e94150db43845d8511dab83aed7bc7df", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5e89e59a24ca698a1000ff243231fe41e94150db43845d8511dab83aed7bc7df", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5e89e59a24ca698a1000ff243231fe41e94150db43845d8511dab83aed7bc7df", kill_on_drop: false }`
[INFO] [stdout] 5e89e59a24ca698a1000ff243231fe41e94150db43845d8511dab83aed7bc7df
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bd2ea6c9c802a343490bc55b8f90b22bbdb1255d9d21d86f2023b8eff247ad1c
[INFO] running `Command { std: "docker" "start" "-a" "bd2ea6c9c802a343490bc55b8f90b22bbdb1255d9d21d86f2023b8eff247ad1c", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr] warning: only one of `license` or `license-file` is necessary
[INFO] [stderr] `license` should be used if the package license can be expressed with a standard SPDX expression.
[INFO] [stderr] `license-file` should be used if the package uses a non-standard license.
[INFO] [stderr] See https://doc.rust-lang.org/cargo/reference/manifest.html#the-license-and-license-file-fields for more information.
[INFO] [stderr]    Compiling num-bigint v0.1.45
[INFO] [stderr]    Compiling rustc-serialize v0.3.25
[INFO] [stderr]    Compiling num-rational v0.1.43
[INFO] [stderr]    Compiling num-complex v0.1.44
[INFO] [stderr]    Compiling byteorder v0.4.2
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling num-iter v0.1.45
[INFO] [stderr]    Compiling num v0.1.43
[INFO] [stderr]    Compiling sflow v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/utils.rs:67:24
[INFO] [stdout]    |
[INFO] [stdout] 67 |     fn read_and_decode(&mut types::ReadSeeker) -> Result<Self, ::error::Error> where Self: Sized;
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut types::ReadSeeker`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` (part of `#[warn(rust_2018_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/utils.rs:73:17
[INFO] [stdout]    |
[INFO] [stdout] 73 |         let r = try!(stream.read_u8());
[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/utils.rs:82:17
[INFO] [stdout]    |
[INFO] [stdout] 82 |         let r = try!(stream.be_read_u32());
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/utils.rs:91:17
[INFO] [stdout]    |
[INFO] [stdout] 91 |         let r = try!(stream.be_read_u16());
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:100:17
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let r = try!(stream.read_i8());
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:109:17
[INFO] [stdout]     |
[INFO] [stdout] 109 |         let r = try!(stream.be_read_i32());
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:118:17
[INFO] [stdout]     |
[INFO] [stdout] 118 |         let r = try!(stream.be_read_i16());
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:135:9
[INFO] [stdout]     |
[INFO] [stdout] 135 |         try!(stream.read_exact(&mut buf));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:127:29
[INFO] [stdout]     |
[INFO] [stdout] 127 |         let length: usize = try!(stream.be_read_u32()) as usize;
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:136:17
[INFO] [stdout]     |
[INFO] [stdout] 136 |         let s = try!(String::from_utf8(buf));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:144:13
[INFO] [stdout]     |
[INFO] [stdout] 144 |             try!(stream.seek(SeekFrom::Current(padding as i64)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:176:9
[INFO] [stdout]     |
[INFO] [stdout] 176 |         try!(stream.seek(SeekFrom::Current(padding as i64)));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:154:21
[INFO] [stdout]     |
[INFO] [stdout] 154 |         let count = try!(stream.be_read_u32());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/utils.rs:57:33
[INFO] [stdout]    |
[INFO] [stdout] 57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]    |                                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/sample.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / add_decoder!{
[INFO] [stdout] 17 | | #[derive(Debug, Clone, Default)]
[INFO] [stdout] 18 | | pub struct FlowSample {
[INFO] [stdout] ...  |
[INFO] [stdout] 49 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/sample.rs:54:21
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let count = try!(stream.be_read_u32());
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/sample.rs:58:26
[INFO] [stdout]    |
[INFO] [stdout] 58 |             let format = try!(stream.be_read_u32());
[INFO] [stdout]    |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/sample.rs:59:26
[INFO] [stdout]    |
[INFO] [stdout] 59 |             let length = try!(stream.be_read_u32());
[INFO] [stdout]    |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/sample.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     let fs: FlowSample = try!(::utils::Decodeable::read_and_decode(stream));
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/sample.rs:69:21
[INFO] [stdout]    |
[INFO] [stdout] 69 |                     try!(stream.seek(SeekFrom::Current(length as i64)));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:26:22
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let format = try!(stream.be_read_u32());
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:27:22
[INFO] [stdout]    |
[INFO] [stdout] 27 |         let length = try!(stream.be_read_u32());
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:31:25
[INFO] [stdout]    |
[INFO] [stdout] 31 |                 let e = try!(SampledHeader::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:35:25
[INFO] [stdout]    |
[INFO] [stdout] 35 |                 let e = try!(SampledIpv4::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:39:25
[INFO] [stdout]    |
[INFO] [stdout] 39 |                 let e = try!(ExtendedSwitch::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:43:25
[INFO] [stdout]    |
[INFO] [stdout] 43 |                 let e = try!(ExtendedRouter::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:47:25
[INFO] [stdout]    |
[INFO] [stdout] 47 |                 let e = try!(ExtendedGateway::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:51:25
[INFO] [stdout]    |
[INFO] [stdout] 51 |                 let e = try!(ExtendedUrl::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:55:25
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 let e = try!(ExtendedMpls::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:59:25
[INFO] [stdout]    |
[INFO] [stdout] 59 |                 let e = try!(ExtendedMplsTunnel::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:66:17
[INFO] [stdout]    |
[INFO] [stdout] 66 |                 try!(stream.seek(SeekFrom::Current(length as i64)));
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/utils.rs:57:33
[INFO] [stdout]    |
[INFO] [stdout] 57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]    |                                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/flow_records.rs:76:1
[INFO] [stdout]    |
[INFO] [stdout] 76 | / add_decoder!{
[INFO] [stdout] 77 | | #[derive(Debug, Clone, Default)]
[INFO] [stdout] 78 | | pub struct ExtendedGateway {
[INFO] [stdout] 79 | |     pub next_hop: ipaddress::IPAddress,
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/utils.rs:57:33
[INFO] [stdout]    |
[INFO] [stdout] 57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]    |                                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/flow_records.rs:89:1
[INFO] [stdout]    |
[INFO] [stdout] 89 | / add_decoder!{
[INFO] [stdout] 90 | | #[derive(Debug, Clone)]
[INFO] [stdout] 91 | | pub struct ExtendedUrl {
[INFO] [stdout] 92 | |    pub directoin: u32,   /* Direction of connection */
[INFO] [stdout] ...  |
[INFO] [stdout] 96 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:57:33
[INFO] [stdout]     |
[INFO] [stdout]  57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:98:1
[INFO] [stdout]     |
[INFO] [stdout]  98 | / add_decoder!{
[INFO] [stdout]  99 | | #[derive(Debug, Clone)]
[INFO] [stdout] 100 | | pub struct SampledIpv4 {
[INFO] [stdout] 101 | |    pub length: u32,     /* The length of the IP packet excluding
[INFO] [stdout] ...   |
[INFO] [stdout] 112 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:57:33
[INFO] [stdout]     |
[INFO] [stdout]  57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:114:1
[INFO] [stdout]     |
[INFO] [stdout] 114 | / add_decoder!{
[INFO] [stdout] 115 | | #[derive(Debug, Clone)]
[INFO] [stdout] 116 | | pub struct ExtendedSwitch {
[INFO] [stdout] 117 | |    pub src_vlan: u32,     /* The 802.1Q VLAN id of incoming frame */
[INFO] [stdout] ...   |
[INFO] [stdout] 122 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:57:33
[INFO] [stdout]     |
[INFO] [stdout]  57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | / add_decoder!{
[INFO] [stdout] 125 | | #[derive(Debug, Clone)]
[INFO] [stdout] 126 | | pub struct ExtendedRouter {
[INFO] [stdout] 127 | |    pub nexthop: ipaddress::IPAddress,            /* IP address of next hop router */
[INFO] [stdout] ...   |
[INFO] [stdout] 133 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:57:33
[INFO] [stdout]     |
[INFO] [stdout]  57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:135:1
[INFO] [stdout]     |
[INFO] [stdout] 135 | / add_decoder!{
[INFO] [stdout] 136 | | #[derive(Debug, Clone)]
[INFO] [stdout] 137 | | pub struct SampledHeader {
[INFO] [stdout] ...   |
[INFO] [stdout] 162 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:57:33
[INFO] [stdout]     |
[INFO] [stdout]  57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:164:1
[INFO] [stdout]     |
[INFO] [stdout] 164 | / add_decoder!{
[INFO] [stdout] 165 | | #[derive(Debug, Clone)]
[INFO] [stdout] 166 | | pub struct ExtendedMplsTunnel {
[INFO] [stdout] 167 | |    pub tunnel_lsp_name: String, /* Tunnel name */
[INFO] [stdout] ...   |
[INFO] [stdout] 171 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:57:33
[INFO] [stdout]     |
[INFO] [stdout]  57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:173:1
[INFO] [stdout]     |
[INFO] [stdout] 173 | / add_decoder!{
[INFO] [stdout] 174 | | #[derive(Debug, Clone)]
[INFO] [stdout] 175 | | pub struct ExtendedMpls {
[INFO] [stdout] 176 | |    pub nexthop: ipaddress::IPAddress,           /* Address of the next hop */
[INFO] [stdout] ...   |
[INFO] [stdout] 180 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ipaddress.rs:26:26
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let ip_version = try!(stream.be_read_u32());
[INFO] [stdout]    |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ipaddress.rs:31:23
[INFO] [stdout]    |
[INFO] [stdout] 31 |             1 => ip = try!(decode_ipv4(stream)),
[INFO] [stdout]    |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ipaddress.rs:32:23
[INFO] [stdout]    |
[INFO] [stdout] 32 |             2 => ip = try!(decode_ipv6(stream)),
[INFO] [stdout]    |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ipaddress.rs:47:16
[INFO] [stdout]    |
[INFO] [stdout] 47 |         b[i] = try!(stream.read_u8());
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ipaddress.rs:56:16
[INFO] [stdout]    |
[INFO] [stdout] 56 |         b[i] = try!(stream.be_read_u16())
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/utils.rs:57:33
[INFO] [stdout]    |
[INFO] [stdout] 57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]    |                                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/dst_as_path.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / add_decoder!{
[INFO] [stdout]  4 | | #[derive(Debug, Clone)]
[INFO] [stdout]  5 | | pub struct DstASPath {
[INFO] [stdout]  6 | |     pub ordered: u32,
[INFO] [stdout] ...  |
[INFO] [stdout]  9 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/utils.rs:57:33
[INFO] [stdout]    |
[INFO] [stdout] 57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]    |                                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/datagram.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / add_decoder!{
[INFO] [stdout]  6 | | #[derive(Debug, Clone)]
[INFO] [stdout]  7 | | pub struct Datagram {
[INFO] [stdout]  8 | |     pub sflow_version: u32,
[INFO] [stdout] ...  |
[INFO] [stdout] 15 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/community.rs:28:18
[INFO] [stdout]    |
[INFO] [stdout] 28 |             asn: try!(stream.be_read_u16()) as u32,
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/community.rs:29:18
[INFO] [stdout]    |
[INFO] [stdout] 29 |             tag: try!(stream.be_read_u16()),
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:23:49
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Error::Io(ref err) => error::Error::description(err),
[INFO] [stdout]    |                                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:24:56
[INFO] [stdout]    |
[INFO] [stdout] 24 |             Error::ByteOrder(ref err) => error::Error::description(err),
[INFO] [stdout]    |                                                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:25:51
[INFO] [stdout]    |
[INFO] [stdout] 25 |             Error::Utf8(ref err) => error::Error::description(err),
[INFO] [stdout]    |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:55:45
[INFO] [stdout]    |
[INFO] [stdout] 55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/sample.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / add_decoder!{
[INFO] [stdout] 17 | | #[derive(Debug, Clone, Default)]
[INFO] [stdout] 18 | | pub struct FlowSample {
[INFO] [stdout] ...  |
[INFO] [stdout] 49 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:67:29
[INFO] [stdout]    |
[INFO] [stdout] 67 |     fn read_and_decode(&mut types::ReadSeeker) -> Result<Self, ::error::Error> where Self: Sized;
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 67 |     fn read_and_decode(&mut dyn types::ReadSeeker) -> Result<Self, ::error::Error> where Self: Sized;
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:72:37
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:55:45
[INFO] [stdout]    |
[INFO] [stdout] 55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/flow_records.rs:89:1
[INFO] [stdout]    |
[INFO] [stdout] 89 | / add_decoder!{
[INFO] [stdout] 90 | | #[derive(Debug, Clone)]
[INFO] [stdout] 91 | | pub struct ExtendedUrl {
[INFO] [stdout] 92 | |    pub directoin: u32,   /* Direction of connection */
[INFO] [stdout] ...  |
[INFO] [stdout] 96 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/sample.rs:52:37
[INFO] [stdout]    |
[INFO] [stdout] 52 |     fn read_and_decode(stream: &mut ReadSeeker) -> Result<Vec<SampleRecord>> {
[INFO] [stdout]    |                                     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 52 |     fn read_and_decode(stream: &mut dyn ReadSeeker) -> Result<Vec<SampleRecord>> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:81:37
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<u32, error::Error> {
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<u32, error::Error> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:90:37
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:99:37
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:108:37
[INFO] [stdout]     |
[INFO] [stdout] 108 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<i32, error::Error> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 108 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<i32, error::Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:117:37
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:125:37
[INFO] [stdout]     |
[INFO] [stdout] 125 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 125 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:152:37
[INFO] [stdout]     |
[INFO] [stdout] 152 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<Vec<T>, error::Error> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 152 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<Vec<T>, error::Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:55:45
[INFO] [stdout]     |
[INFO] [stdout]  55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | / add_decoder!{
[INFO] [stdout] 125 | | #[derive(Debug, Clone)]
[INFO] [stdout] 126 | | pub struct ExtendedRouter {
[INFO] [stdout] 127 | |    pub nexthop: ipaddress::IPAddress,            /* IP address of next hop router */
[INFO] [stdout] ...   |
[INFO] [stdout] 133 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/flow_records.rs:25:37
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn read_and_decode(stream: &mut ReadSeeker) -> Result<FlowRecord, error::Error> {
[INFO] [stdout]    |                                     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn read_and_decode(stream: &mut dyn ReadSeeker) -> Result<FlowRecord, error::Error> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:55:45
[INFO] [stdout]     |
[INFO] [stdout]  55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:98:1
[INFO] [stdout]     |
[INFO] [stdout]  98 | / add_decoder!{
[INFO] [stdout]  99 | | #[derive(Debug, Clone)]
[INFO] [stdout] 100 | | pub struct SampledIpv4 {
[INFO] [stdout] 101 | |    pub length: u32,     /* The length of the IP packet excluding
[INFO] [stdout] ...   |
[INFO] [stdout] 112 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:55:45
[INFO] [stdout]     |
[INFO] [stdout]  55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:114:1
[INFO] [stdout]     |
[INFO] [stdout] 114 | / add_decoder!{
[INFO] [stdout] 115 | | #[derive(Debug, Clone)]
[INFO] [stdout] 116 | | pub struct ExtendedSwitch {
[INFO] [stdout] 117 | |    pub src_vlan: u32,     /* The 802.1Q VLAN id of incoming frame */
[INFO] [stdout] ...   |
[INFO] [stdout] 122 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:55:45
[INFO] [stdout]    |
[INFO] [stdout] 55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/flow_records.rs:76:1
[INFO] [stdout]    |
[INFO] [stdout] 76 | / add_decoder!{
[INFO] [stdout] 77 | | #[derive(Debug, Clone, Default)]
[INFO] [stdout] 78 | | pub struct ExtendedGateway {
[INFO] [stdout] 79 | |     pub next_hop: ipaddress::IPAddress,
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:55:45
[INFO] [stdout]     |
[INFO] [stdout]  55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:135:1
[INFO] [stdout]     |
[INFO] [stdout] 135 | / add_decoder!{
[INFO] [stdout] 136 | | #[derive(Debug, Clone)]
[INFO] [stdout] 137 | | pub struct SampledHeader {
[INFO] [stdout] ...   |
[INFO] [stdout] 162 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:55:45
[INFO] [stdout]     |
[INFO] [stdout]  55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:164:1
[INFO] [stdout]     |
[INFO] [stdout] 164 | / add_decoder!{
[INFO] [stdout] 165 | | #[derive(Debug, Clone)]
[INFO] [stdout] 166 | | pub struct ExtendedMplsTunnel {
[INFO] [stdout] 167 | |    pub tunnel_lsp_name: String, /* Tunnel name */
[INFO] [stdout] ...   |
[INFO] [stdout] 171 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:55:45
[INFO] [stdout]     |
[INFO] [stdout]  55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:173:1
[INFO] [stdout]     |
[INFO] [stdout] 173 | / add_decoder!{
[INFO] [stdout] 174 | | #[derive(Debug, Clone)]
[INFO] [stdout] 175 | | pub struct ExtendedMpls {
[INFO] [stdout] 176 | |    pub nexthop: ipaddress::IPAddress,           /* Address of the next hop */
[INFO] [stdout] ...   |
[INFO] [stdout] 180 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ipaddress.rs:25:37
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn read_and_decode(stream: &mut ReadSeeker) -> Result<IPAddress, Error> {
[INFO] [stdout]    |                                     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn read_and_decode(stream: &mut dyn ReadSeeker) -> Result<IPAddress, Error> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ipaddress.rs:44:29
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn decode_ipv4(stream: &mut ReadSeeker) -> Result<IPAddress, Error> {
[INFO] [stdout]    |                             ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn decode_ipv4(stream: &mut dyn ReadSeeker) -> Result<IPAddress, Error> {
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ipaddress.rs:53:29
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn decode_ipv6(stream: &mut ReadSeeker) -> Result<IPAddress, Error> {
[INFO] [stdout]    |                             ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn decode_ipv6(stream: &mut dyn ReadSeeker) -> Result<IPAddress, Error> {
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:55:45
[INFO] [stdout]    |
[INFO] [stdout] 55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/dst_as_path.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / add_decoder!{
[INFO] [stdout]  4 | | #[derive(Debug, Clone)]
[INFO] [stdout]  5 | | pub struct DstASPath {
[INFO] [stdout]  6 | |     pub ordered: u32,
[INFO] [stdout] ...  |
[INFO] [stdout]  9 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:55:45
[INFO] [stdout]    |
[INFO] [stdout] 55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/datagram.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / add_decoder!{
[INFO] [stdout]  6 | | #[derive(Debug, Clone)]
[INFO] [stdout]  7 | | pub struct Datagram {
[INFO] [stdout]  8 | |     pub sflow_version: u32,
[INFO] [stdout] ...  |
[INFO] [stdout] 15 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:30:32
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/community.rs:26:37
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<Community, error::Error> {
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<Community, error::Error> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[macro_use]` attribute cannot be used on macro defs
[INFO] [stdout]   --> src/utils.rs:42:1
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[macro_use(try)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[macro_use]` can be applied to modules, extern crates, and crates
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/error.rs:32:39
[INFO] [stdout]    |
[INFO] [stdout] 32 |             Error::Io(ref err) => err.cause(),
[INFO] [stdout]    |                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/error.rs:33:46
[INFO] [stdout]    |
[INFO] [stdout] 33 |             Error::ByteOrder(ref err) => err.cause(),
[INFO] [stdout]    |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/error.rs:35:41
[INFO] [stdout]    |
[INFO] [stdout] 35 |             Error::Utf8(ref err) => err.cause(),
[INFO] [stdout]    |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ByteOrder`
[INFO] [stdout]  --> src/utils.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use byteorder::{self, ByteOrder, BigEndian, ReadBytesExt};
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Read`
[INFO] [stdout]  --> src/utils.rs:5:31
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::{self, SeekFrom, Read};
[INFO] [stdout]   |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.62s
[INFO] running `Command { std: "docker" "inspect" "bd2ea6c9c802a343490bc55b8f90b22bbdb1255d9d21d86f2023b8eff247ad1c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bd2ea6c9c802a343490bc55b8f90b22bbdb1255d9d21d86f2023b8eff247ad1c", kill_on_drop: false }`
[INFO] [stdout] bd2ea6c9c802a343490bc55b8f90b22bbdb1255d9d21d86f2023b8eff247ad1c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5bbda488f934b36254dda44f26991aaeb85c77c2e86adf3912c831372c0ebd5f
[INFO] running `Command { std: "docker" "start" "-a" "5bbda488f934b36254dda44f26991aaeb85c77c2e86adf3912c831372c0ebd5f", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr] warning: only one of `license` or `license-file` is necessary
[INFO] [stderr] `license` should be used if the package license can be expressed with a standard SPDX expression.
[INFO] [stderr] `license-file` should be used if the package uses a non-standard license.
[INFO] [stderr] See https://doc.rust-lang.org/cargo/reference/manifest.html#the-license-and-license-file-fields for more information.
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/utils.rs:67:24
[INFO] [stdout]    |
[INFO] [stdout] 67 |     fn read_and_decode(&mut types::ReadSeeker) -> Result<Self, ::error::Error> where Self: Sized;
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut types::ReadSeeker`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` (part of `#[warn(rust_2018_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/utils.rs:73:17
[INFO] [stdout]    |
[INFO] [stdout] 73 |         let r = try!(stream.read_u8());
[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/utils.rs:82:17
[INFO] [stdout]    |
[INFO] [stdout] 82 |         let r = try!(stream.be_read_u32());
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/utils.rs:91:17
[INFO] [stdout]    |
[INFO] [stdout] 91 |         let r = try!(stream.be_read_u16());
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:100:17
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let r = try!(stream.read_i8());
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:109:17
[INFO] [stdout]     |
[INFO] [stdout] 109 |         let r = try!(stream.be_read_i32());
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:118:17
[INFO] [stdout]     |
[INFO] [stdout] 118 |         let r = try!(stream.be_read_i16());
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:135:9
[INFO] [stdout]     |
[INFO] [stdout] 135 |         try!(stream.read_exact(&mut buf));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:127:29
[INFO] [stdout]     |
[INFO] [stdout] 127 |         let length: usize = try!(stream.be_read_u32()) as usize;
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:136:17
[INFO] [stdout]     |
[INFO] [stdout] 136 |         let s = try!(String::from_utf8(buf));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:144:13
[INFO] [stdout]     |
[INFO] [stdout] 144 |             try!(stream.seek(SeekFrom::Current(padding as i64)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:176:9
[INFO] [stdout]     |
[INFO] [stdout] 176 |         try!(stream.seek(SeekFrom::Current(padding as i64)));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:154:21
[INFO] [stdout]     |
[INFO] [stdout] 154 |         let count = try!(stream.be_read_u32());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/utils.rs:57:33
[INFO] [stdout]    |
[INFO] [stdout] 57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]    |                                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/sample.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / add_decoder!{
[INFO] [stdout] 17 | | #[derive(Debug, Clone, Default)]
[INFO] [stdout] 18 | | pub struct FlowSample {
[INFO] [stdout] ...  |
[INFO] [stdout] 49 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/sample.rs:54:21
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let count = try!(stream.be_read_u32());
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/sample.rs:58:26
[INFO] [stdout]    |
[INFO] [stdout] 58 |             let format = try!(stream.be_read_u32());
[INFO] [stdout]    |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/sample.rs:59:26
[INFO] [stdout]    |
[INFO] [stdout] 59 |             let length = try!(stream.be_read_u32());
[INFO] [stdout]    |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/sample.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     let fs: FlowSample = try!(::utils::Decodeable::read_and_decode(stream));
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/sample.rs:69:21
[INFO] [stdout]    |
[INFO] [stdout] 69 |                     try!(stream.seek(SeekFrom::Current(length as i64)));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:26:22
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let format = try!(stream.be_read_u32());
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:27:22
[INFO] [stdout]    |
[INFO] [stdout] 27 |         let length = try!(stream.be_read_u32());
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:31:25
[INFO] [stdout]    |
[INFO] [stdout] 31 |                 let e = try!(SampledHeader::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:35:25
[INFO] [stdout]    |
[INFO] [stdout] 35 |                 let e = try!(SampledIpv4::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:39:25
[INFO] [stdout]    |
[INFO] [stdout] 39 |                 let e = try!(ExtendedSwitch::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:43:25
[INFO] [stdout]    |
[INFO] [stdout] 43 |                 let e = try!(ExtendedRouter::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:47:25
[INFO] [stdout]    |
[INFO] [stdout] 47 |                 let e = try!(ExtendedGateway::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:51:25
[INFO] [stdout]    |
[INFO] [stdout] 51 |                 let e = try!(ExtendedUrl::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:55:25
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 let e = try!(ExtendedMpls::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:59:25
[INFO] [stdout]    |
[INFO] [stdout] 59 |                 let e = try!(ExtendedMplsTunnel::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:66:17
[INFO] [stdout]    |
[INFO] [stdout] 66 |                 try!(stream.seek(SeekFrom::Current(length as i64)));
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/utils.rs:57:33
[INFO] [stdout]    |
[INFO] [stdout] 57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]    |                                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/flow_records.rs:76:1
[INFO] [stdout]    |
[INFO] [stdout] 76 | / add_decoder!{
[INFO] [stdout] 77 | | #[derive(Debug, Clone, Default)]
[INFO] [stdout] 78 | | pub struct ExtendedGateway {
[INFO] [stdout] 79 | |     pub next_hop: ipaddress::IPAddress,
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/utils.rs:57:33
[INFO] [stdout]    |
[INFO] [stdout] 57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]    |                                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/flow_records.rs:89:1
[INFO] [stdout]    |
[INFO] [stdout] 89 | / add_decoder!{
[INFO] [stdout] 90 | | #[derive(Debug, Clone)]
[INFO] [stdout] 91 | | pub struct ExtendedUrl {
[INFO] [stdout] 92 | |    pub directoin: u32,   /* Direction of connection */
[INFO] [stdout] ...  |
[INFO] [stdout] 96 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:57:33
[INFO] [stdout]     |
[INFO] [stdout]  57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:98:1
[INFO] [stdout]     |
[INFO] [stdout]  98 | / add_decoder!{
[INFO] [stdout]  99 | | #[derive(Debug, Clone)]
[INFO] [stdout] 100 | | pub struct SampledIpv4 {
[INFO] [stdout] 101 | |    pub length: u32,     /* The length of the IP packet excluding
[INFO] [stdout] ...   |
[INFO] [stdout] 112 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:57:33
[INFO] [stdout]     |
[INFO] [stdout]  57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:114:1
[INFO] [stdout]     |
[INFO] [stdout] 114 | / add_decoder!{
[INFO] [stdout] 115 | | #[derive(Debug, Clone)]
[INFO] [stdout] 116 | | pub struct ExtendedSwitch {
[INFO] [stdout] 117 | |    pub src_vlan: u32,     /* The 802.1Q VLAN id of incoming frame */
[INFO] [stdout] ...   |
[INFO] [stdout] 122 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:57:33
[INFO] [stdout]     |
[INFO] [stdout]  57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | / add_decoder!{
[INFO] [stdout] 125 | | #[derive(Debug, Clone)]
[INFO] [stdout] 126 | | pub struct ExtendedRouter {
[INFO] [stdout] 127 | |    pub nexthop: ipaddress::IPAddress,            /* IP address of next hop router */
[INFO] [stdout] ...   |
[INFO] [stdout] 133 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:57:33
[INFO] [stdout]     |
[INFO] [stdout]  57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:135:1
[INFO] [stdout]     |
[INFO] [stdout] 135 | / add_decoder!{
[INFO] [stdout] 136 | | #[derive(Debug, Clone)]
[INFO] [stdout] 137 | | pub struct SampledHeader {
[INFO] [stdout] ...   |
[INFO] [stdout] 162 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:57:33
[INFO] [stdout]     |
[INFO] [stdout]  57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:164:1
[INFO] [stdout]     |
[INFO] [stdout] 164 | / add_decoder!{
[INFO] [stdout] 165 | | #[derive(Debug, Clone)]
[INFO] [stdout] 166 | | pub struct ExtendedMplsTunnel {
[INFO] [stdout] 167 | |    pub tunnel_lsp_name: String, /* Tunnel name */
[INFO] [stdout] ...   |
[INFO] [stdout] 171 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:57:33
[INFO] [stdout]     |
[INFO] [stdout]  57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:173:1
[INFO] [stdout]     |
[INFO] [stdout] 173 | / add_decoder!{
[INFO] [stdout] 174 | | #[derive(Debug, Clone)]
[INFO] [stdout] 175 | | pub struct ExtendedMpls {
[INFO] [stdout] 176 | |    pub nexthop: ipaddress::IPAddress,           /* Address of the next hop */
[INFO] [stdout] ...   |
[INFO] [stdout] 180 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ipaddress.rs:26:26
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let ip_version = try!(stream.be_read_u32());
[INFO] [stdout]    |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ipaddress.rs:31:23
[INFO] [stdout]    |
[INFO] [stdout] 31 |             1 => ip = try!(decode_ipv4(stream)),
[INFO] [stdout]    |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ipaddress.rs:32:23
[INFO] [stdout]    |
[INFO] [stdout] 32 |             2 => ip = try!(decode_ipv6(stream)),
[INFO] [stdout]    |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ipaddress.rs:47:16
[INFO] [stdout]    |
[INFO] [stdout] 47 |         b[i] = try!(stream.read_u8());
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ipaddress.rs:56:16
[INFO] [stdout]    |
[INFO] [stdout] 56 |         b[i] = try!(stream.be_read_u16())
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/utils.rs:57:33
[INFO] [stdout]    |
[INFO] [stdout] 57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]    |                                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/dst_as_path.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / add_decoder!{
[INFO] [stdout]  4 | | #[derive(Debug, Clone)]
[INFO] [stdout]  5 | | pub struct DstASPath {
[INFO] [stdout]  6 | |     pub ordered: u32,
[INFO] [stdout] ...  |
[INFO] [stdout]  9 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/utils.rs:57:33
[INFO] [stdout]    |
[INFO] [stdout] 57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]    |                                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/datagram.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / add_decoder!{
[INFO] [stdout]  6 | | #[derive(Debug, Clone)]
[INFO] [stdout]  7 | | pub struct Datagram {
[INFO] [stdout]  8 | |     pub sflow_version: u32,
[INFO] [stdout] ...  |
[INFO] [stdout] 15 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/community.rs:28:18
[INFO] [stdout]    |
[INFO] [stdout] 28 |             asn: try!(stream.be_read_u16()) as u32,
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/community.rs:29:18
[INFO] [stdout]    |
[INFO] [stdout] 29 |             tag: try!(stream.be_read_u16()),
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:23:49
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Error::Io(ref err) => error::Error::description(err),
[INFO] [stdout]    |                                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:24:56
[INFO] [stdout]    |
[INFO] [stdout] 24 |             Error::ByteOrder(ref err) => error::Error::description(err),
[INFO] [stdout]    |                                                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:25:51
[INFO] [stdout]    |
[INFO] [stdout] 25 |             Error::Utf8(ref err) => error::Error::description(err),
[INFO] [stdout]    |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:55:45
[INFO] [stdout]    |
[INFO] [stdout] 55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/sample.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / add_decoder!{
[INFO] [stdout] 17 | | #[derive(Debug, Clone, Default)]
[INFO] [stdout] 18 | | pub struct FlowSample {
[INFO] [stdout] ...  |
[INFO] [stdout] 49 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:67:29
[INFO] [stdout]    |
[INFO] [stdout] 67 |     fn read_and_decode(&mut types::ReadSeeker) -> Result<Self, ::error::Error> where Self: Sized;
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 67 |     fn read_and_decode(&mut dyn types::ReadSeeker) -> Result<Self, ::error::Error> where Self: Sized;
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:72:37
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:55:45
[INFO] [stdout]    |
[INFO] [stdout] 55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/flow_records.rs:89:1
[INFO] [stdout]    |
[INFO] [stdout] 89 | / add_decoder!{
[INFO] [stdout] 90 | | #[derive(Debug, Clone)]
[INFO] [stdout] 91 | | pub struct ExtendedUrl {
[INFO] [stdout] 92 | |    pub directoin: u32,   /* Direction of connection */
[INFO] [stdout] ...  |
[INFO] [stdout] 96 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/sample.rs:52:37
[INFO] [stdout]    |
[INFO] [stdout] 52 |     fn read_and_decode(stream: &mut ReadSeeker) -> Result<Vec<SampleRecord>> {
[INFO] [stdout]    |                                     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 52 |     fn read_and_decode(stream: &mut dyn ReadSeeker) -> Result<Vec<SampleRecord>> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:81:37
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<u32, error::Error> {
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<u32, error::Error> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:90:37
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:99:37
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:108:37
[INFO] [stdout]     |
[INFO] [stdout] 108 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<i32, error::Error> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 108 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<i32, error::Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:117:37
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:125:37
[INFO] [stdout]     |
[INFO] [stdout] 125 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 125 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:152:37
[INFO] [stdout]     |
[INFO] [stdout] 152 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<Vec<T>, error::Error> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 152 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<Vec<T>, error::Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:55:45
[INFO] [stdout]     |
[INFO] [stdout]  55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | / add_decoder!{
[INFO] [stdout] 125 | | #[derive(Debug, Clone)]
[INFO] [stdout] 126 | | pub struct ExtendedRouter {
[INFO] [stdout] 127 | |    pub nexthop: ipaddress::IPAddress,            /* IP address of next hop router */
[INFO] [stdout] ...   |
[INFO] [stdout] 133 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/flow_records.rs:25:37
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn read_and_decode(stream: &mut ReadSeeker) -> Result<FlowRecord, error::Error> {
[INFO] [stdout]    |                                     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn read_and_decode(stream: &mut dyn ReadSeeker) -> Result<FlowRecord, error::Error> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:55:45
[INFO] [stdout]     |
[INFO] [stdout]  55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:98:1
[INFO] [stdout]     |
[INFO] [stdout]  98 | / add_decoder!{
[INFO] [stdout]  99 | | #[derive(Debug, Clone)]
[INFO] [stdout] 100 | | pub struct SampledIpv4 {
[INFO] [stdout] 101 | |    pub length: u32,     /* The length of the IP packet excluding
[INFO] [stdout] ...   |
[INFO] [stdout] 112 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:55:45
[INFO] [stdout]     |
[INFO] [stdout]  55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:114:1
[INFO] [stdout]     |
[INFO] [stdout] 114 | / add_decoder!{
[INFO] [stdout] 115 | | #[derive(Debug, Clone)]
[INFO] [stdout] 116 | | pub struct ExtendedSwitch {
[INFO] [stdout] 117 | |    pub src_vlan: u32,     /* The 802.1Q VLAN id of incoming frame */
[INFO] [stdout] ...   |
[INFO] [stdout] 122 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:55:45
[INFO] [stdout]    |
[INFO] [stdout] 55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/flow_records.rs:76:1
[INFO] [stdout]    |
[INFO] [stdout] 76 | / add_decoder!{
[INFO] [stdout] 77 | | #[derive(Debug, Clone, Default)]
[INFO] [stdout] 78 | | pub struct ExtendedGateway {
[INFO] [stdout] 79 | |     pub next_hop: ipaddress::IPAddress,
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:55:45
[INFO] [stdout]     |
[INFO] [stdout]  55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:135:1
[INFO] [stdout]     |
[INFO] [stdout] 135 | / add_decoder!{
[INFO] [stdout] 136 | | #[derive(Debug, Clone)]
[INFO] [stdout] 137 | | pub struct SampledHeader {
[INFO] [stdout] ...   |
[INFO] [stdout] 162 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:55:45
[INFO] [stdout]     |
[INFO] [stdout]  55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:164:1
[INFO] [stdout]     |
[INFO] [stdout] 164 | / add_decoder!{
[INFO] [stdout] 165 | | #[derive(Debug, Clone)]
[INFO] [stdout] 166 | | pub struct ExtendedMplsTunnel {
[INFO] [stdout] 167 | |    pub tunnel_lsp_name: String, /* Tunnel name */
[INFO] [stdout] ...   |
[INFO] [stdout] 171 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:55:45
[INFO] [stdout]     |
[INFO] [stdout]  55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:173:1
[INFO] [stdout]     |
[INFO] [stdout] 173 | / add_decoder!{
[INFO] [stdout] 174 | | #[derive(Debug, Clone)]
[INFO] [stdout] 175 | | pub struct ExtendedMpls {
[INFO] [stdout] 176 | |    pub nexthop: ipaddress::IPAddress,           /* Address of the next hop */
[INFO] [stdout] ...   |
[INFO] [stdout] 180 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ipaddress.rs:25:37
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn read_and_decode(stream: &mut ReadSeeker) -> Result<IPAddress, Error> {
[INFO] [stdout]    |                                     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn read_and_decode(stream: &mut dyn ReadSeeker) -> Result<IPAddress, Error> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ipaddress.rs:44:29
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn decode_ipv4(stream: &mut ReadSeeker) -> Result<IPAddress, Error> {
[INFO] [stdout]    |                             ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn decode_ipv4(stream: &mut dyn ReadSeeker) -> Result<IPAddress, Error> {
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ipaddress.rs:53:29
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn decode_ipv6(stream: &mut ReadSeeker) -> Result<IPAddress, Error> {
[INFO] [stdout]    |                             ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn decode_ipv6(stream: &mut dyn ReadSeeker) -> Result<IPAddress, Error> {
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:55:45
[INFO] [stdout]    |
[INFO] [stdout] 55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/dst_as_path.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / add_decoder!{
[INFO] [stdout]  4 | | #[derive(Debug, Clone)]
[INFO] [stdout]  5 | | pub struct DstASPath {
[INFO] [stdout]  6 | |     pub ordered: u32,
[INFO] [stdout] ...  |
[INFO] [stdout]  9 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:55:45
[INFO] [stdout]    |
[INFO] [stdout] 55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/datagram.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / add_decoder!{
[INFO] [stdout]  6 | | #[derive(Debug, Clone)]
[INFO] [stdout]  7 | | pub struct Datagram {
[INFO] [stdout]  8 | |     pub sflow_version: u32,
[INFO] [stdout] ...  |
[INFO] [stdout] 15 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:30:32
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/community.rs:26:37
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<Community, error::Error> {
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<Community, error::Error> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[macro_use]` attribute cannot be used on macro defs
[INFO] [stdout]   --> src/utils.rs:42:1
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[macro_use(try)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[macro_use]` can be applied to modules, extern crates, and crates
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling sflow v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/error.rs:32:39
[INFO] [stdout]    |
[INFO] [stdout] 32 |             Error::Io(ref err) => err.cause(),
[INFO] [stdout]    |                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/error.rs:33:46
[INFO] [stdout]    |
[INFO] [stdout] 33 |             Error::ByteOrder(ref err) => err.cause(),
[INFO] [stdout]    |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/error.rs:35:41
[INFO] [stdout]    |
[INFO] [stdout] 35 |             Error::Utf8(ref err) => err.cause(),
[INFO] [stdout]    |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ByteOrder`
[INFO] [stdout]  --> src/utils.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use byteorder::{self, ByteOrder, BigEndian, ReadBytesExt};
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Read`
[INFO] [stdout]  --> src/utils.rs:5:31
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::{self, SeekFrom, Read};
[INFO] [stdout]   |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/utils.rs:67:24
[INFO] [stdout]    |
[INFO] [stdout] 67 |     fn read_and_decode(&mut types::ReadSeeker) -> Result<Self, ::error::Error> where Self: Sized;
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut types::ReadSeeker`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` (part of `#[warn(rust_2018_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/utils.rs:73:17
[INFO] [stdout]    |
[INFO] [stdout] 73 |         let r = try!(stream.read_u8());
[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/utils.rs:82:17
[INFO] [stdout]    |
[INFO] [stdout] 82 |         let r = try!(stream.be_read_u32());
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/utils.rs:91:17
[INFO] [stdout]    |
[INFO] [stdout] 91 |         let r = try!(stream.be_read_u16());
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:100:17
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let r = try!(stream.read_i8());
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:109:17
[INFO] [stdout]     |
[INFO] [stdout] 109 |         let r = try!(stream.be_read_i32());
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:118:17
[INFO] [stdout]     |
[INFO] [stdout] 118 |         let r = try!(stream.be_read_i16());
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:135:9
[INFO] [stdout]     |
[INFO] [stdout] 135 |         try!(stream.read_exact(&mut buf));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:127:29
[INFO] [stdout]     |
[INFO] [stdout] 127 |         let length: usize = try!(stream.be_read_u32()) as usize;
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:136:17
[INFO] [stdout]     |
[INFO] [stdout] 136 |         let s = try!(String::from_utf8(buf));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:144:13
[INFO] [stdout]     |
[INFO] [stdout] 144 |             try!(stream.seek(SeekFrom::Current(padding as i64)));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:176:9
[INFO] [stdout]     |
[INFO] [stdout] 176 |         try!(stream.seek(SeekFrom::Current(padding as i64)));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:154:21
[INFO] [stdout]     |
[INFO] [stdout] 154 |         let count = try!(stream.be_read_u32());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/utils.rs:57:33
[INFO] [stdout]    |
[INFO] [stdout] 57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]    |                                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/sample.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / add_decoder!{
[INFO] [stdout] 17 | | #[derive(Debug, Clone, Default)]
[INFO] [stdout] 18 | | pub struct FlowSample {
[INFO] [stdout] ...  |
[INFO] [stdout] 49 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/sample.rs:54:21
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let count = try!(stream.be_read_u32());
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/sample.rs:58:26
[INFO] [stdout]    |
[INFO] [stdout] 58 |             let format = try!(stream.be_read_u32());
[INFO] [stdout]    |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/sample.rs:59:26
[INFO] [stdout]    |
[INFO] [stdout] 59 |             let length = try!(stream.be_read_u32());
[INFO] [stdout]    |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/sample.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     let fs: FlowSample = try!(::utils::Decodeable::read_and_decode(stream));
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/sample.rs:69:21
[INFO] [stdout]    |
[INFO] [stdout] 69 |                     try!(stream.seek(SeekFrom::Current(length as i64)));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:26:22
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let format = try!(stream.be_read_u32());
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:27:22
[INFO] [stdout]    |
[INFO] [stdout] 27 |         let length = try!(stream.be_read_u32());
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:31:25
[INFO] [stdout]    |
[INFO] [stdout] 31 |                 let e = try!(SampledHeader::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:35:25
[INFO] [stdout]    |
[INFO] [stdout] 35 |                 let e = try!(SampledIpv4::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:39:25
[INFO] [stdout]    |
[INFO] [stdout] 39 |                 let e = try!(ExtendedSwitch::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:43:25
[INFO] [stdout]    |
[INFO] [stdout] 43 |                 let e = try!(ExtendedRouter::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:47:25
[INFO] [stdout]    |
[INFO] [stdout] 47 |                 let e = try!(ExtendedGateway::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:51:25
[INFO] [stdout]    |
[INFO] [stdout] 51 |                 let e = try!(ExtendedUrl::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:55:25
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 let e = try!(ExtendedMpls::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:59:25
[INFO] [stdout]    |
[INFO] [stdout] 59 |                 let e = try!(ExtendedMplsTunnel::read_and_decode(stream));
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/flow_records.rs:66:17
[INFO] [stdout]    |
[INFO] [stdout] 66 |                 try!(stream.seek(SeekFrom::Current(length as i64)));
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/utils.rs:57:33
[INFO] [stdout]    |
[INFO] [stdout] 57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]    |                                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/flow_records.rs:76:1
[INFO] [stdout]    |
[INFO] [stdout] 76 | / add_decoder!{
[INFO] [stdout] 77 | | #[derive(Debug, Clone, Default)]
[INFO] [stdout] 78 | | pub struct ExtendedGateway {
[INFO] [stdout] 79 | |     pub next_hop: ipaddress::IPAddress,
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/utils.rs:57:33
[INFO] [stdout]    |
[INFO] [stdout] 57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]    |                                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/flow_records.rs:89:1
[INFO] [stdout]    |
[INFO] [stdout] 89 | / add_decoder!{
[INFO] [stdout] 90 | | #[derive(Debug, Clone)]
[INFO] [stdout] 91 | | pub struct ExtendedUrl {
[INFO] [stdout] 92 | |    pub directoin: u32,   /* Direction of connection */
[INFO] [stdout] ...  |
[INFO] [stdout] 96 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:57:33
[INFO] [stdout]     |
[INFO] [stdout]  57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:98:1
[INFO] [stdout]     |
[INFO] [stdout]  98 | / add_decoder!{
[INFO] [stdout]  99 | | #[derive(Debug, Clone)]
[INFO] [stdout] 100 | | pub struct SampledIpv4 {
[INFO] [stdout] 101 | |    pub length: u32,     /* The length of the IP packet excluding
[INFO] [stdout] ...   |
[INFO] [stdout] 112 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:57:33
[INFO] [stdout]     |
[INFO] [stdout]  57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:114:1
[INFO] [stdout]     |
[INFO] [stdout] 114 | / add_decoder!{
[INFO] [stdout] 115 | | #[derive(Debug, Clone)]
[INFO] [stdout] 116 | | pub struct ExtendedSwitch {
[INFO] [stdout] 117 | |    pub src_vlan: u32,     /* The 802.1Q VLAN id of incoming frame */
[INFO] [stdout] ...   |
[INFO] [stdout] 122 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:57:33
[INFO] [stdout]     |
[INFO] [stdout]  57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | / add_decoder!{
[INFO] [stdout] 125 | | #[derive(Debug, Clone)]
[INFO] [stdout] 126 | | pub struct ExtendedRouter {
[INFO] [stdout] 127 | |    pub nexthop: ipaddress::IPAddress,            /* IP address of next hop router */
[INFO] [stdout] ...   |
[INFO] [stdout] 133 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:57:33
[INFO] [stdout]     |
[INFO] [stdout]  57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:135:1
[INFO] [stdout]     |
[INFO] [stdout] 135 | / add_decoder!{
[INFO] [stdout] 136 | | #[derive(Debug, Clone)]
[INFO] [stdout] 137 | | pub struct SampledHeader {
[INFO] [stdout] ...   |
[INFO] [stdout] 162 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:57:33
[INFO] [stdout]     |
[INFO] [stdout]  57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:164:1
[INFO] [stdout]     |
[INFO] [stdout] 164 | / add_decoder!{
[INFO] [stdout] 165 | | #[derive(Debug, Clone)]
[INFO] [stdout] 166 | | pub struct ExtendedMplsTunnel {
[INFO] [stdout] 167 | |    pub tunnel_lsp_name: String, /* Tunnel name */
[INFO] [stdout] ...   |
[INFO] [stdout] 171 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/utils.rs:57:33
[INFO] [stdout]     |
[INFO] [stdout]  57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:173:1
[INFO] [stdout]     |
[INFO] [stdout] 173 | / add_decoder!{
[INFO] [stdout] 174 | | #[derive(Debug, Clone)]
[INFO] [stdout] 175 | | pub struct ExtendedMpls {
[INFO] [stdout] 176 | |    pub nexthop: ipaddress::IPAddress,           /* Address of the next hop */
[INFO] [stdout] ...   |
[INFO] [stdout] 180 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ipaddress.rs:26:26
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let ip_version = try!(stream.be_read_u32());
[INFO] [stdout]    |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ipaddress.rs:31:23
[INFO] [stdout]    |
[INFO] [stdout] 31 |             1 => ip = try!(decode_ipv4(stream)),
[INFO] [stdout]    |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ipaddress.rs:32:23
[INFO] [stdout]    |
[INFO] [stdout] 32 |             2 => ip = try!(decode_ipv6(stream)),
[INFO] [stdout]    |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ipaddress.rs:47:16
[INFO] [stdout]    |
[INFO] [stdout] 47 |         b[i] = try!(stream.read_u8());
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ipaddress.rs:56:16
[INFO] [stdout]    |
[INFO] [stdout] 56 |         b[i] = try!(stream.be_read_u16())
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/utils.rs:57:33
[INFO] [stdout]    |
[INFO] [stdout] 57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]    |                                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/dst_as_path.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / add_decoder!{
[INFO] [stdout]  4 | | #[derive(Debug, Clone)]
[INFO] [stdout]  5 | | pub struct DstASPath {
[INFO] [stdout]  6 | |     pub ordered: u32,
[INFO] [stdout] ...  |
[INFO] [stdout]  9 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/utils.rs:57:33
[INFO] [stdout]    |
[INFO] [stdout] 57 |                   $($field_name : try!(::utils::Decodeable::read_and_decode(stream))),+
[INFO] [stdout]    |                                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/datagram.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / add_decoder!{
[INFO] [stdout]  6 | | #[derive(Debug, Clone)]
[INFO] [stdout]  7 | | pub struct Datagram {
[INFO] [stdout]  8 | |     pub sflow_version: u32,
[INFO] [stdout] ...  |
[INFO] [stdout] 15 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/community.rs:28:18
[INFO] [stdout]    |
[INFO] [stdout] 28 |             asn: try!(stream.be_read_u16()) as u32,
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/community.rs:29:18
[INFO] [stdout]    |
[INFO] [stdout] 29 |             tag: try!(stream.be_read_u16()),
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `datagram::Datagram`
[INFO] [stdout]  --> src/test.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use datagram::Datagram;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> src/test.rs:29:6
[INFO] [stdout]    |
[INFO] [stdout] 29 |     };
[INFO] [stdout]    |      ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:23:49
[INFO] [stdout]    |
[INFO] [stdout] 23 |             Error::Io(ref err) => error::Error::description(err),
[INFO] [stdout]    |                                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:24:56
[INFO] [stdout]    |
[INFO] [stdout] 24 |             Error::ByteOrder(ref err) => error::Error::description(err),
[INFO] [stdout]    |                                                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:25:51
[INFO] [stdout]    |
[INFO] [stdout] 25 |             Error::Utf8(ref err) => error::Error::description(err),
[INFO] [stdout]    |                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:55:45
[INFO] [stdout]    |
[INFO] [stdout] 55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/dst_as_path.rs:3:1
[INFO] [stdout]    |
[INFO] [stdout]  3 | / add_decoder!{
[INFO] [stdout]  4 | | #[derive(Debug, Clone)]
[INFO] [stdout]  5 | | pub struct DstASPath {
[INFO] [stdout]  6 | |     pub ordered: u32,
[INFO] [stdout] ...  |
[INFO] [stdout]  9 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:67:29
[INFO] [stdout]    |
[INFO] [stdout] 67 |     fn read_and_decode(&mut types::ReadSeeker) -> Result<Self, ::error::Error> where Self: Sized;
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 67 |     fn read_and_decode(&mut dyn types::ReadSeeker) -> Result<Self, ::error::Error> where Self: Sized;
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:55:45
[INFO] [stdout]     |
[INFO] [stdout]  55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:135:1
[INFO] [stdout]     |
[INFO] [stdout] 135 | / add_decoder!{
[INFO] [stdout] 136 | | #[derive(Debug, Clone)]
[INFO] [stdout] 137 | | pub struct SampledHeader {
[INFO] [stdout] ...   |
[INFO] [stdout] 162 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:72:37
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:81:37
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<u32, error::Error> {
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<u32, error::Error> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:90:37
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:99:37
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:108:37
[INFO] [stdout]     |
[INFO] [stdout] 108 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<i32, error::Error> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 108 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<i32, error::Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:117:37
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:125:37
[INFO] [stdout]     |
[INFO] [stdout] 125 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 125 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<Self, error::Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:152:37
[INFO] [stdout]     |
[INFO] [stdout] 152 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<Vec<T>, error::Error> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 152 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<Vec<T>, error::Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/flow_records.rs:25:37
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn read_and_decode(stream: &mut ReadSeeker) -> Result<FlowRecord, error::Error> {
[INFO] [stdout]    |                                     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn read_and_decode(stream: &mut dyn ReadSeeker) -> Result<FlowRecord, error::Error> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:55:45
[INFO] [stdout]     |
[INFO] [stdout]  55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:164:1
[INFO] [stdout]     |
[INFO] [stdout] 164 | / add_decoder!{
[INFO] [stdout] 165 | | #[derive(Debug, Clone)]
[INFO] [stdout] 166 | | pub struct ExtendedMplsTunnel {
[INFO] [stdout] 167 | |    pub tunnel_lsp_name: String, /* Tunnel name */
[INFO] [stdout] ...   |
[INFO] [stdout] 171 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:55:45
[INFO] [stdout]     |
[INFO] [stdout]  55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:173:1
[INFO] [stdout]     |
[INFO] [stdout] 173 | / add_decoder!{
[INFO] [stdout] 174 | | #[derive(Debug, Clone)]
[INFO] [stdout] 175 | | pub struct ExtendedMpls {
[INFO] [stdout] 176 | |    pub nexthop: ipaddress::IPAddress,           /* Address of the next hop */
[INFO] [stdout] ...   |
[INFO] [stdout] 180 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:30:32
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:55:45
[INFO] [stdout]     |
[INFO] [stdout]  55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:114:1
[INFO] [stdout]     |
[INFO] [stdout] 114 | / add_decoder!{
[INFO] [stdout] 115 | | #[derive(Debug, Clone)]
[INFO] [stdout] 116 | | pub struct ExtendedSwitch {
[INFO] [stdout] 117 | |    pub src_vlan: u32,     /* The 802.1Q VLAN id of incoming frame */
[INFO] [stdout] ...   |
[INFO] [stdout] 122 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:55:45
[INFO] [stdout]    |
[INFO] [stdout] 55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/datagram.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / add_decoder!{
[INFO] [stdout]  6 | | #[derive(Debug, Clone)]
[INFO] [stdout]  7 | | pub struct Datagram {
[INFO] [stdout]  8 | |     pub sflow_version: u32,
[INFO] [stdout] ...  |
[INFO] [stdout] 15 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:55:45
[INFO] [stdout]     |
[INFO] [stdout]  55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | / add_decoder!{
[INFO] [stdout] 125 | | #[derive(Debug, Clone)]
[INFO] [stdout] 126 | | pub struct ExtendedRouter {
[INFO] [stdout] 127 | |    pub nexthop: ipaddress::IPAddress,            /* IP address of next hop router */
[INFO] [stdout] ...   |
[INFO] [stdout] 133 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:55:45
[INFO] [stdout]    |
[INFO] [stdout] 55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/flow_records.rs:76:1
[INFO] [stdout]    |
[INFO] [stdout] 76 | / add_decoder!{
[INFO] [stdout] 77 | | #[derive(Debug, Clone, Default)]
[INFO] [stdout] 78 | | pub struct ExtendedGateway {
[INFO] [stdout] 79 | |     pub next_hop: ipaddress::IPAddress,
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ipaddress.rs:44:29
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn decode_ipv4(stream: &mut ReadSeeker) -> Result<IPAddress, Error> {
[INFO] [stdout]    |                             ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn decode_ipv4(stream: &mut dyn ReadSeeker) -> Result<IPAddress, Error> {
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ipaddress.rs:53:29
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn decode_ipv6(stream: &mut ReadSeeker) -> Result<IPAddress, Error> {
[INFO] [stdout]    |                             ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn decode_ipv6(stream: &mut dyn ReadSeeker) -> Result<IPAddress, Error> {
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:55:45
[INFO] [stdout]    |
[INFO] [stdout] 55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/sample.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / add_decoder!{
[INFO] [stdout] 17 | | #[derive(Debug, Clone, Default)]
[INFO] [stdout] 18 | | pub struct FlowSample {
[INFO] [stdout] ...  |
[INFO] [stdout] 49 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/sample.rs:52:37
[INFO] [stdout]    |
[INFO] [stdout] 52 |     fn read_and_decode(stream: &mut ReadSeeker) -> Result<Vec<SampleRecord>> {
[INFO] [stdout]    |                                     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 52 |     fn read_and_decode(stream: &mut dyn ReadSeeker) -> Result<Vec<SampleRecord>> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:55:45
[INFO] [stdout]    |
[INFO] [stdout] 55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/flow_records.rs:89:1
[INFO] [stdout]    |
[INFO] [stdout] 89 | / add_decoder!{
[INFO] [stdout] 90 | | #[derive(Debug, Clone)]
[INFO] [stdout] 91 | | pub struct ExtendedUrl {
[INFO] [stdout] 92 | |    pub directoin: u32,   /* Direction of connection */
[INFO] [stdout] ...  |
[INFO] [stdout] 96 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/ipaddress.rs:25:37
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn read_and_decode(stream: &mut ReadSeeker) -> Result<IPAddress, Error> {
[INFO] [stdout]    |                                     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn read_and_decode(stream: &mut dyn ReadSeeker) -> Result<IPAddress, Error> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/utils.rs:55:45
[INFO] [stdout]     |
[INFO] [stdout]  55 |               fn read_and_decode(stream: &mut ::types::ReadSeeker) -> ::std::result::Result<$name, ::error::Error> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/flow_records.rs:98:1
[INFO] [stdout]     |
[INFO] [stdout]  98 | / add_decoder!{
[INFO] [stdout]  99 | | #[derive(Debug, Clone)]
[INFO] [stdout] 100 | | pub struct SampledIpv4 {
[INFO] [stdout] 101 | |    pub length: u32,     /* The length of the IP packet excluding
[INFO] [stdout] ...   |
[INFO] [stdout] 112 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: this warning originates in the macro `add_decoder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/community.rs:26:37
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn read_and_decode(stream: &mut types::ReadSeeker) -> Result<Community, error::Error> {
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn read_and_decode(stream: &mut dyn types::ReadSeeker) -> Result<Community, error::Error> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[macro_use]` attribute cannot be used on macro defs
[INFO] [stdout]   --> src/utils.rs:42:1
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[macro_use(try)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[macro_use]` can be applied to modules, extern crates, and crates
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/error.rs:32:39
[INFO] [stdout]    |
[INFO] [stdout] 32 |             Error::Io(ref err) => err.cause(),
[INFO] [stdout]    |                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/error.rs:33:46
[INFO] [stdout]    |
[INFO] [stdout] 33 |             Error::ByteOrder(ref err) => err.cause(),
[INFO] [stdout]    |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/error.rs:35:41
[INFO] [stdout]    |
[INFO] [stdout] 35 |             Error::Utf8(ref err) => err.cause(),
[INFO] [stdout]    |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ByteOrder`
[INFO] [stdout]  --> src/utils.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use byteorder::{self, ByteOrder, BigEndian, ReadBytesExt};
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Read`
[INFO] [stdout]  --> src/utils.rs:5:31
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::{self, SeekFrom, Read};
[INFO] [stdout]   |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/test.rs:36:54
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let mut data = Cursor::new(case.raw_test_data.clone().from_hex().unwrap());
[INFO] [stdout]    |                                                      ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.80s
[INFO] running `Command { std: "docker" "inspect" "5bbda488f934b36254dda44f26991aaeb85c77c2e86adf3912c831372c0ebd5f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5bbda488f934b36254dda44f26991aaeb85c77c2e86adf3912c831372c0ebd5f", kill_on_drop: false }`
[INFO] [stdout] 5bbda488f934b36254dda44f26991aaeb85c77c2e86adf3912c831372c0ebd5f
