[INFO] crate rpki 0.1.0 is already in cache [INFO] extracting crate rpki 0.1.0 into work/ex/clippy-test-run/sources/stable/reg/rpki/0.1.0 [INFO] extracting crate rpki 0.1.0 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/rpki/0.1.0 [INFO] validating manifest of rpki-0.1.0 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 rpki-0.1.0 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 rpki-0.1.0 [INFO] finished frobbing rpki-0.1.0 [INFO] frobbed toml for rpki-0.1.0 written to work/ex/clippy-test-run/sources/stable/reg/rpki/0.1.0/Cargo.toml [INFO] started frobbing rpki-0.1.0 [INFO] finished frobbing rpki-0.1.0 [INFO] frobbed toml for rpki-0.1.0 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/rpki/0.1.0/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [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 rpki-0.1.0 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-5/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/rpki/0.1.0:/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] b4c6c37d5ef1a361aa04ba960fcd9f25b900e9827921e08df29b194aa4adbcac [INFO] running `"docker" "start" "-a" "b4c6c37d5ef1a361aa04ba960fcd9f25b900e9827921e08df29b194aa4adbcac"` [INFO] [stderr] Checking bcder v0.1.0 [INFO] [stderr] Checking rpki v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: literal with an empty format string [INFO] [stderr] --> src/uri.rs:315:48 [INFO] [stderr] | [INFO] [stderr] 315 | Scheme::Http => { write!(f, "{}", "http://")?; }, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::write_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_literal [INFO] [stderr] [INFO] [stderr] warning: literal with an empty format string [INFO] [stderr] --> src/uri.rs:316:48 [INFO] [stderr] | [INFO] [stderr] 316 | Scheme::Https => { write!(f, "{}", "https://")?; }, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_literal [INFO] [stderr] [INFO] [stderr] warning: literal with an empty format string [INFO] [stderr] --> src/uri.rs:317:48 [INFO] [stderr] | [INFO] [stderr] 317 | Scheme::Rsync => { write!(f, "{}", "rsync://")?; } [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_literal [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/oob/exchange.rs:235:21 [INFO] [stderr] | [INFO] [stderr] 235 | id_cert: id_cert, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `id_cert` [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/uri.rs:315:48 [INFO] [stderr] | [INFO] [stderr] 315 | Scheme::Http => { write!(f, "{}", "http://")?; }, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::write_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_literal [INFO] [stderr] [INFO] [stderr] warning: literal with an empty format string [INFO] [stderr] --> src/uri.rs:316:48 [INFO] [stderr] | [INFO] [stderr] 316 | Scheme::Https => { write!(f, "{}", "https://")?; }, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_literal [INFO] [stderr] [INFO] [stderr] warning: literal with an empty format string [INFO] [stderr] --> src/uri.rs:317:48 [INFO] [stderr] | [INFO] [stderr] 317 | Scheme::Rsync => { write!(f, "{}", "rsync://")?; } [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_literal [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/oob/exchange.rs:235:21 [INFO] [stderr] | [INFO] [stderr] 235 | id_cert: id_cert, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `id_cert` [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: unneeded return statement [INFO] [stderr] --> src/cert/ext.rs:239:17 [INFO] [stderr] | [INFO] [stderr] 239 | return Err(decode::Malformed.into()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(decode::Malformed.into())` [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/cert/ext.rs:242:17 [INFO] [stderr] | [INFO] [stderr] 242 | return Err(decode::Malformed.into()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(decode::Malformed.into())` [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/crl.rs:285:17 [INFO] [stderr] | [INFO] [stderr] 285 | return Err(decode::Malformed.into()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(decode::Malformed.into())` [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/uri.rs:290:9 [INFO] [stderr] | [INFO] [stderr] 290 | 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: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/oob/exchange.rs:20:21 [INFO] [stderr] | [INFO] [stderr] 20 | pub const VERSION: &'static str = "1"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::const_static_lifetime)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/oob/exchange.rs:21:16 [INFO] [stderr] | [INFO] [stderr] 21 | pub const NS: &'static str = "http://www.hactrn.net/uris/rpki/rpki-setup/"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/publication/pubmsg.rs:11:21 [INFO] [stderr] | [INFO] [stderr] 11 | pub const VERSION: &'static str = "4"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/publication/pubmsg.rs:12:16 [INFO] [stderr] | [INFO] [stderr] 12 | pub const NS: &'static str = "http://www.hactrn.net/uris/rpki/publication-spec/"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/publication/pubmsg.rs:131:25 [INFO] [stderr] | [INFO] [stderr] 131 | return Err(MessageError::UnknownMessageType) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(MessageError::UnknownMessageType)` [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/cert/ext.rs:239:17 [INFO] [stderr] | [INFO] [stderr] 239 | return Err(decode::Malformed.into()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(decode::Malformed.into())` [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/cert/ext.rs:242:17 [INFO] [stderr] | [INFO] [stderr] 242 | return Err(decode::Malformed.into()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(decode::Malformed.into())` [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] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/remote/xml.rs:53:38 [INFO] [stderr] | [INFO] [stderr] 53 | fn cache(&mut self, e: XmlEvent) -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unused_unit)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/remote/xml.rs:69:18 [INFO] [stderr] | [INFO] [stderr] 69 | _ => return Err(XmlReaderErr::ExpectedStartDocument) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(XmlReaderErr::ExpectedStartDocument)` [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/remote/xml.rs:79:18 [INFO] [stderr] | [INFO] [stderr] 79 | _ => return Err(XmlReaderErr::ExpectedStart) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(XmlReaderErr::ExpectedStart)` [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/remote/xml.rs:219:18 [INFO] [stderr] | [INFO] [stderr] 219 | _ => return Err(XmlReaderErr::ExpectedCharacters) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(XmlReaderErr::ExpectedCharacters)` [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/remote/xml.rs:364:23 [INFO] [stderr] | [INFO] [stderr] 364 | Err(e) => return Err(AttributesError::HexError(e)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(AttributesError::HexError(e))` [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/crl.rs:285:17 [INFO] [stderr] | [INFO] [stderr] 285 | return Err(decode::Malformed.into()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(decode::Malformed.into())` [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/uri.rs:290:9 [INFO] [stderr] | [INFO] [stderr] 290 | 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: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/oob/exchange.rs:20:21 [INFO] [stderr] | [INFO] [stderr] 20 | pub const VERSION: &'static str = "1"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::const_static_lifetime)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/oob/exchange.rs:21:16 [INFO] [stderr] | [INFO] [stderr] 21 | pub const NS: &'static str = "http://www.hactrn.net/uris/rpki/rpki-setup/"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/publication/pubmsg.rs:11:21 [INFO] [stderr] | [INFO] [stderr] 11 | pub const VERSION: &'static str = "4"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/publication/pubmsg.rs:12:16 [INFO] [stderr] | [INFO] [stderr] 12 | pub const NS: &'static str = "http://www.hactrn.net/uris/rpki/publication-spec/"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/publication/pubmsg.rs:131:25 [INFO] [stderr] | [INFO] [stderr] 131 | return Err(MessageError::UnknownMessageType) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(MessageError::UnknownMessageType)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/remote/xml.rs:53:38 [INFO] [stderr] | [INFO] [stderr] 53 | fn cache(&mut self, e: XmlEvent) -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unused_unit)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/remote/xml.rs:69:18 [INFO] [stderr] | [INFO] [stderr] 69 | _ => return Err(XmlReaderErr::ExpectedStartDocument) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(XmlReaderErr::ExpectedStartDocument)` [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/remote/xml.rs:79:18 [INFO] [stderr] | [INFO] [stderr] 79 | _ => return Err(XmlReaderErr::ExpectedStart) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(XmlReaderErr::ExpectedStart)` [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/remote/xml.rs:219:18 [INFO] [stderr] | [INFO] [stderr] 219 | _ => return Err(XmlReaderErr::ExpectedCharacters) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(XmlReaderErr::ExpectedCharacters)` [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/remote/xml.rs:364:23 [INFO] [stderr] | [INFO] [stderr] 364 | Err(e) => return Err(AttributesError::HexError(e)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(AttributesError::HexError(e))` [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: you should consider adding a `Default` implementation for `asres::AsIdBlocks` [INFO] [stderr] --> src/asres.rs:186:5 [INFO] [stderr] | [INFO] [stderr] 186 | / pub fn new() -> Self { [INFO] [stderr] 187 | | AsIdBlocks(Captured::empty(Mode::Der)) [INFO] [stderr] 188 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 184 | impl Default for asres::AsIdBlocks { [INFO] [stderr] 185 | fn default() -> Self { [INFO] [stderr] 186 | Self::new() [INFO] [stderr] 187 | } [INFO] [stderr] 188 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/asres.rs:427:19 [INFO] [stderr] | [INFO] [stderr] 427 | fn encode<'a>(&'a self) -> impl encode::Values + 'a { [INFO] [stderr] | ^^^^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/asres.rs:482:16 [INFO] [stderr] | [INFO] [stderr] 482 | pub fn min(&self) -> AsId { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/asres.rs:487:16 [INFO] [stderr] | [INFO] [stderr] 487 | pub fn max(&self) -> AsId { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/asres.rs:514:19 [INFO] [stderr] | [INFO] [stderr] 514 | fn encode<'a>(&'a self) -> impl encode::Values + 'a { [INFO] [stderr] | ^^^^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/cert/ext.rs:18:15 [INFO] [stderr] | [INFO] [stderr] 18 | critical: &'a bool, [INFO] [stderr] | ^^^^^^^^ help: consider passing by value instead: `bool` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] error: this `if` has identical blocks [INFO] [stderr] --> src/cert/ext.rs:160:48 [INFO] [stderr] | [INFO] [stderr] 160 | else if subject_key_id.len() != 20 { [INFO] [stderr] | ________________________________________________^ [INFO] [stderr] 161 | | xerr!(Err(decode::Malformed.into())) [INFO] [stderr] 162 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::if_same_then_else)] on by default [INFO] [stderr] note: same as this [INFO] [stderr] --> src/cert/ext.rs:156:33 [INFO] [stderr] | [INFO] [stderr] 156 | if critical == true { [INFO] [stderr] | _________________________________^ [INFO] [stderr] 157 | | // RFC5280: Conforming CAs MUST mark this extension as non-critical. [INFO] [stderr] 158 | | xerr!(Err(decode::Malformed.into())) [INFO] [stderr] 159 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/cert/ext.rs:156:16 [INFO] [stderr] | [INFO] [stderr] 156 | if critical == true { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `critical` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::bool_comparison)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] error: this `if` has identical blocks [INFO] [stderr] --> src/cert/ext.rs:241:50 [INFO] [stderr] | [INFO] [stderr] 241 | else if authority_key_id.len() != 20 { [INFO] [stderr] | __________________________________________________^ [INFO] [stderr] 242 | | return Err(decode::Malformed.into()) [INFO] [stderr] 243 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] note: same as this [INFO] [stderr] --> src/cert/ext.rs:237:33 [INFO] [stderr] | [INFO] [stderr] 237 | if critical == true { [INFO] [stderr] | _________________________________^ [INFO] [stderr] 238 | | // RFC5280: Conforming CAs MUST mark this extension as non-critical. [INFO] [stderr] 239 | | return Err(decode::Malformed.into()) [INFO] [stderr] 240 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/cert/ext.rs:237:16 [INFO] [stderr] | [INFO] [stderr] 237 | if critical == true { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `critical` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_none()` [INFO] [stderr] --> src/cert/ext.rs:822:20 [INFO] [stderr] | [INFO] [stderr] 822 | if let None = UriGeneralName::skip_opt(cons)? { [INFO] [stderr] | _____________- ^^^^ [INFO] [stderr] 823 | | xerr!(return Err(decode::Malformed.into())) [INFO] [stderr] 824 | | } [INFO] [stderr] | |_____________- help: try this: `if UriGeneralName::skip_opt(cons)?.is_none()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_pattern_matching)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `asres::AsIdBlocks` [INFO] [stderr] --> src/asres.rs:186:5 [INFO] [stderr] | [INFO] [stderr] 186 | / pub fn new() -> Self { [INFO] [stderr] 187 | | AsIdBlocks(Captured::empty(Mode::Der)) [INFO] [stderr] 188 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 184 | impl Default for asres::AsIdBlocks { [INFO] [stderr] 185 | fn default() -> Self { [INFO] [stderr] 186 | Self::new() [INFO] [stderr] 187 | } [INFO] [stderr] 188 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/asres.rs:427:19 [INFO] [stderr] | [INFO] [stderr] 427 | fn encode<'a>(&'a self) -> impl encode::Values + 'a { [INFO] [stderr] | ^^^^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `crl::CrlStore` [INFO] [stderr] --> src/crl.rs:326:5 [INFO] [stderr] | [INFO] [stderr] 326 | / pub fn new() -> Self { [INFO] [stderr] 327 | | CrlStore { crls: Vec::new() } [INFO] [stderr] 328 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 319 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/asres.rs:482:16 [INFO] [stderr] | [INFO] [stderr] 482 | pub fn min(&self) -> AsId { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/asres.rs:487:16 [INFO] [stderr] | [INFO] [stderr] 487 | pub fn max(&self) -> AsId { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/asres.rs:514:19 [INFO] [stderr] | [INFO] [stderr] 514 | fn encode<'a>(&'a self) -> impl encode::Values + 'a { [INFO] [stderr] | ^^^^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/cert/ext.rs:18:15 [INFO] [stderr] | [INFO] [stderr] 18 | critical: &'a bool, [INFO] [stderr] | ^^^^^^^^ help: consider passing by value instead: `bool` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] error: this `if` has identical blocks [INFO] [stderr] --> src/cert/ext.rs:160:48 [INFO] [stderr] | [INFO] [stderr] 160 | else if subject_key_id.len() != 20 { [INFO] [stderr] | ________________________________________________^ [INFO] [stderr] 161 | | xerr!(Err(decode::Malformed.into())) [INFO] [stderr] 162 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::if_same_then_else)] on by default [INFO] [stderr] note: same as this [INFO] [stderr] --> src/cert/ext.rs:156:33 [INFO] [stderr] | [INFO] [stderr] 156 | if critical == true { [INFO] [stderr] | _________________________________^ [INFO] [stderr] 157 | | // RFC5280: Conforming CAs MUST mark this extension as non-critical. [INFO] [stderr] 158 | | xerr!(Err(decode::Malformed.into())) [INFO] [stderr] 159 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/cert/ext.rs:156:16 [INFO] [stderr] | [INFO] [stderr] 156 | if critical == true { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `critical` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::bool_comparison)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] error: this `if` has identical blocks [INFO] [stderr] --> src/cert/ext.rs:241:50 [INFO] [stderr] | [INFO] [stderr] 241 | else if authority_key_id.len() != 20 { [INFO] [stderr] | __________________________________________________^ [INFO] [stderr] 242 | | return Err(decode::Malformed.into()) [INFO] [stderr] 243 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] note: same as this [INFO] [stderr] --> src/cert/ext.rs:237:33 [INFO] [stderr] | [INFO] [stderr] 237 | if critical == true { [INFO] [stderr] | _________________________________^ [INFO] [stderr] 238 | | // RFC5280: Conforming CAs MUST mark this extension as non-critical. [INFO] [stderr] 239 | | return Err(decode::Malformed.into()) [INFO] [stderr] 240 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/cert/ext.rs:237:16 [INFO] [stderr] | [INFO] [stderr] 237 | if critical == true { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `critical` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/ipres.rs:473:30 [INFO] [stderr] | [INFO] [stderr] 473 | xerr!(return Err(decode::Malformed.into())) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `decode::Malformed` [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: casting u8 to u128 may become silently lossy if types change [INFO] [stderr] --> src/ipres.rs:477:34 [INFO] [stderr] | [INFO] [stderr] 477 | addr = (addr << 8) | (octet as u128) [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u128::from(octet)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_some()` [INFO] [stderr] --> src/ipres.rs:520:16 [INFO] [stderr] | [INFO] [stderr] 520 | if let Some(_) = octets.next() { [INFO] [stderr] | _________- ^^^^^^^ [INFO] [stderr] 521 | | xerr!(return Err(decode::Malformed.into())) [INFO] [stderr] 522 | | } [INFO] [stderr] | |_________- help: try this: `if octets.next().is_some()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_none()` [INFO] [stderr] --> src/cert/ext.rs:822:20 [INFO] [stderr] | [INFO] [stderr] 822 | if let None = UriGeneralName::skip_opt(cons)? { [INFO] [stderr] | _____________- ^^^^ [INFO] [stderr] 823 | | xerr!(return Err(decode::Malformed.into())) [INFO] [stderr] 824 | | } [INFO] [stderr] | |_____________- help: try this: `if UriGeneralName::skip_opt(cons)?.is_none()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_pattern_matching)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/manifest.rs:208:9 [INFO] [stderr] | [INFO] [stderr] 208 | self, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::wrong_self_convention)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u128 may become silently lossy if types change [INFO] [stderr] --> src/roa.rs:243:38 [INFO] [stderr] | [INFO] [stderr] 243 | addr = (addr << 8) | (octet as u128) [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u128::from(octet)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/roa.rs:246:17 [INFO] [stderr] | [INFO] [stderr] 246 | addr = addr << 8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `addr <<= 8` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: defining a method called `from_str` on this type; consider implementing the `std::str::FromStr` trait or choosing a less ambiguous name [INFO] [stderr] --> src/uri.rs:37:5 [INFO] [stderr] | [INFO] [stderr] 37 | / pub fn from_str(s: &str) -> Result { [INFO] [stderr] 38 | | Self::from_bytes(Bytes::from(s)) [INFO] [stderr] 39 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::should_implement_trait)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait [INFO] [stderr] [INFO] [stderr] warning: defining a method called `from_str` on this type; consider implementing the `std::str::FromStr` trait or choosing a less ambiguous name [INFO] [stderr] --> src/uri.rs:209:5 [INFO] [stderr] | [INFO] [stderr] 209 | / pub fn from_str(s: &str) -> Result { [INFO] [stderr] 210 | | Self::from_bytes(Bytes::from(s)) [INFO] [stderr] 211 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait [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/uri.rs:223:9 [INFO] [stderr] | [INFO] [stderr] 223 | / match scheme { [INFO] [stderr] 224 | | Scheme::Rsync => { return Err(Error::BadScheme) } [INFO] [stderr] 225 | | _ => { } [INFO] [stderr] 226 | | } [INFO] [stderr] | |_________^ help: try this: `if let Scheme::Rsync = scheme { return Err(Error::BadScheme) }` [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] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/uri.rs:239:12 [INFO] [stderr] | [INFO] [stderr] 239 | if path.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `path.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `crl::CrlStore` [INFO] [stderr] --> src/crl.rs:326:5 [INFO] [stderr] | [INFO] [stderr] 326 | / pub fn new() -> Self { [INFO] [stderr] 327 | | CrlStore { crls: Vec::new() } [INFO] [stderr] 328 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 319 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this call to `as_ref` does nothing [INFO] [stderr] --> src/sigobj.rs:219:25 [INFO] [stderr] | [INFO] [stderr] 219 | Input::from(self.cert.public_key().as_ref()), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.cert.public_key()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_asref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_asref [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/ipres.rs:473:30 [INFO] [stderr] | [INFO] [stderr] 473 | xerr!(return Err(decode::Malformed.into())) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `decode::Malformed` [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: casting u8 to u128 may become silently lossy if types change [INFO] [stderr] --> src/ipres.rs:477:34 [INFO] [stderr] | [INFO] [stderr] 477 | addr = (addr << 8) | (octet as u128) [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u128::from(octet)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_some()` [INFO] [stderr] --> src/ipres.rs:520:16 [INFO] [stderr] | [INFO] [stderr] 520 | if let Some(_) = octets.next() { [INFO] [stderr] | _________- ^^^^^^^ [INFO] [stderr] 521 | | xerr!(return Err(decode::Malformed.into())) [INFO] [stderr] 522 | | } [INFO] [stderr] | |_________- help: try this: `if octets.next().is_some()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/manifest.rs:208:9 [INFO] [stderr] | [INFO] [stderr] 208 | self, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::wrong_self_convention)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u128 may become silently lossy if types change [INFO] [stderr] --> src/roa.rs:243:38 [INFO] [stderr] | [INFO] [stderr] 243 | addr = (addr << 8) | (octet as u128) [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u128::from(octet)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/roa.rs:246:17 [INFO] [stderr] | [INFO] [stderr] 246 | addr = addr << 8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `addr <<= 8` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: defining a method called `from_str` on this type; consider implementing the `std::str::FromStr` trait or choosing a less ambiguous name [INFO] [stderr] --> src/uri.rs:37:5 [INFO] [stderr] | [INFO] [stderr] 37 | / pub fn from_str(s: &str) -> Result { [INFO] [stderr] 38 | | Self::from_bytes(Bytes::from(s)) [INFO] [stderr] 39 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::should_implement_trait)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait [INFO] [stderr] [INFO] [stderr] warning: defining a method called `from_str` on this type; consider implementing the `std::str::FromStr` trait or choosing a less ambiguous name [INFO] [stderr] --> src/uri.rs:209:5 [INFO] [stderr] | [INFO] [stderr] 209 | / pub fn from_str(s: &str) -> Result { [INFO] [stderr] 210 | | Self::from_bytes(Bytes::from(s)) [INFO] [stderr] 211 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait [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/uri.rs:223:9 [INFO] [stderr] | [INFO] [stderr] 223 | / match scheme { [INFO] [stderr] 224 | | Scheme::Rsync => { return Err(Error::BadScheme) } [INFO] [stderr] 225 | | _ => { } [INFO] [stderr] 226 | | } [INFO] [stderr] | |_________^ help: try this: `if let Scheme::Rsync = scheme { return Err(Error::BadScheme) }` [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] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/uri.rs:239:12 [INFO] [stderr] | [INFO] [stderr] 239 | if path.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `path.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/oob/exchange.rs:73:39 [INFO] [stderr] | [INFO] [stderr] 73 | publisher_handle: ph.into(), [INFO] [stderr] | ^^^^^^^^^ help: consider removing `.into()`: `ph` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/oob/exchange.rs:234:39 [INFO] [stderr] | [INFO] [stderr] 234 | publisher_handle: publisher_handle.into(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `publisher_handle` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: this call to `as_ref` does nothing [INFO] [stderr] --> src/sigobj.rs:219:25 [INFO] [stderr] | [INFO] [stderr] 219 | Input::from(self.cert.public_key().as_ref()), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.cert.public_key()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_asref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_asref [INFO] [stderr] [INFO] [stderr] warning: this call to `as_ref` does nothing [INFO] [stderr] --> src/remote/sigmsg.rs:140:25 [INFO] [stderr] | [INFO] [stderr] 140 | Input::from(self.idcert.public_key().as_ref()), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.idcert.public_key()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_asref [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/remote/idcert.rs:256:16 [INFO] [stderr] | [INFO] [stderr] 256 | if ca.ca() == true { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try simplifying it as shown: `ca.ca()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/remote/xml.rs:356:14 [INFO] [stderr] | [INFO] [stderr] 356 | .ok_or(AttributesError::MissingAttribute(name.to_string())) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| AttributesError::MissingAttribute(name.to_string()))` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/remote/xml.rs:371:12 [INFO] [stderr] | [INFO] [stderr] 371 | if self.attributes.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.attributes.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/signing/signer.rs:59:21 [INFO] [stderr] | [INFO] [stderr] 59 | pub fn to_bytes(self) -> Bytes { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] warning: large size difference between variants [INFO] [stderr] --> src/signing/builder.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | ResourceExtensions(Extensions), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::large_enum_variant)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#large_enum_variant [INFO] [stderr] help: consider boxing the large fields to reduce the total size of the enum [INFO] [stderr] | [INFO] [stderr] 19 | ResourceExtensions(Box), [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: aborting due to 2 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `rpki`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/oob/exchange.rs:73:39 [INFO] [stderr] | [INFO] [stderr] 73 | publisher_handle: ph.into(), [INFO] [stderr] | ^^^^^^^^^ help: consider removing `.into()`: `ph` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/oob/exchange.rs:234:39 [INFO] [stderr] | [INFO] [stderr] 234 | publisher_handle: publisher_handle.into(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `publisher_handle` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: this call to `as_ref` does nothing [INFO] [stderr] --> src/remote/sigmsg.rs:140:25 [INFO] [stderr] | [INFO] [stderr] 140 | Input::from(self.idcert.public_key().as_ref()), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.idcert.public_key()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_asref [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/remote/idcert.rs:256:16 [INFO] [stderr] | [INFO] [stderr] 256 | if ca.ca() == true { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try simplifying it as shown: `ca.ca()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/remote/xml.rs:356:14 [INFO] [stderr] | [INFO] [stderr] 356 | .ok_or(AttributesError::MissingAttribute(name.to_string())) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| AttributesError::MissingAttribute(name.to_string()))` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/remote/xml.rs:371:12 [INFO] [stderr] | [INFO] [stderr] 371 | if self.attributes.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.attributes.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/signing/signer.rs:59:21 [INFO] [stderr] | [INFO] [stderr] 59 | pub fn to_bytes(self) -> Bytes { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] warning: large size difference between variants [INFO] [stderr] --> src/signing/builder.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | ResourceExtensions(Extensions), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::large_enum_variant)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#large_enum_variant [INFO] [stderr] help: consider boxing the large fields to reduce the total size of the enum [INFO] [stderr] | [INFO] [stderr] 19 | ResourceExtensions(Box), [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: aborting due to 2 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `rpki`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "b4c6c37d5ef1a361aa04ba960fcd9f25b900e9827921e08df29b194aa4adbcac"` [INFO] running `"docker" "rm" "-f" "b4c6c37d5ef1a361aa04ba960fcd9f25b900e9827921e08df29b194aa4adbcac"` [INFO] [stdout] b4c6c37d5ef1a361aa04ba960fcd9f25b900e9827921e08df29b194aa4adbcac