[INFO] crate nero 0.0.1 is already in cache
[INFO] checking nero-0.0.1 against master#bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc for pr-70917
[INFO] extracting crate nero 0.0.1 into /workspace/builds/worker-3/source
[INFO] validating manifest of crates.io crate nero 0.0.1 on toolchain bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc
[INFO] running `"/workspace/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "read-manifest" "--manifest-path" "Cargo.toml"`
[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-3/source/Cargo.toml
[INFO] running `"/workspace/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"`
[INFO] running `"/workspace/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "check" "--frozen" "--all" "--all-targets"`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 1c06985b82227286fd479207be9276e703dada5bb667fdc5d5e678e72e978440
[INFO] running `"docker" "start" "-a" "1c06985b82227286fd479207be9276e703dada5bb667fdc5d5e678e72e978440"`
[INFO] [stderr]     Checking libloading v0.4.3
[INFO] [stderr]     Checking nero v0.0.1 (/opt/rustwide/workdir)
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/p10.rs:75:1
[INFO] [stderr]    |
[INFO] [stderr] 75 | / bitflags! {
[INFO] [stderr] 76 | |     pub struct P10UserModes: u64 {
[INFO] [stderr] 77 | |         const UMODE_OPER         = 1 << 0;
[INFO] [stderr] 78 | |         const UMODE_INVISIBLE    = 1 << 1;
[INFO] [stderr] ...  |
[INFO] [stderr] 87 | |     }
[INFO] [stderr] 88 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/p10.rs:75:1
[INFO] [stderr]    |
[INFO] [stderr] 75 | / bitflags! {
[INFO] [stderr] 76 | |     pub struct P10UserModes: u64 {
[INFO] [stderr] 77 | |         const UMODE_OPER         = 1 << 0;
[INFO] [stderr] 78 | |         const UMODE_INVISIBLE    = 1 << 1;
[INFO] [stderr] ...  |
[INFO] [stderr] 87 | |     }
[INFO] [stderr] 88 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/p10.rs:75:1
[INFO] [stderr]    |
[INFO] [stderr] 75 | / bitflags! {
[INFO] [stderr] 76 | |     pub struct P10UserModes: u64 {
[INFO] [stderr] 77 | |         const UMODE_OPER         = 1 << 0;
[INFO] [stderr] 78 | |         const UMODE_INVISIBLE    = 1 << 1;
[INFO] [stderr] ...  |
[INFO] [stderr] 87 | |     }
[INFO] [stderr] 88 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/p10.rs:90:1
[INFO] [stderr]     |
[INFO] [stderr] 90  | / bitflags! {
[INFO] [stderr] 91  | |     pub struct P10ChannelModes: u64 {
[INFO] [stderr] 92  | |         const CMODE_PRIVATE     = 1 << 0;
[INFO] [stderr] 93  | |         const CMODE_SECRET      = 1 << 1;
[INFO] [stderr] ...   |
[INFO] [stderr] 108 | |     }
[INFO] [stderr] 109 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/p10.rs:90:1
[INFO] [stderr]     |
[INFO] [stderr] 90  | / bitflags! {
[INFO] [stderr] 91  | |     pub struct P10ChannelModes: u64 {
[INFO] [stderr] 92  | |         const CMODE_PRIVATE     = 1 << 0;
[INFO] [stderr] 93  | |         const CMODE_SECRET      = 1 << 1;
[INFO] [stderr] ...   |
[INFO] [stderr] 108 | |     }
[INFO] [stderr] 109 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/p10.rs:90:1
[INFO] [stderr]     |
[INFO] [stderr] 90  | / bitflags! {
[INFO] [stderr] 91  | |     pub struct P10ChannelModes: u64 {
[INFO] [stderr] 92  | |         const CMODE_PRIVATE     = 1 << 0;
[INFO] [stderr] 93  | |         const CMODE_SECRET      = 1 << 1;
[INFO] [stderr] ...   |
[INFO] [stderr] 108 | |     }
[INFO] [stderr] 109 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/p10.rs:111:1
[INFO] [stderr]     |
[INFO] [stderr] 111 | / bitflags! {
[INFO] [stderr] 112 | |     pub struct P10MemberModes: u64 {
[INFO] [stderr] 113 | |         const MMODE_CHANOP      = 1 << 0;
[INFO] [stderr] 114 | |         const MMODE_VOICE       = 1 << 1;
[INFO] [stderr] 115 | |         const MMODE_HIDDEN      = 1 << 2;
[INFO] [stderr] 116 | |     }
[INFO] [stderr] 117 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/p10.rs:111:1
[INFO] [stderr]     |
[INFO] [stderr] 111 | / bitflags! {
[INFO] [stderr] 112 | |     pub struct P10MemberModes: u64 {
[INFO] [stderr] 113 | |         const MMODE_CHANOP      = 1 << 0;
[INFO] [stderr] 114 | |         const MMODE_VOICE       = 1 << 1;
[INFO] [stderr] 115 | |         const MMODE_HIDDEN      = 1 << 2;
[INFO] [stderr] 116 | |     }
[INFO] [stderr] 117 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/p10.rs:111:1
[INFO] [stderr]     |
[INFO] [stderr] 111 | / bitflags! {
[INFO] [stderr] 112 | |     pub struct P10MemberModes: u64 {
[INFO] [stderr] 113 | |         const MMODE_CHANOP      = 1 << 0;
[INFO] [stderr] 114 | |         const MMODE_VOICE       = 1 << 1;
[INFO] [stderr] 115 | |         const MMODE_HIDDEN      = 1 << 2;
[INFO] [stderr] 116 | |     }
[INFO] [stderr] 117 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/config.rs:30:45
[INFO] [stderr]    |
[INFO] [stderr] 30 | pub fn get_protocol() -> Result<String, Box<::std::error::Error>> {
[INFO] [stderr]    |                                             ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn (::std::error::Error)`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/net.rs:107:49
[INFO] [stderr]     |
[INFO] [stderr] 107 | pub fn boot<P: Protocol>(handle: Handle) -> Box<Future<Item=(), Error=io::Error>> {
[INFO] [stderr]     |                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=io::Error>`
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/p10.rs:467:30
[INFO] [stderr]     |
[INFO] [stderr] 467 |                         b'0' ... b'9' => oplevel = 999, // TODO: Parse this
[INFO] [stderr]     |                              ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/p10.rs:503:22
[INFO] [stderr]     |
[INFO] [stderr] 503 |                 b'0' ... b'9' => oplevel = 999, // TODO: Parse this
[INFO] [stderr]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/p10.rs:802:38
[INFO] [stderr]     |
[INFO] [stderr] 802 | ...                   b'0' ... b'9' => {
[INFO] [stderr]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/plugin.rs:3:40
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub type LoadFunc = fn() -> Result<Box<Plugin>, ()>;
[INFO] [stderr]   |                                        ^^^^^^ help: use `dyn`: `dyn Plugin`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/plugin.rs:5:25
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub type HookFunc = Box<FnMut(&mut Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>>;
[INFO] [stderr]   |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/plugin.rs:5:36
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub type HookFunc = Box<FnMut(&mut Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>>;
[INFO] [stderr]   |                                    ^^^^^^ help: use `dyn`: `dyn Plugin`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/plugin.rs:31:28
[INFO] [stderr]    |
[INFO] [stderr] 31 |     pub plugin_ptr: *const Plugin,
[INFO] [stderr]    |                            ^^^^^^ help: use `dyn`: `dyn Plugin`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/plugin.rs:45:6
[INFO] [stderr]    |
[INFO] [stderr] 45 | impl Plugin {
[INFO] [stderr]    |      ^^^^^^ help: use `dyn`: `dyn Plugin`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/plugin.rs:49:42
[INFO] [stderr]    |
[INFO] [stderr] 49 |                 Some(&mut *(self as *mut Plugin as *mut T))
[INFO] [stderr]    |                                          ^^^^^^ help: use `dyn`: `dyn Plugin`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/plugin_handler.rs:9:17
[INFO] [stderr]   |
[INFO] [stderr] 9 |     plugin: Box<Plugin>
[INFO] [stderr]   |                 ^^^^^^ help: use `dyn`: `dyn Plugin`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/plugin_handler.rs:42:19
[INFO] [stderr]    |
[INFO] [stderr] 42 |     type Target = Plugin;
[INFO] [stderr]    |                   ^^^^^^ help: use `dyn`: `dyn Plugin`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/p10.rs:75:1
[INFO] [stderr]    |
[INFO] [stderr] 75 | / bitflags! {
[INFO] [stderr] 76 | |     pub struct P10UserModes: u64 {
[INFO] [stderr] 77 | |         const UMODE_OPER         = 1 << 0;
[INFO] [stderr] 78 | |         const UMODE_INVISIBLE    = 1 << 1;
[INFO] [stderr] ...  |
[INFO] [stderr] 87 | |     }
[INFO] [stderr] 88 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/p10.rs:75:1
[INFO] [stderr]    |
[INFO] [stderr] 75 | / bitflags! {
[INFO] [stderr] 76 | |     pub struct P10UserModes: u64 {
[INFO] [stderr] 77 | |         const UMODE_OPER         = 1 << 0;
[INFO] [stderr] 78 | |         const UMODE_INVISIBLE    = 1 << 1;
[INFO] [stderr] ...  |
[INFO] [stderr] 87 | |     }
[INFO] [stderr] 88 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/p10.rs:75:1
[INFO] [stderr]    |
[INFO] [stderr] 75 | / bitflags! {
[INFO] [stderr] 76 | |     pub struct P10UserModes: u64 {
[INFO] [stderr] 77 | |         const UMODE_OPER         = 1 << 0;
[INFO] [stderr] 78 | |         const UMODE_INVISIBLE    = 1 << 1;
[INFO] [stderr] ...  |
[INFO] [stderr] 87 | |     }
[INFO] [stderr] 88 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/p10.rs:90:1
[INFO] [stderr]     |
[INFO] [stderr] 90  | / bitflags! {
[INFO] [stderr] 91  | |     pub struct P10ChannelModes: u64 {
[INFO] [stderr] 92  | |         const CMODE_PRIVATE     = 1 << 0;
[INFO] [stderr] 93  | |         const CMODE_SECRET      = 1 << 1;
[INFO] [stderr] ...   |
[INFO] [stderr] 108 | |     }
[INFO] [stderr] 109 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/p10.rs:90:1
[INFO] [stderr]     |
[INFO] [stderr] 90  | / bitflags! {
[INFO] [stderr] 91  | |     pub struct P10ChannelModes: u64 {
[INFO] [stderr] 92  | |         const CMODE_PRIVATE     = 1 << 0;
[INFO] [stderr] 93  | |         const CMODE_SECRET      = 1 << 1;
[INFO] [stderr] ...   |
[INFO] [stderr] 108 | |     }
[INFO] [stderr] 109 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/p10.rs:90:1
[INFO] [stderr]     |
[INFO] [stderr] 90  | / bitflags! {
[INFO] [stderr] 91  | |     pub struct P10ChannelModes: u64 {
[INFO] [stderr] 92  | |         const CMODE_PRIVATE     = 1 << 0;
[INFO] [stderr] 93  | |         const CMODE_SECRET      = 1 << 1;
[INFO] [stderr] ...   |
[INFO] [stderr] 108 | |     }
[INFO] [stderr] 109 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/p10.rs:111:1
[INFO] [stderr]     |
[INFO] [stderr] 111 | / bitflags! {
[INFO] [stderr] 112 | |     pub struct P10MemberModes: u64 {
[INFO] [stderr] 113 | |         const MMODE_CHANOP      = 1 << 0;
[INFO] [stderr] 114 | |         const MMODE_VOICE       = 1 << 1;
[INFO] [stderr] 115 | |         const MMODE_HIDDEN      = 1 << 2;
[INFO] [stderr] 116 | |     }
[INFO] [stderr] 117 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/p10.rs:111:1
[INFO] [stderr]     |
[INFO] [stderr] 111 | / bitflags! {
[INFO] [stderr] 112 | |     pub struct P10MemberModes: u64 {
[INFO] [stderr] 113 | |         const MMODE_CHANOP      = 1 << 0;
[INFO] [stderr] 114 | |         const MMODE_VOICE       = 1 << 1;
[INFO] [stderr] 115 | |         const MMODE_HIDDEN      = 1 << 2;
[INFO] [stderr] 116 | |     }
[INFO] [stderr] 117 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/p10.rs:111:1
[INFO] [stderr]     |
[INFO] [stderr] 111 | / bitflags! {
[INFO] [stderr] 112 | |     pub struct P10MemberModes: u64 {
[INFO] [stderr] 113 | |         const MMODE_CHANOP      = 1 << 0;
[INFO] [stderr] 114 | |         const MMODE_VOICE       = 1 << 1;
[INFO] [stderr] 115 | |         const MMODE_HIDDEN      = 1 << 2;
[INFO] [stderr] 116 | |     }
[INFO] [stderr] 117 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/config.rs:30:45
[INFO] [stderr]    |
[INFO] [stderr] 30 | pub fn get_protocol() -> Result<String, Box<::std::error::Error>> {
[INFO] [stderr]    |                                             ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn (::std::error::Error)`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/net.rs:107:49
[INFO] [stderr]     |
[INFO] [stderr] 107 | pub fn boot<P: Protocol>(handle: Handle) -> Box<Future<Item=(), Error=io::Error>> {
[INFO] [stderr]     |                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=io::Error>`
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/p10.rs:467:30
[INFO] [stderr]     |
[INFO] [stderr] 467 |                         b'0' ... b'9' => oplevel = 999, // TODO: Parse this
[INFO] [stderr]     |                              ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/p10.rs:503:22
[INFO] [stderr]     |
[INFO] [stderr] 503 |                 b'0' ... b'9' => oplevel = 999, // TODO: Parse this
[INFO] [stderr]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/p10.rs:802:38
[INFO] [stderr]     |
[INFO] [stderr] 802 | ...                   b'0' ... b'9' => {
[INFO] [stderr]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/plugin.rs:3:40
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub type LoadFunc = fn() -> Result<Box<Plugin>, ()>;
[INFO] [stderr]   |                                        ^^^^^^ help: use `dyn`: `dyn Plugin`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/plugin.rs:5:25
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub type HookFunc = Box<FnMut(&mut Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>>;
[INFO] [stderr]   |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/plugin.rs:5:36
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub type HookFunc = Box<FnMut(&mut Plugin, &[u8], usize, &[Vec<u8>]) -> Result<Option<Vec<Vec<u8>>>, HookError>>;
[INFO] [stderr]   |                                    ^^^^^^ help: use `dyn`: `dyn Plugin`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/plugin.rs:31:28
[INFO] [stderr]    |
[INFO] [stderr] 31 |     pub plugin_ptr: *const Plugin,
[INFO] [stderr]    |                            ^^^^^^ help: use `dyn`: `dyn Plugin`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/plugin.rs:45:6
[INFO] [stderr]    |
[INFO] [stderr] 45 | impl Plugin {
[INFO] [stderr]    |      ^^^^^^ help: use `dyn`: `dyn Plugin`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/plugin.rs:49:42
[INFO] [stderr]    |
[INFO] [stderr] 49 |                 Some(&mut *(self as *mut Plugin as *mut T))
[INFO] [stderr]    |                                          ^^^^^^ help: use `dyn`: `dyn Plugin`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/plugin_handler.rs:9:17
[INFO] [stderr]   |
[INFO] [stderr] 9 |     plugin: Box<Plugin>
[INFO] [stderr]   |                 ^^^^^^ help: use `dyn`: `dyn Plugin`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/plugin_handler.rs:42:19
[INFO] [stderr]    |
[INFO] [stderr] 42 |     type Target = Plugin;
[INFO] [stderr]    |                   ^^^^^^ help: use `dyn`: `dyn Plugin`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item '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] [stderr]  --> src/net.rs:9:15
[INFO] [stderr]   |
[INFO] [stderr] 9 | use futures::{BoxFuture, Future};
[INFO] [stderr]   |               ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item '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] [stderr]   --> src/net.rs:70:33
[INFO] [stderr]    |
[INFO] [stderr] 70 |     pub fn write_lines(self) -> BoxFuture<Self, io::Error> {
[INFO] [stderr]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead
[INFO] [stderr]    --> src/p10.rs:885:9
[INFO] [stderr]     |
[INFO] [stderr] 885 |     use std::ascii::AsciiExt;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item '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] [stderr]  --> src/net.rs:9:15
[INFO] [stderr]   |
[INFO] [stderr] 9 | use futures::{BoxFuture, Future};
[INFO] [stderr]   |               ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item '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] [stderr]   --> src/net.rs:70:33
[INFO] [stderr]    |
[INFO] [stderr] 70 |     pub fn write_lines(self) -> BoxFuture<Self, io::Error> {
[INFO] [stderr]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead
[INFO] [stderr]    --> src/p10.rs:885:9
[INFO] [stderr]     |
[INFO] [stderr] 885 |     use std::ascii::AsciiExt;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item '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] [stderr]   --> src/net.rs:83:24
[INFO] [stderr]    |
[INFO] [stderr] 83 |                     }).boxed()
[INFO] [stderr]    |                        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item '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] [stderr]   --> src/net.rs:87:87
[INFO] [stderr]    |
[INFO] [stderr] 87 |                     ok(Loop::Break(WriteState { messages: messages.into(), writer })).boxed()
[INFO] [stderr]    |                                                                                       ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item '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] [stderr]   --> src/net.rs:90:12
[INFO] [stderr]    |
[INFO] [stderr] 90 |         }).boxed()
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item '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] [stderr]   --> src/net.rs:83:24
[INFO] [stderr]    |
[INFO] [stderr] 83 |                     }).boxed()
[INFO] [stderr]    |                        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item '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] [stderr]   --> src/net.rs:87:87
[INFO] [stderr]    |
[INFO] [stderr] 87 |                     ok(Loop::Break(WriteState { messages: messages.into(), writer })).boxed()
[INFO] [stderr]    |                                                                                       ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item '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] [stderr]   --> src/net.rs:90:12
[INFO] [stderr]    |
[INFO] [stderr] 90 |         }).boxed()
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::ascii::AsciiExt`
[INFO] [stderr]    --> src/p10.rs:885:9
[INFO] [stderr]     |
[INFO] [stderr] 885 |     use std::ascii::AsciiExt;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/core_data.rs:83:13
[INFO] [stderr]    |
[INFO] [stderr] 83 |         for mut event in &mut self.events {
[INFO] [stderr]    |             ----^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/core_data.rs:85:21
[INFO] [stderr]    |
[INFO] [stderr] 85 |                 let mut plugin = self.plugins.iter_mut().filter(|x| ptr::eq(&***x, event.plugin_ptr)).next().unwrap();
[INFO] [stderr]    |                     ----^^^^^^
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] error[E0382]: assign to part of moved value: `server`
[INFO] [stderr]    --> src/p10.rs:321:33
[INFO] [stderr]     |
[INFO] [stderr] 278 |     let mut server: Server<P10> = Server::<P10>::new(&argv[1], &argv[8]);
[INFO] [stderr]     |         ---------- move occurs because `server` has type `server::Server<p10::P10>`, which does not implement the `Copy` trait
[INFO] [stderr] ...
[INFO] [stderr] 314 |     let shared_server = Rc::new(RefCell::new(server));
[INFO] [stderr]     |                                              ------ value moved here
[INFO] [stderr] ...
[INFO] [stderr] 321 |             Some(arc_server) => server.uplink = Some(arc_server.clone()),
[INFO] [stderr]     |                                 ^^^^^^^^^^^^^ value partially assigned here after move
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/p10.rs:888:9
[INFO] [stderr]     |
[INFO] [stderr] 888 |     for mut byte in &mut buf {
[INFO] [stderr]     |         ----^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::ascii::AsciiExt`
[INFO] [stderr]    --> src/p10.rs:885:9
[INFO] [stderr]     |
[INFO] [stderr] 885 |     use std::ascii::AsciiExt;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/core_data.rs:83:13
[INFO] [stderr]    |
[INFO] [stderr] 83 |         for mut event in &mut self.events {
[INFO] [stderr]    |             ----^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/core_data.rs:85:21
[INFO] [stderr]    |
[INFO] [stderr] 85 |                 let mut plugin = self.plugins.iter_mut().filter(|x| ptr::eq(&***x, event.plugin_ptr)).next().unwrap();
[INFO] [stderr]    |                     ----^^^^^^
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to previous error
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0382`.
[INFO] [stderr] error: could not compile `nero`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error[E0382]: assign to part of moved value: `server`
[INFO] [stderr]    --> src/p10.rs:321:33
[INFO] [stderr]     |
[INFO] [stderr] 278 |     let mut server: Server<P10> = Server::<P10>::new(&argv[1], &argv[8]);
[INFO] [stderr]     |         ---------- move occurs because `server` has type `server::Server<p10::P10>`, which does not implement the `Copy` trait
[INFO] [stderr] ...
[INFO] [stderr] 314 |     let shared_server = Rc::new(RefCell::new(server));
[INFO] [stderr]     |                                              ------ value moved here
[INFO] [stderr] ...
[INFO] [stderr] 321 |             Some(arc_server) => server.uplink = Some(arc_server.clone()),
[INFO] [stderr]     |                                 ^^^^^^^^^^^^^ value partially assigned here after move
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/p10.rs:888:9
[INFO] [stderr]     |
[INFO] [stderr] 888 |     for mut byte in &mut buf {
[INFO] [stderr]     |         ----^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to previous error
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0382`.
[INFO] [stderr] error: could not compile `nero`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] running `"docker" "inspect" "1c06985b82227286fd479207be9276e703dada5bb667fdc5d5e678e72e978440"`
[INFO] running `"docker" "rm" "-f" "1c06985b82227286fd479207be9276e703dada5bb667fdc5d5e678e72e978440"`
[INFO] [stdout] 1c06985b82227286fd479207be9276e703dada5bb667fdc5d5e678e72e978440
