[INFO] crate netio 0.6.1 is already in cache [INFO] extracting crate netio 0.6.1 into work/ex/clippy-test-run/sources/stable/reg/netio/0.6.1 [INFO] extracting crate netio 0.6.1 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/netio/0.6.1 [INFO] validating manifest of netio-0.6.1 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 netio-0.6.1 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 netio-0.6.1 [INFO] finished frobbing netio-0.6.1 [INFO] frobbed toml for netio-0.6.1 written to work/ex/clippy-test-run/sources/stable/reg/netio/0.6.1/Cargo.toml [INFO] started frobbing netio-0.6.1 [INFO] finished frobbing netio-0.6.1 [INFO] frobbed toml for netio-0.6.1 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/netio/0.6.1/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [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 netio-0.6.1 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-3/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/netio/0.6.1:/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] 4d1de854f519e6079f31024924c72686df4f1ce95d4890e3ffa62029a7f58b78 [INFO] running `"docker" "start" "-a" "4d1de854f519e6079f31024924c72686df4f1ce95d4890e3ffa62029a7f58b78"` [INFO] [stderr] Compiling netio v0.6.1 (/opt/crater/workdir) [INFO] [stderr] Checking buf_redux v0.6.3 [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/adapt/mod.rs:19:48 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn new(inner: I) -> Retry { Retry { inner: inner } } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [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] --> src/adapt/mod.rs:95:50 [INFO] [stderr] | [INFO] [stderr] 95 | pub fn new(inner: I) -> Repeat { Repeat { 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] --> src/adapt/mod.rs:138:58 [INFO] [stderr] | [INFO] [stderr] 138 | pub fn new(inner: T, limit: u64) -> Take { Take { inner: inner, limit: limit } } [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] --> src/adapt/mod.rs:138:72 [INFO] [stderr] | [INFO] [stderr] 138 | pub fn new(inner: T, limit: u64) -> Take { Take { inner: inner, limit: limit } } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `limit` [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] --> src/adapt/mod.rs:230:17 [INFO] [stderr] | [INFO] [stderr] 230 | Chain { first: first, second: second, done_first: false } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `first` [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] --> src/adapt/mod.rs:230:31 [INFO] [stderr] | [INFO] [stderr] 230 | Chain { first: first, second: second, done_first: false } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `second` [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] --> src/adapt/mod.rs:285:50 [INFO] [stderr] | [INFO] [stderr] 285 | pub fn new(inner: I) -> Compat { Compat { 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] --> src/iter.rs:17:48 [INFO] [stderr] | [INFO] [stderr] 17 | pub fn new(inner: R) -> Bytes { Bytes { inner: inner } } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/adapt/mod.rs:19:48 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn new(inner: I) -> Retry { Retry { 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] | [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] --> src/iter.rs:49:17 [INFO] [stderr] | [INFO] [stderr] 49 | Split { reader: reader, delim: delim, buf: Vec::new() } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `reader` [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] warning: redundant field names in struct initialization [INFO] [stderr] --> src/adapt/mod.rs:95:50 [INFO] [stderr] --> src/iter.rs:49:33 [INFO] [stderr] | [INFO] [stderr] | [INFO] [stderr] 49 | Split { reader: reader, delim: delim, buf: Vec::new() } [INFO] [stderr] 95 | pub fn new(inner: I) -> Repeat { Repeat { inner: inner } } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `delim` [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] | [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] --> src/adapt/mod.rs:138:58 [INFO] [stderr] | [INFO] [stderr] 138 | pub fn new(inner: T, limit: u64) -> Take { Take { inner: inner, limit: limit } } [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] --> src/adapt/mod.rs:138:72 [INFO] [stderr] | [INFO] [stderr] 138 | pub fn new(inner: T, limit: u64) -> Take { Take { inner: inner, limit: limit } } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `limit` [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] --> src/adapt/mod.rs:230:17 [INFO] [stderr] | [INFO] [stderr] 230 | Chain { first: first, second: second, done_first: false } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `first` [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] --> src/utf8/read.rs:49:58 [INFO] [stderr] | [INFO] [stderr] 49 | pub fn new(inner: I) -> Utf8Reader { Utf8Reader { inner: inner } } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/adapt/mod.rs:230:31 [INFO] [stderr] | [INFO] [stderr] 230 | Chain { first: first, second: second, done_first: false } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `second` [INFO] [stderr] | [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] = 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] --> src/adapt/mod.rs:285:50 [INFO] [stderr] | [INFO] [stderr] 285 | pub fn new(inner: I) -> Compat { Compat { 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] --> src/iter.rs:17:48 [INFO] [stderr] | [INFO] [stderr] 17 | pub fn new(inner: R) -> Bytes { Bytes { inner: inner } } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/utf8/read.rs:416:48 [INFO] [stderr] | [INFO] [stderr] 416 | pub fn new(inner: I) -> Chars { Chars { 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] | [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] --> src/iter.rs:49:17 [INFO] [stderr] | [INFO] [stderr] 49 | Split { reader: reader, delim: delim, buf: Vec::new() } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `reader` [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] --> src/iter.rs:49:33 [INFO] [stderr] | [INFO] [stderr] 49 | Split { reader: reader, delim: delim, buf: Vec::new() } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `delim` [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] --> src/utf8/read.rs:49:58 [INFO] [stderr] | [INFO] [stderr] 49 | pub fn new(inner: I) -> Utf8Reader { Utf8Reader { 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] --> src/utf8/read.rs:416:48 [INFO] [stderr] | [INFO] [stderr] 416 | pub fn new(inner: I) -> Chars { Chars { 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] --> src/mock.rs:9:19 [INFO] [stderr] | [INFO] [stderr] 9 | Limited { limit: limit, inner: self } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `limit` [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] --> src/mock.rs:16:21 [INFO] [stderr] | [INFO] [stderr] 16 | Throttled { rate: rate, inner: self } [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `rate` [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] --> src/mock.rs:27:19 [INFO] [stderr] | [INFO] [stderr] 27 | Limited { limit: limit, inner: self } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `limit` [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] --> src/mock.rs:9:19 [INFO] [stderr] | [INFO] [stderr] 9 | Limited { limit: limit, inner: self } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `limit` [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] --> src/mock.rs:16:21 [INFO] [stderr] | [INFO] [stderr] 16 | Throttled { rate: rate, inner: self } [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `rate` [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] --> src/mock.rs:27:19 [INFO] [stderr] | [INFO] [stderr] 27 | Limited { limit: limit, inner: self } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `limit` [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: long literal lacking separators [INFO] [stderr] --> src/mock.rs:80:21 [INFO] [stderr] | [INFO] [stderr] 80 | let nanos = 1000000000u64 * amt as u64 / self.rate as u64; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `1_000_000_000u64` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/mock.rs:81:51 [INFO] [stderr] | [INFO] [stderr] 81 | thread::sleep(time::Duration::new(nanos / 1000000000u64, (nanos % 1000000000u64) as u32)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `1_000_000_000u64` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/mock.rs:81:75 [INFO] [stderr] | [INFO] [stderr] 81 | thread::sleep(time::Duration::new(nanos / 1000000000u64, (nanos % 1000000000u64) as u32)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `1_000_000_000u64` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/mock.rs:80:21 [INFO] [stderr] | [INFO] [stderr] 80 | let nanos = 1000000000u64 * amt as u64 / self.rate as u64; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `1_000_000_000u64` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/mock.rs:81:51 [INFO] [stderr] | [INFO] [stderr] 81 | thread::sleep(time::Duration::new(nanos / 1000000000u64, (nanos % 1000000000u64) as u32)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `1_000_000_000u64` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/mock.rs:81:75 [INFO] [stderr] | [INFO] [stderr] 81 | thread::sleep(time::Duration::new(nanos / 1000000000u64, (nanos % 1000000000u64) as u32)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `1_000_000_000u64` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/adapt/mod.rs:262:24 [INFO] [stderr] | [INFO] [stderr] 262 | buf if buf.len() == 0 => { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `buf.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/iter.rs:25:24 [INFO] [stderr] | [INFO] [stderr] 25 | Ok(buf) if buf.len() == 0 => None, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `buf.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/iter.rs:107:16 [INFO] [stderr] | [INFO] [stderr] 107 | if try!(self.vec[0].fill_buf()).len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] help: using `is_empty` is clearer and more explicit [INFO] [stderr] | [INFO] [stderr] 107 | if match $ expr { [INFO] [stderr] 108 | $ crate :: result :: Result :: Ok ( val ) => val , $ crate :: result :: Result [INFO] [stderr] 109 | :: Err ( err ) => { [INFO] [stderr] 110 | return $ crate :: result :: Result :: Err ( [INFO] [stderr] 111 | $ crate :: convert :: From :: from ( err ) ) } }.is_empty() { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/utf8/read.rs:448:24 [INFO] [stderr] | [INFO] [stderr] 448 | Ok(buf) if buf.len() == 0 => return None, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `buf.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/utf8/read.rs:462:28 [INFO] [stderr] | [INFO] [stderr] 462 | Ok(buf) if buf.len() == 0 => { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `buf.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/utf8/read.rs:471:28 [INFO] [stderr] | [INFO] [stderr] 471 | Ok(buf) if buf.len() == 0 => panic!("Cannot happen: buffer must not be empty!"), [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `buf.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] error: use of `#[inline]` on trait method `consume` which has no body [INFO] [stderr] --> src/bufread.rs:60:5 [INFO] [stderr] | [INFO] [stderr] 60 | #[inline] [INFO] [stderr] | _____-^^^^^^^^ [INFO] [stderr] 61 | | fn consume(&mut self, amt: usize); [INFO] [stderr] | |____- help: remove [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::inline_fn_without_body)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inline_fn_without_body [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/bufread.rs:190:20 [INFO] [stderr] | [INFO] [stderr] 190 | if available.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `available.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/bufreadgrow.rs:124:20 [INFO] [stderr] | [INFO] [stderr] 124 | if available.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `available.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/bufreadgrow.rs:169:20 [INFO] [stderr] | [INFO] [stderr] 169 | if available.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `available.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/copy.rs:52:16 [INFO] [stderr] | [INFO] [stderr] 52 | if buf.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `buf.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/copy.rs:89:16 [INFO] [stderr] | [INFO] [stderr] 89 | if buf.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `buf.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/copy.rs:95:58 [INFO] [stderr] | [INFO] [stderr] 95 | let written = try!(writer.write(&buf[..i + 1])); [INFO] [stderr] | ^^^^^^^ help: use: `..=i` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::range_plus_one)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `netio`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/adapt/mod.rs:262:24 [INFO] [stderr] | [INFO] [stderr] 262 | buf if buf.len() == 0 => { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `buf.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/iter.rs:25:24 [INFO] [stderr] | [INFO] [stderr] 25 | Ok(buf) if buf.len() == 0 => None, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `buf.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/iter.rs:107:16 [INFO] [stderr] | [INFO] [stderr] 107 | if try!(self.vec[0].fill_buf()).len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] help: using `is_empty` is clearer and more explicit [INFO] [stderr] | [INFO] [stderr] 107 | if match $ expr { [INFO] [stderr] 108 | $ crate :: result :: Result :: Ok ( val ) => val , $ crate :: result :: Result [INFO] [stderr] 109 | :: Err ( err ) => { [INFO] [stderr] 110 | return $ crate :: result :: Result :: Err ( [INFO] [stderr] 111 | $ crate :: convert :: From :: from ( err ) ) } }.is_empty() { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/utf8/read.rs:448:24 [INFO] [stderr] | [INFO] [stderr] 448 | Ok(buf) if buf.len() == 0 => return None, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `buf.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/utf8/read.rs:462:28 [INFO] [stderr] | [INFO] [stderr] 462 | Ok(buf) if buf.len() == 0 => { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `buf.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/utf8/read.rs:471:28 [INFO] [stderr] | [INFO] [stderr] 471 | Ok(buf) if buf.len() == 0 => panic!("Cannot happen: buffer must not be empty!"), [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `buf.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 26 [INFO] [stderr] --> src/utf8/read.rs:797:5 [INFO] [stderr] | [INFO] [stderr] 797 | / fn test_iterator>>(mut chars: I) { [INFO] [stderr] 798 | | assert_eq!(chars.next().unwrap().unwrap(), 'A'); [INFO] [stderr] 799 | | assert_eq!(chars.next().unwrap().unwrap(), 'B'); [INFO] [stderr] 800 | | assert_eq!(chars.next().unwrap().unwrap(), 'C'); [INFO] [stderr] ... | [INFO] [stderr] 822 | | assert!(chars.next().is_none()); [INFO] [stderr] 823 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cyclomatic_complexity)] on by default [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] error: use of `#[inline]` on trait method `consume` which has no body [INFO] [stderr] --> src/bufread.rs:60:5 [INFO] [stderr] | [INFO] [stderr] 60 | #[inline] [INFO] [stderr] | _____-^^^^^^^^ [INFO] [stderr] 61 | | fn consume(&mut self, amt: usize); [INFO] [stderr] | |____- help: remove [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::inline_fn_without_body)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inline_fn_without_body [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/bufread.rs:190:20 [INFO] [stderr] | [INFO] [stderr] 190 | if available.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `available.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/bufreadgrow.rs:124:20 [INFO] [stderr] | [INFO] [stderr] 124 | if available.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `available.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/bufreadgrow.rs:169:20 [INFO] [stderr] | [INFO] [stderr] 169 | if available.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `available.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/copy.rs:52:16 [INFO] [stderr] | [INFO] [stderr] 52 | if buf.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `buf.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/copy.rs:89:16 [INFO] [stderr] | [INFO] [stderr] 89 | if buf.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `buf.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/copy.rs:95:58 [INFO] [stderr] | [INFO] [stderr] 95 | let written = try!(writer.write(&buf[..i + 1])); [INFO] [stderr] | ^^^^^^^ help: use: `..=i` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::range_plus_one)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `netio`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "4d1de854f519e6079f31024924c72686df4f1ce95d4890e3ffa62029a7f58b78"` [INFO] running `"docker" "rm" "-f" "4d1de854f519e6079f31024924c72686df4f1ce95d4890e3ffa62029a7f58b78"` [INFO] [stdout] 4d1de854f519e6079f31024924c72686df4f1ce95d4890e3ffa62029a7f58b78