[INFO] updating cached repository zlex7/Trust [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/zlex7/Trust [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/zlex7/Trust" "work/ex/clippy-test-run/sources/stable/gh/zlex7/Trust"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/zlex7/Trust'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/zlex7/Trust" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/zlex7/Trust"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/zlex7/Trust'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] b1de3a466c2bbb11f4a8682f4d30140e8d8fb025 [INFO] sha for GitHub repo zlex7/Trust: b1de3a466c2bbb11f4a8682f4d30140e8d8fb025 [INFO] validating manifest of zlex7/Trust 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 zlex7/Trust 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 zlex7/Trust [INFO] finished frobbing zlex7/Trust [INFO] frobbed toml for zlex7/Trust written to work/ex/clippy-test-run/sources/stable/gh/zlex7/Trust/Cargo.toml [INFO] started frobbing zlex7/Trust [INFO] finished frobbing zlex7/Trust [INFO] frobbed toml for zlex7/Trust written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/zlex7/Trust/Cargo.toml [INFO] crate zlex7/Trust 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 zlex7/Trust 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/zlex7/Trust:/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] 3ea8ebd934137cb5ecdef51a5e7f90c2cb06243d59c89eec0f483536ff35f14f [INFO] running `"docker" "start" "-a" "3ea8ebd934137cb5ecdef51a5e7f90c2cb06243d59c89eec0f483536ff35f14f"` [INFO] [stderr] Checking libc v0.2.40 [INFO] [stderr] Checking byteorder v1.2.2 [INFO] [stderr] Checking futures v0.1.21 [INFO] [stderr] Compiling regex v1.0.0 [INFO] [stderr] Checking quick-error v1.2.1 [INFO] [stderr] Checking netbuf v0.4.1 [INFO] [stderr] Checking bufstream v0.1.3 [INFO] [stderr] Checking maplit v1.0.1 [INFO] [stderr] Checking log v0.4.1 [INFO] [stderr] Checking regex-syntax v0.6.0 [INFO] [stderr] Checking iovec v0.1.2 [INFO] [stderr] Checking memchr v2.0.1 [INFO] [stderr] Checking time v0.1.39 [INFO] [stderr] Checking bytes v0.4.7 [INFO] [stderr] Checking aho-corasick v0.6.4 [INFO] [stderr] Checking tokio-io v0.1.6 [INFO] [stderr] Checking tk-bufstream v0.3.0 [INFO] [stderr] Checking trust v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/trust.rs:71:45 [INFO] [stderr] | [INFO] [stderr] 71 | let route = Route{url: url.clone(), handler: handler, request_type: request_type.to_string()}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `handler` [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: literal with an empty format string [INFO] [stderr] --> src/trust.rs:78:38 [INFO] [stderr] | [INFO] [stderr] 78 | println!("serving requests on {}", "127.0.0.1:8080"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::print_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#print_literal [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/trust.rs:279:4 [INFO] [stderr] | [INFO] [stderr] 279 | url: url, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `url` [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/trust.rs:280:13 [INFO] [stderr] | [INFO] [stderr] 280 | method: method, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `method` [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/trust.rs:281:13 [INFO] [stderr] | [INFO] [stderr] 281 | headers: headers, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `headers` [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/trust.rs:282:13 [INFO] [stderr] | [INFO] [stderr] 282 | content: content, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `content` [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/trust.rs:327:13 [INFO] [stderr] | [INFO] [stderr] 327 | headers: headers, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `headers` [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/trust.rs:347:13 [INFO] [stderr] | [INFO] [stderr] 347 | response_code: response_code, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `response_code` [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/trust.rs:348:13 [INFO] [stderr] | [INFO] [stderr] 348 | content: content [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `content` [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/trust.rs:411:13 [INFO] [stderr] | [INFO] [stderr] 411 | id: id [INFO] [stderr] | ^^^^^^ help: replace it with: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/trust.rs:454:13 [INFO] [stderr] | [INFO] [stderr] 454 | handler: handler, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `handler` [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/trust.rs:455:13 [INFO] [stderr] | [INFO] [stderr] 455 | request: request, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `request` [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/trust.rs:456:13 [INFO] [stderr] | [INFO] [stderr] 456 | route: route, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `route` [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/trust.rs:457:13 [INFO] [stderr] | [INFO] [stderr] 457 | stream: stream [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `stream` [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/trust.rs:71:45 [INFO] [stderr] | [INFO] [stderr] 71 | let route = Route{url: url.clone(), handler: handler, request_type: request_type.to_string()}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `handler` [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: literal with an empty format string [INFO] [stderr] --> src/trust.rs:78:38 [INFO] [stderr] | [INFO] [stderr] 78 | println!("serving requests on {}", "127.0.0.1:8080"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::print_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#print_literal [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/trust.rs:279:4 [INFO] [stderr] | [INFO] [stderr] 279 | url: url, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `url` [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/trust.rs:280:13 [INFO] [stderr] | [INFO] [stderr] 280 | method: method, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `method` [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/trust.rs:281:13 [INFO] [stderr] | [INFO] [stderr] 281 | headers: headers, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `headers` [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/trust.rs:282:13 [INFO] [stderr] | [INFO] [stderr] 282 | content: content, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `content` [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/trust.rs:327:13 [INFO] [stderr] | [INFO] [stderr] 327 | headers: headers, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `headers` [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/trust.rs:347:13 [INFO] [stderr] | [INFO] [stderr] 347 | response_code: response_code, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `response_code` [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/trust.rs:348:13 [INFO] [stderr] | [INFO] [stderr] 348 | content: content [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `content` [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/trust.rs:411:13 [INFO] [stderr] | [INFO] [stderr] 411 | id: id [INFO] [stderr] | ^^^^^^ help: replace it with: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/trust.rs:454:13 [INFO] [stderr] | [INFO] [stderr] 454 | handler: handler, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `handler` [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/trust.rs:455:13 [INFO] [stderr] | [INFO] [stderr] 455 | request: request, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `request` [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/trust.rs:456:13 [INFO] [stderr] | [INFO] [stderr] 456 | route: route, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `route` [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/trust.rs:457:13 [INFO] [stderr] | [INFO] [stderr] 457 | stream: stream [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `stream` [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: unused import: `std::fs::File` [INFO] [stderr] --> src/trust.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use std::fs::File; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::prelude::*` [INFO] [stderr] --> src/trust.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::io::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/trust.rs:89:29 [INFO] [stderr] | [INFO] [stderr] 89 | let t = (self.routes.get(&(request.clone()).unwrap().url)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_parens)] on by default [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/trust.rs:144:25 [INFO] [stderr] | [INFO] [stderr] 144 | return word == word2 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `word == word2` [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/trust.rs:146:26 [INFO] [stderr] | [INFO] [stderr] 146 | _ => return false [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `false` [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/trust.rs:152:25 [INFO] [stderr] | [INFO] [stderr] 152 | return param_type == param_type2 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `param_type == param_type2` [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/trust.rs:154:26 [INFO] [stderr] | [INFO] [stderr] 154 | _ => return false [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `false` [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/trust.rs:176:9 [INFO] [stderr] | [INFO] [stderr] 176 | return self.parts == other.parts; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.parts == other.parts` [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/trust.rs:200:9 [INFO] [stderr] | [INFO] [stderr] 200 | return params; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `params` [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/trust.rs:219:9 [INFO] [stderr] | [INFO] [stderr] 219 | / return Url { [INFO] [stderr] 220 | | parts: url_parts_processed, [INFO] [stderr] 221 | | } [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] 219 | Url { [INFO] [stderr] 220 | parts: url_parts_processed, [INFO] [stderr] 221 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/trust.rs:244:9 [INFO] [stderr] | [INFO] [stderr] 244 | / return Url { [INFO] [stderr] 245 | | parts: url_parts_processed, [INFO] [stderr] 246 | | } [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] 244 | Url { [INFO] [stderr] 245 | parts: url_parts_processed, [INFO] [stderr] 246 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: Variant name ends with the enum's name [INFO] [stderr] --> src/trust.rs:269:5 [INFO] [stderr] | [INFO] [stderr] 269 | BadRequestError = 400, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::enum_variant_names)] on by default [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: Variant name ends with the enum's name [INFO] [stderr] --> src/trust.rs:270:5 [INFO] [stderr] | [INFO] [stderr] 270 | ForbiddenError = 403, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [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: Variant name ends with the enum's name [INFO] [stderr] --> src/trust.rs:271:5 [INFO] [stderr] | [INFO] [stderr] 271 | UrlNotFoundError = 404, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [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: Variant name ends with the enum's name [INFO] [stderr] --> src/trust.rs:272:5 [INFO] [stderr] | [INFO] [stderr] 272 | MethodNotAllowedError = 405, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [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: Variant name ends with the enum's name [INFO] [stderr] --> src/trust.rs:273:5 [INFO] [stderr] | [INFO] [stderr] 273 | ServerError = 500, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [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: All variants have the same postfix: `Error` [INFO] [stderr] --> src/trust.rs:268:1 [INFO] [stderr] | [INFO] [stderr] 268 | / enum Error { [INFO] [stderr] 269 | | BadRequestError = 400, [INFO] [stderr] 270 | | ForbiddenError = 403, [INFO] [stderr] 271 | | UrlNotFoundError = 404, [INFO] [stderr] 272 | | MethodNotAllowedError = 405, [INFO] [stderr] 273 | | ServerError = 500, [INFO] [stderr] 274 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [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/trust.rs:332:9 [INFO] [stderr] | [INFO] [stderr] 332 | return Result::Ok(request); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Result::Ok(request)` [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/trust.rs:345:9 [INFO] [stderr] | [INFO] [stderr] 345 | / return Response{ [INFO] [stderr] 346 | | headers: default_headers.clone(), [INFO] [stderr] 347 | | response_code: response_code, [INFO] [stderr] 348 | | content: content [INFO] [stderr] 349 | | } [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] 345 | Response{ [INFO] [stderr] 346 | headers: default_headers.clone(), [INFO] [stderr] 347 | response_code: response_code, [INFO] [stderr] 348 | content: content [INFO] [stderr] 349 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/trust.rs:371:9 [INFO] [stderr] | [INFO] [stderr] 371 | return http_response.into_bytes(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `http_response.into_bytes()` [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/trust.rs:395:9 [INFO] [stderr] | [INFO] [stderr] 395 | return t; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `t` [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/trust.rs:453:9 [INFO] [stderr] | [INFO] [stderr] 453 | / return Job { [INFO] [stderr] 454 | | handler: handler, [INFO] [stderr] 455 | | request: request, [INFO] [stderr] 456 | | route: route, [INFO] [stderr] 457 | | stream: stream [INFO] [stderr] 458 | | } [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] 453 | Job { [INFO] [stderr] 454 | handler: handler, [INFO] [stderr] 455 | request: request, [INFO] [stderr] 456 | route: route, [INFO] [stderr] 457 | stream: stream [INFO] [stderr] 458 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/jinja.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | return templated; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `templated` [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: unnecessary parentheses around `while` condition [INFO] [stderr] --> src/jinja.rs:22:11 [INFO] [stderr] | [INFO] [stderr] 22 | while (original_ind < matches.len()) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/main.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:16:2 [INFO] [stderr] | [INFO] [stderr] 16 | return "abc".to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `"abc".to_string()` [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:20:2 [INFO] [stderr] | [INFO] [stderr] 20 | return "root".to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `"root".to_string()` [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:24:2 [INFO] [stderr] | [INFO] [stderr] 24 | return match request.values.get("test").unwrap(){ [INFO] [stderr] | _____^ [INFO] [stderr] 25 | | &UrlPart::PARAM(ref x, ref name, ..) => name.to_string(), [INFO] [stderr] 26 | | _ => String::from("this didn't work") [INFO] [stderr] 27 | | } [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] 24 | match request.values.get("test").unwrap(){ [INFO] [stderr] 25 | &UrlPart::PARAM(ref x, ref name, ..) => name.to_string(), [INFO] [stderr] 26 | _ => String::from("this didn't work") [INFO] [stderr] 27 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:31:2 [INFO] [stderr] | [INFO] [stderr] 31 | return render_template("templates/404.html",hashmap!{String::from("url") => String::from("jinjatest (this actually worked lol)")}); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `render_template("templates/404.html",hashmap!{String::from("url") => String::from("jinjatest (this actually worked lol)")})` [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:39:2 [INFO] [stderr] | [INFO] [stderr] 39 | return render_template("templates/gina.html",hashmap!{String::from("age") => age}); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `render_template("templates/gina.html",hashmap!{String::from("age") => age})` [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: `std::fs::File` [INFO] [stderr] --> src/trust.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use std::fs::File; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::prelude::*` [INFO] [stderr] --> src/trust.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::io::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/trust.rs:89:29 [INFO] [stderr] | [INFO] [stderr] 89 | let t = (self.routes.get(&(request.clone()).unwrap().url)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_parens)] on by default [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/trust.rs:144:25 [INFO] [stderr] | [INFO] [stderr] 144 | return word == word2 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `word == word2` [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/trust.rs:146:26 [INFO] [stderr] | [INFO] [stderr] 146 | _ => return false [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `false` [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/trust.rs:152:25 [INFO] [stderr] | [INFO] [stderr] 152 | return param_type == param_type2 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `param_type == param_type2` [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/trust.rs:154:26 [INFO] [stderr] | [INFO] [stderr] 154 | _ => return false [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `false` [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/trust.rs:176:9 [INFO] [stderr] | [INFO] [stderr] 176 | return self.parts == other.parts; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.parts == other.parts` [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/trust.rs:200:9 [INFO] [stderr] | [INFO] [stderr] 200 | return params; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `params` [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/trust.rs:219:9 [INFO] [stderr] | [INFO] [stderr] 219 | / return Url { [INFO] [stderr] 220 | | parts: url_parts_processed, [INFO] [stderr] 221 | | } [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] 219 | Url { [INFO] [stderr] 220 | parts: url_parts_processed, [INFO] [stderr] 221 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/trust.rs:244:9 [INFO] [stderr] | [INFO] [stderr] 244 | / return Url { [INFO] [stderr] 245 | | parts: url_parts_processed, [INFO] [stderr] 246 | | } [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] 244 | Url { [INFO] [stderr] 245 | parts: url_parts_processed, [INFO] [stderr] 246 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: Variant name ends with the enum's name [INFO] [stderr] --> src/trust.rs:269:5 [INFO] [stderr] | [INFO] [stderr] 269 | BadRequestError = 400, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::enum_variant_names)] on by default [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: Variant name ends with the enum's name [INFO] [stderr] --> src/trust.rs:270:5 [INFO] [stderr] | [INFO] [stderr] 270 | ForbiddenError = 403, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [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: Variant name ends with the enum's name [INFO] [stderr] --> src/trust.rs:271:5 [INFO] [stderr] | [INFO] [stderr] 271 | UrlNotFoundError = 404, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [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: Variant name ends with the enum's name [INFO] [stderr] --> src/trust.rs:272:5 [INFO] [stderr] | [INFO] [stderr] 272 | MethodNotAllowedError = 405, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [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: Variant name ends with the enum's name [INFO] [stderr] --> src/trust.rs:273:5 [INFO] [stderr] | [INFO] [stderr] 273 | ServerError = 500, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [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: All variants have the same postfix: `Error` [INFO] [stderr] --> src/trust.rs:268:1 [INFO] [stderr] | [INFO] [stderr] 268 | / enum Error { [INFO] [stderr] 269 | | BadRequestError = 400, [INFO] [stderr] 270 | | ForbiddenError = 403, [INFO] [stderr] 271 | | UrlNotFoundError = 404, [INFO] [stderr] 272 | | MethodNotAllowedError = 405, [INFO] [stderr] 273 | | ServerError = 500, [INFO] [stderr] 274 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [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/trust.rs:332:9 [INFO] [stderr] | [INFO] [stderr] 332 | return Result::Ok(request); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Result::Ok(request)` [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/trust.rs:345:9 [INFO] [stderr] | [INFO] [stderr] 345 | / return Response{ [INFO] [stderr] 346 | | headers: default_headers.clone(), [INFO] [stderr] 347 | | response_code: response_code, [INFO] [stderr] 348 | | content: content [INFO] [stderr] 349 | | } [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] 345 | Response{ [INFO] [stderr] 346 | headers: default_headers.clone(), [INFO] [stderr] 347 | response_code: response_code, [INFO] [stderr] 348 | content: content [INFO] [stderr] 349 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/trust.rs:371:9 [INFO] [stderr] | [INFO] [stderr] 371 | return http_response.into_bytes(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `http_response.into_bytes()` [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/trust.rs:395:9 [INFO] [stderr] | [INFO] [stderr] 395 | return t; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `t` [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/trust.rs:453:9 [INFO] [stderr] | [INFO] [stderr] 453 | / return Job { [INFO] [stderr] 454 | | handler: handler, [INFO] [stderr] 455 | | request: request, [INFO] [stderr] 456 | | route: route, [INFO] [stderr] 457 | | stream: stream [INFO] [stderr] 458 | | } [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] 453 | Job { [INFO] [stderr] 454 | handler: handler, [INFO] [stderr] 455 | request: request, [INFO] [stderr] 456 | route: route, [INFO] [stderr] 457 | stream: stream [INFO] [stderr] 458 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/jinja.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | return templated; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `templated` [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: unnecessary parentheses around `while` condition [INFO] [stderr] --> src/jinja.rs:22:11 [INFO] [stderr] | [INFO] [stderr] 22 | while (original_ind < matches.len()) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/main.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:16:2 [INFO] [stderr] | [INFO] [stderr] 16 | return "abc".to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `"abc".to_string()` [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:20:2 [INFO] [stderr] | [INFO] [stderr] 20 | return "root".to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `"root".to_string()` [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:24:2 [INFO] [stderr] | [INFO] [stderr] 24 | return match request.values.get("test").unwrap(){ [INFO] [stderr] | _____^ [INFO] [stderr] 25 | | &UrlPart::PARAM(ref x, ref name, ..) => name.to_string(), [INFO] [stderr] 26 | | _ => String::from("this didn't work") [INFO] [stderr] 27 | | } [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] 24 | match request.values.get("test").unwrap(){ [INFO] [stderr] 25 | &UrlPart::PARAM(ref x, ref name, ..) => name.to_string(), [INFO] [stderr] 26 | _ => String::from("this didn't work") [INFO] [stderr] 27 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:31:2 [INFO] [stderr] | [INFO] [stderr] 31 | return render_template("templates/404.html",hashmap!{String::from("url") => String::from("jinjatest (this actually worked lol)")}); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `render_template("templates/404.html",hashmap!{String::from("url") => String::from("jinjatest (this actually worked lol)")})` [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:39:2 [INFO] [stderr] | [INFO] [stderr] 39 | return render_template("templates/gina.html",hashmap!{String::from("age") => age}); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `render_template("templates/gina.html",hashmap!{String::from("age") => age})` [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: `std::hash::Hash` [INFO] [stderr] --> src/trust.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::hash::Hash; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: private type `trust::UrlParamType` in public interface (error E0446) [INFO] [stderr] --> src/trust.rs:122:25 [INFO] [stderr] | [INFO] [stderr] 122 | PARAM(String,String,UrlParamType) [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(private_in_public)] on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #34537 [INFO] [stderr] [INFO] [stderr] warning: unused variable: `req` [INFO] [stderr] --> src/main.rs:15:8 [INFO] [stderr] | [INFO] [stderr] 15 | fn abc(req: Request) -> String{ [INFO] [stderr] | ^^^ help: consider using `_req` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `req` [INFO] [stderr] --> src/main.rs:19:9 [INFO] [stderr] | [INFO] [stderr] 19 | fn root(req: Request) -> String{ [INFO] [stderr] | ^^^ help: consider using `_req` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x` [INFO] [stderr] --> src/main.rs:25:23 [INFO] [stderr] | [INFO] [stderr] 25 | &UrlPart::PARAM(ref x, ref name, ..) => name.to_string(), [INFO] [stderr] | ^ help: consider using `_x` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `request` [INFO] [stderr] --> src/main.rs:30:15 [INFO] [stderr] | [INFO] [stderr] 30 | fn jinja_test(request: Request) -> String { [INFO] [stderr] | ^^^^^^^ help: consider using `_request` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x` [INFO] [stderr] --> src/main.rs:36:23 [INFO] [stderr] | [INFO] [stderr] 36 | &UrlPart::PARAM(ref x, ref name, ..) => name.to_string(), [INFO] [stderr] | ^ help: consider using `_x` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `name` [INFO] [stderr] --> src/trust.rs:131:33 [INFO] [stderr] | [INFO] [stderr] 131 | &UrlPart::PARAM(ref name, ref value, ref param_type) => { [INFO] [stderr] | ^^^^ help: consider using `_name` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/trust.rs:131:43 [INFO] [stderr] | [INFO] [stderr] 131 | &UrlPart::PARAM(ref name, ref value, ref param_type) => { [INFO] [stderr] | ^^^^^ help: consider using `_value` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `name` [INFO] [stderr] --> src/trust.rs:149:33 [INFO] [stderr] | [INFO] [stderr] 149 | &UrlPart::PARAM(ref name, ref value, ref param_type) => { [INFO] [stderr] | ^^^^ help: consider using `_name` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/trust.rs:149:43 [INFO] [stderr] | [INFO] [stderr] 149 | &UrlPart::PARAM(ref name, ref value, ref param_type) => { [INFO] [stderr] | ^^^^^ help: consider using `_value` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `name2` [INFO] [stderr] --> src/trust.rs:151:41 [INFO] [stderr] | [INFO] [stderr] 151 | &UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [INFO] [stderr] | ^^^^^ help: consider using `_name2` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value2` [INFO] [stderr] --> src/trust.rs:151:51 [INFO] [stderr] | [INFO] [stderr] 151 | &UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [INFO] [stderr] | ^^^^^^ help: consider using `_value2` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `name` [INFO] [stderr] --> src/trust.rs:186:37 [INFO] [stderr] | [INFO] [stderr] 186 | &UrlPart::PARAM(ref name,ref value,ref param_type) => { [INFO] [stderr] | ^^^^ help: consider using `_name` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `param_type` [INFO] [stderr] --> src/trust.rs:186:56 [INFO] [stderr] | [INFO] [stderr] 186 | &UrlPart::PARAM(ref name,ref value,ref param_type) => { [INFO] [stderr] | ^^^^^^^^^^ help: consider using `_param_type` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value2` [INFO] [stderr] --> src/trust.rs:188:55 [INFO] [stderr] | [INFO] [stderr] 188 | &UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [INFO] [stderr] | ^^^^^^ help: consider using `_value2` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `params` [INFO] [stderr] --> src/trust.rs:207:13 [INFO] [stderr] | [INFO] [stderr] 207 | let params : HashMap = HashMap::new(); [INFO] [stderr] | ^^^^^^ help: consider using `_params` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `join_handle` [INFO] [stderr] --> src/trust.rs:418:13 [INFO] [stderr] | [INFO] [stderr] 418 | let join_handle = thread::spawn(move ||{ [INFO] [stderr] | ^^^^^^^^^^^ help: consider using `_join_handle` instead [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::hash::Hash` [INFO] [stderr] --> src/trust.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::hash::Hash; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: private type `trust::UrlParamType` in public interface (error E0446) [INFO] [stderr] --> src/trust.rs:122:25 [INFO] [stderr] | [INFO] [stderr] 122 | PARAM(String,String,UrlParamType) [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(private_in_public)] on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #34537 [INFO] [stderr] [INFO] [stderr] warning: unused variable: `req` [INFO] [stderr] --> src/main.rs:15:8 [INFO] [stderr] | [INFO] [stderr] 15 | fn abc(req: Request) -> String{ [INFO] [stderr] | ^^^ help: consider using `_req` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `req` [INFO] [stderr] --> src/main.rs:19:9 [INFO] [stderr] | [INFO] [stderr] 19 | fn root(req: Request) -> String{ [INFO] [stderr] | ^^^ help: consider using `_req` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x` [INFO] [stderr] --> src/main.rs:25:23 [INFO] [stderr] | [INFO] [stderr] 25 | &UrlPart::PARAM(ref x, ref name, ..) => name.to_string(), [INFO] [stderr] | ^ help: consider using `_x` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `request` [INFO] [stderr] --> src/main.rs:30:15 [INFO] [stderr] | [INFO] [stderr] 30 | fn jinja_test(request: Request) -> String { [INFO] [stderr] | ^^^^^^^ help: consider using `_request` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x` [INFO] [stderr] --> src/main.rs:36:23 [INFO] [stderr] | [INFO] [stderr] 36 | &UrlPart::PARAM(ref x, ref name, ..) => name.to_string(), [INFO] [stderr] | ^ help: consider using `_x` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `name` [INFO] [stderr] --> src/trust.rs:131:33 [INFO] [stderr] | [INFO] [stderr] 131 | &UrlPart::PARAM(ref name, ref value, ref param_type) => { [INFO] [stderr] | ^^^^ help: consider using `_name` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/trust.rs:131:43 [INFO] [stderr] | [INFO] [stderr] 131 | &UrlPart::PARAM(ref name, ref value, ref param_type) => { [INFO] [stderr] | ^^^^^ help: consider using `_value` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `name` [INFO] [stderr] --> src/trust.rs:149:33 [INFO] [stderr] | [INFO] [stderr] 149 | &UrlPart::PARAM(ref name, ref value, ref param_type) => { [INFO] [stderr] | ^^^^ help: consider using `_name` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/trust.rs:149:43 [INFO] [stderr] | [INFO] [stderr] 149 | &UrlPart::PARAM(ref name, ref value, ref param_type) => { [INFO] [stderr] | ^^^^^ help: consider using `_value` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `name2` [INFO] [stderr] --> src/trust.rs:151:41 [INFO] [stderr] | [INFO] [stderr] 151 | &UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [INFO] [stderr] | ^^^^^ help: consider using `_name2` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value2` [INFO] [stderr] --> src/trust.rs:151:51 [INFO] [stderr] | [INFO] [stderr] 151 | &UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [INFO] [stderr] | ^^^^^^ help: consider using `_value2` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `name` [INFO] [stderr] --> src/trust.rs:186:37 [INFO] [stderr] | [INFO] [stderr] 186 | &UrlPart::PARAM(ref name,ref value,ref param_type) => { [INFO] [stderr] | ^^^^ help: consider using `_name` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `param_type` [INFO] [stderr] --> src/trust.rs:186:56 [INFO] [stderr] | [INFO] [stderr] 186 | &UrlPart::PARAM(ref name,ref value,ref param_type) => { [INFO] [stderr] | ^^^^^^^^^^ help: consider using `_param_type` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value2` [INFO] [stderr] --> src/trust.rs:188:55 [INFO] [stderr] | [INFO] [stderr] 188 | &UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [INFO] [stderr] | ^^^^^^ help: consider using `_value2` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `params` [INFO] [stderr] --> src/trust.rs:207:13 [INFO] [stderr] | [INFO] [stderr] 207 | let params : HashMap = HashMap::new(); [INFO] [stderr] | ^^^^^^ help: consider using `_params` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `join_handle` [INFO] [stderr] --> src/trust.rs:418:13 [INFO] [stderr] | [INFO] [stderr] 418 | let join_handle = thread::spawn(move ||{ [INFO] [stderr] | ^^^^^^^^^^^ help: consider using `_join_handle` instead [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `BadRequestError` [INFO] [stderr] --> src/trust.rs:269:5 [INFO] [stderr] | [INFO] [stderr] 269 | BadRequestError = 400, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `ForbiddenError` [INFO] [stderr] --> src/trust.rs:270:5 [INFO] [stderr] | [INFO] [stderr] 270 | ForbiddenError = 403, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `MethodNotAllowedError` [INFO] [stderr] --> src/trust.rs:272:5 [INFO] [stderr] | [INFO] [stderr] 272 | MethodNotAllowedError = 405, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `ServerError` [INFO] [stderr] --> src/trust.rs:273:5 [INFO] [stderr] | [INFO] [stderr] 273 | ServerError = 500, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/trust.rs:277:5 [INFO] [stderr] | [INFO] [stderr] 277 | fn new(url: Url, method : String, headers: HashMap, content: String, params: HashMap, path_string: String) -> Request { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `used_workers` [INFO] [stderr] --> src/trust.rs:378:5 [INFO] [stderr] | [INFO] [stderr] 378 | used_workers: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/trust.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | stream.write(&response.to_http()); [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: unused `std::result::Result` that must be used [INFO] [stderr] --> src/trust.rs:50:13 [INFO] [stderr] | [INFO] [stderr] 50 | stream.write(&response.to_http()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/trust.rs:86:18 [INFO] [stderr] | [INFO] [stderr] 86 | stream.read(&mut request_text); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/trust.rs:94:29 [INFO] [stderr] | [INFO] [stderr] 94 | stream.write(&resp.to_http()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: method `getRouteString` should have a snake case name such as `get_route_string` [INFO] [stderr] --> src/trust.rs:106:5 [INFO] [stderr] | [INFO] [stderr] 106 | / pub fn getRouteString(&self) -> String { [INFO] [stderr] 107 | | return format!("{:?}", self.routes); [INFO] [stderr] 108 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/trust.rs:127:9 [INFO] [stderr] | [INFO] [stderr] 127 | / match self { [INFO] [stderr] 128 | | &UrlPart::WORD(ref word) => { [INFO] [stderr] 129 | | word.hash(state); [INFO] [stderr] 130 | | }, [INFO] [stderr] ... | [INFO] [stderr] 133 | | } [INFO] [stderr] 134 | | } [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] 127 | match *self { [INFO] [stderr] 128 | UrlPart::WORD(ref word) => { [INFO] [stderr] 129 | word.hash(state); [INFO] [stderr] 130 | }, [INFO] [stderr] 131 | UrlPart::PARAM(ref name, ref value, ref param_type) => { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/trust.rs:140:9 [INFO] [stderr] | [INFO] [stderr] 140 | / match self { [INFO] [stderr] 141 | | &UrlPart::WORD(ref word) => { [INFO] [stderr] 142 | | match other { [INFO] [stderr] 143 | | &UrlPart::WORD(ref word2) => { [INFO] [stderr] ... | [INFO] [stderr] 156 | | } [INFO] [stderr] 157 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [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] 140 | match *self { [INFO] [stderr] 141 | UrlPart::WORD(ref word) => { [INFO] [stderr] 142 | match other { [INFO] [stderr] 143 | &UrlPart::WORD(ref word2) => { [INFO] [stderr] 144 | return word == word2 [INFO] [stderr] 145 | } [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/trust.rs:142:17 [INFO] [stderr] | [INFO] [stderr] 142 | / match other { [INFO] [stderr] 143 | | &UrlPart::WORD(ref word2) => { [INFO] [stderr] 144 | | return word == word2 [INFO] [stderr] 145 | | } [INFO] [stderr] 146 | | _ => return false [INFO] [stderr] 147 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [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] 142 | match *other { [INFO] [stderr] 143 | UrlPart::WORD(ref word2) => { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/trust.rs:150:17 [INFO] [stderr] | [INFO] [stderr] 150 | / match other { [INFO] [stderr] 151 | | &UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [INFO] [stderr] 152 | | return param_type == param_type2 [INFO] [stderr] 153 | | } [INFO] [stderr] 154 | | _ => return false [INFO] [stderr] 155 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [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] 150 | match *other { [INFO] [stderr] 151 | UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/trust.rs:185:13 [INFO] [stderr] | [INFO] [stderr] 185 | / match &self.parts[ind] { [INFO] [stderr] 186 | | &UrlPart::PARAM(ref name,ref value,ref param_type) => { [INFO] [stderr] 187 | | match &other.parts[ind] { [INFO] [stderr] 188 | | &UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [INFO] [stderr] ... | [INFO] [stderr] 196 | | _ => {} [INFO] [stderr] 197 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 185 | if let &UrlPart::PARAM(ref name,ref value,ref param_type) = &self.parts[ind] { [INFO] [stderr] 186 | match &other.parts[ind] { [INFO] [stderr] 187 | &UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [INFO] [stderr] 188 | let new_part = UrlPart::PARAM(name2.clone(),value.clone(),param_type2.clone()); [INFO] [stderr] 189 | params.insert(name2.clone(),new_part); [INFO] [stderr] 190 | [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/trust.rs:185:13 [INFO] [stderr] | [INFO] [stderr] 185 | / match &self.parts[ind] { [INFO] [stderr] 186 | | &UrlPart::PARAM(ref name,ref value,ref param_type) => { [INFO] [stderr] 187 | | match &other.parts[ind] { [INFO] [stderr] 188 | | &UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [INFO] [stderr] ... | [INFO] [stderr] 196 | | _ => {} [INFO] [stderr] 197 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [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] 185 | match self.parts[ind] { [INFO] [stderr] 186 | UrlPart::PARAM(ref name,ref value,ref param_type) => { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/trust.rs:187:21 [INFO] [stderr] | [INFO] [stderr] 187 | / match &other.parts[ind] { [INFO] [stderr] 188 | | &UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [INFO] [stderr] 189 | | let new_part = UrlPart::PARAM(name2.clone(),value.clone(),param_type2.clone()); [INFO] [stderr] 190 | | params.insert(name2.clone(),new_part); [INFO] [stderr] ... | [INFO] [stderr] 193 | | _ => {} [INFO] [stderr] 194 | | } [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 187 | if let &UrlPart::PARAM(ref name2,ref value2,ref param_type2) = &other.parts[ind] { [INFO] [stderr] 188 | let new_part = UrlPart::PARAM(name2.clone(),value.clone(),param_type2.clone()); [INFO] [stderr] 189 | params.insert(name2.clone(),new_part); [INFO] [stderr] 190 | [INFO] [stderr] 191 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/trust.rs:187:21 [INFO] [stderr] | [INFO] [stderr] 187 | / match &other.parts[ind] { [INFO] [stderr] 188 | | &UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [INFO] [stderr] 189 | | let new_part = UrlPart::PARAM(name2.clone(),value.clone(),param_type2.clone()); [INFO] [stderr] 190 | | params.insert(name2.clone(),new_part); [INFO] [stderr] ... | [INFO] [stderr] 193 | | _ => {} [INFO] [stderr] 194 | | } [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [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] 187 | match other.parts[ind] { [INFO] [stderr] 188 | UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/trust.rs:204:50 [INFO] [stderr] | [INFO] [stderr] 204 | let url_parts_raw: Vec<&str> = url.split("/").collect(); [INFO] [stderr] | ^^^ help: try using a char instead: `'/'` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_char_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `BadRequestError` [INFO] [stderr] --> src/trust.rs:269:5 [INFO] [stderr] | [INFO] [stderr] 269 | BadRequestError = 400, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `ForbiddenError` [INFO] [stderr] --> src/trust.rs:270:5 [INFO] [stderr] | [INFO] [stderr] 270 | ForbiddenError = 403, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `MethodNotAllowedError` [INFO] [stderr] --> src/trust.rs:272:5 [INFO] [stderr] | [INFO] [stderr] 272 | MethodNotAllowedError = 405, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `ServerError` [INFO] [stderr] --> src/trust.rs:273:5 [INFO] [stderr] | [INFO] [stderr] 273 | ServerError = 500, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/trust.rs:277:5 [INFO] [stderr] | [INFO] [stderr] 277 | fn new(url: Url, method : String, headers: HashMap, content: String, params: HashMap, path_string: String) -> Request { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `used_workers` [INFO] [stderr] --> src/trust.rs:378:5 [INFO] [stderr] | [INFO] [stderr] 378 | used_workers: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/trust.rs:225:50 [INFO] [stderr] | [INFO] [stderr] 225 | let url_parts_raw: Vec<&str> = url.split("/").collect(); [INFO] [stderr] | ^^^ help: try using a char instead: `'/'` [INFO] [stderr] | [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: single-character string constant used as pattern [INFO] [stderr] --> src/trust.rs:230:47 [INFO] [stderr] | [INFO] [stderr] 230 | if url_parts_raw[ind].starts_with("<") && url_parts_raw[ind].ends_with(">") { [INFO] [stderr] | ^^^ help: try using a char instead: `'<'` [INFO] [stderr] | [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: single-character string constant used as pattern [INFO] [stderr] --> src/trust.rs:230:84 [INFO] [stderr] | [INFO] [stderr] 230 | if url_parts_raw[ind].starts_with("<") && url_parts_raw[ind].ends_with(">") { [INFO] [stderr] | ^^^ help: try using a char instead: `'>'` [INFO] [stderr] | [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: single-character string constant used as pattern [INFO] [stderr] --> src/trust.rs:231:114 [INFO] [stderr] | [INFO] [stderr] 231 | let param_parts : Vec<&str> = url_parts_raw[ind].get(1..url_parts_raw[ind].len()).unwrap().split(":").collect(); [INFO] [stderr] | ^^^ help: try using a char instead: `':'` [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/trust.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | stream.write(&response.to_http()); [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] | [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: unused `std::result::Result` that must be used [INFO] [stderr] --> src/trust.rs:50:13 [INFO] [stderr] | [INFO] [stderr] 50 | stream.write(&response.to_http()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/trust.rs:291:9 [INFO] [stderr] | [INFO] [stderr] 291 | cursor.read_until(' ' as u8, &mut method); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/trust.rs:291:27 [INFO] [stderr] | [INFO] [stderr] 291 | cursor.read_until(' ' as u8, &mut method); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::char_lit_as_u8)] on by default [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b' ' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/trust.rs:293:9 [INFO] [stderr] | [INFO] [stderr] 293 | cursor.read_until(' ' as u8, &mut path); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/trust.rs:293:27 [INFO] [stderr] | [INFO] [stderr] 293 | cursor.read_until(' ' as u8, &mut path); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b' ' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/trust.rs:296:9 [INFO] [stderr] | [INFO] [stderr] 296 | cursor.read_line(&mut version); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/trust.rs:300:9 [INFO] [stderr] | [INFO] [stderr] 300 | cursor.read_until('\0' as u8, &mut rest_of_file); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/trust.rs:300:27 [INFO] [stderr] | [INFO] [stderr] 300 | cursor.read_until('\0' as u8, &mut rest_of_file); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'\0' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/trust.rs:354:33 [INFO] [stderr] | [INFO] [stderr] 354 | let mut http_response = String::from(format!("HTTP/1.1 {}\n", self.response_code)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `String::from()`: `format!("HTTP/1.1 {}\n", self.response_code)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_conversion)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/trust.rs:426:17 [INFO] [stderr] | [INFO] [stderr] 426 | / match job { [INFO] [stderr] 427 | | Some(job) => (job.handler)(job.route, job.request, job.stream), [INFO] [stderr] 428 | | None => {} [INFO] [stderr] 429 | | }; [INFO] [stderr] | |_________________^ help: try this: `if let Some(job) = job { (job.handler)(job.route, job.request, job.stream) }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/trust.rs:86:18 [INFO] [stderr] | [INFO] [stderr] 86 | stream.read(&mut request_text); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/trust.rs:94:29 [INFO] [stderr] | [INFO] [stderr] 94 | stream.write(&resp.to_http()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: method `getRouteString` should have a snake case name such as `get_route_string` [INFO] [stderr] --> src/trust.rs:106:5 [INFO] [stderr] | [INFO] [stderr] 106 | / pub fn getRouteString(&self) -> String { [INFO] [stderr] 107 | | return format!("{:?}", self.routes); [INFO] [stderr] 108 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [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/jinja.rs:24:34 [INFO] [stderr] | [INFO] [stderr] 24 | templated.push_str (contents.get(matches_ind as usize .. matches_ind+1 as usize).unwrap().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] 24 | templated.push_str (&(*contents.get(matches_ind as usize .. matches_ind+1 as usize).unwrap()).clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 24 | templated.push_str (&str::clone(contents.get(matches_ind as usize .. matches_ind+1 as usize).unwrap())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [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/jinja.rs:28:24 [INFO] [stderr] | [INFO] [stderr] 28 | println!("{}", contents.get(mat.start() as usize..mat.end() as usize).unwrap().clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [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] 28 | println!("{}", &(*contents.get(mat.start() as usize..mat.end() as usize).unwrap()).clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 28 | println!("{}", &str::clone(contents.get(mat.start() as usize..mat.end() as usize).unwrap())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/trust.rs:127:9 [INFO] [stderr] | [INFO] [stderr] 127 | / match self { [INFO] [stderr] 128 | | &UrlPart::WORD(ref word) => { [INFO] [stderr] 129 | | word.hash(state); [INFO] [stderr] 130 | | }, [INFO] [stderr] ... | [INFO] [stderr] 133 | | } [INFO] [stderr] 134 | | } [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] 127 | match *self { [INFO] [stderr] 128 | UrlPart::WORD(ref word) => { [INFO] [stderr] 129 | word.hash(state); [INFO] [stderr] 130 | }, [INFO] [stderr] 131 | UrlPart::PARAM(ref name, ref value, ref param_type) => { [INFO] [stderr] | [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/jinja.rs:29:20 [INFO] [stderr] | [INFO] [stderr] 29 | let word = contents.get(mat.start() + 2 as usize..mat.end() - 2 as usize).unwrap().clone().trim(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [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] 29 | let word = &(*contents.get(mat.start() + 2 as usize..mat.end() - 2 as usize).unwrap()).clone().trim(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 29 | let word = &str::clone(contents.get(mat.start() + 2 as usize..mat.end() - 2 as usize).unwrap()).trim(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/trust.rs:140:9 [INFO] [stderr] | [INFO] [stderr] 140 | / match self { [INFO] [stderr] 141 | | &UrlPart::WORD(ref word) => { [INFO] [stderr] 142 | | match other { [INFO] [stderr] 143 | | &UrlPart::WORD(ref word2) => { [INFO] [stderr] ... | [INFO] [stderr] 156 | | } [INFO] [stderr] 157 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [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] 140 | match *self { [INFO] [stderr] 141 | UrlPart::WORD(ref word) => { [INFO] [stderr] 142 | match other { [INFO] [stderr] 143 | &UrlPart::WORD(ref word2) => { [INFO] [stderr] 144 | return word == word2 [INFO] [stderr] 145 | } [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/trust.rs:142:17 [INFO] [stderr] | [INFO] [stderr] 142 | / match other { [INFO] [stderr] 143 | | &UrlPart::WORD(ref word2) => { [INFO] [stderr] 144 | | return word == word2 [INFO] [stderr] 145 | | } [INFO] [stderr] 146 | | _ => return false [INFO] [stderr] 147 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [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] 142 | match *other { [INFO] [stderr] 143 | UrlPart::WORD(ref word2) => { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/trust.rs:150:17 [INFO] [stderr] | [INFO] [stderr] 150 | / match other { [INFO] [stderr] 151 | | &UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [INFO] [stderr] 152 | | return param_type == param_type2 [INFO] [stderr] 153 | | } [INFO] [stderr] 154 | | _ => return false [INFO] [stderr] 155 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [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] 150 | match *other { [INFO] [stderr] 151 | UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [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/jinja.rs:37:28 [INFO] [stderr] | [INFO] [stderr] 37 | templated.push_str(contents.get(matches_ind as usize .. matches_ind+1 as usize).unwrap().clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] | [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] 37 | templated.push_str(&(*contents.get(matches_ind as usize .. matches_ind+1 as usize).unwrap()).clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 37 | templated.push_str(&str::clone(contents.get(matches_ind as usize .. matches_ind+1 as usize).unwrap())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/trust.rs:185:13 [INFO] [stderr] | [INFO] [stderr] 185 | / match &self.parts[ind] { [INFO] [stderr] 186 | | &UrlPart::PARAM(ref name,ref value,ref param_type) => { [INFO] [stderr] 187 | | match &other.parts[ind] { [INFO] [stderr] 188 | | &UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [INFO] [stderr] ... | [INFO] [stderr] 196 | | _ => {} [INFO] [stderr] 197 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 185 | if let &UrlPart::PARAM(ref name,ref value,ref param_type) = &self.parts[ind] { [INFO] [stderr] 186 | match &other.parts[ind] { [INFO] [stderr] 187 | &UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [INFO] [stderr] 188 | let new_part = UrlPart::PARAM(name2.clone(),value.clone(),param_type2.clone()); [INFO] [stderr] 189 | params.insert(name2.clone(),new_part); [INFO] [stderr] 190 | [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/trust.rs:185:13 [INFO] [stderr] | [INFO] [stderr] 185 | / match &self.parts[ind] { [INFO] [stderr] 186 | | &UrlPart::PARAM(ref name,ref value,ref param_type) => { [INFO] [stderr] 187 | | match &other.parts[ind] { [INFO] [stderr] 188 | | &UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [INFO] [stderr] ... | [INFO] [stderr] 196 | | _ => {} [INFO] [stderr] 197 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [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] 185 | match self.parts[ind] { [INFO] [stderr] 186 | UrlPart::PARAM(ref name,ref value,ref param_type) => { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/trust.rs:187:21 [INFO] [stderr] | [INFO] [stderr] 187 | / match &other.parts[ind] { [INFO] [stderr] 188 | | &UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [INFO] [stderr] 189 | | let new_part = UrlPart::PARAM(name2.clone(),value.clone(),param_type2.clone()); [INFO] [stderr] 190 | | params.insert(name2.clone(),new_part); [INFO] [stderr] ... | [INFO] [stderr] 193 | | _ => {} [INFO] [stderr] 194 | | } [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 187 | if let &UrlPart::PARAM(ref name2,ref value2,ref param_type2) = &other.parts[ind] { [INFO] [stderr] 188 | let new_part = UrlPart::PARAM(name2.clone(),value.clone(),param_type2.clone()); [INFO] [stderr] 189 | params.insert(name2.clone(),new_part); [INFO] [stderr] 190 | [INFO] [stderr] 191 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/trust.rs:187:21 [INFO] [stderr] | [INFO] [stderr] 187 | / match &other.parts[ind] { [INFO] [stderr] 188 | | &UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [INFO] [stderr] 189 | | let new_part = UrlPart::PARAM(name2.clone(),value.clone(),param_type2.clone()); [INFO] [stderr] 190 | | params.insert(name2.clone(),new_part); [INFO] [stderr] ... | [INFO] [stderr] 193 | | _ => {} [INFO] [stderr] 194 | | } [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [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] 187 | match other.parts[ind] { [INFO] [stderr] 188 | UrlPart::PARAM(ref name2,ref value2,ref param_type2) => { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/trust.rs:204:50 [INFO] [stderr] | [INFO] [stderr] 204 | let url_parts_raw: Vec<&str> = url.split("/").collect(); [INFO] [stderr] | ^^^ help: try using a char instead: `'/'` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_char_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/main.rs:24:9 [INFO] [stderr] | [INFO] [stderr] 24 | return match request.values.get("test").unwrap(){ [INFO] [stderr] | ____________^ [INFO] [stderr] 25 | | &UrlPart::PARAM(ref x, ref name, ..) => name.to_string(), [INFO] [stderr] 26 | | _ => String::from("this didn't work") [INFO] [stderr] 27 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [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] 24 | return match *request.values.get("test").unwrap(){ [INFO] [stderr] 25 | UrlPart::PARAM(ref x, ref name, ..) => name.to_string(), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a HashMap. Using `[]` is more clear and more concise [INFO] [stderr] --> src/main.rs:24:15 [INFO] [stderr] | [INFO] [stderr] 24 | return match request.values.get("test").unwrap(){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&request.values["test"]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::get_unwrap)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/trust.rs:225:50 [INFO] [stderr] | [INFO] [stderr] 225 | let url_parts_raw: Vec<&str> = url.split("/").collect(); [INFO] [stderr] | ^^^ help: try using a char instead: `'/'` [INFO] [stderr] | [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: you don't need to add `&` to all patterns [INFO] [stderr] --> src/main.rs:35:12 [INFO] [stderr] | [INFO] [stderr] 35 | let age = match request.values.get("age").unwrap(){ [INFO] [stderr] | _______________^ [INFO] [stderr] 36 | | &UrlPart::PARAM(ref x, ref name, ..) => name.to_string(), [INFO] [stderr] 37 | | _ => String::from("this didn't work") [INFO] [stderr] 38 | | }; [INFO] [stderr] | |_____^ [INFO] [stderr] | [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] 35 | let age = match *request.values.get("age").unwrap(){ [INFO] [stderr] 36 | UrlPart::PARAM(ref x, ref name, ..) => name.to_string(), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a HashMap. Using `[]` is more clear and more concise [INFO] [stderr] --> src/main.rs:35:18 [INFO] [stderr] | [INFO] [stderr] 35 | let age = match request.values.get("age").unwrap(){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&request.values["age"]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/trust.rs:230:47 [INFO] [stderr] | [INFO] [stderr] 230 | if url_parts_raw[ind].starts_with("<") && url_parts_raw[ind].ends_with(">") { [INFO] [stderr] | ^^^ help: try using a char instead: `'<'` [INFO] [stderr] | [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: single-character string constant used as pattern [INFO] [stderr] --> src/trust.rs:230:84 [INFO] [stderr] | [INFO] [stderr] 230 | if url_parts_raw[ind].starts_with("<") && url_parts_raw[ind].ends_with(">") { [INFO] [stderr] | ^^^ help: try using a char instead: `'>'` [INFO] [stderr] | [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: single-character string constant used as pattern [INFO] [stderr] --> src/trust.rs:231:114 [INFO] [stderr] | [INFO] [stderr] 231 | let param_parts : Vec<&str> = url_parts_raw[ind].get(1..url_parts_raw[ind].len()).unwrap().split(":").collect(); [INFO] [stderr] | ^^^ help: try using a char instead: `':'` [INFO] [stderr] | [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: unused `std::result::Result` that must be used [INFO] [stderr] --> src/trust.rs:291:9 [INFO] [stderr] | [INFO] [stderr] 291 | cursor.read_until(' ' as u8, &mut method); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/trust.rs:291:27 [INFO] [stderr] | [INFO] [stderr] 291 | cursor.read_until(' ' as u8, &mut method); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::char_lit_as_u8)] on by default [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b' ' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/trust.rs:293:9 [INFO] [stderr] | [INFO] [stderr] 293 | cursor.read_until(' ' as u8, &mut path); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/trust.rs:293:27 [INFO] [stderr] | [INFO] [stderr] 293 | cursor.read_until(' ' as u8, &mut path); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b' ' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/trust.rs:296:9 [INFO] [stderr] | [INFO] [stderr] 296 | cursor.read_line(&mut version); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/trust.rs:300:9 [INFO] [stderr] | [INFO] [stderr] 300 | cursor.read_until('\0' as u8, &mut rest_of_file); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/trust.rs:300:27 [INFO] [stderr] | [INFO] [stderr] 300 | cursor.read_until('\0' as u8, &mut rest_of_file); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'\0' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/trust.rs:354:33 [INFO] [stderr] | [INFO] [stderr] 354 | let mut http_response = String::from(format!("HTTP/1.1 {}\n", self.response_code)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `String::from()`: `format!("HTTP/1.1 {}\n", self.response_code)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_conversion)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] error: aborting due to 4 previous errors [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/trust.rs:426:17 [INFO] [stderr] | [INFO] [stderr] 426 | / match job { [INFO] [stderr] 427 | | Some(job) => (job.handler)(job.route, job.request, job.stream), [INFO] [stderr] 428 | | None => {} [INFO] [stderr] 429 | | }; [INFO] [stderr] | |_________________^ help: try this: `if let Some(job) = job { (job.handler)(job.route, job.request, job.stream) }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] [INFO] [stderr] error: Could not compile `trust`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: using `clone` on a double-reference; this will copy the reference instead of cloning the inner type [INFO] [stderr] --> src/jinja.rs:24:34 [INFO] [stderr] | [INFO] [stderr] 24 | templated.push_str (contents.get(matches_ind as usize .. matches_ind+1 as usize).unwrap().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] 24 | templated.push_str (&(*contents.get(matches_ind as usize .. matches_ind+1 as usize).unwrap()).clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 24 | templated.push_str (&str::clone(contents.get(matches_ind as usize .. matches_ind+1 as usize).unwrap())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [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/jinja.rs:28:24 [INFO] [stderr] | [INFO] [stderr] 28 | println!("{}", contents.get(mat.start() as usize..mat.end() as usize).unwrap().clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [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] 28 | println!("{}", &(*contents.get(mat.start() as usize..mat.end() as usize).unwrap()).clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 28 | println!("{}", &str::clone(contents.get(mat.start() as usize..mat.end() as usize).unwrap())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [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/jinja.rs:29:20 [INFO] [stderr] | [INFO] [stderr] 29 | let word = contents.get(mat.start() + 2 as usize..mat.end() - 2 as usize).unwrap().clone().trim(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [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] 29 | let word = &(*contents.get(mat.start() + 2 as usize..mat.end() - 2 as usize).unwrap()).clone().trim(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 29 | let word = &str::clone(contents.get(mat.start() + 2 as usize..mat.end() - 2 as usize).unwrap()).trim(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [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/jinja.rs:37:28 [INFO] [stderr] | [INFO] [stderr] 37 | templated.push_str(contents.get(matches_ind as usize .. matches_ind+1 as usize).unwrap().clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [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] 37 | templated.push_str(&(*contents.get(matches_ind as usize .. matches_ind+1 as usize).unwrap()).clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 37 | templated.push_str(&str::clone(contents.get(matches_ind as usize .. matches_ind+1 as usize).unwrap())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/main.rs:24:9 [INFO] [stderr] | [INFO] [stderr] 24 | return match request.values.get("test").unwrap(){ [INFO] [stderr] | ____________^ [INFO] [stderr] 25 | | &UrlPart::PARAM(ref x, ref name, ..) => name.to_string(), [INFO] [stderr] 26 | | _ => String::from("this didn't work") [INFO] [stderr] 27 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [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] 24 | return match *request.values.get("test").unwrap(){ [INFO] [stderr] 25 | UrlPart::PARAM(ref x, ref name, ..) => name.to_string(), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a HashMap. Using `[]` is more clear and more concise [INFO] [stderr] --> src/main.rs:24:15 [INFO] [stderr] | [INFO] [stderr] 24 | return match request.values.get("test").unwrap(){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&request.values["test"]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::get_unwrap)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/main.rs:35:12 [INFO] [stderr] | [INFO] [stderr] 35 | let age = match request.values.get("age").unwrap(){ [INFO] [stderr] | _______________^ [INFO] [stderr] 36 | | &UrlPart::PARAM(ref x, ref name, ..) => name.to_string(), [INFO] [stderr] 37 | | _ => String::from("this didn't work") [INFO] [stderr] 38 | | }; [INFO] [stderr] | |_____^ [INFO] [stderr] | [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] 35 | let age = match *request.values.get("age").unwrap(){ [INFO] [stderr] 36 | UrlPart::PARAM(ref x, ref name, ..) => name.to_string(), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a HashMap. Using `[]` is more clear and more concise [INFO] [stderr] --> src/main.rs:35:18 [INFO] [stderr] | [INFO] [stderr] 35 | let age = match request.values.get("age").unwrap(){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&request.values["age"]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] error: aborting due to 4 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `trust`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "3ea8ebd934137cb5ecdef51a5e7f90c2cb06243d59c89eec0f483536ff35f14f"` [INFO] running `"docker" "rm" "-f" "3ea8ebd934137cb5ecdef51a5e7f90c2cb06243d59c89eec0f483536ff35f14f"` [INFO] [stdout] 3ea8ebd934137cb5ecdef51a5e7f90c2cb06243d59c89eec0f483536ff35f14f