[INFO] updating cached repository juanibiapina/zas [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/juanibiapina/zas [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/juanibiapina/zas" "work/ex/clippy-test-run/sources/stable/gh/juanibiapina/zas"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/juanibiapina/zas'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/juanibiapina/zas" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/juanibiapina/zas"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/juanibiapina/zas'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] a1b024c22ff1c6e1dd3a7b7ea5c449a90fae4c35 [INFO] sha for GitHub repo juanibiapina/zas: a1b024c22ff1c6e1dd3a7b7ea5c449a90fae4c35 [INFO] validating manifest of juanibiapina/zas 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 juanibiapina/zas 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 juanibiapina/zas [INFO] finished frobbing juanibiapina/zas [INFO] frobbed toml for juanibiapina/zas written to work/ex/clippy-test-run/sources/stable/gh/juanibiapina/zas/Cargo.toml [INFO] started frobbing juanibiapina/zas [INFO] finished frobbing juanibiapina/zas [INFO] frobbed toml for juanibiapina/zas written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/juanibiapina/zas/Cargo.toml [INFO] crate juanibiapina/zas 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 juanibiapina/zas against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-7/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/juanibiapina/zas:/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] d172572e26c7e2e0f51d51794d77afb2c4997ac280cd3536e8471242ffd82239 [INFO] running `"docker" "start" "-a" "d172572e26c7e2e0f51d51794d77afb2c4997ac280cd3536e8471242ffd82239"` [INFO] [stderr] Checking tempdir v0.3.6 [INFO] [stderr] Checking zas v0.21.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/config.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | dns_port: dns_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `dns_port` [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/config.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | http_port: http_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `http_port` [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:23:13 [INFO] [stderr] | [INFO] [stderr] 23 | app_dir: app_dir, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `app_dir` [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:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | log_dir: log_dir, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `log_dir` [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/dns/question.rs:33:13 [INFO] [stderr] | [INFO] [stderr] 33 | 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/dns/question.rs:34:13 [INFO] [stderr] | [INFO] [stderr] 34 | rrtype: rrtype, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `rrtype` [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/dns/question.rs:35:13 [INFO] [stderr] | [INFO] [stderr] 35 | class: class, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `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/dns/header.rs:27:13 [INFO] [stderr] | [INFO] [stderr] 27 | 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/dns/header.rs:36:13 [INFO] [stderr] | [INFO] [stderr] 36 | question_count: question_count, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `question_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/dns/header.rs:37:13 [INFO] [stderr] | [INFO] [stderr] 37 | answer_count: answer_count, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `answer_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/dns/header.rs:38:13 [INFO] [stderr] | [INFO] [stderr] 38 | 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/dns/header.rs:39:13 [INFO] [stderr] | [INFO] [stderr] 39 | 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/dns/message.rs:30:13 [INFO] [stderr] | [INFO] [stderr] 30 | header: header, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `header` [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/dns/message.rs:31:13 [INFO] [stderr] | [INFO] [stderr] 31 | questions: questions, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `questions` [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/dns/server.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | thread: thread, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `thread` [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/dns/server.rs:55:21 [INFO] [stderr] | [INFO] [stderr] 55 | answers: answers, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `answers` [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/http/app_manager.rs:28:13 [INFO] [stderr] | [INFO] [stderr] 28 | apps: apps, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `apps` [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/http/dispatcher.rs:27:13 [INFO] [stderr] | [INFO] [stderr] 27 | app_manager: app_manager, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `app_manager` [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/http/dispatcher.rs:28:13 [INFO] [stderr] | [INFO] [stderr] 28 | handle: handle, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `handle` [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/http/server.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | thread: thread, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `thread` [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:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | dns_port: dns_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `dns_port` [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/config.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | http_port: http_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `http_port` [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:23:13 [INFO] [stderr] | [INFO] [stderr] 23 | app_dir: app_dir, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `app_dir` [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:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | log_dir: log_dir, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `log_dir` [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/dns/question.rs:33:13 [INFO] [stderr] | [INFO] [stderr] 33 | 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/dns/question.rs:34:13 [INFO] [stderr] | [INFO] [stderr] 34 | rrtype: rrtype, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `rrtype` [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/dns/question.rs:35:13 [INFO] [stderr] | [INFO] [stderr] 35 | class: class, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `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/dns/header.rs:27:13 [INFO] [stderr] | [INFO] [stderr] 27 | 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/dns/header.rs:36:13 [INFO] [stderr] | [INFO] [stderr] 36 | question_count: question_count, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `question_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/dns/header.rs:37:13 [INFO] [stderr] | [INFO] [stderr] 37 | answer_count: answer_count, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `answer_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/dns/header.rs:38:13 [INFO] [stderr] | [INFO] [stderr] 38 | 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/dns/header.rs:39:13 [INFO] [stderr] | [INFO] [stderr] 39 | 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/dns/message.rs:30:13 [INFO] [stderr] | [INFO] [stderr] 30 | header: header, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `header` [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/dns/message.rs:31:13 [INFO] [stderr] | [INFO] [stderr] 31 | questions: questions, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `questions` [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/dns/server.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | thread: thread, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `thread` [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/dns/server.rs:55:21 [INFO] [stderr] | [INFO] [stderr] 55 | answers: answers, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `answers` [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/http/app_manager.rs:28:13 [INFO] [stderr] | [INFO] [stderr] 28 | apps: apps, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `apps` [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/http/dispatcher.rs:27:13 [INFO] [stderr] | [INFO] [stderr] 27 | app_manager: app_manager, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `app_manager` [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/http/dispatcher.rs:28:13 [INFO] [stderr] | [INFO] [stderr] 28 | handle: handle, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `handle` [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/http/server.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | thread: thread, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `thread` [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] --> src/http/app_manager.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 46 | return Ok(xdg_dirs.place_config_file("apps.toml")?); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(xdg_dirs.place_config_file("apps.toml")?)` [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] --> src/http/dispatcher.rs:51:9 [INFO] [stderr] | [INFO] [stderr] 51 | return Box::new(futures::future::ok(response)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Box::new(futures::future::ok(response))` [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: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. [INFO] [stderr] --> src/config.rs:65:26 [INFO] [stderr] | [INFO] [stderr] 65 | let home_dir = match env::home_dir() { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/http/app_manager.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 46 | return Ok(xdg_dirs.place_config_file("apps.toml")?); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(xdg_dirs.place_config_file("apps.toml")?)` [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] --> src/http/dispatcher.rs:51:9 [INFO] [stderr] | [INFO] [stderr] 51 | return Box::new(futures::future::ok(response)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Box::new(futures::future::ok(response))` [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: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. [INFO] [stderr] --> src/config.rs:65:26 [INFO] [stderr] | [INFO] [stderr] 65 | let home_dir = match env::home_dir() { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/question.rs:26:27 [INFO] [stderr] | [INFO] [stderr] 26 | let rrtype: u16 = (buffer[offset] as u16) << 8 | buffer[offset+1] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset])` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/question.rs:26:58 [INFO] [stderr] | [INFO] [stderr] 26 | let rrtype: u16 = (buffer[offset] as u16) << 8 | buffer[offset+1] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset+1])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/question.rs:29:26 [INFO] [stderr] | [INFO] [stderr] 29 | let class: u16 = (buffer[offset] as u16) << 8 | buffer[offset+1] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/question.rs:29:57 [INFO] [stderr] | [INFO] [stderr] 29 | let class: u16 = (buffer[offset] as u16) << 8 | buffer[offset+1] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset+1])` [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: the operation is ineffective. Consider reducing it to `(self.ttl & (256 << 0))` [INFO] [stderr] --> src/dns/answer.rs:38:30 [INFO] [stderr] | [INFO] [stderr] 38 | buffer[offset + 3] = ((self.ttl & (256 << 0)) >> 0) as u8; [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: the operation is ineffective. Consider reducing it to `256` [INFO] [stderr] --> src/dns/answer.rs:38:43 [INFO] [stderr] | [INFO] [stderr] 38 | buffer[offset + 3] = ((self.ttl & (256 << 0)) >> 0) as u8; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:19:23 [INFO] [stderr] | [INFO] [stderr] 19 | let id: u16 = (buffer[offset + 0] as u16) << 8 | buffer[offset + 1] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 0])` [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: the operation is ineffective. Consider reducing it to `offset` [INFO] [stderr] --> src/dns/header.rs:19:31 [INFO] [stderr] | [INFO] [stderr] 19 | let id: u16 = (buffer[offset + 0] as u16) << 8 | buffer[offset + 1] as u16; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:19:58 [INFO] [stderr] | [INFO] [stderr] 19 | let id: u16 = (buffer[offset + 0] as u16) << 8 | buffer[offset + 1] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 1])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:20:25 [INFO] [stderr] | [INFO] [stderr] 20 | let body: u16 = (buffer[offset + 2] as u16) << 8 | buffer[offset + 3] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 2])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:20:60 [INFO] [stderr] | [INFO] [stderr] 20 | let body: u16 = (buffer[offset + 2] as u16) << 8 | buffer[offset + 3] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 3])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:21:35 [INFO] [stderr] | [INFO] [stderr] 21 | let question_count: u16 = (buffer[offset + 4] as u16) << 8 | buffer[offset + 5] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 4])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:21:70 [INFO] [stderr] | [INFO] [stderr] 21 | let question_count: u16 = (buffer[offset + 4] as u16) << 8 | buffer[offset + 5] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 5])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:22:33 [INFO] [stderr] | [INFO] [stderr] 22 | let answer_count: u16 = (buffer[offset + 6] as u16) << 8 | buffer[offset + 7] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 6])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:22:68 [INFO] [stderr] | [INFO] [stderr] 22 | let answer_count: u16 = (buffer[offset + 6] as u16) << 8 | buffer[offset + 7] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 7])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:23:29 [INFO] [stderr] | [INFO] [stderr] 23 | let ns_count: u16 = (buffer[offset + 8] as u16) << 8 | buffer[offset + 9] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 8])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:23:64 [INFO] [stderr] | [INFO] [stderr] 23 | let ns_count: u16 = (buffer[offset + 8] as u16) << 8 | buffer[offset + 9] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 9])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:24:29 [INFO] [stderr] | [INFO] [stderr] 24 | let ar_count: u16 = (buffer[offset + 10] as u16) << 8 | buffer[offset + 11] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 10])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:24:65 [INFO] [stderr] | [INFO] [stderr] 24 | let ar_count: u16 = (buffer[offset + 10] as u16) << 8 | buffer[offset + 11] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 11])` [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] error: this operation will always return zero. This is likely not the intended outcome [INFO] [stderr] --> src/dns/header.rs:30:35 [INFO] [stderr] | [INFO] [stderr] 30 | authoritative_answer: (body & (1 >> 10)) >> 10, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::erasing_op)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#erasing_op [INFO] [stderr] [INFO] [stderr] error: this operation will always return zero. This is likely not the intended outcome [INFO] [stderr] --> src/dns/header.rs:31:30 [INFO] [stderr] | [INFO] [stderr] 31 | truncation_flag: (body & (1 >> 9)) >> 9, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#erasing_op [INFO] [stderr] [INFO] [stderr] error: this operation will always return zero. This is likely not the intended outcome [INFO] [stderr] --> src/dns/header.rs:32:32 [INFO] [stderr] | [INFO] [stderr] 32 | recursion_desired: (body & (1 >> 8)) >> 8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#erasing_op [INFO] [stderr] [INFO] [stderr] error: this operation will always return zero. This is likely not the intended outcome [INFO] [stderr] --> src/dns/header.rs:33:34 [INFO] [stderr] | [INFO] [stderr] 33 | recursion_available: (body & (1 >> 7)) >> 7, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#erasing_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `(body & (15 << 0))` [INFO] [stderr] --> src/dns/header.rs:35:25 [INFO] [stderr] | [INFO] [stderr] 35 | error_code: (body & (15 << 0)) >> 0, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `15` [INFO] [stderr] --> src/dns/header.rs:35:33 [INFO] [stderr] | [INFO] [stderr] 35 | error_code: (body & (15 << 0)) >> 0, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/dns/header.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 52 | body = body | self.query_response << 15; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `body |= self.query_response << 15` [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] warning: manual implementation of an assign operation [INFO] [stderr] --> src/dns/header.rs:53:9 [INFO] [stderr] | [INFO] [stderr] 53 | body = body | self.operation_code << 11; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `body |= self.operation_code << 11` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/dns/header.rs:54:9 [INFO] [stderr] | [INFO] [stderr] 54 | body = body | self.authoritative_answer << 10; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `body |= self.authoritative_answer << 10` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/dns/header.rs:55:9 [INFO] [stderr] | [INFO] [stderr] 55 | body = body | self.truncation_flag << 9; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `body |= self.truncation_flag << 9` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/dns/header.rs:56:9 [INFO] [stderr] | [INFO] [stderr] 56 | body = body | self.recursion_desired << 8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `body |= self.recursion_desired << 8` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/dns/header.rs:57:9 [INFO] [stderr] | [INFO] [stderr] 57 | body = body | self.recursion_available << 7; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `body |= self.recursion_available << 7` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/dns/header.rs:58:9 [INFO] [stderr] | [INFO] [stderr] 58 | body = body | self.unused << 4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `body |= self.unused << 4` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/dns/header.rs:59:9 [INFO] [stderr] | [INFO] [stderr] 59 | body = body | self.error_code; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `body |= self.error_code` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a HashMap. Using `[]` is more clear and more concise [INFO] [stderr] --> src/http/app_manager.rs:37:21 [INFO] [stderr] | [INFO] [stderr] 37 | let port = *self.apps.get(app_name).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&self.apps[app_name]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::get_unwrap)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/http/dispatcher.rs:34:37 [INFO] [stderr] | [INFO] [stderr] 34 | let host_parts = host.split(".").collect::>(); [INFO] [stderr] | ^^^ help: try using a char instead: `'.'` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_char_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] error: aborting due to 4 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `zas`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/question.rs:26:27 [INFO] [stderr] | [INFO] [stderr] 26 | let rrtype: u16 = (buffer[offset] as u16) << 8 | buffer[offset+1] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset])` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/question.rs:26:58 [INFO] [stderr] | [INFO] [stderr] 26 | let rrtype: u16 = (buffer[offset] as u16) << 8 | buffer[offset+1] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset+1])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/question.rs:29:26 [INFO] [stderr] | [INFO] [stderr] 29 | let class: u16 = (buffer[offset] as u16) << 8 | buffer[offset+1] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/question.rs:29:57 [INFO] [stderr] | [INFO] [stderr] 29 | let class: u16 = (buffer[offset] as u16) << 8 | buffer[offset+1] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset+1])` [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: the operation is ineffective. Consider reducing it to `(self.ttl & (256 << 0))` [INFO] [stderr] --> src/dns/answer.rs:38:30 [INFO] [stderr] | [INFO] [stderr] 38 | buffer[offset + 3] = ((self.ttl & (256 << 0)) >> 0) as u8; [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: the operation is ineffective. Consider reducing it to `256` [INFO] [stderr] --> src/dns/answer.rs:38:43 [INFO] [stderr] | [INFO] [stderr] 38 | buffer[offset + 3] = ((self.ttl & (256 << 0)) >> 0) as u8; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:19:23 [INFO] [stderr] | [INFO] [stderr] 19 | let id: u16 = (buffer[offset + 0] as u16) << 8 | buffer[offset + 1] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 0])` [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: the operation is ineffective. Consider reducing it to `offset` [INFO] [stderr] --> src/dns/header.rs:19:31 [INFO] [stderr] | [INFO] [stderr] 19 | let id: u16 = (buffer[offset + 0] as u16) << 8 | buffer[offset + 1] as u16; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:19:58 [INFO] [stderr] | [INFO] [stderr] 19 | let id: u16 = (buffer[offset + 0] as u16) << 8 | buffer[offset + 1] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 1])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:20:25 [INFO] [stderr] | [INFO] [stderr] 20 | let body: u16 = (buffer[offset + 2] as u16) << 8 | buffer[offset + 3] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 2])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:20:60 [INFO] [stderr] | [INFO] [stderr] 20 | let body: u16 = (buffer[offset + 2] as u16) << 8 | buffer[offset + 3] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 3])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:21:35 [INFO] [stderr] | [INFO] [stderr] 21 | let question_count: u16 = (buffer[offset + 4] as u16) << 8 | buffer[offset + 5] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 4])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:21:70 [INFO] [stderr] | [INFO] [stderr] 21 | let question_count: u16 = (buffer[offset + 4] as u16) << 8 | buffer[offset + 5] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 5])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:22:33 [INFO] [stderr] | [INFO] [stderr] 22 | let answer_count: u16 = (buffer[offset + 6] as u16) << 8 | buffer[offset + 7] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 6])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:22:68 [INFO] [stderr] | [INFO] [stderr] 22 | let answer_count: u16 = (buffer[offset + 6] as u16) << 8 | buffer[offset + 7] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 7])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:23:29 [INFO] [stderr] | [INFO] [stderr] 23 | let ns_count: u16 = (buffer[offset + 8] as u16) << 8 | buffer[offset + 9] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 8])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:23:64 [INFO] [stderr] | [INFO] [stderr] 23 | let ns_count: u16 = (buffer[offset + 8] as u16) << 8 | buffer[offset + 9] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 9])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:24:29 [INFO] [stderr] | [INFO] [stderr] 24 | let ar_count: u16 = (buffer[offset + 10] as u16) << 8 | buffer[offset + 11] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 10])` [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: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/dns/header.rs:24:65 [INFO] [stderr] | [INFO] [stderr] 24 | let ar_count: u16 = (buffer[offset + 10] as u16) << 8 | buffer[offset + 11] as u16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u16::from(buffer[offset + 11])` [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] error: this operation will always return zero. This is likely not the intended outcome [INFO] [stderr] --> src/dns/header.rs:30:35 [INFO] [stderr] | [INFO] [stderr] 30 | authoritative_answer: (body & (1 >> 10)) >> 10, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::erasing_op)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#erasing_op [INFO] [stderr] [INFO] [stderr] error: this operation will always return zero. This is likely not the intended outcome [INFO] [stderr] --> src/dns/header.rs:31:30 [INFO] [stderr] | [INFO] [stderr] 31 | truncation_flag: (body & (1 >> 9)) >> 9, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#erasing_op [INFO] [stderr] [INFO] [stderr] error: this operation will always return zero. This is likely not the intended outcome [INFO] [stderr] --> src/dns/header.rs:32:32 [INFO] [stderr] | [INFO] [stderr] 32 | recursion_desired: (body & (1 >> 8)) >> 8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#erasing_op [INFO] [stderr] [INFO] [stderr] error: this operation will always return zero. This is likely not the intended outcome [INFO] [stderr] --> src/dns/header.rs:33:34 [INFO] [stderr] | [INFO] [stderr] 33 | recursion_available: (body & (1 >> 7)) >> 7, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#erasing_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `(body & (15 << 0))` [INFO] [stderr] --> src/dns/header.rs:35:25 [INFO] [stderr] | [INFO] [stderr] 35 | error_code: (body & (15 << 0)) >> 0, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `15` [INFO] [stderr] --> src/dns/header.rs:35:33 [INFO] [stderr] | [INFO] [stderr] 35 | error_code: (body & (15 << 0)) >> 0, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/dns/header.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 52 | body = body | self.query_response << 15; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `body |= self.query_response << 15` [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] warning: manual implementation of an assign operation [INFO] [stderr] --> src/dns/header.rs:53:9 [INFO] [stderr] | [INFO] [stderr] 53 | body = body | self.operation_code << 11; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `body |= self.operation_code << 11` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/dns/header.rs:54:9 [INFO] [stderr] | [INFO] [stderr] 54 | body = body | self.authoritative_answer << 10; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `body |= self.authoritative_answer << 10` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/dns/header.rs:55:9 [INFO] [stderr] | [INFO] [stderr] 55 | body = body | self.truncation_flag << 9; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `body |= self.truncation_flag << 9` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/dns/header.rs:56:9 [INFO] [stderr] | [INFO] [stderr] 56 | body = body | self.recursion_desired << 8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `body |= self.recursion_desired << 8` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/dns/header.rs:57:9 [INFO] [stderr] | [INFO] [stderr] 57 | body = body | self.recursion_available << 7; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `body |= self.recursion_available << 7` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/dns/header.rs:58:9 [INFO] [stderr] | [INFO] [stderr] 58 | body = body | self.unused << 4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `body |= self.unused << 4` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/dns/header.rs:59:9 [INFO] [stderr] | [INFO] [stderr] 59 | body = body | self.error_code; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `body |= self.error_code` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a HashMap. Using `[]` is more clear and more concise [INFO] [stderr] --> src/http/app_manager.rs:37:21 [INFO] [stderr] | [INFO] [stderr] 37 | let port = *self.apps.get(app_name).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&self.apps[app_name]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::get_unwrap)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/http/dispatcher.rs:34:37 [INFO] [stderr] | [INFO] [stderr] 34 | let host_parts = host.split(".").collect::>(); [INFO] [stderr] | ^^^ help: try using a char instead: `'.'` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_char_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] error: aborting due to 4 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `zas`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "d172572e26c7e2e0f51d51794d77afb2c4997ac280cd3536e8471242ffd82239"` [INFO] running `"docker" "rm" "-f" "d172572e26c7e2e0f51d51794d77afb2c4997ac280cd3536e8471242ffd82239"` [INFO] [stdout] d172572e26c7e2e0f51d51794d77afb2c4997ac280cd3536e8471242ffd82239