[INFO] updating cached repository w-k-s/Rust-QuizzicalAPI [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/w-k-s/Rust-QuizzicalAPI [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/w-k-s/Rust-QuizzicalAPI" "work/ex/clippy-test-run/sources/stable/gh/w-k-s/Rust-QuizzicalAPI"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/w-k-s/Rust-QuizzicalAPI'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/w-k-s/Rust-QuizzicalAPI" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/w-k-s/Rust-QuizzicalAPI"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/w-k-s/Rust-QuizzicalAPI'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 26c4a0bfdc2c0648e375a6a10502a6386bd6af78 [INFO] sha for GitHub repo w-k-s/Rust-QuizzicalAPI: 26c4a0bfdc2c0648e375a6a10502a6386bd6af78 [INFO] validating manifest of w-k-s/Rust-QuizzicalAPI 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 w-k-s/Rust-QuizzicalAPI 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 w-k-s/Rust-QuizzicalAPI [INFO] finished frobbing w-k-s/Rust-QuizzicalAPI [INFO] frobbed toml for w-k-s/Rust-QuizzicalAPI written to work/ex/clippy-test-run/sources/stable/gh/w-k-s/Rust-QuizzicalAPI/Cargo.toml [INFO] started frobbing w-k-s/Rust-QuizzicalAPI [INFO] finished frobbing w-k-s/Rust-QuizzicalAPI [INFO] frobbed toml for w-k-s/Rust-QuizzicalAPI written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/w-k-s/Rust-QuizzicalAPI/Cargo.toml [INFO] crate w-k-s/Rust-QuizzicalAPI 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 w-k-s/Rust-QuizzicalAPI against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-6/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/w-k-s/Rust-QuizzicalAPI:/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] 495e479fa128840a2589d68239d1b59940a35d17856268daf1dfd1ee9504b0e9 [INFO] running `"docker" "start" "-a" "495e479fa128840a2589d68239d1b59940a35d17856268daf1dfd1ee9504b0e9"` [INFO] [stderr] Compiling ryu v0.2.5 [INFO] [stderr] Checking hex v0.3.2 [INFO] [stderr] Checking try_from v0.2.2 [INFO] [stderr] Checking data-encoding v2.1.1 [INFO] [stderr] Checking separator v0.3.1 [INFO] [stderr] Checking mopa v0.2.2 [INFO] [stderr] Checking log v0.4.6 [INFO] [stderr] Checking semver v0.8.0 [INFO] [stderr] Checking bytes v0.4.9 [INFO] [stderr] Checking futures-cpupool v0.1.8 [INFO] [stderr] Checking aho-corasick v0.6.7 [INFO] [stderr] Checking num-traits v0.2.5 [INFO] [stderr] Checking serde v1.0.75 [INFO] [stderr] Checking mio v0.6.15 [INFO] [stderr] Checking want v0.0.6 [INFO] [stderr] Checking rust-crypto v0.2.36 [INFO] [stderr] Compiling syn v0.14.9 [INFO] [stderr] Checking regex v0.2.11 [INFO] [stderr] Checking tokio-io v0.1.8 [INFO] [stderr] Checking http v0.1.10 [INFO] [stderr] Checking tokio-threadpool v0.1.6 [INFO] [stderr] Checking mio-uds v0.6.6 [INFO] [stderr] Checking num-integer v0.1.39 [INFO] [stderr] Checking tokio-codec v0.1.0 [INFO] [stderr] Checking tokio-reactor v0.1.4 [INFO] [stderr] Checking chrono v0.4.6 [INFO] [stderr] Checking tokio-fs v0.1.3 [INFO] [stderr] Checking scan_fmt v0.1.3 [INFO] [stderr] Checking tokio-tcp v0.1.1 [INFO] [stderr] Checking tokio-uds v0.2.1 [INFO] [stderr] Checking tokio-udp v0.1.2 [INFO] [stderr] Checking tokio v0.1.8 [INFO] [stderr] Checking simple_logger v1.0.1 [INFO] [stderr] Compiling serde_derive v1.0.75 [INFO] [stderr] Checking tokio-io-pool v0.1.5 [INFO] [stderr] Checking h2 v0.1.12 [INFO] [stderr] Checking serde_json v1.0.26 [INFO] [stderr] Checking hyper v0.12.9 [INFO] [stderr] Checking bson v0.12.3 [INFO] [stderr] Checking textnonce v0.6.4 [INFO] [stderr] Checking mongodb v0.3.10 [INFO] [stderr] Checking quizzical v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/repositories.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | client: client, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `client` [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/repositories.rs:45:45 [INFO] [stderr] | [INFO] [stderr] 45 | .map(|title| Category { title: title }) [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `title` [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/repositories.rs:49:17 [INFO] [stderr] | [INFO] [stderr] 49 | categories: categories, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `categories` [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/responses.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | data: data, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `data` [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/responses.rs:27:13 [INFO] [stderr] | [INFO] [stderr] 27 | page: page, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `page` [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/responses.rs:28:13 [INFO] [stderr] | [INFO] [stderr] 28 | size: size, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `size` [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/responses.rs:29:13 [INFO] [stderr] | [INFO] [stderr] 29 | page_count: page_count, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `page_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/responses.rs:30:13 [INFO] [stderr] | [INFO] [stderr] 30 | last: last, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `last` [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/repositories.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | client: client, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `client` [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/repositories.rs:45:45 [INFO] [stderr] | [INFO] [stderr] 45 | .map(|title| Category { title: title }) [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `title` [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/repositories.rs:49:17 [INFO] [stderr] | [INFO] [stderr] 49 | categories: categories, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `categories` [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/responses.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | data: data, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `data` [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/responses.rs:27:13 [INFO] [stderr] | [INFO] [stderr] 27 | page: page, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `page` [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/responses.rs:28:13 [INFO] [stderr] | [INFO] [stderr] 28 | size: size, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `size` [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/responses.rs:29:13 [INFO] [stderr] | [INFO] [stderr] 29 | page_count: page_count, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `page_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/responses.rs:30:13 [INFO] [stderr] | [INFO] [stderr] 30 | last: last, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `last` [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/controllers.rs:26:9 [INFO] [stderr] | [INFO] [stderr] 26 | / return QuestionsController { [INFO] [stderr] 27 | | service: Box::new(service), [INFO] [stderr] 28 | | }; [INFO] [stderr] | |__________^ [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] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 26 | QuestionsController { [INFO] [stderr] 27 | service: Box::new(service), [INFO] [stderr] 28 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/controllers.rs:43:9 [INFO] [stderr] | [INFO] [stderr] 43 | return response.json_response(StatusCode::OK, categories); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `response.json_response(StatusCode::OK, categories)` [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 unit return type [INFO] [stderr] --> src/controllers.rs:31:80 [INFO] [stderr] | [INFO] [stderr] 31 | pub fn categories(&self, _: &Request, response: &mut Response) -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unused_unit)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/controllers.rs:92:9 [INFO] [stderr] | [INFO] [stderr] 92 | return response.json_response(StatusCode::OK, paginated_body); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `response.json_response(StatusCode::OK, paginated_body)` [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 unit return type [INFO] [stderr] --> src/controllers.rs:46:85 [INFO] [stderr] | [INFO] [stderr] 46 | pub fn questions(&self, request: &Request, response: &mut Response) -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/registry.rs:10:9 [INFO] [stderr] | [INFO] [stderr] 10 | / return ControllerRegistry { [INFO] [stderr] 11 | | register: HashMap::new(), [INFO] [stderr] 12 | | }; [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] 10 | ControllerRegistry { [INFO] [stderr] 11 | register: HashMap::new(), [INFO] [stderr] 12 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/registry.rs:20:9 [INFO] [stderr] | [INFO] [stderr] 20 | return self.register.get(key).and_then(|c| c.downcast_ref::()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.register.get(key).and_then(|c| c.downcast_ref::())` [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/repositories.rs:23:9 [INFO] [stderr] | [INFO] [stderr] 23 | / return QuestionsRepository { [INFO] [stderr] 24 | | client: client, [INFO] [stderr] 25 | | db_name: db_name.to_owned(), [INFO] [stderr] 26 | | }; [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] 23 | QuestionsRepository { [INFO] [stderr] 24 | client: client, [INFO] [stderr] 25 | db_name: db_name.to_owned(), [INFO] [stderr] 26 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/repositories.rs:34:9 [INFO] [stderr] | [INFO] [stderr] 34 | / return self [INFO] [stderr] 35 | | .coll("questions") [INFO] [stderr] 36 | | .distinct("category", None, None) [INFO] [stderr] 37 | | .map(|bsons| { [INFO] [stderr] ... | [INFO] [stderr] 50 | | }) [INFO] [stderr] 51 | | .map_err(|err| format!("{}", err)); [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] 34 | self [INFO] [stderr] 35 | .coll("questions") [INFO] [stderr] 36 | .distinct("category", None, None) [INFO] [stderr] 37 | .map(|bsons| { [INFO] [stderr] 38 | bsons [INFO] [stderr] 39 | .iter() [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/repositories.rs:75:9 [INFO] [stderr] | [INFO] [stderr] 75 | / return self [INFO] [stderr] 76 | | .coll("questions") [INFO] [stderr] 77 | | .find(Some(filter), Some(find_options)) [INFO] [stderr] 78 | | .map(|c| { [INFO] [stderr] ... | [INFO] [stderr] 84 | | }) [INFO] [stderr] 85 | | .map_err(|err| format!("{}", err)); [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] 75 | self [INFO] [stderr] 76 | .coll("questions") [INFO] [stderr] 77 | .find(Some(filter), Some(find_options)) [INFO] [stderr] 78 | .map(|c| { [INFO] [stderr] 79 | let questions = c [INFO] [stderr] 80 | .map(|d| bson::from_bson(bson::Bson::Document(d.unwrap())).unwrap()) [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/responses.rs:25:9 [INFO] [stderr] | [INFO] [stderr] 25 | / return PaginatedResponse { [INFO] [stderr] 26 | | data: data, [INFO] [stderr] 27 | | page: page, [INFO] [stderr] 28 | | size: size, [INFO] [stderr] 29 | | page_count: page_count, [INFO] [stderr] 30 | | last: last, [INFO] [stderr] 31 | | }; [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] 25 | PaginatedResponse { [INFO] [stderr] 26 | data: data, [INFO] [stderr] 27 | page: page, [INFO] [stderr] 28 | size: size, [INFO] [stderr] 29 | page_count: page_count, [INFO] [stderr] 30 | last: last, [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/services.rs:10:9 [INFO] [stderr] | [INFO] [stderr] 10 | / return QuestionsService { [INFO] [stderr] 11 | | repo: Box::new(repo), [INFO] [stderr] 12 | | }; [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] 10 | QuestionsService { [INFO] [stderr] 11 | repo: Box::new(repo), [INFO] [stderr] 12 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/services.rs:16:9 [INFO] [stderr] | [INFO] [stderr] 16 | return self.repo.categories(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.repo.categories()` [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/services.rs:25:9 [INFO] [stderr] | [INFO] [stderr] 25 | return self.repo.questions(category, page, size); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.repo.questions(category, page, size)` [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 import: `error` [INFO] [stderr] --> src/main.rs:37:11 [INFO] [stderr] | [INFO] [stderr] 37 | use log::{error, info}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/controllers.rs:26:9 [INFO] [stderr] | [INFO] [stderr] 26 | / return QuestionsController { [INFO] [stderr] 27 | | service: Box::new(service), [INFO] [stderr] 28 | | }; [INFO] [stderr] | |__________^ [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] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 26 | QuestionsController { [INFO] [stderr] 27 | service: Box::new(service), [INFO] [stderr] 28 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/controllers.rs:43:9 [INFO] [stderr] | [INFO] [stderr] 43 | return response.json_response(StatusCode::OK, categories); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `response.json_response(StatusCode::OK, categories)` [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 unit return type [INFO] [stderr] --> src/controllers.rs:31:80 [INFO] [stderr] | [INFO] [stderr] 31 | pub fn categories(&self, _: &Request, response: &mut Response) -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unused_unit)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/controllers.rs:92:9 [INFO] [stderr] | [INFO] [stderr] 92 | return response.json_response(StatusCode::OK, paginated_body); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `response.json_response(StatusCode::OK, paginated_body)` [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 unit return type [INFO] [stderr] --> src/controllers.rs:46:85 [INFO] [stderr] | [INFO] [stderr] 46 | pub fn questions(&self, request: &Request, response: &mut Response) -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/registry.rs:10:9 [INFO] [stderr] | [INFO] [stderr] 10 | / return ControllerRegistry { [INFO] [stderr] 11 | | register: HashMap::new(), [INFO] [stderr] 12 | | }; [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] 10 | ControllerRegistry { [INFO] [stderr] 11 | register: HashMap::new(), [INFO] [stderr] 12 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/registry.rs:20:9 [INFO] [stderr] | [INFO] [stderr] 20 | return self.register.get(key).and_then(|c| c.downcast_ref::()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.register.get(key).and_then(|c| c.downcast_ref::())` [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/repositories.rs:23:9 [INFO] [stderr] | [INFO] [stderr] 23 | / return QuestionsRepository { [INFO] [stderr] 24 | | client: client, [INFO] [stderr] 25 | | db_name: db_name.to_owned(), [INFO] [stderr] 26 | | }; [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] 23 | QuestionsRepository { [INFO] [stderr] 24 | client: client, [INFO] [stderr] 25 | db_name: db_name.to_owned(), [INFO] [stderr] 26 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/repositories.rs:34:9 [INFO] [stderr] | [INFO] [stderr] 34 | / return self [INFO] [stderr] 35 | | .coll("questions") [INFO] [stderr] 36 | | .distinct("category", None, None) [INFO] [stderr] 37 | | .map(|bsons| { [INFO] [stderr] ... | [INFO] [stderr] 50 | | }) [INFO] [stderr] 51 | | .map_err(|err| format!("{}", err)); [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] 34 | self [INFO] [stderr] 35 | .coll("questions") [INFO] [stderr] 36 | .distinct("category", None, None) [INFO] [stderr] 37 | .map(|bsons| { [INFO] [stderr] 38 | bsons [INFO] [stderr] 39 | .iter() [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/repositories.rs:75:9 [INFO] [stderr] | [INFO] [stderr] 75 | / return self [INFO] [stderr] 76 | | .coll("questions") [INFO] [stderr] 77 | | .find(Some(filter), Some(find_options)) [INFO] [stderr] 78 | | .map(|c| { [INFO] [stderr] ... | [INFO] [stderr] 84 | | }) [INFO] [stderr] 85 | | .map_err(|err| format!("{}", err)); [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] 75 | self [INFO] [stderr] 76 | .coll("questions") [INFO] [stderr] 77 | .find(Some(filter), Some(find_options)) [INFO] [stderr] 78 | .map(|c| { [INFO] [stderr] 79 | let questions = c [INFO] [stderr] 80 | .map(|d| bson::from_bson(bson::Bson::Document(d.unwrap())).unwrap()) [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/responses.rs:25:9 [INFO] [stderr] | [INFO] [stderr] 25 | / return PaginatedResponse { [INFO] [stderr] 26 | | data: data, [INFO] [stderr] 27 | | page: page, [INFO] [stderr] 28 | | size: size, [INFO] [stderr] 29 | | page_count: page_count, [INFO] [stderr] 30 | | last: last, [INFO] [stderr] 31 | | }; [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] 25 | PaginatedResponse { [INFO] [stderr] 26 | data: data, [INFO] [stderr] 27 | page: page, [INFO] [stderr] 28 | size: size, [INFO] [stderr] 29 | page_count: page_count, [INFO] [stderr] 30 | last: last, [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/services.rs:10:9 [INFO] [stderr] | [INFO] [stderr] 10 | / return QuestionsService { [INFO] [stderr] 11 | | repo: Box::new(repo), [INFO] [stderr] 12 | | }; [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] 10 | QuestionsService { [INFO] [stderr] 11 | repo: Box::new(repo), [INFO] [stderr] 12 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/services.rs:16:9 [INFO] [stderr] | [INFO] [stderr] 16 | return self.repo.categories(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.repo.categories()` [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/services.rs:25:9 [INFO] [stderr] | [INFO] [stderr] 25 | return self.repo.questions(category, page, size); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.repo.questions(category, page, size)` [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 import: `error` [INFO] [stderr] --> src/main.rs:37:11 [INFO] [stderr] | [INFO] [stderr] 37 | use log::{error, info}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut ()`) to a reference type (`&T`) [INFO] [stderr] --> src/controllers.rs:18:1 [INFO] [stderr] | [INFO] [stderr] 18 | mopafy!(Controller); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::transmute_ptr_to_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut ()`) to a reference type (`&mut T`) [INFO] [stderr] --> src/controllers.rs:18:1 [INFO] [stderr] | [INFO] [stderr] 18 | mopafy!(Controller); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> src/controllers.rs:38:32 [INFO] [stderr] | [INFO] [stderr] 38 | error: format!("{}", err), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider using .to_string(): `err.to_string()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_format)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> src/controllers.rs:85:32 [INFO] [stderr] | [INFO] [stderr] 85 | error: format!("{}", err), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider using .to_string(): `err.to_string()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: using `clone` on a double-reference; this will copy the reference instead of cloning the inner type [INFO] [stderr] --> src/repositories.rs:60:39 [INFO] [stderr] | [INFO] [stderr] 60 | let filter = doc! {"category":category.clone()}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::clone_double_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_double_ref [INFO] [stderr] help: try dereferencing it [INFO] [stderr] | [INFO] [stderr] 60 | let filter = doc! {"category":&(*category).clone()}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 60 | let filter = doc! {"category":&str::clone(category)}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut ()`) to a reference type (`&T`) [INFO] [stderr] --> src/controllers.rs:18:1 [INFO] [stderr] | [INFO] [stderr] 18 | mopafy!(Controller); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::transmute_ptr_to_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut ()`) to a reference type (`&mut T`) [INFO] [stderr] --> src/controllers.rs:18:1 [INFO] [stderr] | [INFO] [stderr] 18 | mopafy!(Controller); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> src/controllers.rs:38:32 [INFO] [stderr] | [INFO] [stderr] 38 | error: format!("{}", err), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider using .to_string(): `err.to_string()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_format)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> src/controllers.rs:85:32 [INFO] [stderr] | [INFO] [stderr] 85 | error: format!("{}", err), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider using .to_string(): `err.to_string()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/main.rs:76:10 [INFO] [stderr] | [INFO] [stderr] 76 | .unwrap_or("localhost".to_owned()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| "localhost".to_owned())` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/main.rs:83:10 [INFO] [stderr] | [INFO] [stderr] 83 | .unwrap_or("quizzical".to_owned()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| "quizzical".to_owned())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/main.rs:88:10 [INFO] [stderr] | [INFO] [stderr] 88 | .unwrap_or("127.0.0.1:3000".to_owned()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| "127.0.0.1:3000".to_owned())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] error: using `clone` on a double-reference; this will copy the reference instead of cloning the inner type [INFO] [stderr] --> src/repositories.rs:60:39 [INFO] [stderr] | [INFO] [stderr] 60 | let filter = doc! {"category":category.clone()}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::clone_double_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_double_ref [INFO] [stderr] help: try dereferencing it [INFO] [stderr] | [INFO] [stderr] 60 | let filter = doc! {"category":&(*category).clone()}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 60 | let filter = doc! {"category":&str::clone(category)}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `quizzical`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/main.rs:76:10 [INFO] [stderr] | [INFO] [stderr] 76 | .unwrap_or("localhost".to_owned()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| "localhost".to_owned())` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/main.rs:83:10 [INFO] [stderr] | [INFO] [stderr] 83 | .unwrap_or("quizzical".to_owned()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| "quizzical".to_owned())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/main.rs:88:10 [INFO] [stderr] | [INFO] [stderr] 88 | .unwrap_or("127.0.0.1:3000".to_owned()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| "127.0.0.1:3000".to_owned())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `quizzical`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "495e479fa128840a2589d68239d1b59940a35d17856268daf1dfd1ee9504b0e9"` [INFO] running `"docker" "rm" "-f" "495e479fa128840a2589d68239d1b59940a35d17856268daf1dfd1ee9504b0e9"` [INFO] [stdout] 495e479fa128840a2589d68239d1b59940a35d17856268daf1dfd1ee9504b0e9