[INFO] updating cached repository cookpad/sds [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/cookpad/sds [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/cookpad/sds" "work/ex/clippy-test-run/sources/stable/gh/cookpad/sds"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/cookpad/sds'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/cookpad/sds" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/cookpad/sds"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/cookpad/sds'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 3fc514917af3068fc006e2e02e4b73fac7eb50cb [INFO] sha for GitHub repo cookpad/sds: 3fc514917af3068fc006e2e02e4b73fac7eb50cb [INFO] validating manifest of cookpad/sds 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 cookpad/sds 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 cookpad/sds [INFO] finished frobbing cookpad/sds [INFO] frobbed toml for cookpad/sds written to work/ex/clippy-test-run/sources/stable/gh/cookpad/sds/Cargo.toml [INFO] started frobbing cookpad/sds [INFO] finished frobbing cookpad/sds [INFO] frobbed toml for cookpad/sds written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/cookpad/sds/Cargo.toml [INFO] crate cookpad/sds 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 cookpad/sds against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-5/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/cookpad/sds:/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] 8ed41c32db3594f4e772caf02b8294b7a24ce04fc6d18280f85447eb8208389d [INFO] running `"docker" "start" "-a" "8ed41c32db3594f4e772caf02b8294b7a24ce04fc6d18280f85447eb8208389d"` [INFO] [stderr] Checking want v0.0.5 [INFO] [stderr] Checking rand v0.5.5 [INFO] [stderr] Checking regex v0.2.11 [INFO] [stderr] Checking tokio-threadpool v0.1.4 [INFO] [stderr] Checking h2 v0.1.10 [INFO] [stderr] Checking env_logger v0.5.10 [INFO] [stderr] Checking hmac v0.5.0 [INFO] [stderr] Checking tokio-fs v0.1.1 [INFO] [stderr] Checking tokio v0.1.7 [INFO] [stderr] Checking uuid v0.7.1 [INFO] [stderr] Checking tokio-core v0.1.17 [INFO] [stderr] Checking hyper v0.12.5 [INFO] [stderr] Checking tokio-proto v0.1.1 [INFO] [stderr] Checking tokio-tls v0.1.4 [INFO] [stderr] Checking hyper v0.11.27 [INFO] [stderr] Checking hyper-tls v0.1.3 [INFO] [stderr] Checking rusoto_credential v0.11.0 [INFO] [stderr] Checking rusoto_core v0.32.0 [INFO] [stderr] Checking rusoto_dynamodb v0.32.0 [INFO] [stderr] Checking sds v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/server.rs:153:9 [INFO] [stderr] | [INFO] [stderr] 153 | hosts: hosts, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `hosts` [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/server.rs:187:25 [INFO] [stderr] | [INFO] [stderr] 187 | resources: resources, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `resources` [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/server.rs:287:9 [INFO] [stderr] | [INFO] [stderr] 287 | last_check_in: last_check_in, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `last_check_in` [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/server.rs:288:9 [INFO] [stderr] | [INFO] [stderr] 288 | expire_time: expire_time, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `expire_time` [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/storage.rs:299:9 [INFO] [stderr] | [INFO] [stderr] 299 | port: port, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `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/storage.rs:311:9 [INFO] [stderr] | [INFO] [stderr] 311 | msg: msg, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `msg` [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: 5th binding whose name is just one char [INFO] [stderr] --> src/storage.rs:356:16 [INFO] [stderr] | [INFO] [stderr] 356 | Ok(u) => Ok(u), [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::many_single_char_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/v2xds.rs:132:13 [INFO] [stderr] | [INFO] [stderr] 132 | filter_metadata: filter_metadata, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `filter_metadata` [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/server.rs:153:9 [INFO] [stderr] | [INFO] [stderr] 153 | hosts: hosts, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `hosts` [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/server.rs:187:25 [INFO] [stderr] | [INFO] [stderr] 187 | resources: resources, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `resources` [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/server.rs:287:9 [INFO] [stderr] | [INFO] [stderr] 287 | last_check_in: last_check_in, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `last_check_in` [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/server.rs:288:9 [INFO] [stderr] | [INFO] [stderr] 288 | expire_time: expire_time, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `expire_time` [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/storage.rs:299:9 [INFO] [stderr] | [INFO] [stderr] 299 | port: port, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `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/storage.rs:311:9 [INFO] [stderr] | [INFO] [stderr] 311 | msg: msg, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `msg` [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: 5th binding whose name is just one char [INFO] [stderr] --> src/storage.rs:356:16 [INFO] [stderr] | [INFO] [stderr] 356 | Ok(u) => Ok(u), [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::many_single_char_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/v2xds.rs:132:13 [INFO] [stderr] | [INFO] [stderr] 132 | filter_metadata: filter_metadata, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `filter_metadata` [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/server.rs:106:28 [INFO] [stderr] | [INFO] [stderr] 106 | Some(m) => return register_hosts(s, req, m.as_str().to_string()), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `register_hosts(s, req, m.as_str().to_string())` [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: All variants have the same postfix: `Error` [INFO] [stderr] --> src/storage.rs:14:1 [INFO] [stderr] | [INFO] [stderr] 14 | / enum ErrorKind { [INFO] [stderr] 15 | | ApiError, [INFO] [stderr] 16 | | DataError, [INFO] [stderr] 17 | | SystemError, [INFO] [stderr] 18 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::enum_variant_names)] on by default [INFO] [stderr] = help: remove the postfixes and use full paths to the variants instead of glob imports [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#enum_variant_names [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/storage.rs:161:29 [INFO] [stderr] | [INFO] [stderr] 161 | return Ok(Some(h)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(Some(h))` [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/storage.rs:163:29 [INFO] [stderr] | [INFO] [stderr] 163 | return Ok(None); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(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/storage.rs:166:29 [INFO] [stderr] | [INFO] [stderr] 166 | None => return Ok(None), [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(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/storage.rs:170:17 [INFO] [stderr] | [INFO] [stderr] 170 | / return Err(StorageError { [INFO] [stderr] 171 | | kind: ErrorKind::ApiError, [INFO] [stderr] 172 | | msg: format!("API Error in delete_item: {}", e.to_string()), [INFO] [stderr] 173 | | }) [INFO] [stderr] | |__________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 170 | Err(StorageError { [INFO] [stderr] 171 | kind: ErrorKind::ApiError, [INFO] [stderr] 172 | msg: format!("API Error in delete_item: {}", e.to_string()), [INFO] [stderr] 173 | }) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/v2xds.rs:7:26 [INFO] [stderr] | [INFO] [stderr] 7 | pub const EDS_TYPE_URL: &'static str = "type.googleapis.com/envoy.api.v2.ClusterLoadAssignment"; [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: unneeded return statement [INFO] [stderr] --> src/server.rs:106:28 [INFO] [stderr] | [INFO] [stderr] 106 | Some(m) => return register_hosts(s, req, m.as_str().to_string()), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `register_hosts(s, req, m.as_str().to_string())` [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: All variants have the same postfix: `Error` [INFO] [stderr] --> src/storage.rs:14:1 [INFO] [stderr] | [INFO] [stderr] 14 | / enum ErrorKind { [INFO] [stderr] 15 | | ApiError, [INFO] [stderr] 16 | | DataError, [INFO] [stderr] 17 | | SystemError, [INFO] [stderr] 18 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::enum_variant_names)] on by default [INFO] [stderr] = help: remove the postfixes and use full paths to the variants instead of glob imports [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#enum_variant_names [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/storage.rs:161:29 [INFO] [stderr] | [INFO] [stderr] 161 | return Ok(Some(h)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(Some(h))` [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/storage.rs:163:29 [INFO] [stderr] | [INFO] [stderr] 163 | return Ok(None); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(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/storage.rs:166:29 [INFO] [stderr] | [INFO] [stderr] 166 | None => return Ok(None), [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(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/storage.rs:170:17 [INFO] [stderr] | [INFO] [stderr] 170 | / return Err(StorageError { [INFO] [stderr] 171 | | kind: ErrorKind::ApiError, [INFO] [stderr] 172 | | msg: format!("API Error in delete_item: {}", e.to_string()), [INFO] [stderr] 173 | | }) [INFO] [stderr] | |__________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 170 | Err(StorageError { [INFO] [stderr] 171 | kind: ErrorKind::ApiError, [INFO] [stderr] 172 | msg: format!("API Error in delete_item: {}", e.to_string()), [INFO] [stderr] 173 | }) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/v2xds.rs:7:26 [INFO] [stderr] | [INFO] [stderr] 7 | pub const EDS_TYPE_URL: &'static str = "type.googleapis.com/envoy.api.v2.ClusterLoadAssignment"; [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: you don't need to add `&` to all patterns [INFO] [stderr] --> src/server.rs:67:5 [INFO] [stderr] | [INFO] [stderr] 67 | / match req.method() { [INFO] [stderr] 68 | | &Method::GET => route_get_req(s, req), [INFO] [stderr] 69 | | &Method::POST => route_post_req(s, req), [INFO] [stderr] 70 | | &Method::DELETE => route_delete_req(s, req), [INFO] [stderr] 71 | | _ => res_404(), [INFO] [stderr] 72 | | } [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: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 67 | match *req.method() { [INFO] [stderr] 68 | Method::GET => route_get_req(s, req), [INFO] [stderr] 69 | Method::POST => route_post_req(s, req), [INFO] [stderr] 70 | Method::DELETE => route_delete_req(s, req), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_none()` [INFO] [stderr] --> src/server.rs:252:27 [INFO] [stderr] | [INFO] [stderr] 252 | Ok(res) => if let None = res { [INFO] [stderr] | ____________________- ^^^^ [INFO] [stderr] 253 | | let r = ErrorResponse { [INFO] [stderr] 254 | | id: ErrorId::HostNotFound, [INFO] [stderr] 255 | | reason: "Not found the entry".to_owned(), [INFO] [stderr] ... | [INFO] [stderr] 261 | | return res_400(body); [INFO] [stderr] 262 | | }, [INFO] [stderr] | |_________- help: try this: `if res.is_none()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_pattern_matching)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/server.rs:276:11 [INFO] [stderr] | [INFO] [stderr] 276 | name: &ServiceName, [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 all patterns [INFO] [stderr] --> src/server.rs:67:5 [INFO] [stderr] | [INFO] [stderr] 67 | / match req.method() { [INFO] [stderr] 68 | | &Method::GET => route_get_req(s, req), [INFO] [stderr] 69 | | &Method::POST => route_post_req(s, req), [INFO] [stderr] 70 | | &Method::DELETE => route_delete_req(s, req), [INFO] [stderr] 71 | | _ => res_404(), [INFO] [stderr] 72 | | } [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: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 67 | match *req.method() { [INFO] [stderr] 68 | Method::GET => route_get_req(s, req), [INFO] [stderr] 69 | Method::POST => route_post_req(s, req), [INFO] [stderr] 70 | Method::DELETE => route_delete_req(s, req), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_none()` [INFO] [stderr] --> src/server.rs:252:27 [INFO] [stderr] | [INFO] [stderr] 252 | Ok(res) => if let None = res { [INFO] [stderr] | ____________________- ^^^^ [INFO] [stderr] 253 | | let r = ErrorResponse { [INFO] [stderr] 254 | | id: ErrorId::HostNotFound, [INFO] [stderr] 255 | | reason: "Not found the entry".to_owned(), [INFO] [stderr] ... | [INFO] [stderr] 261 | | return res_400(body); [INFO] [stderr] 262 | | }, [INFO] [stderr] | |_________- help: try this: `if res.is_none()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_pattern_matching)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/server.rs:276:11 [INFO] [stderr] | [INFO] [stderr] 276 | name: &ServiceName, [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: using `clone` on a `Copy` type [INFO] [stderr] --> src/storage.rs:106:20 [INFO] [stderr] | [INFO] [stderr] 106 | let port = host.port.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `host.port` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::clone_on_copy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/storage.rs:139:17 [INFO] [stderr] | [INFO] [stderr] 139 | port.clone(), [INFO] [stderr] | ^^^^^^^^^^^^ help: try removing the `clone` call: `port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/storage.rs:106:20 [INFO] [stderr] | [INFO] [stderr] 106 | let port = host.port.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `host.port` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::clone_on_copy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/storage.rs:183:48 [INFO] [stderr] | [INFO] [stderr] 183 | fn build_query_input(table_name: String, name: &ServiceName) -> QueryInput { [INFO] [stderr] | ^^^^^^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/storage.rs:139:17 [INFO] [stderr] | [INFO] [stderr] 139 | port.clone(), [INFO] [stderr] | ^^^^^^^^^^^^ help: try removing the `clone` call: `port` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/storage.rs:183:48 [INFO] [stderr] | [INFO] [stderr] 183 | fn build_query_input(table_name: String, name: &ServiceName) -> QueryInput { [INFO] [stderr] | ^^^^^^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/storage.rs:196:51 [INFO] [stderr] | [INFO] [stderr] 196 | fn build_put_item_input(table_name: String, name: &ServiceName, host: Host) -> PutItemInput { [INFO] [stderr] | ^^^^^^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/storage.rs:196:51 [INFO] [stderr] | [INFO] [stderr] 196 | fn build_put_item_input(table_name: String, name: &ServiceName, host: Host) -> PutItemInput { [INFO] [stderr] | ^^^^^^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/storage.rs:205:11 [INFO] [stderr] | [INFO] [stderr] 205 | name: &ServiceName, [INFO] [stderr] | ^^^^^^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/storage.rs:205:11 [INFO] [stderr] | [INFO] [stderr] 205 | name: &ServiceName, [INFO] [stderr] | ^^^^^^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/storage.rs:226:11 [INFO] [stderr] | [INFO] [stderr] 226 | name: &ServiceName, [INFO] [stderr] | ^^^^^^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/storage.rs:226:11 [INFO] [stderr] | [INFO] [stderr] 226 | name: &ServiceName, [INFO] [stderr] | ^^^^^^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/storage.rs:274:11 [INFO] [stderr] | [INFO] [stderr] 274 | name: &String, [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/storage.rs:274:11 [INFO] [stderr] | [INFO] [stderr] 274 | name: &String, [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/types.rs:8:33 [INFO] [stderr] | [INFO] [stderr] 8 | fn query_items(&self, name: &ServiceName) -> Result, Self::E>; [INFO] [stderr] | ^^^^^^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/types.rs:8:33 [INFO] [stderr] | [INFO] [stderr] 8 | fn query_items(&self, name: &ServiceName) -> Result, Self::E>; [INFO] [stderr] | ^^^^^^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: usage of `contains_key` followed by `insert` on a `HashMap` [INFO] [stderr] --> src/v2xds.rs:101:9 [INFO] [stderr] | [INFO] [stderr] 101 | / if lle_map.contains_key(&locality) { [INFO] [stderr] 102 | | let mut le_vec = lle_map.get_mut(&locality).expect("map key error"); [INFO] [stderr] 103 | | le_vec.push(le); [INFO] [stderr] 104 | | } else { [INFO] [stderr] 105 | | let le_vec = vec![le]; [INFO] [stderr] 106 | | lle_map.insert(locality, le_vec); [INFO] [stderr] 107 | | } [INFO] [stderr] | |_________^ help: consider using: `lle_map.entry(locality)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_entry)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_entry [INFO] [stderr] [INFO] [stderr] warning: usage of `contains_key` followed by `insert` on a `HashMap` [INFO] [stderr] --> src/v2xds.rs:101:9 [INFO] [stderr] | [INFO] [stderr] 101 | / if lle_map.contains_key(&locality) { [INFO] [stderr] 102 | | let mut le_vec = lle_map.get_mut(&locality).expect("map key error"); [INFO] [stderr] 103 | | le_vec.push(le); [INFO] [stderr] 104 | | } else { [INFO] [stderr] 105 | | let le_vec = vec![le]; [INFO] [stderr] 106 | | lle_map.insert(locality, le_vec); [INFO] [stderr] 107 | | } [INFO] [stderr] | |_________^ help: consider using: `lle_map.entry(locality)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_entry)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_entry [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/main.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 29 | table_name: table_name, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `table_name` [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/main.rs:30:9 [INFO] [stderr] | [INFO] [stderr] 30 | 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/main.rs:33:9 [INFO] [stderr] | [INFO] [stderr] 33 | listen_port: listen_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `listen_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/main.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 29 | table_name: table_name, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `table_name` [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/main.rs:30:9 [INFO] [stderr] | [INFO] [stderr] 30 | 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/main.rs:33:9 [INFO] [stderr] | [INFO] [stderr] 33 | listen_port: listen_port, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `listen_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] Finished dev [unoptimized + debuginfo] target(s) in 1m 07s [INFO] running `"docker" "inspect" "8ed41c32db3594f4e772caf02b8294b7a24ce04fc6d18280f85447eb8208389d"` [INFO] running `"docker" "rm" "-f" "8ed41c32db3594f4e772caf02b8294b7a24ce04fc6d18280f85447eb8208389d"` [INFO] [stdout] 8ed41c32db3594f4e772caf02b8294b7a24ce04fc6d18280f85447eb8208389d