[INFO] fetching crate nero 0.0.1...
[INFO] checking nero-0.0.1 against master#c2f2db79ca3024f68d22b45aa22b570775c2c4ad for pr-124157
[INFO] extracting crate nero 0.0.1 into /workspace/builds/worker-2-tc1/source
[INFO] validating manifest of crates.io crate nero 0.0.1 on toolchain c2f2db79ca3024f68d22b45aa22b570775c2c4ad
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate nero 0.0.1
[INFO] finished tweaking crates.io crate nero 0.0.1
[INFO] tweaked toml for crates.io crate nero 0.0.1 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 69 packages to latest compatible versions
[INFO] [stderr]       Adding base64 v0.5.2 (latest: v0.22.1)
[INFO] [stderr]       Adding bitflags v0.9.1 (latest: v2.5.0)
[INFO] [stderr]       Adding bitflags v1.3.2 (latest: v2.5.0)
[INFO] [stderr]       Adding bytes v0.4.12 (latest: v1.6.0)
[INFO] [stderr]       Adding cfg-if v0.1.10 (latest: v1.0.0)
[INFO] [stderr]       Adding cloudabi v0.0.3 (latest: v0.1.0)
[INFO] [stderr]       Adding crossbeam-deque v0.7.4 (latest: v0.8.5)
[INFO] [stderr]       Adding crossbeam-epoch v0.8.2 (latest: v0.9.18)
[INFO] [stderr]       Adding crossbeam-queue v0.2.3 (latest: v0.3.11)
[INFO] [stderr]       Adding crossbeam-utils v0.7.2 (latest: v0.8.19)
[INFO] [stderr]       Adding futures v0.1.31 (latest: v0.3.30)
[INFO] [stderr]       Adding libloading v0.4.3 (latest: v0.8.3)
[INFO] [stderr]       Adding lock_api v0.3.4 (latest: v0.4.12)
[INFO] [stderr]       Adding memoffset v0.5.6 (latest: v0.9.1)
[INFO] [stderr]       Adding mio v0.6.23 (latest: v0.8.11)
[INFO] [stderr]       Adding miow v0.2.2 (latest: v0.6.0)
[INFO] [stderr]       Adding parking_lot v0.9.0 (latest: v0.12.2)
[INFO] [stderr]       Adding parking_lot_core v0.6.3 (latest: v0.9.10)
[INFO] [stderr]       Adding redox_syscall v0.1.57 (latest: v0.5.1)
[INFO] [stderr]       Adding rustc_version v0.2.3 (latest: v0.4.0)
[INFO] [stderr]       Adding scoped-tls v0.1.2 (latest: v1.0.1)
[INFO] [stderr]       Adding semver v0.9.0 (latest: v1.0.22)
[INFO] [stderr]       Adding semver-parser v0.7.0 (latest: v0.10.2)
[INFO] [stderr]       Adding smallvec v0.6.14 (latest: v1.13.2)
[INFO] [stderr]       Adding tokio v0.1.22 (latest: v1.37.0)
[INFO] [stderr]       Adding toml v0.4.10 (latest: v0.8.12)
[INFO] [stderr]       Adding winapi v0.2.8 (latest: v0.3.9)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded libloading v0.4.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 012341248fb1792ca859b9501c6858434de8df6767469d5410375e22fc921ef1
[INFO] running `Command { std: "docker" "start" "-a" "012341248fb1792ca859b9501c6858434de8df6767469d5410375e22fc921ef1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "012341248fb1792ca859b9501c6858434de8df6767469d5410375e22fc921ef1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "012341248fb1792ca859b9501c6858434de8df6767469d5410375e22fc921ef1", kill_on_drop: false }`
[INFO] [stdout] 012341248fb1792ca859b9501c6858434de8df6767469d5410375e22fc921ef1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 965a2ac1e57a8a5c025989c5f7ab65f3c9a92a1919ab552403546b12bdad33c1
[INFO] running `Command { std: "docker" "start" "-a" "965a2ac1e57a8a5c025989c5f7ab65f3c9a92a1919ab552403546b12bdad33c1", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.2.0
[INFO] [stderr]     Checking cfg-if v0.1.10
[INFO] [stderr]    Compiling libc v0.2.154
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]     Checking futures v0.1.31
[INFO] [stderr]     Checking log v0.4.21
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking fnv v1.0.7
[INFO] [stderr]    Compiling proc-macro2 v1.0.81
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling serde v1.0.200
[INFO] [stderr]    Compiling libloading v0.4.3
[INFO] [stderr]     Checking scoped-tls v0.1.2
[INFO] [stderr]     Checking bitflags v0.9.1
[INFO] [stderr]     Checking lock_api v0.3.4
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]     Checking base64 v0.5.2
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling memoffset v0.5.6
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]     Checking smallvec v0.6.14
[INFO] [stderr]    Compiling parking_lot_core v0.6.3
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling syn v2.0.60
[INFO] [stderr]     Checking crossbeam-queue v0.2.3
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking net2 v0.2.39
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking tokio-executor v0.1.10
[INFO] [stderr]     Checking tokio-sync v0.1.8
[INFO] [stderr]     Checking bytes v0.4.12
[INFO] [stderr]     Checking crossbeam-deque v0.7.4
[INFO] [stderr]     Checking tokio-current-thread v0.1.7
[INFO] [stderr]     Checking tokio-timer v0.2.13
[INFO] [stderr]     Checking mio v0.6.23
[INFO] [stderr]     Checking tokio-threadpool v0.1.18
[INFO] [stderr]     Checking tokio-io v0.1.13
[INFO] [stderr]     Checking tokio-codec v0.1.2
[INFO] [stderr]     Checking tokio-fs v0.1.7
[INFO] [stderr]     Checking tokio-reactor v0.1.12
[INFO] [stderr]     Checking mio-uds v0.6.8
[INFO] [stderr]     Checking tokio-tcp v0.1.4
[INFO] [stderr]     Checking tokio-udp v0.1.6
[INFO] [stderr]     Checking tokio-uds v0.2.7
[INFO] [stderr]     Checking tokio v0.1.22
[INFO] [stderr]     Checking tokio-core v0.1.18
[INFO] [stderr]    Compiling serde_derive v1.0.200
[INFO] [stderr]     Checking toml v0.4.10
[INFO] [stderr]     Checking nero v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/p10.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | / bitflags! {
[INFO] [stdout] 76 | |     pub struct P10UserModes: u64 {
[INFO] [stdout] 77 | |         const UMODE_OPER         = 1 << 0;
[INFO] [stdout] 78 | |         const UMODE_INVISIBLE    = 1 << 1;
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | |     }
[INFO] [stdout] 88 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | / bitflags! {
[INFO] [stdout] 76 | |     pub struct P10UserModes: u64 {
[INFO] [stdout] 77 | |         const UMODE_OPER         = 1 << 0;
[INFO] [stdout] 78 | |         const UMODE_INVISIBLE    = 1 << 1;
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | |     }
[INFO] [stdout] 88 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | / bitflags! {
[INFO] [stdout] 76 | |     pub struct P10UserModes: u64 {
[INFO] [stdout] 77 | |         const UMODE_OPER         = 1 << 0;
[INFO] [stdout] 78 | |         const UMODE_INVISIBLE    = 1 << 1;
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | |     }
[INFO] [stdout] 88 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:90:1
[INFO] [stdout]     |
[INFO] [stdout] 90  | / bitflags! {
[INFO] [stdout] 91  | |     pub struct P10ChannelModes: u64 {
[INFO] [stdout] 92  | |         const CMODE_PRIVATE     = 1 << 0;
[INFO] [stdout] 93  | |         const CMODE_SECRET      = 1 << 1;
[INFO] [stdout] ...   |
[INFO] [stdout] 108 | |     }
[INFO] [stdout] 109 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:90:1
[INFO] [stdout]     |
[INFO] [stdout] 90  | / bitflags! {
[INFO] [stdout] 91  | |     pub struct P10ChannelModes: u64 {
[INFO] [stdout] 92  | |         const CMODE_PRIVATE     = 1 << 0;
[INFO] [stdout] 93  | |         const CMODE_SECRET      = 1 << 1;
[INFO] [stdout] ...   |
[INFO] [stdout] 108 | |     }
[INFO] [stdout] 109 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:90:1
[INFO] [stdout]     |
[INFO] [stdout] 90  | / bitflags! {
[INFO] [stdout] 91  | |     pub struct P10ChannelModes: u64 {
[INFO] [stdout] 92  | |         const CMODE_PRIVATE     = 1 << 0;
[INFO] [stdout] 93  | |         const CMODE_SECRET      = 1 << 1;
[INFO] [stdout] ...   |
[INFO] [stdout] 108 | |     }
[INFO] [stdout] 109 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / bitflags! {
[INFO] [stdout] 112 | |     pub struct P10MemberModes: u64 {
[INFO] [stdout] 113 | |         const MMODE_CHANOP      = 1 << 0;
[INFO] [stdout] 114 | |         const MMODE_VOICE       = 1 << 1;
[INFO] [stdout] 115 | |         const MMODE_HIDDEN      = 1 << 2;
[INFO] [stdout] 116 | |     }
[INFO] [stdout] 117 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / bitflags! {
[INFO] [stdout] 112 | |     pub struct P10MemberModes: u64 {
[INFO] [stdout] 113 | |         const MMODE_CHANOP      = 1 << 0;
[INFO] [stdout] 114 | |         const MMODE_VOICE       = 1 << 1;
[INFO] [stdout] 115 | |         const MMODE_HIDDEN      = 1 << 2;
[INFO] [stdout] 116 | |     }
[INFO] [stdout] 117 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / bitflags! {
[INFO] [stdout] 112 | |     pub struct P10MemberModes: u64 {
[INFO] [stdout] 113 | |         const MMODE_CHANOP      = 1 << 0;
[INFO] [stdout] 114 | |         const MMODE_VOICE       = 1 << 1;
[INFO] [stdout] 115 | |         const MMODE_HIDDEN      = 1 << 2;
[INFO] [stdout] 116 | |     }
[INFO] [stdout] 117 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/p10.rs:467:30
[INFO] [stdout]     |
[INFO] [stdout] 467 |                         b'0' ... b'9' => oplevel = 999, // TODO: Parse this
[INFO] [stdout]     |                              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/p10.rs:503:22
[INFO] [stdout]     |
[INFO] [stdout] 503 |                 b'0' ... b'9' => oplevel = 999, // TODO: Parse this
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/p10.rs:802:38
[INFO] [stdout]     |
[INFO] [stdout] 802 | ...                   b'0' ... b'9' => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/p10.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | / bitflags! {
[INFO] [stdout] 76 | |     pub struct P10UserModes: u64 {
[INFO] [stdout] 77 | |         const UMODE_OPER         = 1 << 0;
[INFO] [stdout] 78 | |         const UMODE_INVISIBLE    = 1 << 1;
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | |     }
[INFO] [stdout] 88 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | / bitflags! {
[INFO] [stdout] 76 | |     pub struct P10UserModes: u64 {
[INFO] [stdout] 77 | |         const UMODE_OPER         = 1 << 0;
[INFO] [stdout] 78 | |         const UMODE_INVISIBLE    = 1 << 1;
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | |     }
[INFO] [stdout] 88 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | / bitflags! {
[INFO] [stdout] 76 | |     pub struct P10UserModes: u64 {
[INFO] [stdout] 77 | |         const UMODE_OPER         = 1 << 0;
[INFO] [stdout] 78 | |         const UMODE_INVISIBLE    = 1 << 1;
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | |     }
[INFO] [stdout] 88 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:90:1
[INFO] [stdout]     |
[INFO] [stdout] 90  | / bitflags! {
[INFO] [stdout] 91  | |     pub struct P10ChannelModes: u64 {
[INFO] [stdout] 92  | |         const CMODE_PRIVATE     = 1 << 0;
[INFO] [stdout] 93  | |         const CMODE_SECRET      = 1 << 1;
[INFO] [stdout] ...   |
[INFO] [stdout] 108 | |     }
[INFO] [stdout] 109 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:90:1
[INFO] [stdout]     |
[INFO] [stdout] 90  | / bitflags! {
[INFO] [stdout] 91  | |     pub struct P10ChannelModes: u64 {
[INFO] [stdout] 92  | |         const CMODE_PRIVATE     = 1 << 0;
[INFO] [stdout] 93  | |         const CMODE_SECRET      = 1 << 1;
[INFO] [stdout] ...   |
[INFO] [stdout] 108 | |     }
[INFO] [stdout] 109 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:90:1
[INFO] [stdout]     |
[INFO] [stdout] 90  | / bitflags! {
[INFO] [stdout] 91  | |     pub struct P10ChannelModes: u64 {
[INFO] [stdout] 92  | |         const CMODE_PRIVATE     = 1 << 0;
[INFO] [stdout] 93  | |         const CMODE_SECRET      = 1 << 1;
[INFO] [stdout] ...   |
[INFO] [stdout] 108 | |     }
[INFO] [stdout] 109 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / bitflags! {
[INFO] [stdout] 112 | |     pub struct P10MemberModes: u64 {
[INFO] [stdout] 113 | |         const MMODE_CHANOP      = 1 << 0;
[INFO] [stdout] 114 | |         const MMODE_VOICE       = 1 << 1;
[INFO] [stdout] 115 | |         const MMODE_HIDDEN      = 1 << 2;
[INFO] [stdout] 116 | |     }
[INFO] [stdout] 117 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / bitflags! {
[INFO] [stdout] 112 | |     pub struct P10MemberModes: u64 {
[INFO] [stdout] 113 | |         const MMODE_CHANOP      = 1 << 0;
[INFO] [stdout] 114 | |         const MMODE_VOICE       = 1 << 1;
[INFO] [stdout] 115 | |         const MMODE_HIDDEN      = 1 << 2;
[INFO] [stdout] 116 | |     }
[INFO] [stdout] 117 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / bitflags! {
[INFO] [stdout] 112 | |     pub struct P10MemberModes: u64 {
[INFO] [stdout] 113 | |         const MMODE_CHANOP      = 1 << 0;
[INFO] [stdout] 114 | |         const MMODE_VOICE       = 1 << 1;
[INFO] [stdout] 115 | |         const MMODE_HIDDEN      = 1 << 2;
[INFO] [stdout] 116 | |     }
[INFO] [stdout] 117 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/p10.rs:467:30
[INFO] [stdout]     |
[INFO] [stdout] 467 |                         b'0' ... b'9' => oplevel = 999, // TODO: Parse this
[INFO] [stdout]     |                              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/p10.rs:503:22
[INFO] [stdout]     |
[INFO] [stdout] 503 |                 b'0' ... b'9' => oplevel = 999, // TODO: Parse this
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/p10.rs:802:38
[INFO] [stdout]     |
[INFO] [stdout] 802 | ...                   b'0' ... b'9' => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `futures::BoxFuture`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]  --> src/net.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use futures::{BoxFuture, Future};
[INFO] [stdout]   |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `futures::BoxFuture`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]   --> src/net.rs:70:33
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub fn write_lines(self) -> BoxFuture<Self, io::Error> {
[INFO] [stdout]    |                                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead
[INFO] [stdout]    --> src/p10.rs:885:21
[INFO] [stdout]     |
[INFO] [stdout] 885 |     use std::ascii::AsciiExt;
[INFO] [stdout]     |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/plugin.rs:5:25
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type HookFunc = Box<FnMut(&mut Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>>;
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type HookFunc = Box<dyn FnMut(&mut Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>>;
[INFO] [stdout]   |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/plugin.rs:5:36
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type HookFunc = Box<FnMut(&mut Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>>;
[INFO] [stdout]   |                                    ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type HookFunc = Box<FnMut(&mut dyn Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>>;
[INFO] [stdout]   |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plugin.rs:31:28
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub plugin_ptr: *const Plugin,
[INFO] [stdout]    |                            ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub plugin_ptr: *const dyn Plugin,
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/plugin_handler.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 |     plugin: Box<Plugin>
[INFO] [stdout]   |                 ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 9 |     plugin: Box<dyn Plugin>
[INFO] [stdout]   |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/net.rs:107:49
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub fn boot<P: Protocol>(handle: Handle) -> Box<Future<Item=(), Error=io::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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub fn boot<P: Protocol>(handle: Handle) -> Box<dyn Future<Item=(), Error=io::Error>> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plugin.rs:45:6
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl Plugin {
[INFO] [stdout]    |      ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl dyn Plugin {
[INFO] [stdout]    |      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `futures::BoxFuture`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]  --> src/net.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use futures::{BoxFuture, Future};
[INFO] [stdout]   |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `futures::BoxFuture`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]   --> src/net.rs:70:33
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub fn write_lines(self) -> BoxFuture<Self, io::Error> {
[INFO] [stdout]    |                                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead
[INFO] [stdout]    --> src/p10.rs:885:21
[INFO] [stdout]     |
[INFO] [stdout] 885 |     use std::ascii::AsciiExt;
[INFO] [stdout]     |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/config.rs:30:45
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn get_protocol() -> Result<String, Box<::std::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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn get_protocol() -> Result<String, Box<dyn (::std::error::Error)>> {
[INFO] [stdout]    |                                             +++++                   +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/plugin.rs:5:25
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type HookFunc = Box<FnMut(&mut Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>>;
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type HookFunc = Box<dyn FnMut(&mut Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>>;
[INFO] [stdout]   |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/plugin.rs:5:36
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type HookFunc = Box<FnMut(&mut Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>>;
[INFO] [stdout]   |                                    ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type HookFunc = Box<FnMut(&mut dyn Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>>;
[INFO] [stdout]   |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plugin.rs:31:28
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub plugin_ptr: *const Plugin,
[INFO] [stdout]    |                            ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub plugin_ptr: *const dyn Plugin,
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/plugin_handler.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 |     plugin: Box<Plugin>
[INFO] [stdout]   |                 ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 9 |     plugin: Box<dyn Plugin>
[INFO] [stdout]   |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/net.rs:107:49
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub fn boot<P: Protocol>(handle: Handle) -> Box<Future<Item=(), Error=io::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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub fn boot<P: Protocol>(handle: Handle) -> Box<dyn Future<Item=(), Error=io::Error>> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plugin.rs:45:6
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl Plugin {
[INFO] [stdout]    |      ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl dyn Plugin {
[INFO] [stdout]    |      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/config.rs:30:45
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn get_protocol() -> Result<String, Box<::std::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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn get_protocol() -> Result<String, Box<dyn (::std::error::Error)>> {
[INFO] [stdout]    |                                             +++++                   +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/plugin.rs:3:40
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub type LoadFunc = fn() -> Result<Box<Plugin>, ()>;
[INFO] [stdout]   |                                        ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub type LoadFunc = fn() -> Result<Box<dyn Plugin>, ()>;
[INFO] [stdout]   |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plugin_handler.rs:42:19
[INFO] [stdout]    |
[INFO] [stdout] 42 |     type Target = Plugin;
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 42 |     type Target = dyn Plugin;
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/plugin.rs:3:40
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub type LoadFunc = fn() -> Result<Box<Plugin>, ()>;
[INFO] [stdout]   |                                        ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub type LoadFunc = fn() -> Result<Box<dyn Plugin>, ()>;
[INFO] [stdout]   |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plugin_handler.rs:42:19
[INFO] [stdout]    |
[INFO] [stdout] 42 |     type Target = Plugin;
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 42 |     type Target = dyn Plugin;
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `futures::Future::boxed`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]   --> src/net.rs:83:24
[INFO] [stdout]    |
[INFO] [stdout] 83 |                     }).boxed()
[INFO] [stdout]    |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `futures::Future::boxed`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]   --> src/net.rs:87:87
[INFO] [stdout]    |
[INFO] [stdout] 87 |                     ok(Loop::Break(WriteState { messages: messages.into(), writer })).boxed()
[INFO] [stdout]    |                                                                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `futures::Future::boxed`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]   --> src/net.rs:90:12
[INFO] [stdout]    |
[INFO] [stdout] 90 |         }).boxed()
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `futures::Future::boxed`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]   --> src/net.rs:83:24
[INFO] [stdout]    |
[INFO] [stdout] 83 |                     }).boxed()
[INFO] [stdout]    |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `futures::Future::boxed`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]   --> src/net.rs:87:87
[INFO] [stdout]    |
[INFO] [stdout] 87 |                     ok(Loop::Break(WriteState { messages: messages.into(), writer })).boxed()
[INFO] [stdout]    |                                                                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `futures::Future::boxed`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]   --> src/net.rs:90:12
[INFO] [stdout]    |
[INFO] [stdout] 90 |         }).boxed()
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plugin.rs:49:42
[INFO] [stdout]    |
[INFO] [stdout] 49 |                 Some(&mut *(self as *mut Plugin as *mut T))
[INFO] [stdout]    |                                          ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 49 |                 Some(&mut *(self as *mut dyn Plugin as *mut T))
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ascii::AsciiExt`
[INFO] [stdout]    --> src/p10.rs:885:9
[INFO] [stdout]     |
[INFO] [stdout] 885 |     use std::ascii::AsciiExt;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/core_data.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |         for mut event in &mut self.events {
[INFO] [stdout]    |             ----^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/core_data.rs:85:21
[INFO] [stdout]    |
[INFO] [stdout] 85 |                 let mut plugin = self.plugins.iter_mut().filter(|x| ptr::eq(&***x, event.plugin_ptr)).next().unwrap();
[INFO] [stdout]    |                     ----^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plugin.rs:49:42
[INFO] [stdout]    |
[INFO] [stdout] 49 |                 Some(&mut *(self as *mut Plugin as *mut T))
[INFO] [stdout]    |                                          ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 49 |                 Some(&mut *(self as *mut dyn Plugin as *mut T))
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ascii::AsciiExt`
[INFO] [stdout]    --> src/p10.rs:885:9
[INFO] [stdout]     |
[INFO] [stdout] 885 |     use std::ascii::AsciiExt;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/core_data.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |         for mut event in &mut self.events {
[INFO] [stdout]    |             ----^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/core_data.rs:85:21
[INFO] [stdout]    |
[INFO] [stdout] 85 |                 let mut plugin = self.plugins.iter_mut().filter(|x| ptr::eq(&***x, event.plugin_ptr)).next().unwrap();
[INFO] [stdout]    |                     ----^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0382]: assign to part of moved value: `server`
[INFO] [stdout]    --> src/p10.rs:321:33
[INFO] [stdout]     |
[INFO] [stdout] 278 |     let mut server: Server<P10> = Server::<P10>::new(&argv[1], &argv[8]);
[INFO] [stdout]     |         ---------- move occurs because `server` has type `Server<P10>`, which does not implement the `Copy` trait
[INFO] [stdout] ...
[INFO] [stdout] 314 |     let shared_server = Rc::new(RefCell::new(server));
[INFO] [stdout]     |                                              ------ value moved here
[INFO] [stdout] ...
[INFO] [stdout] 321 |             Some(arc_server) => server.uplink = Some(arc_server.clone()),
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^ value partially assigned here after move
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/p10.rs:888:9
[INFO] [stdout]     |
[INFO] [stdout] 888 |     for mut byte in &mut buf {
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error; 32 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0382`.
[INFO] [stdout] 
[INFO] [stdout] error[E0382]: assign to part of moved value: `server`
[INFO] [stdout]    --> src/p10.rs:321:33
[INFO] [stdout]     |
[INFO] [stdout] 278 |     let mut server: Server<P10> = Server::<P10>::new(&argv[1], &argv[8]);
[INFO] [stdout]     |         ---------- move occurs because `server` has type `Server<P10>`, which does not implement the `Copy` trait
[INFO] [stdout] ...
[INFO] [stdout] 314 |     let shared_server = Rc::new(RefCell::new(server));
[INFO] [stdout]     |                                              ------ value moved here
[INFO] [stdout] ...
[INFO] [stdout] 321 |             Some(arc_server) => server.uplink = Some(arc_server.clone()),
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^ value partially assigned here after move
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `nero` (lib) due to 2 previous errors; 32 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/p10.rs:888:9
[INFO] [stdout]     |
[INFO] [stdout] 888 |     for mut byte in &mut buf {
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error; 32 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0382`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `nero` (lib test) due to 2 previous errors; 32 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "965a2ac1e57a8a5c025989c5f7ab65f3c9a92a1919ab552403546b12bdad33c1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "965a2ac1e57a8a5c025989c5f7ab65f3c9a92a1919ab552403546b12bdad33c1", kill_on_drop: false }`
[INFO] [stdout] 965a2ac1e57a8a5c025989c5f7ab65f3c9a92a1919ab552403546b12bdad33c1
[INFO] checking nero-0.0.1 against try#9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88 for pr-124157
[INFO] extracting crate nero 0.0.1 into /workspace/builds/worker-2-tc2/source
[INFO] validating manifest of crates.io crate nero 0.0.1 on toolchain 9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate nero 0.0.1
[INFO] finished tweaking crates.io crate nero 0.0.1
[INFO] tweaked toml for crates.io crate nero 0.0.1 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 69 packages to latest compatible versions
[INFO] [stderr]       Adding base64 v0.5.2 (latest: v0.22.1)
[INFO] [stderr]       Adding bitflags v0.9.1 (latest: v2.5.0)
[INFO] [stderr]       Adding bitflags v1.3.2 (latest: v2.5.0)
[INFO] [stderr]       Adding bytes v0.4.12 (latest: v1.6.0)
[INFO] [stderr]       Adding cfg-if v0.1.10 (latest: v1.0.0)
[INFO] [stderr]       Adding cloudabi v0.0.3 (latest: v0.1.0)
[INFO] [stderr]       Adding crossbeam-deque v0.7.4 (latest: v0.8.5)
[INFO] [stderr]       Adding crossbeam-epoch v0.8.2 (latest: v0.9.18)
[INFO] [stderr]       Adding crossbeam-queue v0.2.3 (latest: v0.3.11)
[INFO] [stderr]       Adding crossbeam-utils v0.7.2 (latest: v0.8.19)
[INFO] [stderr]       Adding futures v0.1.31 (latest: v0.3.30)
[INFO] [stderr]       Adding libloading v0.4.3 (latest: v0.8.3)
[INFO] [stderr]       Adding lock_api v0.3.4 (latest: v0.4.12)
[INFO] [stderr]       Adding memoffset v0.5.6 (latest: v0.9.1)
[INFO] [stderr]       Adding mio v0.6.23 (latest: v0.8.11)
[INFO] [stderr]       Adding miow v0.2.2 (latest: v0.6.0)
[INFO] [stderr]       Adding parking_lot v0.9.0 (latest: v0.12.2)
[INFO] [stderr]       Adding parking_lot_core v0.6.3 (latest: v0.9.10)
[INFO] [stderr]       Adding redox_syscall v0.1.57 (latest: v0.5.1)
[INFO] [stderr]       Adding rustc_version v0.2.3 (latest: v0.4.0)
[INFO] [stderr]       Adding scoped-tls v0.1.2 (latest: v1.0.1)
[INFO] [stderr]       Adding semver v0.9.0 (latest: v1.0.22)
[INFO] [stderr]       Adding semver-parser v0.7.0 (latest: v0.10.2)
[INFO] [stderr]       Adding smallvec v0.6.14 (latest: v1.13.2)
[INFO] [stderr]       Adding tokio v0.1.22 (latest: v1.37.0)
[INFO] [stderr]       Adding toml v0.4.10 (latest: v0.8.12)
[INFO] [stderr]       Adding winapi v0.2.8 (latest: v0.3.9)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d2ec7703901b8ef9b532aa697b4a7d281a5ad2a10207c6bb0ece257fc16d6df0
[INFO] running `Command { std: "docker" "start" "-a" "d2ec7703901b8ef9b532aa697b4a7d281a5ad2a10207c6bb0ece257fc16d6df0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d2ec7703901b8ef9b532aa697b4a7d281a5ad2a10207c6bb0ece257fc16d6df0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d2ec7703901b8ef9b532aa697b4a7d281a5ad2a10207c6bb0ece257fc16d6df0", kill_on_drop: false }`
[INFO] [stdout] d2ec7703901b8ef9b532aa697b4a7d281a5ad2a10207c6bb0ece257fc16d6df0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c1e3479f3740ecfe766877a29f43c2a70ce63d425b9a5cbc8b30ef753a8a0f62
[INFO] running `Command { std: "docker" "start" "-a" "c1e3479f3740ecfe766877a29f43c2a70ce63d425b9a5cbc8b30ef753a8a0f62", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.2.0
[INFO] [stderr]    Compiling libc v0.2.154
[INFO] [stderr]     Checking cfg-if v0.1.10
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]     Checking futures v0.1.31
[INFO] [stderr]     Checking log v0.4.21
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking fnv v1.0.7
[INFO] [stderr]    Compiling proc-macro2 v1.0.81
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling serde v1.0.200
[INFO] [stderr]    Compiling libloading v0.4.3
[INFO] [stderr]     Checking scoped-tls v0.1.2
[INFO] [stderr]     Checking bitflags v0.9.1
[INFO] [stderr]     Checking lock_api v0.3.4
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling memoffset v0.5.6
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]     Checking base64 v0.5.2
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]     Checking smallvec v0.6.14
[INFO] [stderr]    Compiling parking_lot_core v0.6.3
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking net2 v0.2.39
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking crossbeam-queue v0.2.3
[INFO] [stderr]    Compiling syn v2.0.60
[INFO] [stderr]     Checking bytes v0.4.12
[INFO] [stderr]     Checking tokio-executor v0.1.10
[INFO] [stderr]     Checking tokio-sync v0.1.8
[INFO] [stderr]     Checking tokio-timer v0.2.13
[INFO] [stderr]     Checking tokio-current-thread v0.1.7
[INFO] [stderr]     Checking mio v0.6.23
[INFO] [stderr]     Checking crossbeam-deque v0.7.4
[INFO] [stderr]     Checking tokio-io v0.1.13
[INFO] [stderr]     Checking tokio-threadpool v0.1.18
[INFO] [stderr]     Checking tokio-codec v0.1.2
[INFO] [stderr]     Checking tokio-reactor v0.1.12
[INFO] [stderr]     Checking mio-uds v0.6.8
[INFO] [stderr]     Checking tokio-fs v0.1.7
[INFO] [stderr]     Checking tokio-udp v0.1.6
[INFO] [stderr]     Checking tokio-uds v0.2.7
[INFO] [stderr]     Checking tokio-tcp v0.1.4
[INFO] [stderr]     Checking tokio v0.1.22
[INFO] [stderr]     Checking tokio-core v0.1.18
[INFO] [stderr]     Checking toml v0.4.10
[INFO] [stderr]    Compiling serde_derive v1.0.200
[INFO] [stderr]     Checking nero v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/p10.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | / bitflags! {
[INFO] [stdout] 76 | |     pub struct P10UserModes: u64 {
[INFO] [stdout] 77 | |         const UMODE_OPER         = 1 << 0;
[INFO] [stdout] 78 | |         const UMODE_INVISIBLE    = 1 << 1;
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | |     }
[INFO] [stdout] 88 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | / bitflags! {
[INFO] [stdout] 76 | |     pub struct P10UserModes: u64 {
[INFO] [stdout] 77 | |         const UMODE_OPER         = 1 << 0;
[INFO] [stdout] 78 | |         const UMODE_INVISIBLE    = 1 << 1;
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | |     }
[INFO] [stdout] 88 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | / bitflags! {
[INFO] [stdout] 76 | |     pub struct P10UserModes: u64 {
[INFO] [stdout] 77 | |         const UMODE_OPER         = 1 << 0;
[INFO] [stdout] 78 | |         const UMODE_INVISIBLE    = 1 << 1;
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | |     }
[INFO] [stdout] 88 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:90:1
[INFO] [stdout]     |
[INFO] [stdout] 90  | / bitflags! {
[INFO] [stdout] 91  | |     pub struct P10ChannelModes: u64 {
[INFO] [stdout] 92  | |         const CMODE_PRIVATE     = 1 << 0;
[INFO] [stdout] 93  | |         const CMODE_SECRET      = 1 << 1;
[INFO] [stdout] ...   |
[INFO] [stdout] 108 | |     }
[INFO] [stdout] 109 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:90:1
[INFO] [stdout]     |
[INFO] [stdout] 90  | / bitflags! {
[INFO] [stdout] 91  | |     pub struct P10ChannelModes: u64 {
[INFO] [stdout] 92  | |         const CMODE_PRIVATE     = 1 << 0;
[INFO] [stdout] 93  | |         const CMODE_SECRET      = 1 << 1;
[INFO] [stdout] ...   |
[INFO] [stdout] 108 | |     }
[INFO] [stdout] 109 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:90:1
[INFO] [stdout]     |
[INFO] [stdout] 90  | / bitflags! {
[INFO] [stdout] 91  | |     pub struct P10ChannelModes: u64 {
[INFO] [stdout] 92  | |         const CMODE_PRIVATE     = 1 << 0;
[INFO] [stdout] 93  | |         const CMODE_SECRET      = 1 << 1;
[INFO] [stdout] ...   |
[INFO] [stdout] 108 | |     }
[INFO] [stdout] 109 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | / bitflags! {
[INFO] [stdout] 76 | |     pub struct P10UserModes: u64 {
[INFO] [stdout] 77 | |         const UMODE_OPER         = 1 << 0;
[INFO] [stdout] 78 | |         const UMODE_INVISIBLE    = 1 << 1;
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | |     }
[INFO] [stdout] 88 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / bitflags! {
[INFO] [stdout] 112 | |     pub struct P10MemberModes: u64 {
[INFO] [stdout] 113 | |         const MMODE_CHANOP      = 1 << 0;
[INFO] [stdout] 114 | |         const MMODE_VOICE       = 1 << 1;
[INFO] [stdout] 115 | |         const MMODE_HIDDEN      = 1 << 2;
[INFO] [stdout] 116 | |     }
[INFO] [stdout] 117 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / bitflags! {
[INFO] [stdout] 112 | |     pub struct P10MemberModes: u64 {
[INFO] [stdout] 113 | |         const MMODE_CHANOP      = 1 << 0;
[INFO] [stdout] 114 | |         const MMODE_VOICE       = 1 << 1;
[INFO] [stdout] 115 | |         const MMODE_HIDDEN      = 1 << 2;
[INFO] [stdout] 116 | |     }
[INFO] [stdout] 117 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / bitflags! {
[INFO] [stdout] 112 | |     pub struct P10MemberModes: u64 {
[INFO] [stdout] 113 | |         const MMODE_CHANOP      = 1 << 0;
[INFO] [stdout] 114 | |         const MMODE_VOICE       = 1 << 1;
[INFO] [stdout] 115 | |         const MMODE_HIDDEN      = 1 << 2;
[INFO] [stdout] 116 | |     }
[INFO] [stdout] 117 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | / bitflags! {
[INFO] [stdout] 76 | |     pub struct P10UserModes: u64 {
[INFO] [stdout] 77 | |         const UMODE_OPER         = 1 << 0;
[INFO] [stdout] 78 | |         const UMODE_INVISIBLE    = 1 << 1;
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | |     }
[INFO] [stdout] 88 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | / bitflags! {
[INFO] [stdout] 76 | |     pub struct P10UserModes: u64 {
[INFO] [stdout] 77 | |         const UMODE_OPER         = 1 << 0;
[INFO] [stdout] 78 | |         const UMODE_INVISIBLE    = 1 << 1;
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | |     }
[INFO] [stdout] 88 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:90:1
[INFO] [stdout]     |
[INFO] [stdout] 90  | / bitflags! {
[INFO] [stdout] 91  | |     pub struct P10ChannelModes: u64 {
[INFO] [stdout] 92  | |         const CMODE_PRIVATE     = 1 << 0;
[INFO] [stdout] 93  | |         const CMODE_SECRET      = 1 << 1;
[INFO] [stdout] ...   |
[INFO] [stdout] 108 | |     }
[INFO] [stdout] 109 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:90:1
[INFO] [stdout]     |
[INFO] [stdout] 90  | / bitflags! {
[INFO] [stdout] 91  | |     pub struct P10ChannelModes: u64 {
[INFO] [stdout] 92  | |         const CMODE_PRIVATE     = 1 << 0;
[INFO] [stdout] 93  | |         const CMODE_SECRET      = 1 << 1;
[INFO] [stdout] ...   |
[INFO] [stdout] 108 | |     }
[INFO] [stdout] 109 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:90:1
[INFO] [stdout]     |
[INFO] [stdout] 90  | / bitflags! {
[INFO] [stdout] 91  | |     pub struct P10ChannelModes: u64 {
[INFO] [stdout] 92  | |         const CMODE_PRIVATE     = 1 << 0;
[INFO] [stdout] 93  | |         const CMODE_SECRET      = 1 << 1;
[INFO] [stdout] ...   |
[INFO] [stdout] 108 | |     }
[INFO] [stdout] 109 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / bitflags! {
[INFO] [stdout] 112 | |     pub struct P10MemberModes: u64 {
[INFO] [stdout] 113 | |         const MMODE_CHANOP      = 1 << 0;
[INFO] [stdout] 114 | |         const MMODE_VOICE       = 1 << 1;
[INFO] [stdout] 115 | |         const MMODE_HIDDEN      = 1 << 2;
[INFO] [stdout] 116 | |     }
[INFO] [stdout] 117 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / bitflags! {
[INFO] [stdout] 112 | |     pub struct P10MemberModes: u64 {
[INFO] [stdout] 113 | |         const MMODE_CHANOP      = 1 << 0;
[INFO] [stdout] 114 | |         const MMODE_VOICE       = 1 << 1;
[INFO] [stdout] 115 | |         const MMODE_HIDDEN      = 1 << 2;
[INFO] [stdout] 116 | |     }
[INFO] [stdout] 117 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (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/p10.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / bitflags! {
[INFO] [stdout] 112 | |     pub struct P10MemberModes: u64 {
[INFO] [stdout] 113 | |         const MMODE_CHANOP      = 1 << 0;
[INFO] [stdout] 114 | |         const MMODE_VOICE       = 1 << 1;
[INFO] [stdout] 115 | |         const MMODE_HIDDEN      = 1 << 2;
[INFO] [stdout] 116 | |     }
[INFO] [stdout] 117 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__impl_bitflags` which comes from the expansion of the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/p10.rs:467:30
[INFO] [stdout]     |
[INFO] [stdout] 467 |                         b'0' ... b'9' => oplevel = 999, // TODO: Parse this
[INFO] [stdout]     |                              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/p10.rs:503:22
[INFO] [stdout]     |
[INFO] [stdout] 503 |                 b'0' ... b'9' => oplevel = 999, // TODO: Parse this
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/p10.rs:802:38
[INFO] [stdout]     |
[INFO] [stdout] 802 | ...                   b'0' ... b'9' => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/p10.rs:467:30
[INFO] [stdout]     |
[INFO] [stdout] 467 |                         b'0' ... b'9' => oplevel = 999, // TODO: Parse this
[INFO] [stdout]     |                              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/p10.rs:503:22
[INFO] [stdout]     |
[INFO] [stdout] 503 |                 b'0' ... b'9' => oplevel = 999, // TODO: Parse this
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/p10.rs:802:38
[INFO] [stdout]     |
[INFO] [stdout] 802 | ...                   b'0' ... b'9' => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `futures::BoxFuture`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]  --> src/net.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use futures::{BoxFuture, Future};
[INFO] [stdout]   |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `futures::BoxFuture`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]   --> src/net.rs:70:33
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub fn write_lines(self) -> BoxFuture<Self, io::Error> {
[INFO] [stdout]    |                                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead
[INFO] [stdout]    --> src/p10.rs:885:21
[INFO] [stdout]     |
[INFO] [stdout] 885 |     use std::ascii::AsciiExt;
[INFO] [stdout]     |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/plugin.rs:5:25
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type HookFunc = Box<FnMut(&mut Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>>;
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type HookFunc = Box<dyn FnMut(&mut Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>>;
[INFO] [stdout]   |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/plugin.rs:5:36
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type HookFunc = Box<FnMut(&mut Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>>;
[INFO] [stdout]   |                                    ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type HookFunc = Box<FnMut(&mut dyn Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>>;
[INFO] [stdout]   |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plugin.rs:31:28
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub plugin_ptr: *const Plugin,
[INFO] [stdout]    |                            ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub plugin_ptr: *const dyn Plugin,
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/plugin_handler.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 |     plugin: Box<Plugin>
[INFO] [stdout]   |                 ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 9 |     plugin: Box<dyn Plugin>
[INFO] [stdout]   |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/net.rs:107:49
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub fn boot<P: Protocol>(handle: Handle) -> Box<Future<Item=(), Error=io::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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub fn boot<P: Protocol>(handle: Handle) -> Box<dyn Future<Item=(), Error=io::Error>> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `futures::BoxFuture`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]  --> src/net.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use futures::{BoxFuture, Future};
[INFO] [stdout]   |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `futures::BoxFuture`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]   --> src/net.rs:70:33
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub fn write_lines(self) -> BoxFuture<Self, io::Error> {
[INFO] [stdout]    |                                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plugin.rs:45:6
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl Plugin {
[INFO] [stdout]    |      ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl dyn Plugin {
[INFO] [stdout]    |      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead
[INFO] [stdout]    --> src/p10.rs:885:21
[INFO] [stdout]     |
[INFO] [stdout] 885 |     use std::ascii::AsciiExt;
[INFO] [stdout]     |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/plugin.rs:5:25
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type HookFunc = Box<FnMut(&mut Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>>;
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type HookFunc = Box<dyn FnMut(&mut Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>>;
[INFO] [stdout]   |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/plugin.rs:5:36
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type HookFunc = Box<FnMut(&mut Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>>;
[INFO] [stdout]   |                                    ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type HookFunc = Box<FnMut(&mut dyn Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>>;
[INFO] [stdout]   |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plugin.rs:31:28
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub plugin_ptr: *const Plugin,
[INFO] [stdout]    |                            ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub plugin_ptr: *const dyn Plugin,
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/plugin_handler.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 |     plugin: Box<Plugin>
[INFO] [stdout]   |                 ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 9 |     plugin: Box<dyn Plugin>
[INFO] [stdout]   |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/net.rs:107:49
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub fn boot<P: Protocol>(handle: Handle) -> Box<Future<Item=(), Error=io::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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub fn boot<P: Protocol>(handle: Handle) -> Box<dyn Future<Item=(), Error=io::Error>> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plugin.rs:45:6
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl Plugin {
[INFO] [stdout]    |      ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl dyn Plugin {
[INFO] [stdout]    |      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/config.rs:30:45
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn get_protocol() -> Result<String, Box<::std::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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn get_protocol() -> Result<String, Box<dyn (::std::error::Error)>> {
[INFO] [stdout]    |                                             +++++                   +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/config.rs:30:45
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn get_protocol() -> Result<String, Box<::std::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/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn get_protocol() -> Result<String, Box<dyn (::std::error::Error)>> {
[INFO] [stdout]    |                                             +++++                   +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/plugin.rs:3:40
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub type LoadFunc = fn() -> Result<Box<Plugin>, ()>;
[INFO] [stdout]   |                                        ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub type LoadFunc = fn() -> Result<Box<dyn Plugin>, ()>;
[INFO] [stdout]   |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plugin_handler.rs:42:19
[INFO] [stdout]    |
[INFO] [stdout] 42 |     type Target = Plugin;
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 42 |     type Target = dyn Plugin;
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/plugin.rs:3:40
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub type LoadFunc = fn() -> Result<Box<Plugin>, ()>;
[INFO] [stdout]   |                                        ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub type LoadFunc = fn() -> Result<Box<dyn Plugin>, ()>;
[INFO] [stdout]   |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plugin_handler.rs:42:19
[INFO] [stdout]    |
[INFO] [stdout] 42 |     type Target = Plugin;
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 42 |     type Target = dyn Plugin;
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `futures::Future::boxed`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]   --> src/net.rs:83:24
[INFO] [stdout]    |
[INFO] [stdout] 83 |                     }).boxed()
[INFO] [stdout]    |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `futures::Future::boxed`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]   --> src/net.rs:87:87
[INFO] [stdout]    |
[INFO] [stdout] 87 |                     ok(Loop::Break(WriteState { messages: messages.into(), writer })).boxed()
[INFO] [stdout]    |                                                                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `futures::Future::boxed`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]   --> src/net.rs:90:12
[INFO] [stdout]    |
[INFO] [stdout] 90 |         }).boxed()
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `futures::Future::boxed`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]   --> src/net.rs:83:24
[INFO] [stdout]    |
[INFO] [stdout] 83 |                     }).boxed()
[INFO] [stdout]    |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `futures::Future::boxed`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]   --> src/net.rs:87:87
[INFO] [stdout]    |
[INFO] [stdout] 87 |                     ok(Loop::Break(WriteState { messages: messages.into(), writer })).boxed()
[INFO] [stdout]    |                                                                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `futures::Future::boxed`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]   --> src/net.rs:90:12
[INFO] [stdout]    |
[INFO] [stdout] 90 |         }).boxed()
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plugin.rs:49:42
[INFO] [stdout]    |
[INFO] [stdout] 49 |                 Some(&mut *(self as *mut Plugin as *mut T))
[INFO] [stdout]    |                                          ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 49 |                 Some(&mut *(self as *mut dyn Plugin as *mut T))
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plugin.rs:49:42
[INFO] [stdout]    |
[INFO] [stdout] 49 |                 Some(&mut *(self as *mut Plugin as *mut T))
[INFO] [stdout]    |                                          ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 49 |                 Some(&mut *(self as *mut dyn Plugin as *mut T))
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ascii::AsciiExt`
[INFO] [stdout]    --> src/p10.rs:885:9
[INFO] [stdout]     |
[INFO] [stdout] 885 |     use std::ascii::AsciiExt;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ascii::AsciiExt`
[INFO] [stdout]    --> src/p10.rs:885:9
[INFO] [stdout]     |
[INFO] [stdout] 885 |     use std::ascii::AsciiExt;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/core_data.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |         for mut event in &mut self.events {
[INFO] [stdout]    |             ----^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/core_data.rs:85:21
[INFO] [stdout]    |
[INFO] [stdout] 85 |                 let mut plugin = self.plugins.iter_mut().filter(|x| ptr::eq(&***x, event.plugin_ptr)).next().unwrap();
[INFO] [stdout]    |                     ----^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/core_data.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |         for mut event in &mut self.events {
[INFO] [stdout]    |             ----^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/core_data.rs:85:21
[INFO] [stdout]    |
[INFO] [stdout] 85 |                 let mut plugin = self.plugins.iter_mut().filter(|x| ptr::eq(&***x, event.plugin_ptr)).next().unwrap();
[INFO] [stdout]    |                     ----^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0382]: assign to part of moved value: `server`
[INFO] [stdout]    --> src/p10.rs:321:33
[INFO] [stdout]     |
[INFO] [stdout] 278 |     let mut server: Server<P10> = Server::<P10>::new(&argv[1], &argv[8]);
[INFO] [stdout]     |         ---------- move occurs because `server` has type `Server<P10>`, which does not implement the `Copy` trait
[INFO] [stdout] ...
[INFO] [stdout] 314 |     let shared_server = Rc::new(RefCell::new(server));
[INFO] [stdout]     |                                              ------ value moved here
[INFO] [stdout] ...
[INFO] [stdout] 321 |             Some(arc_server) => server.uplink = Some(arc_server.clone()),
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^ value partially assigned here after move
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0382]: assign to part of moved value: `server`
[INFO] [stdout]    --> src/p10.rs:321:33
[INFO] [stdout]     |
[INFO] [stdout] 278 |     let mut server: Server<P10> = Server::<P10>::new(&argv[1], &argv[8]);
[INFO] [stdout]     |         ---------- move occurs because `server` has type `Server<P10>`, which does not implement the `Copy` trait
[INFO] [stdout] ...
[INFO] [stdout] 314 |     let shared_server = Rc::new(RefCell::new(server));
[INFO] [stdout]     |                                              ------ value moved here
[INFO] [stdout] ...
[INFO] [stdout] 321 |             Some(arc_server) => server.uplink = Some(arc_server.clone()),
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^ value partially assigned here after move
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/p10.rs:888:9
[INFO] [stdout]     |
[INFO] [stdout] 888 |     for mut byte in &mut buf {
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/p10.rs:888:9
[INFO] [stdout]     |
[INFO] [stdout] 888 |     for mut byte in &mut buf {
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error; 32 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0382`.
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error; 32 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0382`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `nero` (lib) due to 2 previous errors; 32 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `nero` (lib test) due to 2 previous errors; 32 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "c1e3479f3740ecfe766877a29f43c2a70ce63d425b9a5cbc8b30ef753a8a0f62", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c1e3479f3740ecfe766877a29f43c2a70ce63d425b9a5cbc8b30ef753a8a0f62", kill_on_drop: false }`
[INFO] [stdout] c1e3479f3740ecfe766877a29f43c2a70ce63d425b9a5cbc8b30ef753a8a0f62
