[INFO] updating cached repository vi/websocat [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/vi/websocat [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/vi/websocat" "work/ex/clippy-test-run/sources/stable/gh/vi/websocat"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/vi/websocat'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/vi/websocat" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/vi/websocat"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/vi/websocat'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 2e676b34cfd508cdcc77202c34df5e045cb79d23 [INFO] sha for GitHub repo vi/websocat: 2e676b34cfd508cdcc77202c34df5e045cb79d23 [INFO] validating manifest of vi/websocat on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of vi/websocat on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing vi/websocat [INFO] finished frobbing vi/websocat [INFO] frobbed toml for vi/websocat written to work/ex/clippy-test-run/sources/stable/gh/vi/websocat/Cargo.toml [INFO] started frobbing vi/websocat [INFO] finished frobbing vi/websocat [INFO] frobbed toml for vi/websocat written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/vi/websocat/Cargo.toml [INFO] crate vi/websocat has a lockfile. skipping [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting vi/websocat against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-5/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/vi/websocat:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 37f1c41d03589950f95a56e1a1696f044d218a4967cec16949f19eb788423bd2 [INFO] running `"docker" "start" "-a" "37f1c41d03589950f95a56e1a1696f044d218a4967cec16949f19eb788423bd2"` [INFO] [stderr] Checking log v0.4.6 [INFO] [stderr] Checking slab_typesafe v0.1.2 [INFO] [stderr] Checking clap v2.32.0 [INFO] [stderr] Compiling quote v0.6.9 [INFO] [stderr] Checking url v1.7.1 [INFO] [stderr] Compiling smart-default v0.2.0 [INFO] [stderr] Compiling syn v0.15.17 [INFO] [stderr] Checking tokio-io v0.1.10 [INFO] [stderr] Checking mio v0.6.16 [INFO] [stderr] Checking tokio-threadpool v0.1.8 [INFO] [stderr] Checking log v0.3.9 [INFO] [stderr] Checking env_logger v0.5.13 [INFO] [stderr] Checking mime v0.2.6 [INFO] [stderr] Checking tokio-codec v0.1.1 [INFO] [stderr] Checking tokio-stdin-stdout v0.1.5 [INFO] [stderr] Checking hyper v0.10.15 [INFO] [stderr] Checking tokio-fs v0.1.4 [INFO] [stderr] Checking mio-uds v0.6.7 [INFO] [stderr] Checking tokio-reactor v0.1.6 [INFO] [stderr] Checking tokio-tcp v0.1.2 [INFO] [stderr] Checking tokio-uds v0.2.3 [INFO] [stderr] Checking tokio-udp v0.1.2 [INFO] [stderr] Checking tokio v0.1.11 [INFO] [stderr] Checking tokio-core v0.1.17 (/opt/crater/workdir/tokio-core-singlethreaded) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/io/copy.rs:38:9 [INFO] [stderr] | [INFO] [stderr] 38 | reader: reader, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `reader` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/io/copy.rs:40:9 [INFO] [stderr] | [INFO] [stderr] 40 | writer: writer, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `writer` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/io/frame.rs:152:33 [INFO] [stderr] | [INFO] [stderr] 152 | return EasyBufMut { buf: buf, end: &mut self.end } [INFO] [stderr] | ^^^^^^^^ help: replace it with: `buf` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/io/frame.rs:194:13 [INFO] [stderr] | [INFO] [stderr] 194 | end: end, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `end` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/io/frame.rs:418:9 [INFO] [stderr] | [INFO] [stderr] 418 | codec: codec, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `codec` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/io/read_exact.rs:42:13 [INFO] [stderr] | [INFO] [stderr] 42 | a: a, [INFO] [stderr] | ^^^^ help: replace it with: `a` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/io/read_exact.rs:43:13 [INFO] [stderr] | [INFO] [stderr] 43 | buf: buf, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `buf` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/io/read_to_end.rs:37:13 [INFO] [stderr] | [INFO] [stderr] 37 | a: a, [INFO] [stderr] | ^^^^ help: replace it with: `a` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/io/read_to_end.rs:38:13 [INFO] [stderr] | [INFO] [stderr] 38 | buf: buf, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `buf` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/io/read.rs:22:36 [INFO] [stderr] | [INFO] [stderr] 22 | Read { state: State::Pending { rd: rd, buf: buf } } [INFO] [stderr] | ^^^^^^ help: replace it with: `rd` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/io/read.rs:22:44 [INFO] [stderr] | [INFO] [stderr] 22 | Read { state: State::Pending { rd: rd, buf: buf } } [INFO] [stderr] | ^^^^^^^^ help: replace it with: `buf` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/io/read_until.rs:41:13 [INFO] [stderr] | [INFO] [stderr] 41 | a: a, [INFO] [stderr] | ^^^^ help: replace it with: `a` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/io/read_until.rs:42:13 [INFO] [stderr] | [INFO] [stderr] 42 | byte: byte, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `byte` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/io/read_until.rs:43:13 [INFO] [stderr] | [INFO] [stderr] 43 | buf: buf, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `buf` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/io/write_all.rs:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | a: a, [INFO] [stderr] | ^^^^ help: replace it with: `a` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/io/write_all.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | buf: buf, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `buf` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/channel.rs:63:18 [INFO] [stderr] | [INFO] [stderr] 63 | Ok((Sender { tx: tx }, Receiver { rx: rx })) [INFO] [stderr] | ^^^^^^ help: replace it with: `tx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/channel.rs:63:39 [INFO] [stderr] | [INFO] [stderr] 63 | Ok((Sender { tx: tx }, Receiver { rx: rx })) [INFO] [stderr] | ^^^^^^ help: replace it with: `rx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/net/tcp.rs:135:26 [INFO] [stderr] | [INFO] [stderr] 135 | Ok(TcpListener { io: io }) [INFO] [stderr] | ^^^^^^ help: replace it with: `io` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/net/tcp.rs:141:26 [INFO] [stderr] | [INFO] [stderr] 141 | Ok(TcpListener { io: io }) [INFO] [stderr] | ^^^^^^ help: replace it with: `io` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/net/tcp.rs:265:24 [INFO] [stderr] | [INFO] [stderr] 265 | TcpStreamNew { inner: inner } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/net/tcp.rs:277:24 [INFO] [stderr] | [INFO] [stderr] 277 | TcpStreamNew { inner: inner } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/net/tcp.rs:283:62 [INFO] [stderr] | [INFO] [stderr] 283 | Ok(io) => TcpStreamNewState::Waiting(TcpStream { io: io }), [INFO] [stderr] | ^^^^^^ help: replace it with: `io` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/net/tcp.rs:291:48 [INFO] [stderr] | [INFO] [stderr] 291 | TcpStreamNewState::Waiting(TcpStream { io: io }) [INFO] [stderr] | ^^^^^^ help: replace it with: `io` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/net/udp/frame.rs:131:9 [INFO] [stderr] | [INFO] [stderr] 131 | socket: socket, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `socket` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/net/udp/frame.rs:132:9 [INFO] [stderr] | [INFO] [stderr] 132 | codec: codec, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `codec` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/net/udp/mod.rs:30:24 [INFO] [stderr] | [INFO] [stderr] 30 | Ok(UdpSocket { io: io }) [INFO] [stderr] | ^^^^^^ help: replace it with: `io` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> tokio-core-singlethreaded/src/reactor/poll_evented.rs:94:13 [INFO] [stderr] | [INFO] [stderr] 94 | io: io, [INFO] [stderr] | ^^^^^^ help: replace it with: `io` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> tokio-core-singlethreaded/src/io/frame.rs:106:9 [INFO] [stderr] | [INFO] [stderr] 106 | return other [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `other` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> tokio-core-singlethreaded/src/io/frame.rs:125:9 [INFO] [stderr] | [INFO] [stderr] 125 | return other [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `other` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> tokio-core-singlethreaded/src/io/frame.rs:406:9 [INFO] [stderr] | [INFO] [stderr] 406 | return Ok(Async::Ready(())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(Async::Ready(()))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: You matched a field with a wildcard pattern. Consider using `..` instead [INFO] [stderr] --> tokio-core-singlethreaded/src/io/read_until.rs:67:33 [INFO] [stderr] | [INFO] [stderr] 67 | State::Reading { a, byte: _, buf } => Ok((a, buf).into()), [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unneeded_field_pattern)] on by default [INFO] [stderr] = help: Try with `Reading { a, buf, .. }` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unneeded_field_pattern [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> tokio-core-singlethreaded/src/net/tcp.rs:396:9 [INFO] [stderr] | [INFO] [stderr] 396 | return r [INFO] [stderr] | ^^^^^^^^ help: remove `return` as shown: `r` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> tokio-core-singlethreaded/src/net/tcp.rs:606:9 [INFO] [stderr] | [INFO] [stderr] 606 | return r [INFO] [stderr] | ^^^^^^^^ help: remove `return` as shown: `r` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> tokio-core-singlethreaded/src/net/tcp.rs:617:9 [INFO] [stderr] | [INFO] [stderr] 617 | return r [INFO] [stderr] | ^^^^^^^^ help: remove `return` as shown: `r` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> tokio-core-singlethreaded/src/reactor/poll_evented.rs:241:9 [INFO] [stderr] | [INFO] [stderr] 241 | / if mask.is_writable() { [INFO] [stderr] 242 | | if self.poll_write().is_ready() { [INFO] [stderr] 243 | | ret = Ready::writable(); [INFO] [stderr] 244 | | } [INFO] [stderr] 245 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 241 | if mask.is_writable() && self.poll_write().is_ready() { [INFO] [stderr] 242 | ret = Ready::writable(); [INFO] [stderr] 243 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> tokio-core-singlethreaded/src/reactor/poll_evented2.rs:321:9 [INFO] [stderr] | [INFO] [stderr] 321 | return r [INFO] [stderr] | ^^^^^^^^ help: remove `return` as shown: `r` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> tokio-core-singlethreaded/src/reactor/poll_evented2.rs:339:9 [INFO] [stderr] | [INFO] [stderr] 339 | return r [INFO] [stderr] | ^^^^^^^^ help: remove `return` as shown: `r` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> tokio-core-singlethreaded/src/reactor/poll_evented2.rs:353:9 [INFO] [stderr] | [INFO] [stderr] 353 | return r [INFO] [stderr] | ^^^^^^^^ help: remove `return` as shown: `r` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> tokio-core-singlethreaded/src/reactor/poll_evented2.rs:386:9 [INFO] [stderr] | [INFO] [stderr] 386 | return r [INFO] [stderr] | ^^^^^^^^ help: remove `return` as shown: `r` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> tokio-core-singlethreaded/src/reactor/poll_evented2.rs:404:9 [INFO] [stderr] | [INFO] [stderr] 404 | return r [INFO] [stderr] | ^^^^^^^^ help: remove `return` as shown: `r` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> tokio-core-singlethreaded/src/reactor/poll_evented2.rs:418:9 [INFO] [stderr] | [INFO] [stderr] 418 | return r [INFO] [stderr] | ^^^^^^^^ help: remove `return` as shown: `r` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] Checking websocket v0.22.0 [INFO] [stderr] warning: item `io::frame::EasyBuf` has a public `len` method but no corresponding `is_empty` method [INFO] [stderr] --> tokio-core-singlethreaded/src/io/frame.rs:35:1 [INFO] [stderr] | [INFO] [stderr] 35 | / impl EasyBuf { [INFO] [stderr] 36 | | /// Creates a new EasyBuf with no data and the default capacity. [INFO] [stderr] 37 | | pub fn new() -> EasyBuf { [INFO] [stderr] 38 | | EasyBuf::with_capacity(INITIAL_CAPACITY) [INFO] [stderr] ... | [INFO] [stderr] 165 | | } [INFO] [stderr] 166 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_without_is_empty)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_without_is_empty [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `io::frame::EasyBuf` [INFO] [stderr] --> tokio-core-singlethreaded/src/io/frame.rs:37:5 [INFO] [stderr] | [INFO] [stderr] 37 | / pub fn new() -> EasyBuf { [INFO] [stderr] 38 | | EasyBuf::with_capacity(INITIAL_CAPACITY) [INFO] [stderr] 39 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 22 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> tokio-core-singlethreaded/src/net/tcp.rs:154:14 [INFO] [stderr] | [INFO] [stderr] 154 | .unwrap_or(().into()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|_| ().into())` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> tokio-core-singlethreaded/src/net/tcp.rs:280:5 [INFO] [stderr] | [INFO] [stderr] 280 | / fn new(connected_stream: mio::net::TcpStream, handle: &Handle) [INFO] [stderr] 281 | | -> TcpStreamNewState { [INFO] [stderr] 282 | | match PollEvented2::new_with_handle(connected_stream, handle.new_tokio_handle()) { [INFO] [stderr] 283 | | Ok(io) => TcpStreamNewState::Waiting(TcpStream { io: io }), [INFO] [stderr] 284 | | Err(e) => TcpStreamNewState::Error(e), [INFO] [stderr] 285 | | } [INFO] [stderr] 286 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_ret_no_self)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> tokio-core-singlethreaded/src/net/tcp.rs:351:14 [INFO] [stderr] | [INFO] [stderr] 351 | .unwrap_or(().into()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|_| ().into())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> tokio-core-singlethreaded/src/net/tcp.rs:369:14 [INFO] [stderr] | [INFO] [stderr] 369 | .unwrap_or(().into()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|_| ().into())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> tokio-core-singlethreaded/src/net/udp/mod.rs:131:14 [INFO] [stderr] | [INFO] [stderr] 131 | .unwrap_or(().into()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|_| ().into())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> tokio-core-singlethreaded/src/net/udp/mod.rs:149:14 [INFO] [stderr] | [INFO] [stderr] 149 | .unwrap_or(().into()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|_| ().into())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> tokio-core-singlethreaded/src/net/udp/mod.rs:330:41 [INFO] [stderr] | [INFO] [stderr] 330 | multiaddr: &Ipv4Addr, [INFO] [stderr] | ^^^^^^^^^ help: consider passing by value instead: `Ipv4Addr` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> tokio-core-singlethreaded/src/net/udp/mod.rs:331:41 [INFO] [stderr] | [INFO] [stderr] 331 | interface: &Ipv4Addr) -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^ help: consider passing by value instead: `Ipv4Addr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> tokio-core-singlethreaded/src/net/udp/mod.rs:353:42 [INFO] [stderr] | [INFO] [stderr] 353 | multiaddr: &Ipv4Addr, [INFO] [stderr] | ^^^^^^^^^ help: consider passing by value instead: `Ipv4Addr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> tokio-core-singlethreaded/src/net/udp/mod.rs:354:42 [INFO] [stderr] | [INFO] [stderr] 354 | interface: &Ipv4Addr) -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^ help: consider passing by value instead: `Ipv4Addr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> tokio-core-singlethreaded/src/reactor/poll_evented2.rs:469:26 [INFO] [stderr] | [INFO] [stderr] 469 | pub fn is_hup(ready: &Ready) -> bool { [INFO] [stderr] | ^^^^^^ help: consider passing by value instead: `Ready` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: called `ok().expect()` on a Result value. You can call `expect` directly on the `Result` [INFO] [stderr] --> tokio-core-singlethreaded/src/reactor/mod.rs:233:33 [INFO] [stderr] | [INFO] [stderr] 233 | let mut enter = tokio_executor::enter() [INFO] [stderr] | _________________________________^ [INFO] [stderr] 234 | | .ok().expect("cannot recursively call into `Core`"); [INFO] [stderr] | |_______________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ok_expect)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ok_expect [INFO] [stderr] [INFO] [stderr] warning: called `ok().expect()` on a Result value. You can call `expect` directly on the `Result` [INFO] [stderr] --> tokio-core-singlethreaded/src/reactor/mod.rs:278:25 [INFO] [stderr] | [INFO] [stderr] 278 | let mut enter = tokio_executor::enter() [INFO] [stderr] | _________________________^ [INFO] [stderr] 279 | | .ok().expect("cannot recursively call into `Core`"); [INFO] [stderr] | |_______________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ok_expect [INFO] [stderr] [INFO] [stderr] warning: called `ok().expect()` on a Result value. You can call `expect` directly on the `Result` [INFO] [stderr] --> tokio-core-singlethreaded/src/reactor/mod.rs:307:25 [INFO] [stderr] | [INFO] [stderr] 307 | / self.executor.borrow_mut() [INFO] [stderr] 308 | | .enter(enter) [INFO] [stderr] 309 | | .turn(max_wait) [INFO] [stderr] 310 | | .ok().expect("error in `CurrentThread::turn`"); [INFO] [stderr] | |__________________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ok_expect [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> tokio-core-singlethreaded/src/reactor/mod.rs:620:21 [INFO] [stderr] | [INFO] [stderr] 620 | const READ: usize = 1 << 0; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_op)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> tokio-core-singlethreaded/src/reactor/mod.rs:660:23 [INFO] [stderr] | [INFO] [stderr] 660 | fn is_aio(_ready: &Ready) -> bool { [INFO] [stderr] | ^^^^^^ help: consider passing by value instead: `Ready` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] Checking tokio-signal v0.1.5 [INFO] [stderr] Checking tokio-file-unix v0.4.2 [INFO] [stderr] Checking tokio-uds v0.1.5 [INFO] [stderr] Checking tokio-process v0.1.6 [INFO] [stderr] Compiling structopt-derive v0.2.12 [INFO] [stderr] Compiling derivative v1.0.1 [INFO] [stderr] Checking structopt v0.2.12 [INFO] [stderr] Checking websocat v1.2.0 (/opt/crater/workdir) [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 59.94s [INFO] running `"docker" "inspect" "37f1c41d03589950f95a56e1a1696f044d218a4967cec16949f19eb788423bd2"` [INFO] running `"docker" "rm" "-f" "37f1c41d03589950f95a56e1a1696f044d218a4967cec16949f19eb788423bd2"` [INFO] [stdout] 37f1c41d03589950f95a56e1a1696f044d218a4967cec16949f19eb788423bd2