[INFO] crate rux 0.1.0 is already in cache [INFO] checking rux-0.1.0 against master#45d050cde277b22a755847338f2acc2c7b834141 for pr-71393 [INFO] extracting crate rux 0.1.0 into /workspace/builds/worker-4/source [INFO] validating manifest of crates.io crate rux 0.1.0 on toolchain 45d050cde277b22a755847338f2acc2c7b834141 [INFO] running `"/workspace/cargo-home/bin/cargo" "+45d050cde277b22a755847338f2acc2c7b834141" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking crates.io crate rux 0.1.0 [INFO] finished tweaking crates.io crate rux 0.1.0 [INFO] tweaked toml for crates.io crate rux 0.1.0 written to /workspace/builds/worker-4/source/Cargo.toml [INFO] running `"/workspace/cargo-home/bin/cargo" "+45d050cde277b22a755847338f2acc2c7b834141" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/workspace/cargo-home/bin/cargo" "+45d050cde277b22a755847338f2acc2c7b834141" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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" "+45d050cde277b22a755847338f2acc2c7b834141" "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] 2689f130b1dc0ba7c437f1f3ef16e0da8cff361e0473619902b958995f6b4180 [INFO] running `"docker" "start" "-a" "2689f130b1dc0ba7c437f1f3ef16e0da8cff361e0473619902b958995f6b4180"` [INFO] [stderr] Compiling winapi-build v0.1.1 [INFO] [stderr] Compiling libc v0.2.69 [INFO] [stderr] Checking cfg-if v0.1.10 [INFO] [stderr] Compiling cc v1.0.52 [INFO] [stderr] Compiling semver v0.1.20 [INFO] [stderr] Checking winapi v0.2.8 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Checking rustc-demangle v0.1.16 [INFO] [stderr] Checking unicode-width v0.1.7 [INFO] [stderr] Checking lazy_static v0.2.11 [INFO] [stderr] Checking pad v0.1.6 [INFO] [stderr] Compiling dbghelp-sys v0.2.0 [INFO] [stderr] Compiling kernel32-sys v0.2.2 [INFO] [stderr] Compiling rustc_version v0.1.7 [INFO] [stderr] Compiling backtrace v0.2.3 [INFO] [stderr] Checking log v0.3.9 [INFO] [stderr] Compiling nix v0.7.0 [INFO] [stderr] Checking num_cpus v1.13.0 [INFO] [stderr] Checking time v0.1.43 [INFO] [stderr] Compiling backtrace-sys v0.1.37 [INFO] [stderr] Checking error-chain v0.5.0 [INFO] [stderr] Checking rux v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] error[E0407]: method `on_error` is not a member of trait `Handler` [INFO] [stderr] --> src/protocol.rs:63:9 [INFO] [stderr] | [INFO] [stderr] 63 | / fn on_error(&mut self) -> Result<()> { [INFO] [stderr] 64 | | self.on_error = true; [INFO] [stderr] 65 | | Ok(()) [INFO] [stderr] 66 | | } [INFO] [stderr] | |_________^ not a member of trait `Handler` [INFO] [stderr] [INFO] [stderr] error[E0407]: method `on_close` is not a member of trait `Handler` [INFO] [stderr] --> src/protocol.rs:68:9 [INFO] [stderr] | [INFO] [stderr] 68 | / fn on_close(&mut self) -> Result<()> { [INFO] [stderr] 69 | | self.on_close = true; [INFO] [stderr] 70 | | Ok(()) [INFO] [stderr] 71 | | } [INFO] [stderr] | |_________^ not a member of trait `Handler` [INFO] [stderr] [INFO] [stderr] error[E0407]: method `on_readable` is not a member of trait `Handler` [INFO] [stderr] --> src/protocol.rs:73:9 [INFO] [stderr] | [INFO] [stderr] 73 | / fn on_readable(&mut self) -> Result<()> { [INFO] [stderr] 74 | | self.on_readable = true; [INFO] [stderr] 75 | | Ok(()) [INFO] [stderr] 76 | | } [INFO] [stderr] | |_________^ not a member of trait `Handler` [INFO] [stderr] [INFO] [stderr] error[E0407]: method `on_writable` is not a member of trait `Handler` [INFO] [stderr] --> src/protocol.rs:78:9 [INFO] [stderr] | [INFO] [stderr] 78 | / fn on_writable(&mut self) -> Result<()> { [INFO] [stderr] 79 | | self.on_writable = true; [INFO] [stderr] 80 | | Ok(()) [INFO] [stderr] 81 | | } [INFO] [stderr] | |_________^ not a member of trait `Handler` [INFO] [stderr] [INFO] [stderr] error[E0407]: method `new` is not a member of trait `IOProtocol` [INFO] [stderr] --> src/protocol.rs:87:9 [INFO] [stderr] | [INFO] [stderr] 87 | / fn new(&self, _: usize, _: RawFd, _: EpollFd) -> Box { [INFO] [stderr] 88 | | Box::new(TestHandler { [INFO] [stderr] 89 | | on_close: false, [INFO] [stderr] 90 | | on_error: false, [INFO] [stderr] ... | [INFO] [stderr] 93 | | }) [INFO] [stderr] 94 | | } [INFO] [stderr] | |_________^ not a member of trait `IOProtocol` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/poll/mod.rs:45:18 [INFO] [stderr] | [INFO] [stderr] 45 | let fd = try!(epoll_create()); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/poll/mod.rs:56:19 [INFO] [stderr] | [INFO] [stderr] 56 | let cnt = try!(epoll_wait(self.epfd.fd, dst, self.loop_ms)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/poll/mod.rs:64:19 [INFO] [stderr] | [INFO] [stderr] 64 | let cnt = try!(self.wait(dst)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/poll/mod.rs:102:9 [INFO] [stderr] | [INFO] [stderr] 102 | try!(epoll_ctl(self.fd, op, fd, interest)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/poll/mod.rs:108:9 [INFO] [stderr] | [INFO] [stderr] 108 | try!(self.ctl(EpollOp::EpollCtlMod, interest, fd)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/poll/mod.rs:114:9 [INFO] [stderr] | [INFO] [stderr] 114 | try!(self.ctl(EpollOp::EpollCtlAdd, interest, fd)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/poll/mod.rs:120:9 [INFO] [stderr] | [INFO] [stderr] 120 | try!(self.ctl(EpollOp::EpollCtlDel, &NO_INTEREST, fd)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/handler/echo.rs:39:26 [INFO] [stderr] | [INFO] [stderr] 39 | if let Some(n) = try!(read(fd, From::from(&mut self.buf))) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/handler/echo.rs:57:32 [INFO] [stderr] | [INFO] [stderr] 57 | if let Some(cnt) = try!(write(fd, From::from(&self.buf))) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/simplemux.rs:48:20 [INFO] [stderr] | [INFO] [stderr] 48 | let inet = try!(addr.to_socket_addrs().unwrap().next().ok_or("could not parse sockaddr")); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/simplemux.rs:84:18 [INFO] [stderr] | [INFO] [stderr] 84 | let fd = try!(epoll_create()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/simplemux.rs:89:21 [INFO] [stderr] | [INFO] [stderr] 89 | let srvfd = try!(socket(AddressFamily::Inet, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/simplemux.rs:167:9 [INFO] [stderr] | [INFO] [stderr] 167 | try!(eintr!(bind, "bind", self.srvfd, &self.sockaddr)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/simplemux.rs:170:9 [INFO] [stderr] | [INFO] [stderr] 170 | try!(eintr!(listen, "listen", self.srvfd, self.max_conn)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/simplemux.rs:180:9 [INFO] [stderr] | [INFO] [stderr] 180 | try!(self.cepfd.register(self.srvfd, &ceinfo)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/simplemux.rs:189:37 [INFO] [stderr] | [INFO] [stderr] 189 | let epfd = EpollFd::new(try!(epoll_create())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/mod.rs:48:13 [INFO] [stderr] | [INFO] [stderr] 48 | try!(mask.thread_block()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/mod.rs:55:9 [INFO] [stderr] | [INFO] [stderr] 55 | try!(mask.thread_block()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/mod.rs:57:21 [INFO] [stderr] | [INFO] [stderr] 57 | let sigfd = try!(SignalFd::with_flags(&mask, SFD_NONBLOCK)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/mod.rs:60:25 [INFO] [stderr] | [INFO] [stderr] 60 | let mut epoll = try!(Epoll::new_with(loop_ms, |epfd| { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/mod.rs:86:9 [INFO] [stderr] | [INFO] [stderr] 86 | try!(epoll.epfd.register(fd, &siginfo)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:104:13 [INFO] [stderr] | [INFO] [stderr] 104 | let b = try!(eintr!(unistd::write, "unistd::write", fd, buf)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:110:13 [INFO] [stderr] | [INFO] [stderr] 110 | let b = try!(eintr!(unistd::read, "unistd::read", fd, buf)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/protocol.rs:19:79 [INFO] [stderr] | [INFO] [stderr] 19 | fn get_handler(&self, p: Self::Protocol, epfd: EpollFd, id: usize) -> Box>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Handler` [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/protocol.rs:87:62 [INFO] [stderr] | [INFO] [stderr] 87 | fn new(&self, _: usize, _: RawFd, _: EpollFd) -> Box { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Handler` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/poll/mod.rs:27:18 [INFO] [stderr] | [INFO] [stderr] 27 | handler: Box>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Handler` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/poll/mod.rs:32:48 [INFO] [stderr] | [INFO] [stderr] 32 | pub fn from_fd(epfd: EpollFd, handler: Box>, loop_ms: isize) -> Epoll { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Handler` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/poll/mod.rs:42:41 [INFO] [stderr] | [INFO] [stderr] 42 | where F: FnOnce(EpollFd) -> Box> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Handler` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/handler/sync.rs:17:32 [INFO] [stderr] | [INFO] [stderr] 17 | handlers: Slab>>, usize>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Handler` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/logging/mod.rs:15:51 [INFO] [stderr] | [INFO] [stderr] 15 | fn setup(&self, epfd: &EpollFd) -> Result>; [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Log` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/logging/mod.rs:118:48 [INFO] [stderr] | [INFO] [stderr] 118 | fn setup(&self, _: &EpollFd) -> Result> { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Log` [INFO] [stderr] [INFO] [stderr] warning: unused import: `AsRawFd` [INFO] [stderr] --> src/lib.rs:87:25 [INFO] [stderr] | [INFO] [stderr] 87 | use std::os::unix::io::{AsRawFd, RawFd}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/poll/mod.rs:45:18 [INFO] [stderr] | [INFO] [stderr] 45 | let fd = try!(epoll_create()); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/poll/mod.rs:56:19 [INFO] [stderr] | [INFO] [stderr] 56 | let cnt = try!(epoll_wait(self.epfd.fd, dst, self.loop_ms)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/poll/mod.rs:64:19 [INFO] [stderr] | [INFO] [stderr] 64 | let cnt = try!(self.wait(dst)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/poll/mod.rs:102:9 [INFO] [stderr] | [INFO] [stderr] 102 | try!(epoll_ctl(self.fd, op, fd, interest)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/poll/mod.rs:108:9 [INFO] [stderr] | [INFO] [stderr] 108 | try!(self.ctl(EpollOp::EpollCtlMod, interest, fd)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/poll/mod.rs:114:9 [INFO] [stderr] | [INFO] [stderr] 114 | try!(self.ctl(EpollOp::EpollCtlAdd, interest, fd)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/poll/mod.rs:120:9 [INFO] [stderr] | [INFO] [stderr] 120 | try!(self.ctl(EpollOp::EpollCtlDel, &NO_INTEREST, fd)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/handler/echo.rs:39:26 [INFO] [stderr] | [INFO] [stderr] 39 | if let Some(n) = try!(read(fd, From::from(&mut self.buf))) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/handler/echo.rs:57:32 [INFO] [stderr] | [INFO] [stderr] 57 | if let Some(cnt) = try!(write(fd, From::from(&self.buf))) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/simplemux.rs:48:20 [INFO] [stderr] | [INFO] [stderr] 48 | let inet = try!(addr.to_socket_addrs().unwrap().next().ok_or("could not parse sockaddr")); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/simplemux.rs:84:18 [INFO] [stderr] | [INFO] [stderr] 84 | let fd = try!(epoll_create()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/simplemux.rs:89:21 [INFO] [stderr] | [INFO] [stderr] 89 | let srvfd = try!(socket(AddressFamily::Inet, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/simplemux.rs:167:9 [INFO] [stderr] | [INFO] [stderr] 167 | try!(eintr!(bind, "bind", self.srvfd, &self.sockaddr)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/simplemux.rs:170:9 [INFO] [stderr] | [INFO] [stderr] 170 | try!(eintr!(listen, "listen", self.srvfd, self.max_conn)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/simplemux.rs:180:9 [INFO] [stderr] | [INFO] [stderr] 180 | try!(self.cepfd.register(self.srvfd, &ceinfo)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/simplemux.rs:189:37 [INFO] [stderr] | [INFO] [stderr] 189 | let epfd = EpollFd::new(try!(epoll_create())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/mod.rs:48:13 [INFO] [stderr] | [INFO] [stderr] 48 | try!(mask.thread_block()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/mod.rs:55:9 [INFO] [stderr] | [INFO] [stderr] 55 | try!(mask.thread_block()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/mod.rs:57:21 [INFO] [stderr] | [INFO] [stderr] 57 | let sigfd = try!(SignalFd::with_flags(&mask, SFD_NONBLOCK)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/mod.rs:60:25 [INFO] [stderr] | [INFO] [stderr] 60 | let mut epoll = try!(Epoll::new_with(loop_ms, |epfd| { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/server/mod.rs:86:9 [INFO] [stderr] | [INFO] [stderr] 86 | try!(epoll.epfd.register(fd, &siginfo)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:104:13 [INFO] [stderr] | [INFO] [stderr] 104 | let b = try!(eintr!(unistd::write, "unistd::write", fd, buf)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/lib.rs:110:13 [INFO] [stderr] | [INFO] [stderr] 110 | let b = try!(eintr!(unistd::read, "unistd::read", fd, buf)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/protocol.rs:19:79 [INFO] [stderr] | [INFO] [stderr] 19 | fn get_handler(&self, p: Self::Protocol, epfd: EpollFd, id: usize) -> Box>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Handler` [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/poll/mod.rs:27:18 [INFO] [stderr] | [INFO] [stderr] 27 | handler: Box>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Handler` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/poll/mod.rs:32:48 [INFO] [stderr] | [INFO] [stderr] 32 | pub fn from_fd(epfd: EpollFd, handler: Box>, loop_ms: isize) -> Epoll { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Handler` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/poll/mod.rs:42:41 [INFO] [stderr] | [INFO] [stderr] 42 | where F: FnOnce(EpollFd) -> Box> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Handler` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/handler/sync.rs:17:32 [INFO] [stderr] | [INFO] [stderr] 17 | handlers: Slab>>, usize>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Handler` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/logging/mod.rs:15:51 [INFO] [stderr] | [INFO] [stderr] 15 | fn setup(&self, epfd: &EpollFd) -> Result>; [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Log` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/logging/mod.rs:118:48 [INFO] [stderr] | [INFO] [stderr] 118 | fn setup(&self, _: &EpollFd) -> Result> { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Log` [INFO] [stderr] [INFO] [stderr] warning: unused import: `AsRawFd` [INFO] [stderr] --> src/lib.rs:87:25 [INFO] [stderr] | [INFO] [stderr] 87 | use std::os::unix::io::{AsRawFd, RawFd}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::ONCE_INIT': the `new` function is now preferred [INFO] [stderr] --> src/poll/mod.rs:15:1 [INFO] [stderr] | [INFO] [stderr] 15 | / lazy_static! { [INFO] [stderr] 16 | | static ref NO_INTEREST: EpollEvent = { [INFO] [stderr] 17 | | EpollEvent { [INFO] [stderr] 18 | | events: EpollEventKind::empty(), [INFO] [stderr] ... | [INFO] [stderr] 21 | | }; [INFO] [stderr] 22 | | } [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 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/error.rs:2:1 [INFO] [stderr] | [INFO] [stderr] 2 | / error_chain! { [INFO] [stderr] 3 | | types { [INFO] [stderr] 4 | | Error, ErrorKind, ChainErr, Result; [INFO] [stderr] 5 | | } [INFO] [stderr] ... | [INFO] [stderr] 22 | | } [INFO] [stderr] 23 | | } [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] error[E0107]: wrong number of type arguments: expected 1, found 0 [INFO] [stderr] --> src/protocol.rs:87:62 [INFO] [stderr] | [INFO] [stderr] 87 | fn new(&self, _: usize, _: RawFd, _: EpollFd) -> Box { [INFO] [stderr] | ^^^^^^^ expected 1 type argument [INFO] [stderr] [INFO] [stderr] error[E0107]: wrong number of type arguments: expected 1, found 0 [INFO] [stderr] --> src/poll/mod.rs:151:10 [INFO] [stderr] | [INFO] [stderr] 151 | impl Handler for ChannelHandler { [INFO] [stderr] | ^^^^^^^ expected 1 type argument [INFO] [stderr] [INFO] [stderr] error: aborting due to 7 previous errors; 34 warnings emitted [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0107, E0407. [INFO] [stderr] For more information about an error, try `rustc --explain E0107`. [INFO] [stderr] warning: use of deprecated item 'std::sync::ONCE_INIT': the `new` function is now preferred [INFO] [stderr] --> src/poll/mod.rs:15:1 [INFO] [stderr] | [INFO] [stderr] 15 | / lazy_static! { [INFO] [stderr] 16 | | static ref NO_INTEREST: EpollEvent = { [INFO] [stderr] 17 | | EpollEvent { [INFO] [stderr] 18 | | events: EpollEventKind::empty(), [INFO] [stderr] ... | [INFO] [stderr] 21 | | }; [INFO] [stderr] 22 | | } [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 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/error.rs:2:1 [INFO] [stderr] | [INFO] [stderr] 2 | / error_chain! { [INFO] [stderr] 3 | | types { [INFO] [stderr] 4 | | Error, ErrorKind, ChainErr, Result; [INFO] [stderr] 5 | | } [INFO] [stderr] ... | [INFO] [stderr] 22 | | } [INFO] [stderr] 23 | | } [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] error: could not compile `rux`. [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] warning: use of deprecated item 'std::error::Error::cause': replaced by Error::source, which can support downcasting [INFO] [stderr] --> src/error.rs:2:1 [INFO] [stderr] | [INFO] [stderr] 2 | / error_chain! { [INFO] [stderr] 3 | | types { [INFO] [stderr] 4 | | Error, ErrorKind, ChainErr, Result; [INFO] [stderr] 5 | | } [INFO] [stderr] ... | [INFO] [stderr] 22 | | } [INFO] [stderr] 23 | | } [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: borrow of packed field is unsafe and requires unsafe function or block (error E0133) [INFO] [stderr] --> src/server/mod.rs:108:39 [INFO] [stderr] | [INFO] [stderr] 108 | trace!("ready(): {:?}: {:?}", ev.data, ev.events); [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(safe_packed_borrows)]` on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #46043 [INFO] [stderr] = note: fields of packed structs might be misaligned: dereferencing a misaligned pointer or even just creating a misaligned reference is undefined behavior [INFO] [stderr] [INFO] [stderr] warning: borrow of packed field is unsafe and requires unsafe function or block (error E0133) [INFO] [stderr] --> src/server/mod.rs:108:48 [INFO] [stderr] | [INFO] [stderr] 108 | trace!("ready(): {:?}: {:?}", ev.data, ev.events); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #46043 [INFO] [stderr] = note: fields of packed structs might be misaligned: dereferencing a misaligned pointer or even just creating a misaligned reference is undefined behavior [INFO] [stderr] [INFO] [stderr] warning: field is never read: `epfd` [INFO] [stderr] --> src/server/mod.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | epfd: EpollFd, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/handler/echo.rs:91:13 [INFO] [stderr] | [INFO] [stderr] 91 | ::nix::unistd::close(fd); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: 38 warnings emitted [INFO] [stderr] [INFO] [stderr] error: build failed [INFO] running `"docker" "inspect" "2689f130b1dc0ba7c437f1f3ef16e0da8cff361e0473619902b958995f6b4180"` [INFO] running `"docker" "rm" "-f" "2689f130b1dc0ba7c437f1f3ef16e0da8cff361e0473619902b958995f6b4180"` [INFO] [stdout] 2689f130b1dc0ba7c437f1f3ef16e0da8cff361e0473619902b958995f6b4180