[INFO] updating cached repository PritiKumr/rust-httpd [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/PritiKumr/rust-httpd [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/PritiKumr/rust-httpd" "work/ex/clippy-test-run/sources/stable/gh/PritiKumr/rust-httpd"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/PritiKumr/rust-httpd'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/PritiKumr/rust-httpd" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/PritiKumr/rust-httpd"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/PritiKumr/rust-httpd'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 5c1708493a0b3a296fe2c6081eb4f70f0e86c1eb [INFO] sha for GitHub repo PritiKumr/rust-httpd: 5c1708493a0b3a296fe2c6081eb4f70f0e86c1eb [INFO] validating manifest of PritiKumr/rust-httpd 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 PritiKumr/rust-httpd 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 PritiKumr/rust-httpd [INFO] finished frobbing PritiKumr/rust-httpd [INFO] frobbed toml for PritiKumr/rust-httpd written to work/ex/clippy-test-run/sources/stable/gh/PritiKumr/rust-httpd/Cargo.toml [INFO] started frobbing PritiKumr/rust-httpd [INFO] finished frobbing PritiKumr/rust-httpd [INFO] frobbed toml for PritiKumr/rust-httpd written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/PritiKumr/rust-httpd/Cargo.toml [INFO] crate PritiKumr/rust-httpd 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 PritiKumr/rust-httpd against stable+rustflags=-Dclippy::into_iter_on_array for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-4/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/PritiKumr/rust-httpd:/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 -Dclippy::into_iter_on_array" "-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] 4fcef0870a7568788b2d681f4704de8dd7b1e834717c04be500d2d0370a09db7 [INFO] running `"docker" "start" "-a" "4fcef0870a7568788b2d681f4704de8dd7b1e834717c04be500d2d0370a09db7"` [INFO] [stderr] Checking rust-httpd v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:109:5 [INFO] [stderr] | [INFO] [stderr] 109 | return headers; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `headers` [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/main.rs:130:21 [INFO] [stderr] | [INFO] [stderr] 130 | return Some(path); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some(path)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:133:19 [INFO] [stderr] | [INFO] [stderr] 133 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:138:13 [INFO] [stderr] | [INFO] [stderr] 138 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:153:5 [INFO] [stderr] | [INFO] [stderr] 153 | return buff; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `buff` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:109:5 [INFO] [stderr] | [INFO] [stderr] 109 | return headers; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `headers` [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/main.rs:130:21 [INFO] [stderr] | [INFO] [stderr] 130 | return Some(path); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some(path)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:133:19 [INFO] [stderr] | [INFO] [stderr] 133 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:138:13 [INFO] [stderr] | [INFO] [stderr] 138 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:153:5 [INFO] [stderr] | [INFO] [stderr] 153 | return buff; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `buff` [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: unused variable: `i` [INFO] [stderr] --> src/main.rs:68:10 [INFO] [stderr] | [INFO] [stderr] 68 | for (i, &item) in request.headers.iter().enumerate() { [INFO] [stderr] | ^ help: consider using `_i` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `body_length` [INFO] [stderr] --> src/main.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | let body_length: u32 = match req.headers.iter().find(|&&header| header.name == "Content-Length") { [INFO] [stderr] | ^^^^^^^^^^^ help: consider using `_body_length` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/main.rs:68:10 [INFO] [stderr] | [INFO] [stderr] 68 | for (i, &item) in request.headers.iter().enumerate() { [INFO] [stderr] | ^ help: consider using `_i` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `body_length` [INFO] [stderr] --> src/main.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | let body_length: u32 = match req.headers.iter().find(|&&header| header.name == "Content-Length") { [INFO] [stderr] | ^^^^^^^^^^^ help: consider using `_body_length` instead [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:156:19 [INFO] [stderr] | [INFO] [stderr] 156 | fn handle_request(mut stream: TcpStream, client_addr: SocketAddr) { [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_mut)] on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `request_url` [INFO] [stderr] --> src/main.rs:122:1 [INFO] [stderr] | [INFO] [stderr] 122 | fn request_url(buffer: &[u8]) -> Option<&str> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/main.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | stream.write(response).expect("Write failed"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::unused_io_amount)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/main.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | stream.write(&buffer).expect("Write failed"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/main.rs:28:57 [INFO] [stderr] | [INFO] [stderr] 28 | let path_components: Vec<&str> = req_path.splitn(2, "/").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] warning: called `.get().unwrap()` on a Vec. Using `[]` is more clear and more concise [INFO] [stderr] --> src/main.rs:30:37 [INFO] [stderr] | [INFO] [stderr] 30 | let (script_name, path_info) = (path_components.get(0).unwrap(), path_components.get(1).unwrap_or(&default_path)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&path_components[0]` [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] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/main.rs:46:17 [INFO] [stderr] | [INFO] [stderr] 46 | stream.write(&output.stdout).expect("Command failed"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/main.rs:48:17 [INFO] [stderr] | [INFO] [stderr] 48 | stream.write(&output.stderr).expect("Stderr"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:156:19 [INFO] [stderr] | [INFO] [stderr] 156 | fn handle_request(mut stream: TcpStream, client_addr: SocketAddr) { [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_mut)] on by default [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/main.rs:65:71 [INFO] [stderr] | [INFO] [stderr] 65 | fn build_cgi_meta_vars<'a>(request: &'a httparse::Request, client_ip: &'a String, script_name: &'a str, path_info: &'a str) -> Vec<(&'a str, &'a str)> { [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: function is never used: `request_url` [INFO] [stderr] --> src/main.rs:122:1 [INFO] [stderr] | [INFO] [stderr] 122 | fn request_url(buffer: &[u8]) -> Option<&str> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/main.rs:69:9 [INFO] [stderr] | [INFO] [stderr] 69 | / match &item.name { [INFO] [stderr] 70 | | &"Authorization" => headers.push(("AUTH_TYPE", str::from_utf8(&item.value).unwrap())), [INFO] [stderr] 71 | | &"Content-Length" => headers.push(("CONTENT_LENGTH", str::from_utf8(&item.value).unwrap())), [INFO] [stderr] 72 | | &"Content-Type" => headers.push(("CONTENT_TYPE", str::from_utf8(&item.value).unwrap())), [INFO] [stderr] ... | [INFO] [stderr] 86 | | _ => {}, [INFO] [stderr] 87 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/main.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | stream.write(response).expect("Write failed"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] = note: #[deny(clippy::unused_io_amount)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 69 | match item.name { [INFO] [stderr] 70 | "Authorization" => headers.push(("AUTH_TYPE", str::from_utf8(&item.value).unwrap())), [INFO] [stderr] 71 | "Content-Length" => headers.push(("CONTENT_LENGTH", str::from_utf8(&item.value).unwrap())), [INFO] [stderr] 72 | "Content-Type" => headers.push(("CONTENT_TYPE", str::from_utf8(&item.value).unwrap())), [INFO] [stderr] 73 | "Host" => { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/main.rs:114:5 [INFO] [stderr] | [INFO] [stderr] 114 | stream.write(response).expect("Write failed"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/main.rs:119:5 [INFO] [stderr] | [INFO] [stderr] 119 | stream.write(response).expect("Write failed"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/main.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | stream.write(&buffer).expect("Write failed"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:160:5 [INFO] [stderr] | [INFO] [stderr] 160 | req.parse(&request_bytes); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_must_use)] on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/main.rs:28:57 [INFO] [stderr] | [INFO] [stderr] 28 | let path_components: Vec<&str> = req_path.splitn(2, "/").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] warning: called `.get().unwrap()` on a Vec. Using `[]` is more clear and more concise [INFO] [stderr] --> src/main.rs:30:37 [INFO] [stderr] | [INFO] [stderr] 30 | let (script_name, path_info) = (path_components.get(0).unwrap(), path_components.get(1).unwrap_or(&default_path)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&path_components[0]` [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] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/main.rs:46:17 [INFO] [stderr] | [INFO] [stderr] 46 | stream.write(&output.stdout).expect("Command failed"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/main.rs:48:17 [INFO] [stderr] | [INFO] [stderr] 48 | stream.write(&output.stderr).expect("Stderr"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] error: aborting due to 6 previous errors [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/main.rs:65:71 [INFO] [stderr] | [INFO] [stderr] 65 | fn build_cgi_meta_vars<'a>(request: &'a httparse::Request, client_ip: &'a String, script_name: &'a str, path_info: &'a str) -> Vec<(&'a str, &'a str)> { [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/main.rs:69:9 [INFO] [stderr] | [INFO] [stderr] 69 | / match &item.name { [INFO] [stderr] 70 | | &"Authorization" => headers.push(("AUTH_TYPE", str::from_utf8(&item.value).unwrap())), [INFO] [stderr] 71 | | &"Content-Length" => headers.push(("CONTENT_LENGTH", str::from_utf8(&item.value).unwrap())), [INFO] [stderr] 72 | | &"Content-Type" => headers.push(("CONTENT_TYPE", str::from_utf8(&item.value).unwrap())), [INFO] [stderr] ... | [INFO] [stderr] 86 | | _ => {}, [INFO] [stderr] 87 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 69 | match item.name { [INFO] [stderr] 70 | "Authorization" => headers.push(("AUTH_TYPE", str::from_utf8(&item.value).unwrap())), [INFO] [stderr] 71 | "Content-Length" => headers.push(("CONTENT_LENGTH", str::from_utf8(&item.value).unwrap())), [INFO] [stderr] 72 | "Content-Type" => headers.push(("CONTENT_TYPE", str::from_utf8(&item.value).unwrap())), [INFO] [stderr] 73 | "Host" => { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/main.rs:114:5 [INFO] [stderr] | [INFO] [stderr] 114 | stream.write(response).expect("Write failed"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/main.rs:119:5 [INFO] [stderr] | [INFO] [stderr] 119 | stream.write(response).expect("Write failed"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] error: Could not compile `rust-httpd`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:160:5 [INFO] [stderr] | [INFO] [stderr] 160 | req.parse(&request_bytes); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_must_use)] on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] error: aborting due to 6 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `rust-httpd`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "4fcef0870a7568788b2d681f4704de8dd7b1e834717c04be500d2d0370a09db7"` [INFO] running `"docker" "rm" "-f" "4fcef0870a7568788b2d681f4704de8dd7b1e834717c04be500d2d0370a09db7"` [INFO] [stdout] 4fcef0870a7568788b2d681f4704de8dd7b1e834717c04be500d2d0370a09db7