[INFO] crate resolve 0.2.0 is already in cache [INFO] extracting crate resolve 0.2.0 into work/ex/clippy-test-run/sources/stable/reg/resolve/0.2.0 [INFO] extracting crate resolve 0.2.0 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/resolve/0.2.0 [INFO] validating manifest of resolve-0.2.0 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 resolve-0.2.0 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 resolve-0.2.0 [INFO] finished frobbing resolve-0.2.0 [INFO] frobbed toml for resolve-0.2.0 written to work/ex/clippy-test-run/sources/stable/reg/resolve/0.2.0/Cargo.toml [INFO] started frobbing resolve-0.2.0 [INFO] finished frobbing resolve-0.2.0 [INFO] frobbed toml for resolve-0.2.0 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/resolve/0.2.0/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 resolve-0.2.0 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-6/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/resolve/0.2.0:/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] 91ddd411bfecd481c859b2677e34d75c4ce93e11d66f055587d6d0ab27ac9a23 [INFO] running `"docker" "start" "-a" "91ddd411bfecd481c859b2677e34d75c4ce93e11d66f055587d6d0ab27ac9a23"` [INFO] [stderr] Checking resolve v0.2.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/config.rs:39:13 [INFO] [stderr] | [INFO] [stderr] 39 | name_servers: name_servers, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `name_servers` [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/hosts.rs:128:18 [INFO] [stderr] | [INFO] [stderr] 128 | Ok(HostTable{hosts: hosts}) [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `hosts` [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/message.rs:316:13 [INFO] [stderr] | [INFO] [stderr] 316 | id: id, [INFO] [stderr] | ^^^^^^ help: replace it with: `id` [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/message.rs:324:13 [INFO] [stderr] | [INFO] [stderr] 324 | qd_count: qd_count, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `qd_count` [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/message.rs:325:13 [INFO] [stderr] | [INFO] [stderr] 325 | an_count: an_count, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `an_count` [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/message.rs:326:13 [INFO] [stderr] | [INFO] [stderr] 326 | ns_count: ns_count, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `ns_count` [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/message.rs:327:13 [INFO] [stderr] | [INFO] [stderr] 327 | ar_count: ar_count, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `ar_count` [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/message.rs:345:13 [INFO] [stderr] | [INFO] [stderr] 345 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [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/message.rs:373:13 [INFO] [stderr] | [INFO] [stderr] 373 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [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/message.rs:376:13 [INFO] [stderr] | [INFO] [stderr] 376 | ttl: ttl, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `ttl` [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/message.rs:378:13 [INFO] [stderr] | [INFO] [stderr] 378 | offset: offset, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `offset` [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/message.rs:794:13 [INFO] [stderr] | [INFO] [stderr] 794 | id: id, [INFO] [stderr] | ^^^^^^ help: replace it with: `id` [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/message.rs:881:13 [INFO] [stderr] | [INFO] [stderr] 881 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [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/message.rs:882:13 [INFO] [stderr] | [INFO] [stderr] 882 | q_type: q_type, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `q_type` [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/message.rs:883:13 [INFO] [stderr] | [INFO] [stderr] 883 | q_class: q_class, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `q_class` [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/message.rs:910:13 [INFO] [stderr] | [INFO] [stderr] 910 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [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/message.rs:911:13 [INFO] [stderr] | [INFO] [stderr] 911 | r_type: r_type, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `r_type` [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/message.rs:912:13 [INFO] [stderr] | [INFO] [stderr] 912 | r_class: r_class, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `r_class` [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/message.rs:913:13 [INFO] [stderr] | [INFO] [stderr] 913 | ttl: ttl, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `ttl` [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/resolver.rs:41:13 [INFO] [stderr] | [INFO] [stderr] 41 | sock: sock, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `sock` [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/resolver.rs:42:13 [INFO] [stderr] | [INFO] [stderr] 42 | config: config, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `config` [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/config.rs:39:13 [INFO] [stderr] | [INFO] [stderr] 39 | name_servers: name_servers, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `name_servers` [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/hosts.rs:128:18 [INFO] [stderr] | [INFO] [stderr] 128 | Ok(HostTable{hosts: hosts}) [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `hosts` [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/message.rs:316:13 [INFO] [stderr] | [INFO] [stderr] 316 | id: id, [INFO] [stderr] | ^^^^^^ help: replace it with: `id` [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/message.rs:324:13 [INFO] [stderr] | [INFO] [stderr] 324 | qd_count: qd_count, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `qd_count` [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/message.rs:325:13 [INFO] [stderr] | [INFO] [stderr] 325 | an_count: an_count, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `an_count` [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/message.rs:326:13 [INFO] [stderr] | [INFO] [stderr] 326 | ns_count: ns_count, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `ns_count` [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/message.rs:327:13 [INFO] [stderr] | [INFO] [stderr] 327 | ar_count: ar_count, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `ar_count` [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/message.rs:345:13 [INFO] [stderr] | [INFO] [stderr] 345 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [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/message.rs:373:13 [INFO] [stderr] | [INFO] [stderr] 373 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [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/message.rs:376:13 [INFO] [stderr] | [INFO] [stderr] 376 | ttl: ttl, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `ttl` [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/message.rs:378:13 [INFO] [stderr] | [INFO] [stderr] 378 | offset: offset, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `offset` [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/message.rs:794:13 [INFO] [stderr] | [INFO] [stderr] 794 | id: id, [INFO] [stderr] | ^^^^^^ help: replace it with: `id` [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/message.rs:881:13 [INFO] [stderr] | [INFO] [stderr] 881 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [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/message.rs:882:13 [INFO] [stderr] | [INFO] [stderr] 882 | q_type: q_type, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `q_type` [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/message.rs:883:13 [INFO] [stderr] | [INFO] [stderr] 883 | q_class: q_class, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `q_class` [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/message.rs:910:13 [INFO] [stderr] | [INFO] [stderr] 910 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [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/message.rs:911:13 [INFO] [stderr] | [INFO] [stderr] 911 | r_type: r_type, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `r_type` [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/message.rs:912:13 [INFO] [stderr] | [INFO] [stderr] 912 | r_class: r_class, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `r_class` [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/message.rs:913:13 [INFO] [stderr] | [INFO] [stderr] 913 | ttl: ttl, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `ttl` [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/resolver.rs:41:13 [INFO] [stderr] | [INFO] [stderr] 41 | sock: sock, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `sock` [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/resolver.rs:42:13 [INFO] [stderr] | [INFO] [stderr] 42 | config: config, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `config` [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/message.rs:200:33 [INFO] [stderr] | [INFO] [stderr] 200 | let hi = (len & 0b00111111) as u64; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b0011_1111` [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/message.rs:293:31 [INFO] [stderr] | [INFO] [stderr] 293 | let qr = hdr.flags0 & 0b10000000; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b1000_0000` [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/message.rs:295:31 [INFO] [stderr] | [INFO] [stderr] 295 | let op = hdr.flags0 & 0b01111000; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b0111_1000` [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/message.rs:297:31 [INFO] [stderr] | [INFO] [stderr] 297 | let aa = hdr.flags0 & 0b00000100; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b0000_0100` [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/message.rs:299:31 [INFO] [stderr] | [INFO] [stderr] 299 | let tc = hdr.flags0 & 0b00000010; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b0000_0010` [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/message.rs:301:31 [INFO] [stderr] | [INFO] [stderr] 301 | let rd = hdr.flags0 & 0b00000001; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b0000_0001` [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/message.rs:304:31 [INFO] [stderr] | [INFO] [stderr] 304 | let ra = hdr.flags1 & 0b10000000; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b1000_0000` [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/message.rs:308:31 [INFO] [stderr] | [INFO] [stderr] 308 | let rc = hdr.flags1 & 0b00001111; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b0000_1111` [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: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/resolv_conf.rs:37:30 [INFO] [stderr] | [INFO] [stderr] 37 | pub const RESOLV_CONF_PATH: &'static str = "/etc/resolv.conf"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::const_static_lifetime)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead [INFO] [stderr] --> src/idna.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead [INFO] [stderr] --> src/message.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/message.rs:200:33 [INFO] [stderr] | [INFO] [stderr] 200 | let hi = (len & 0b00111111) as u64; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b0011_1111` [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/message.rs:293:31 [INFO] [stderr] | [INFO] [stderr] 293 | let qr = hdr.flags0 & 0b10000000; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b1000_0000` [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/message.rs:295:31 [INFO] [stderr] | [INFO] [stderr] 295 | let op = hdr.flags0 & 0b01111000; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b0111_1000` [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/message.rs:297:31 [INFO] [stderr] | [INFO] [stderr] 297 | let aa = hdr.flags0 & 0b00000100; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b0000_0100` [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/message.rs:299:31 [INFO] [stderr] | [INFO] [stderr] 299 | let tc = hdr.flags0 & 0b00000010; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b0000_0010` [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/message.rs:301:31 [INFO] [stderr] | [INFO] [stderr] 301 | let rd = hdr.flags0 & 0b00000001; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b0000_0001` [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/message.rs:304:31 [INFO] [stderr] | [INFO] [stderr] 304 | let ra = hdr.flags1 & 0b10000000; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b1000_0000` [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/message.rs:308:31 [INFO] [stderr] | [INFO] [stderr] 308 | let rc = hdr.flags1 & 0b00001111; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b0000_1111` [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/message.rs:1147:17 [INFO] [stderr] | [INFO] [stderr] 1147 | 0b00000001, 0b10000000, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b0000_0001` [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/message.rs:1147:29 [INFO] [stderr] | [INFO] [stderr] 1147 | 0b00000001, 0b10000000, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0b1000_0000` [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/message.rs:1166:21 [INFO] [stderr] | [INFO] [stderr] 1166 | w.write_u32(0x44556677).unwrap(); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x4455_6677` [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/message.rs:1190:37 [INFO] [stderr] | [INFO] [stderr] 1190 | assert_eq!(r.read_u32(), Ok(0x44556677)); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x4455_6677` [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: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/message.rs:1196:26 [INFO] [stderr] | [INFO] [stderr] 1196 | const LONGEST_NAME: &'static str = [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::const_static_lifetime)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/message.rs:1203:30 [INFO] [stderr] | [INFO] [stderr] 1203 | const LONGEST_NAME_DOT: &'static str = [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/message.rs:1210:27 [INFO] [stderr] | [INFO] [stderr] 1210 | const TOO_LONG_NAME: &'static str = [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/message.rs:1217:31 [INFO] [stderr] | [INFO] [stderr] 1217 | const TOO_LONG_NAME_DOT: &'static str = [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/message.rs:1224:30 [INFO] [stderr] | [INFO] [stderr] 1224 | const TOO_LONG_SEGMENT: &'static str = [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/resolv_conf.rs:37:30 [INFO] [stderr] | [INFO] [stderr] 37 | pub const RESOLV_CONF_PATH: &'static str = "/etc/resolv.conf"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/resolv_conf.rs:154:25 [INFO] [stderr] | [INFO] [stderr] 154 | const TEST_CONFIG: &'static str = "\ [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead [INFO] [stderr] --> src/idna.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead [INFO] [stderr] --> src/message.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::ascii::AsciiExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: slow zero-filling initialization [INFO] [stderr] --> src/message.rs:124:9 [INFO] [stderr] | [INFO] [stderr] 123 | let mut res = Vec::with_capacity(self.remaining()); [INFO] [stderr] | ------------------------------------ help: consider replace allocation with: `vec![0; self.remaining()]` [INFO] [stderr] 124 | res.resize(self.remaining(), 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::slow_vector_initialization)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#slow_vector_initialization [INFO] [stderr] [INFO] [stderr] warning: slow zero-filling initialization [INFO] [stderr] --> src/message.rs:140:9 [INFO] [stderr] | [INFO] [stderr] 139 | let mut res = Vec::with_capacity(length_octet); [INFO] [stderr] | -------------------------------- help: consider replace allocation with: `vec![0; length_octet]` [INFO] [stderr] 140 | res.resize(length_octet, 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#slow_vector_initialization [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/message.rs:200:26 [INFO] [stderr] | [INFO] [stderr] 200 | let hi = (len & 0b00111111) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(len & 0b00111111)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/message.rs:201:26 [INFO] [stderr] | [INFO] [stderr] 201 | let lo = try!(self.read_byte()) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 201 | let lo = u64::from(match $ expr { [INFO] [stderr] 202 | $ crate :: result :: Result :: Ok ( val ) => val , $ crate :: result :: Result [INFO] [stderr] 203 | :: Err ( err ) => { [INFO] [stderr] 204 | return $ crate :: result :: Result :: Err ( [INFO] [stderr] 205 | $ crate :: convert :: From :: from ( err ) ) } }); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/message.rs:370:22 [INFO] [stderr] | [INFO] [stderr] 370 | self.consume(length as u64); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u64::from(length)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/message.rs:981:18 [INFO] [stderr] | [INFO] [stderr] 981 | pub fn to_u8(&self) -> u8 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [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] --> src/message.rs:1015:22 [INFO] [stderr] | [INFO] [stderr] 1015 | pub fn get_error(&self) -> &'static str { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [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] --> src/message.rs:1041:18 [INFO] [stderr] | [INFO] [stderr] 1041 | pub fn to_u8(&self) -> u8 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [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] --> src/record.rs:30:19 [INFO] [stderr] | [INFO] [stderr] 30 | pub fn to_u16(&self) -> u16 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [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: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/resolv_conf.rs:79:17 [INFO] [stderr] | [INFO] [stderr] 79 | / match words.next() { [INFO] [stderr] 80 | | Some(ip) => { [INFO] [stderr] 81 | | if cfg.name_servers.len() < MAX_NAME_SERVERS { [INFO] [stderr] 82 | | if let Ok(ip) = ip.parse::() { [INFO] [stderr] ... | [INFO] [stderr] 87 | | None => () [INFO] [stderr] 88 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 79 | if let Some(ip) = words.next() { [INFO] [stderr] 80 | if cfg.name_servers.len() < MAX_NAME_SERVERS { [INFO] [stderr] 81 | if let Ok(ip) = ip.parse::() { [INFO] [stderr] 82 | cfg.name_servers.push(SocketAddr::new(ip, DNS_PORT)) [INFO] [stderr] 83 | } [INFO] [stderr] 84 | } [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/resolv_conf.rs:91:17 [INFO] [stderr] | [INFO] [stderr] 91 | / match words.next() { [INFO] [stderr] 92 | | Some(domain) => cfg.search = vec![domain.to_owned()], [INFO] [stderr] 93 | | None => () [INFO] [stderr] 94 | | } [INFO] [stderr] | |_________________^ help: try this: `if let Some(domain) = words.next() { cfg.search = vec![domain.to_owned()] }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] [INFO] [stderr] warning: use of `or` followed by a function call [INFO] [stderr] --> src/resolver.rs:88:35 [INFO] [stderr] | [INFO] [stderr] 88 | err = err.or(self.resolve_host_v4(&name, [INFO] [stderr] | ___________________________________^ [INFO] [stderr] 89 | | |ip| res.push(IpAddr::V6(ip.to_ipv6_mapped()))).err()); [INFO] [stderr] | |__________________________________________________________________________________^ [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] help: try this [INFO] [stderr] | [INFO] [stderr] 88 | err = err.or_else(|| self.resolve_host_v4(&name, [INFO] [stderr] 89 | |ip| res.push(IpAddr::V6(ip.to_ipv6_mapped()))).err()); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of `or` followed by a function call [INFO] [stderr] --> src/resolver.rs:93:31 [INFO] [stderr] | [INFO] [stderr] 93 | err = err.or(self.resolve_host_v6(&name, [INFO] [stderr] | _______________________________^ [INFO] [stderr] 94 | | |ip| res.push(IpAddr::V6(ip))).err()); [INFO] [stderr] | |_____________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 93 | err = err.or_else(|| self.resolve_host_v6(&name, [INFO] [stderr] 94 | |ip| res.push(IpAddr::V6(ip))).err()); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::drop` with a reference instead of an owned value. Dropping a reference does nothing. [INFO] [stderr] --> src/resolver.rs:190:9 [INFO] [stderr] | [INFO] [stderr] 190 | drop(buf); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::drop_ref)] on by default [INFO] [stderr] note: argument has type &'buf mut [u8] [INFO] [stderr] --> src/resolver.rs:190:14 [INFO] [stderr] | [INFO] [stderr] 190 | drop(buf); [INFO] [stderr] | ^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#drop_ref [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/resolver.rs:223:29 [INFO] [stderr] | [INFO] [stderr] 223 | timeout = timeout - passed; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `timeout -= passed` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `resolve`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: slow zero-filling initialization [INFO] [stderr] --> src/message.rs:124:9 [INFO] [stderr] | [INFO] [stderr] 123 | let mut res = Vec::with_capacity(self.remaining()); [INFO] [stderr] | ------------------------------------ help: consider replace allocation with: `vec![0; self.remaining()]` [INFO] [stderr] 124 | res.resize(self.remaining(), 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::slow_vector_initialization)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#slow_vector_initialization [INFO] [stderr] [INFO] [stderr] warning: slow zero-filling initialization [INFO] [stderr] --> src/message.rs:140:9 [INFO] [stderr] | [INFO] [stderr] 139 | let mut res = Vec::with_capacity(length_octet); [INFO] [stderr] | -------------------------------- help: consider replace allocation with: `vec![0; length_octet]` [INFO] [stderr] 140 | res.resize(length_octet, 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#slow_vector_initialization [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/message.rs:200:26 [INFO] [stderr] | [INFO] [stderr] 200 | let hi = (len & 0b00111111) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(len & 0b00111111)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/message.rs:201:26 [INFO] [stderr] | [INFO] [stderr] 201 | let lo = try!(self.read_byte()) as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 201 | let lo = u64::from(match $ expr { [INFO] [stderr] 202 | $ crate :: result :: Result :: Ok ( val ) => val , $ crate :: result :: Result [INFO] [stderr] 203 | :: Err ( err ) => { [INFO] [stderr] 204 | return $ crate :: result :: Result :: Err ( [INFO] [stderr] 205 | $ crate :: convert :: From :: from ( err ) ) } }); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u64 may become silently lossy if types change [INFO] [stderr] --> src/message.rs:370:22 [INFO] [stderr] | [INFO] [stderr] 370 | self.consume(length as u64); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u64::from(length)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/message.rs:981:18 [INFO] [stderr] | [INFO] [stderr] 981 | pub fn to_u8(&self) -> u8 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [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] --> src/message.rs:1015:22 [INFO] [stderr] | [INFO] [stderr] 1015 | pub fn get_error(&self) -> &'static str { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [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] --> src/message.rs:1041:18 [INFO] [stderr] | [INFO] [stderr] 1041 | pub fn to_u8(&self) -> u8 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [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] --> src/record.rs:30:19 [INFO] [stderr] | [INFO] [stderr] 30 | pub fn to_u16(&self) -> u16 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [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: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/resolv_conf.rs:79:17 [INFO] [stderr] | [INFO] [stderr] 79 | / match words.next() { [INFO] [stderr] 80 | | Some(ip) => { [INFO] [stderr] 81 | | if cfg.name_servers.len() < MAX_NAME_SERVERS { [INFO] [stderr] 82 | | if let Ok(ip) = ip.parse::() { [INFO] [stderr] ... | [INFO] [stderr] 87 | | None => () [INFO] [stderr] 88 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 79 | if let Some(ip) = words.next() { [INFO] [stderr] 80 | if cfg.name_servers.len() < MAX_NAME_SERVERS { [INFO] [stderr] 81 | if let Ok(ip) = ip.parse::() { [INFO] [stderr] 82 | cfg.name_servers.push(SocketAddr::new(ip, DNS_PORT)) [INFO] [stderr] 83 | } [INFO] [stderr] 84 | } [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/resolv_conf.rs:91:17 [INFO] [stderr] | [INFO] [stderr] 91 | / match words.next() { [INFO] [stderr] 92 | | Some(domain) => cfg.search = vec![domain.to_owned()], [INFO] [stderr] 93 | | None => () [INFO] [stderr] 94 | | } [INFO] [stderr] | |_________________^ help: try this: `if let Some(domain) = words.next() { cfg.search = vec![domain.to_owned()] }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] [INFO] [stderr] warning: use of `or` followed by a function call [INFO] [stderr] --> src/resolver.rs:88:35 [INFO] [stderr] | [INFO] [stderr] 88 | err = err.or(self.resolve_host_v4(&name, [INFO] [stderr] | ___________________________________^ [INFO] [stderr] 89 | | |ip| res.push(IpAddr::V6(ip.to_ipv6_mapped()))).err()); [INFO] [stderr] | |__________________________________________________________________________________^ [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] help: try this [INFO] [stderr] | [INFO] [stderr] 88 | err = err.or_else(|| self.resolve_host_v4(&name, [INFO] [stderr] 89 | |ip| res.push(IpAddr::V6(ip.to_ipv6_mapped()))).err()); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of `or` followed by a function call [INFO] [stderr] --> src/resolver.rs:93:31 [INFO] [stderr] | [INFO] [stderr] 93 | err = err.or(self.resolve_host_v6(&name, [INFO] [stderr] | _______________________________^ [INFO] [stderr] 94 | | |ip| res.push(IpAddr::V6(ip))).err()); [INFO] [stderr] | |_____________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 93 | err = err.or_else(|| self.resolve_host_v6(&name, [INFO] [stderr] 94 | |ip| res.push(IpAddr::V6(ip))).err()); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::drop` with a reference instead of an owned value. Dropping a reference does nothing. [INFO] [stderr] --> src/resolver.rs:190:9 [INFO] [stderr] | [INFO] [stderr] 190 | drop(buf); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::drop_ref)] on by default [INFO] [stderr] note: argument has type &'buf mut [u8] [INFO] [stderr] --> src/resolver.rs:190:14 [INFO] [stderr] | [INFO] [stderr] 190 | drop(buf); [INFO] [stderr] | ^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#drop_ref [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/resolver.rs:223:29 [INFO] [stderr] | [INFO] [stderr] 223 | timeout = timeout - passed; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `timeout -= passed` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `resolve`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "91ddd411bfecd481c859b2677e34d75c4ce93e11d66f055587d6d0ab27ac9a23"` [INFO] running `"docker" "rm" "-f" "91ddd411bfecd481c859b2677e34d75c4ce93e11d66f055587d6d0ab27ac9a23"` [INFO] [stdout] 91ddd411bfecd481c859b2677e34d75c4ce93e11d66f055587d6d0ab27ac9a23