[INFO] updating cached repository AlanFoster/toy_layout_engine [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/AlanFoster/toy_layout_engine [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/AlanFoster/toy_layout_engine" "work/ex/clippy-test-run/sources/stable/gh/AlanFoster/toy_layout_engine"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/AlanFoster/toy_layout_engine'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/AlanFoster/toy_layout_engine" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/AlanFoster/toy_layout_engine"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/AlanFoster/toy_layout_engine'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 7dc21663aa6a8f036aed2be5803bb4b91c70ea4b [INFO] sha for GitHub repo AlanFoster/toy_layout_engine: 7dc21663aa6a8f036aed2be5803bb4b91c70ea4b [INFO] validating manifest of AlanFoster/toy_layout_engine 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 AlanFoster/toy_layout_engine 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 AlanFoster/toy_layout_engine [INFO] finished frobbing AlanFoster/toy_layout_engine [INFO] frobbed toml for AlanFoster/toy_layout_engine written to work/ex/clippy-test-run/sources/stable/gh/AlanFoster/toy_layout_engine/Cargo.toml [INFO] started frobbing AlanFoster/toy_layout_engine [INFO] finished frobbing AlanFoster/toy_layout_engine [INFO] frobbed toml for AlanFoster/toy_layout_engine written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/AlanFoster/toy_layout_engine/Cargo.toml [INFO] crate AlanFoster/toy_layout_engine has a lockfile. skipping [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Blocking waiting for file lock on the registry index [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting AlanFoster/toy_layout_engine against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-7/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/AlanFoster/toy_layout_engine:/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] c5fa138a54f56bdd10cf3f6406029333105caa0febbf9ffd9c5100f32cdbd67b [INFO] running `"docker" "start" "-a" "c5fa138a54f56bdd10cf3f6406029333105caa0febbf9ffd9c5100f32cdbd67b"` [INFO] [stderr] Checking toy_layout_engine v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: using `write!()` with a format string that ends in a single newline, consider using `writeln!()` instead [INFO] [stderr] --> src/dom.rs:44:17 [INFO] [stderr] | [INFO] [stderr] 44 | write!(formatter, ">\n")?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::write_with_newline)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stderr] [INFO] [stderr] warning: using `write!()` with a format string that ends in a single newline, consider using `writeln!()` instead [INFO] [stderr] --> src/dom.rs:48:21 [INFO] [stderr] | [INFO] [stderr] 48 | write!(formatter, "\n")?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/css.rs:71:34 [INFO] [stderr] | [INFO] [stderr] 71 | let rules = Parser { pos: 0, input: input }.parse_rules(); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `input` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/css.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [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/css.rs:192:13 [INFO] [stderr] | [INFO] [stderr] 192 | value: value, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [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: using `write!()` with a format string that ends in a single newline, consider using `writeln!()` instead [INFO] [stderr] --> src/dom.rs:44:17 [INFO] [stderr] | [INFO] [stderr] 44 | write!(formatter, ">\n")?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::write_with_newline)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stderr] [INFO] [stderr] warning: using `write!()` with a format string that ends in a single newline, consider using `writeln!()` instead [INFO] [stderr] --> src/dom.rs:48:21 [INFO] [stderr] | [INFO] [stderr] 48 | write!(formatter, "\n")?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/css.rs:71:34 [INFO] [stderr] | [INFO] [stderr] 71 | let rules = Parser { pos: 0, input: input }.parse_rules(); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `input` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/css.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [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/css.rs:192:13 [INFO] [stderr] | [INFO] [stderr] 192 | value: value, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/dom.rs:60:9 [INFO] [stderr] | [INFO] [stderr] 60 | return self.display(f, 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.display(f, 0)` [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: Variant name ends with the enum's name [INFO] [stderr] --> src/css.rs:54:5 [INFO] [stderr] | [INFO] [stderr] 54 | ColorValue(Color), [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: unneeded return statement [INFO] [stderr] --> src/dom.rs:60:9 [INFO] [stderr] | [INFO] [stderr] 60 | return self.display(f, 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.display(f, 0)` [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: Variant name ends with the enum's name [INFO] [stderr] --> src/css.rs:54:5 [INFO] [stderr] | [INFO] [stderr] 54 | ColorValue(Color), [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: method is never used: `specificity` [INFO] [stderr] --> src/css.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | pub fn specificity(&self) -> Specificity { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Simple` [INFO] [stderr] --> src/css.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | Simple(SimpleSelector), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Keyword` [INFO] [stderr] --> src/css.rs:52:5 [INFO] [stderr] | [INFO] [stderr] 52 | Keyword(String), [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Length` [INFO] [stderr] --> src/css.rs:53:5 [INFO] [stderr] | [INFO] [stderr] 53 | Length(f32, Unit), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `ColorValue` [INFO] [stderr] --> src/css.rs:54:5 [INFO] [stderr] | [INFO] [stderr] 54 | ColorValue(Color), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Px` [INFO] [stderr] --> src/css.rs:59:5 [INFO] [stderr] | [INFO] [stderr] 59 | Px, [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `parse_css` [INFO] [stderr] --> src/css.rs:70:1 [INFO] [stderr] | [INFO] [stderr] 70 | fn parse_css(input: String) -> Stylesheet { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Parser` [INFO] [stderr] --> src/css.rs:78:1 [INFO] [stderr] | [INFO] [stderr] 78 | struct Parser { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `is_valid_identifier_char` [INFO] [stderr] --> src/css.rs:83:1 [INFO] [stderr] | [INFO] [stderr] 83 | fn is_valid_identifier_char(c: char) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `parse_rules` [INFO] [stderr] --> src/css.rs:91:5 [INFO] [stderr] | [INFO] [stderr] 91 | fn parse_rules(&mut self) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `parse_rule` [INFO] [stderr] --> src/css.rs:105:5 [INFO] [stderr] | [INFO] [stderr] 105 | fn parse_rule(&mut self) -> Rule { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `parse_selectors` [INFO] [stderr] --> src/css.rs:112:5 [INFO] [stderr] | [INFO] [stderr] 112 | fn parse_selectors(&mut self) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `parse_declarations` [INFO] [stderr] --> src/css.rs:130:5 [INFO] [stderr] | [INFO] [stderr] 130 | fn parse_declarations(&mut self) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `parse_simple_selector` [INFO] [stderr] --> src/css.rs:147:5 [INFO] [stderr] | [INFO] [stderr] 147 | fn parse_simple_selector(&mut self) -> Selector { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `parse_declaration` [INFO] [stderr] --> src/css.rs:182:5 [INFO] [stderr] | [INFO] [stderr] 182 | fn parse_declaration(&mut self) -> Declaration { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `parse_value` [INFO] [stderr] --> src/css.rs:196:5 [INFO] [stderr] | [INFO] [stderr] 196 | fn parse_value(&mut self) -> Value { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `parse_color` [INFO] [stderr] --> src/css.rs:204:5 [INFO] [stderr] | [INFO] [stderr] 204 | fn parse_color(&mut self) -> Value { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `parse_hex_pair` [INFO] [stderr] --> src/css.rs:216:5 [INFO] [stderr] | [INFO] [stderr] 216 | fn parse_hex_pair(&mut self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `parse_length` [INFO] [stderr] --> src/css.rs:222:5 [INFO] [stderr] | [INFO] [stderr] 222 | fn parse_length(&mut self) -> Value { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `parse_float` [INFO] [stderr] --> src/css.rs:229:5 [INFO] [stderr] | [INFO] [stderr] 229 | fn parse_float(&mut self) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `parse_unit` [INFO] [stderr] --> src/css.rs:238:5 [INFO] [stderr] | [INFO] [stderr] 238 | fn parse_unit(&mut self) -> Unit { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `parse_keyword` [INFO] [stderr] --> src/css.rs:245:5 [INFO] [stderr] | [INFO] [stderr] 245 | fn parse_keyword(&mut self) -> Value { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `parse_declaration_name` [INFO] [stderr] --> src/css.rs:254:5 [INFO] [stderr] | [INFO] [stderr] 254 | fn parse_declaration_name(&mut self) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `parse_identifier` [INFO] [stderr] --> src/css.rs:261:5 [INFO] [stderr] | [INFO] [stderr] 261 | fn parse_identifier(&mut self) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `next_char` [INFO] [stderr] --> src/css.rs:265:5 [INFO] [stderr] | [INFO] [stderr] 265 | fn next_char(&mut self) -> char { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `eof` [INFO] [stderr] --> src/css.rs:269:5 [INFO] [stderr] | [INFO] [stderr] 269 | fn eof(&mut self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `consume_char` [INFO] [stderr] --> src/css.rs:273:5 [INFO] [stderr] | [INFO] [stderr] 273 | fn consume_char(&mut self) -> char { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `consume_while` [INFO] [stderr] --> src/css.rs:282:5 [INFO] [stderr] | [INFO] [stderr] 282 | / fn consume_while(&mut self, f: F) -> String [INFO] [stderr] 283 | | where F: Fn(char) -> bool { [INFO] [stderr] 284 | | let mut result = String::new(); [INFO] [stderr] 285 | | while !self.eof() && f(self.next_char()) { [INFO] [stderr] ... | [INFO] [stderr] 289 | | result [INFO] [stderr] 290 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `consume_whitespace` [INFO] [stderr] --> src/css.rs:292:5 [INFO] [stderr] | [INFO] [stderr] 292 | fn consume_whitespace(&mut self) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/dom.rs:17:13 [INFO] [stderr] | [INFO] [stderr] 17 | write!(formatter, "{}", c); [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] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/dom.rs:29:34 [INFO] [stderr] | [INFO] [stderr] 29 | let attributes = match element_data.attributes.is_empty() { [INFO] [stderr] | __________________________________^ [INFO] [stderr] 30 | | true => "".to_string(), [INFO] [stderr] 31 | | false => [INFO] [stderr] 32 | | element_data.attributes [INFO] [stderr] ... | [INFO] [stderr] 36 | | .join(" "), [INFO] [stderr] 37 | | }; [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] help: consider using an if/else expression [INFO] [stderr] | [INFO] [stderr] 29 | let attributes = if element_data.attributes.is_empty() { "".to_string() } else { element_data.attributes [INFO] [stderr] 30 | .iter() [INFO] [stderr] 31 | .map(|(key, value)| format!("{}=\"{}\"", key, value)) [INFO] [stderr] 32 | .collect::>() [INFO] [stderr] 33 | .join(" ") }; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/dom.rs:17:13 [INFO] [stderr] | [INFO] [stderr] 17 | write!(formatter, "{}", c); [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] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/dom.rs:29:34 [INFO] [stderr] | [INFO] [stderr] 29 | let attributes = match element_data.attributes.is_empty() { [INFO] [stderr] | __________________________________^ [INFO] [stderr] 30 | | true => "".to_string(), [INFO] [stderr] 31 | | false => [INFO] [stderr] 32 | | element_data.attributes [INFO] [stderr] ... | [INFO] [stderr] 36 | | .join(" "), [INFO] [stderr] 37 | | }; [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] help: consider using an if/else expression [INFO] [stderr] | [INFO] [stderr] 29 | let attributes = if element_data.attributes.is_empty() { "".to_string() } else { element_data.attributes [INFO] [stderr] 30 | .iter() [INFO] [stderr] 31 | .map(|(key, value)| format!("{}=\"{}\"", key, value)) [INFO] [stderr] 32 | .collect::>() [INFO] [stderr] 33 | .join(" ") }; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: the `e @ _` pattern can be written as just `e` [INFO] [stderr] --> src/css.rs:121:17 [INFO] [stderr] | [INFO] [stderr] 121 | e @ _ => panic!("Unexpected char {}", e), [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern [INFO] [stderr] [INFO] [stderr] warning: the `e @ _` pattern can be written as just `e` [INFO] [stderr] --> src/css.rs:121:17 [INFO] [stderr] | [INFO] [stderr] 121 | e @ _ => panic!("Unexpected char {}", e), [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern [INFO] [stderr] [INFO] [stderr] warning: the `e @ _` pattern can be written as just `e` [INFO] [stderr] --> src/css.rs:241:13 [INFO] [stderr] | [INFO] [stderr] 241 | e @ _ => panic!("unexpected {}", e) [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern [INFO] [stderr] [INFO] [stderr] warning: the `e @ _` pattern can be written as just `e` [INFO] [stderr] --> src/css.rs:241:13 [INFO] [stderr] | [INFO] [stderr] 241 | e @ _ => panic!("unexpected {}", e) [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1.91s [INFO] running `"docker" "inspect" "c5fa138a54f56bdd10cf3f6406029333105caa0febbf9ffd9c5100f32cdbd67b"` [INFO] running `"docker" "rm" "-f" "c5fa138a54f56bdd10cf3f6406029333105caa0febbf9ffd9c5100f32cdbd67b"` [INFO] [stdout] c5fa138a54f56bdd10cf3f6406029333105caa0febbf9ffd9c5100f32cdbd67b