[INFO] crate enamel 0.3.0 is already in cache [INFO] extracting crate enamel 0.3.0 into work/ex/clippy-test-run/sources/stable/reg/enamel/0.3.0 [INFO] extracting crate enamel 0.3.0 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/enamel/0.3.0 [INFO] validating manifest of enamel-0.3.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 enamel-0.3.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 enamel-0.3.0 [INFO] finished frobbing enamel-0.3.0 [INFO] frobbed toml for enamel-0.3.0 written to work/ex/clippy-test-run/sources/stable/reg/enamel/0.3.0/Cargo.toml [INFO] started frobbing enamel-0.3.0 [INFO] finished frobbing enamel-0.3.0 [INFO] frobbed toml for enamel-0.3.0 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/enamel/0.3.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 enamel-0.3.0 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/reg/enamel/0.3.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] 72dd275c53ac79652b467ae119fdcb58d8b1ef4c5b0cac9bcac76dfee7e21867 [INFO] running `"docker" "start" "-a" "72dd275c53ac79652b467ae119fdcb58d8b1ef4c5b0cac9bcac76dfee7e21867"` [INFO] [stderr] Checking colorify v0.1.0 [INFO] [stderr] Compiling freetype-sys v0.3.1 [INFO] [stderr] Compiling glutin v0.5.2 [INFO] [stderr] Compiling glium v0.14.0 [INFO] [stderr] Checking backtrace v0.1.8 [INFO] [stderr] Checking glium_text v0.9.0 [INFO] [stderr] Checking enamel v0.3.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ui/element.rs:44:13 [INFO] [stderr] | [INFO] [stderr] 44 | string: string, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `string` [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/ui/element.rs:168:13 [INFO] [stderr] | [INFO] [stderr] 168 | kind: kind, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `kind` [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/ui/element.rs:171:13 [INFO] [stderr] | [INFO] [stderr] 171 | shape: shape, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `shape` [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/ui/element.rs:175:13 [INFO] [stderr] | [INFO] [stderr] 175 | anchor_point: anchor_point, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `anchor_point` [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/ui/element.rs:176:13 [INFO] [stderr] | [INFO] [stderr] 176 | anchor_ofs: anchor_ofs, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `anchor_ofs` [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/ui/element.rs:180:13 [INFO] [stderr] | [INFO] [stderr] 180 | border: border, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `border` [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/ui/element.rs:247:44 [INFO] [stderr] | [INFO] [stderr] 247 | self.border = Some(ElementBorder { thickness: thickness, color: color, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `thickness` [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/ui/element.rs:247:66 [INFO] [stderr] | [INFO] [stderr] 247 | self.border = Some(ElementBorder { thickness: thickness, color: color, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `color` [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/ui/element.rs:248:13 [INFO] [stderr] | [INFO] [stderr] 248 | is_visible: is_visible, shape: self.shape.as_border(thickness, color)}); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `is_visible` [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/ui/pane.rs:63:13 [INFO] [stderr] | [INFO] [stderr] 63 | vbo: vbo, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `vbo` [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/ui/pane.rs:64:13 [INFO] [stderr] | [INFO] [stderr] 64 | ibo: ibo, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `ibo` [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/ui/pane.rs:66:13 [INFO] [stderr] | [INFO] [stderr] 66 | program: program, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `program` [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/ui/pane.rs:67:13 [INFO] [stderr] | [INFO] [stderr] 67 | params: params, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `params` [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/ui/pane.rs:68:13 [INFO] [stderr] | [INFO] [stderr] 68 | display: display, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `display` [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/ui/pane.rs:69:13 [INFO] [stderr] | [INFO] [stderr] 69 | scale: scale, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `scale` [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/ui/pane.rs:70:13 [INFO] [stderr] | [INFO] [stderr] 70 | text_system: text_system, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `text_system` [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/ui/pane.rs:71:13 [INFO] [stderr] | [INFO] [stderr] 71 | font_texture: font_texture, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `font_texture` [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/ui/shape_2d.rs:61:19 [INFO] [stderr] | [INFO] [stderr] 61 | Shape2d { vertices: vertices, indices: indices, perim: perim, radii: radii, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `vertices` [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/ui/shape_2d.rs:61:39 [INFO] [stderr] | [INFO] [stderr] 61 | Shape2d { vertices: vertices, indices: indices, perim: perim, radii: radii, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `indices` [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/ui/shape_2d.rs:61:57 [INFO] [stderr] | [INFO] [stderr] 61 | Shape2d { vertices: vertices, indices: indices, perim: perim, radii: radii, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `perim` [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/ui/shape_2d.rs:61:71 [INFO] [stderr] | [INFO] [stderr] 61 | Shape2d { vertices: vertices, indices: indices, perim: perim, radii: radii, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `radii` [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/ui/shape_2d.rs:62:13 [INFO] [stderr] | [INFO] [stderr] 62 | color: color } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `color` [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/ui/shape_2d.rs:103:19 [INFO] [stderr] | [INFO] [stderr] 103 | Shape2d { vertices: vertices, indices: indices, perim: perim, radii: radii, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `vertices` [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/ui/shape_2d.rs:103:39 [INFO] [stderr] | [INFO] [stderr] 103 | Shape2d { vertices: vertices, indices: indices, perim: perim, radii: radii, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `indices` [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/ui/shape_2d.rs:103:57 [INFO] [stderr] | [INFO] [stderr] 103 | Shape2d { vertices: vertices, indices: indices, perim: perim, radii: radii, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `perim` [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/ui/shape_2d.rs:103:71 [INFO] [stderr] | [INFO] [stderr] 103 | Shape2d { vertices: vertices, indices: indices, perim: perim, radii: radii, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `radii` [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/ui/shape_2d.rs:104:13 [INFO] [stderr] | [INFO] [stderr] 104 | color: color } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `color` [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/ui/shape_2d.rs:155:54 [INFO] [stderr] | [INFO] [stderr] 155 | border_lines.push(Line { x: q.0, y: q.1, m: m }); [INFO] [stderr] | ^^^^ help: replace it with: `m` [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/ui/shape_2d.rs:205:13 [INFO] [stderr] | [INFO] [stderr] 205 | vertices: vertices, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `vertices` [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/ui/shape_2d.rs:208:13 [INFO] [stderr] | [INFO] [stderr] 208 | color: color, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `color` [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/ui/text_properties.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | string: string, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `string` [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/ui/vertex.rs:18:18 [INFO] [stderr] | [INFO] [stderr] 18 | Vertex { position: position, color: color, xy_normal: xy_normal, is_perimeter: is_perimeter } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [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/ui/vertex.rs:18:38 [INFO] [stderr] | [INFO] [stderr] 18 | Vertex { position: position, color: color, xy_normal: xy_normal, is_perimeter: is_perimeter } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `color` [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/ui/vertex.rs:18:52 [INFO] [stderr] | [INFO] [stderr] 18 | Vertex { position: position, color: color, xy_normal: xy_normal, is_perimeter: is_perimeter } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `xy_normal` [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/ui/vertex.rs:18:74 [INFO] [stderr] | [INFO] [stderr] 18 | Vertex { position: position, color: color, xy_normal: xy_normal, is_perimeter: is_perimeter } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `is_perimeter` [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/ui/element.rs:44:13 [INFO] [stderr] | [INFO] [stderr] 44 | string: string, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `string` [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/ui/element.rs:168:13 [INFO] [stderr] | [INFO] [stderr] 168 | kind: kind, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `kind` [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/ui/element.rs:171:13 [INFO] [stderr] | [INFO] [stderr] 171 | shape: shape, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `shape` [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/ui/element.rs:175:13 [INFO] [stderr] | [INFO] [stderr] 175 | anchor_point: anchor_point, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `anchor_point` [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/ui/element.rs:176:13 [INFO] [stderr] | [INFO] [stderr] 176 | anchor_ofs: anchor_ofs, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `anchor_ofs` [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/ui/element.rs:180:13 [INFO] [stderr] | [INFO] [stderr] 180 | border: border, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `border` [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/ui/element.rs:247:44 [INFO] [stderr] | [INFO] [stderr] 247 | self.border = Some(ElementBorder { thickness: thickness, color: color, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `thickness` [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/ui/element.rs:247:66 [INFO] [stderr] | [INFO] [stderr] 247 | self.border = Some(ElementBorder { thickness: thickness, color: color, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `color` [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/ui/element.rs:248:13 [INFO] [stderr] | [INFO] [stderr] 248 | is_visible: is_visible, shape: self.shape.as_border(thickness, color)}); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `is_visible` [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/ui/pane.rs:63:13 [INFO] [stderr] | [INFO] [stderr] 63 | vbo: vbo, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `vbo` [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/ui/pane.rs:64:13 [INFO] [stderr] | [INFO] [stderr] 64 | ibo: ibo, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `ibo` [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/ui/pane.rs:66:13 [INFO] [stderr] | [INFO] [stderr] 66 | program: program, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `program` [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/ui/pane.rs:67:13 [INFO] [stderr] | [INFO] [stderr] 67 | params: params, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `params` [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/ui/pane.rs:68:13 [INFO] [stderr] | [INFO] [stderr] 68 | display: display, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `display` [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/ui/pane.rs:69:13 [INFO] [stderr] | [INFO] [stderr] 69 | scale: scale, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `scale` [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/ui/pane.rs:70:13 [INFO] [stderr] | [INFO] [stderr] 70 | text_system: text_system, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `text_system` [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/ui/pane.rs:71:13 [INFO] [stderr] | [INFO] [stderr] 71 | font_texture: font_texture, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `font_texture` [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/ui/shape_2d.rs:61:19 [INFO] [stderr] | [INFO] [stderr] 61 | Shape2d { vertices: vertices, indices: indices, perim: perim, radii: radii, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `vertices` [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/ui/shape_2d.rs:61:39 [INFO] [stderr] | [INFO] [stderr] 61 | Shape2d { vertices: vertices, indices: indices, perim: perim, radii: radii, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `indices` [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/ui/shape_2d.rs:61:57 [INFO] [stderr] | [INFO] [stderr] 61 | Shape2d { vertices: vertices, indices: indices, perim: perim, radii: radii, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `perim` [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/ui/shape_2d.rs:61:71 [INFO] [stderr] | [INFO] [stderr] 61 | Shape2d { vertices: vertices, indices: indices, perim: perim, radii: radii, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `radii` [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/ui/shape_2d.rs:62:13 [INFO] [stderr] | [INFO] [stderr] 62 | color: color } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `color` [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/ui/shape_2d.rs:103:19 [INFO] [stderr] | [INFO] [stderr] 103 | Shape2d { vertices: vertices, indices: indices, perim: perim, radii: radii, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `vertices` [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/ui/shape_2d.rs:103:39 [INFO] [stderr] | [INFO] [stderr] 103 | Shape2d { vertices: vertices, indices: indices, perim: perim, radii: radii, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `indices` [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/ui/shape_2d.rs:103:57 [INFO] [stderr] | [INFO] [stderr] 103 | Shape2d { vertices: vertices, indices: indices, perim: perim, radii: radii, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `perim` [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/ui/shape_2d.rs:103:71 [INFO] [stderr] | [INFO] [stderr] 103 | Shape2d { vertices: vertices, indices: indices, perim: perim, radii: radii, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `radii` [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/ui/shape_2d.rs:104:13 [INFO] [stderr] | [INFO] [stderr] 104 | color: color } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `color` [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/ui/shape_2d.rs:155:54 [INFO] [stderr] | [INFO] [stderr] 155 | border_lines.push(Line { x: q.0, y: q.1, m: m }); [INFO] [stderr] | ^^^^ help: replace it with: `m` [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/ui/shape_2d.rs:205:13 [INFO] [stderr] | [INFO] [stderr] 205 | vertices: vertices, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `vertices` [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/ui/shape_2d.rs:208:13 [INFO] [stderr] | [INFO] [stderr] 208 | color: color, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `color` [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/ui/text_properties.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | string: string, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `string` [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/ui/vertex.rs:18:18 [INFO] [stderr] | [INFO] [stderr] 18 | Vertex { position: position, color: color, xy_normal: xy_normal, is_perimeter: is_perimeter } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [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/ui/vertex.rs:18:38 [INFO] [stderr] | [INFO] [stderr] 18 | Vertex { position: position, color: color, xy_normal: xy_normal, is_perimeter: is_perimeter } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `color` [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/ui/vertex.rs:18:52 [INFO] [stderr] | [INFO] [stderr] 18 | Vertex { position: position, color: color, xy_normal: xy_normal, is_perimeter: is_perimeter } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `xy_normal` [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/ui/vertex.rs:18:74 [INFO] [stderr] | [INFO] [stderr] 18 | Vertex { position: position, color: color, xy_normal: xy_normal, is_perimeter: is_perimeter } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `is_perimeter` [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: long literal lacking separators [INFO] [stderr] --> src/ui/pane.rs:10:21 [INFO] [stderr] | [INFO] [stderr] 10 | const TWOSR3: f32 = 1.15470053838; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `1.154_700_538_38` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/ui/shape_2d.rs:71:26 [INFO] [stderr] | [INFO] [stderr] 71 | let sqrt_3_inv = 1.732050808; [INFO] [stderr] | ^^^^^^^^^^^ help: consider: `1.732_050_808` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/ui/shape_2d.rs:214:9 [INFO] [stderr] | [INFO] [stderr] 214 | new_shape [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/ui/shape_2d.rs:204:25 [INFO] [stderr] | [INFO] [stderr] 204 | let new_shape = Shape2d { [INFO] [stderr] | _________________________^ [INFO] [stderr] 205 | | vertices: vertices, [INFO] [stderr] 206 | | indices: self.indices.clone(), [INFO] [stderr] 207 | | perim: self.perim.clone(), [INFO] [stderr] 208 | | color: color, [INFO] [stderr] 209 | | radii: (self.radii.0 + t, self.radii.1 + t), [INFO] [stderr] 210 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/ui/mod.rs:34:28 [INFO] [stderr] | [INFO] [stderr] 34 | pub const SUBDEPTH: f32 = -0.015625; [INFO] [stderr] | ^^^^^^^^ help: consider: `0.015_625` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/ui/mod.rs:35:30 [INFO] [stderr] | [INFO] [stderr] 35 | pub const SUBSUBDEPTH: f32 = 0.000244140625; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: consider: `0.000_244_140_625` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/ui/pane.rs:10:21 [INFO] [stderr] | [INFO] [stderr] 10 | const TWOSR3: f32 = 1.15470053838; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `1.154_700_538_38` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/ui/shape_2d.rs:71:26 [INFO] [stderr] | [INFO] [stderr] 71 | let sqrt_3_inv = 1.732050808; [INFO] [stderr] | ^^^^^^^^^^^ help: consider: `1.732_050_808` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/ui/shape_2d.rs:214:9 [INFO] [stderr] | [INFO] [stderr] 214 | new_shape [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/ui/shape_2d.rs:204:25 [INFO] [stderr] | [INFO] [stderr] 204 | let new_shape = Shape2d { [INFO] [stderr] | _________________________^ [INFO] [stderr] 205 | | vertices: vertices, [INFO] [stderr] 206 | | indices: self.indices.clone(), [INFO] [stderr] 207 | | perim: self.perim.clone(), [INFO] [stderr] 208 | | color: color, [INFO] [stderr] 209 | | radii: (self.radii.0 + t, self.radii.1 + t), [INFO] [stderr] 210 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/ui/mod.rs:34:28 [INFO] [stderr] | [INFO] [stderr] 34 | pub const SUBDEPTH: f32 = -0.015625; [INFO] [stderr] | ^^^^^^^^ help: consider: `0.015_625` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/ui/mod.rs:35:30 [INFO] [stderr] | [INFO] [stderr] 35 | pub const SUBSUBDEPTH: f32 = 0.000244140625; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: consider: `0.000_244_140_625` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/ui/element.rs:111:9 [INFO] [stderr] | [INFO] [stderr] 111 | / match self { [INFO] [stderr] 112 | | &ElementKind::Button(_) | &ElementKind::TextBox(_) => true, [INFO] [stderr] 113 | | _ => false, [INFO] [stderr] 114 | | } [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] 111 | match *self { [INFO] [stderr] 112 | ElementKind::Button(_) | ElementKind::TextBox(_) => true, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: defining a method called `sub` on this type; consider implementing the `std::ops::Sub` trait or choosing a less ambiguous name [INFO] [stderr] --> src/ui/element.rs:212:5 [INFO] [stderr] | [INFO] [stderr] 212 | / pub fn sub(mut self, mut sub_element: Element) -> Element { [INFO] [stderr] 213 | | sub_element.anchor_point[2] += ui::SUBDEPTH; [INFO] [stderr] 214 | | self.sub_elements.reserve_exact(1); [INFO] [stderr] 215 | | [INFO] [stderr] ... | [INFO] [stderr] 228 | | self [INFO] [stderr] 229 | | } [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: using `clone` on a `Copy` type [INFO] [stderr] --> src/ui/element.rs:315:58 [INFO] [stderr] | [INFO] [stderr] 315 | vertices.extend_from_slice(&sub_ele.vertices(window_dims.clone(), ui_scale)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `window_dims` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::clone_on_copy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: float has excessive precision [INFO] [stderr] --> src/ui/pane.rs:10:21 [INFO] [stderr] | [INFO] [stderr] 10 | const TWOSR3: f32 = 1.15470053838; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `1.154_700_5` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::excessive_precision)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [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/ui/pane.rs:254:17 [INFO] [stderr] | [INFO] [stderr] 254 | / match self.mouse_focused { [INFO] [stderr] 255 | | Some(idx) => self.elements[idx].set_mouse_focus(false), [INFO] [stderr] 256 | | None => /*background.set_mouse_focus(false)*/ (), [INFO] [stderr] 257 | | } [INFO] [stderr] | |_________________^ help: try this: `if let Some(idx) = self.mouse_focused { self.elements[idx].set_mouse_focus(false) }` [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: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/ui/pane.rs:260:17 [INFO] [stderr] | [INFO] [stderr] 260 | / match newly_focused { [INFO] [stderr] 261 | | Some(idx) => self.elements[idx].set_mouse_focus(true), [INFO] [stderr] 262 | | None => /*background.set_mouse_focus(true)*/ (), [INFO] [stderr] 263 | | } [INFO] [stderr] | |_________________^ help: try this: `if let Some(idx) = newly_focused { self.elements[idx].set_mouse_focus(true) }` [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] warning: the variable `idx` is used as a loop counter. Consider using `for (idx, item) in self.elements.iter_mut().enumerate()` or similar iterators [INFO] [stderr] --> src/ui/pane.rs:277:24 [INFO] [stderr] | [INFO] [stderr] 277 | for element in self.elements.iter_mut() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::explicit_counter_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_counter_loop [INFO] [stderr] [INFO] [stderr] error: useless lint attribute [INFO] [stderr] --> src/ui/shape_2d.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | #[allow(dead_code)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: if you just forgot a `!`, use: `#![allow(dead_code)]` [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::useless_attribute)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_attribute [INFO] [stderr] [INFO] [stderr] error: useless lint attribute [INFO] [stderr] --> src/ui/shape_2d.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | #[allow(dead_code)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: if you just forgot a `!`, use: `#![allow(dead_code)]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_attribute [INFO] [stderr] [INFO] [stderr] warning: float has excessive precision [INFO] [stderr] --> src/ui/shape_2d.rs:71:26 [INFO] [stderr] | [INFO] [stderr] 71 | let sqrt_3_inv = 1.732050808; [INFO] [stderr] | ^^^^^^^^^^^ help: consider changing the type or truncating it to: `1.732_050_8` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/ui/shape_2d.rs:110:9 [INFO] [stderr] | [INFO] [stderr] 110 | (0..self.perim.len()).into_iter() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `(0..self.perim.len())` [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 should consider deriving a `Default` implementation for `ui::keyboard_state::KeyboardState` [INFO] [stderr] --> src/ui/keyboard_state.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | / pub fn new() -> KeyboardState { [INFO] [stderr] 11 | | KeyboardState { [INFO] [stderr] 12 | | shift: false, [INFO] [stderr] 13 | | control: false, [INFO] [stderr] 14 | | alt: false, [INFO] [stderr] 15 | | } [INFO] [stderr] 16 | | } [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] 3 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `ui::mouse_state::MouseState` [INFO] [stderr] --> src/ui/mouse_state.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | / pub fn new() -> MouseState { [INFO] [stderr] 21 | | MouseState { [INFO] [stderr] 22 | | position: [(0, 0); FRAME_HISTORY as usize], [INFO] [stderr] 23 | | frame: 0, [INFO] [stderr] ... | [INFO] [stderr] 29 | | } [INFO] [stderr] 30 | | } [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] 19 | impl Default for ui::mouse_state::MouseState { [INFO] [stderr] 20 | fn default() -> Self { [INFO] [stderr] 21 | Self::new() [INFO] [stderr] 22 | } [INFO] [stderr] 23 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/ui/mouse_state.rs:45:9 [INFO] [stderr] | [INFO] [stderr] 45 | self.frame = self.frame ^ 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `self.frame ^= 1` [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: using `clone` on a `Copy` type [INFO] [stderr] --> src/ui/mouse_state.rs:70:34 [INFO] [stderr] | [INFO] [stderr] 70 | MouseButton::Left => self.left.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.left` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/ui/mouse_state.rs:71:35 [INFO] [stderr] | [INFO] [stderr] 71 | MouseButton::Right => self.right.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.right` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/ui/mouse_state.rs:72:36 [INFO] [stderr] | [INFO] [stderr] 72 | MouseButton::Middle => self.middle.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.middle` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `ui::controls::button::Button` [INFO] [stderr] --> src/ui/controls/button.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | / pub fn new() -> Button { [INFO] [stderr] 11 | | Button { is_depressed: false } [INFO] [stderr] 12 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [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] 5 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/ui/controls/button.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | / pub fn new(anchor_pos: [f32; 3], offset: (f32, f32), extra_width: f32, [INFO] [stderr] 28 | | text: &str, color: [f32; 4]) -> Element where R: EventRemainder [INFO] [stderr] 29 | | { [INFO] [stderr] 30 | | let shape = Shape2d::rectangle(1.0, extra_width, 0.0, color); [INFO] [stderr] ... | [INFO] [stderr] 33 | | .text_string(text) [INFO] [stderr] 34 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_ret_no_self)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/ui/controls/button.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | / pub fn new(anchor_pos: [f32; 3], offset: (f32, f32), extra_width: f32, [INFO] [stderr] 42 | | text: &str, color: [f32; 4]) -> Element where R: EventRemainder [INFO] [stderr] 43 | | { [INFO] [stderr] 44 | | let shape = Shape2d::hexagon_panel(1.0, extra_width, 0.0, color); [INFO] [stderr] ... | [INFO] [stderr] 47 | | .text_string(text) [INFO] [stderr] 48 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/ui/controls/text_box.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | / pub fn new(anchor_pos: [f32; 3], offset: (f32, f32), extra_width: f32, [INFO] [stderr] 10 | | label: &str, color: [f32; 4], sub_text_string: &str) [INFO] [stderr] 11 | | -> Element where R: EventRemainder [INFO] [stderr] 12 | | { [INFO] [stderr] ... | [INFO] [stderr] 18 | | .sub(TextField::new(anchor_pos, offset, extra_width, sub_text_string)) [INFO] [stderr] 19 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/ui/controls/text_box.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | / pub fn new(anchor_pos: [f32; 3], offset: (f32, f32), width: f32, text_string: &str) [INFO] [stderr] 27 | | -> Element where R: EventRemainder [INFO] [stderr] 28 | | { [INFO] [stderr] 29 | | let color = [1.0, 1.0, 1.0, 1.0]; [INFO] [stderr] ... | [INFO] [stderr] 43 | | .keyboard_event_placeholder() [INFO] [stderr] 44 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: float has excessive precision [INFO] [stderr] --> src/ui/mod.rs:35:30 [INFO] [stderr] | [INFO] [stderr] 35 | pub const SUBSUBDEPTH: f32 = 0.000244140625; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `0.000_244_140_63` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/ui/mod.rs:146:13 [INFO] [stderr] | [INFO] [stderr] 146 | / if let &HandlerOption::None = self { [INFO] [stderr] 147 | | false [INFO] [stderr] 148 | | } else { [INFO] [stderr] 149 | | true [INFO] [stderr] 150 | | } [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] 146 | if let HandlerOption::None = *self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/ui/mod.rs:154:13 [INFO] [stderr] | [INFO] [stderr] 154 | / if let &HandlerOption::None = self { [INFO] [stderr] 155 | | true [INFO] [stderr] 156 | | } else { [INFO] [stderr] 157 | | false [INFO] [stderr] 158 | | } [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] 154 | if let HandlerOption::None = *self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/ui/mod.rs:164:13 [INFO] [stderr] | [INFO] [stderr] 164 | / match self { [INFO] [stderr] 165 | | &HandlerOption::None => write!(f, "HandlerOption::None"), [INFO] [stderr] 166 | | &HandlerOption::FnPlaceholder => write!(f, "HandlerOption::FnPlaceholder"), [INFO] [stderr] 167 | | &HandlerOption::Fn(_) => write!(f, "HandlerOption::Fn(_)"), [INFO] [stderr] 168 | | &HandlerOption::Sub(idx) => write!(f, "HandlerOption::Sub({})", idx), [INFO] [stderr] 169 | | } [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] 164 | match *self { [INFO] [stderr] 165 | HandlerOption::None => write!(f, "HandlerOption::None"), [INFO] [stderr] 166 | HandlerOption::FnPlaceholder => write!(f, "HandlerOption::FnPlaceholder"), [INFO] [stderr] 167 | HandlerOption::Fn(_) => write!(f, "HandlerOption::Fn(_)"), [INFO] [stderr] 168 | HandlerOption::Sub(idx) => write!(f, "HandlerOption::Sub({})", idx), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: aborting due to 2 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `enamel`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/ui/element.rs:111:9 [INFO] [stderr] | [INFO] [stderr] 111 | / match self { [INFO] [stderr] 112 | | &ElementKind::Button(_) | &ElementKind::TextBox(_) => true, [INFO] [stderr] 113 | | _ => false, [INFO] [stderr] 114 | | } [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] 111 | match *self { [INFO] [stderr] 112 | ElementKind::Button(_) | ElementKind::TextBox(_) => true, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: defining a method called `sub` on this type; consider implementing the `std::ops::Sub` trait or choosing a less ambiguous name [INFO] [stderr] --> src/ui/element.rs:212:5 [INFO] [stderr] | [INFO] [stderr] 212 | / pub fn sub(mut self, mut sub_element: Element) -> Element { [INFO] [stderr] 213 | | sub_element.anchor_point[2] += ui::SUBDEPTH; [INFO] [stderr] 214 | | self.sub_elements.reserve_exact(1); [INFO] [stderr] 215 | | [INFO] [stderr] ... | [INFO] [stderr] 228 | | self [INFO] [stderr] 229 | | } [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: using `clone` on a `Copy` type [INFO] [stderr] --> src/ui/element.rs:315:58 [INFO] [stderr] | [INFO] [stderr] 315 | vertices.extend_from_slice(&sub_ele.vertices(window_dims.clone(), ui_scale)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `window_dims` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::clone_on_copy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: float has excessive precision [INFO] [stderr] --> src/ui/pane.rs:10:21 [INFO] [stderr] | [INFO] [stderr] 10 | const TWOSR3: f32 = 1.15470053838; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `1.154_700_5` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::excessive_precision)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [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/ui/pane.rs:254:17 [INFO] [stderr] | [INFO] [stderr] 254 | / match self.mouse_focused { [INFO] [stderr] 255 | | Some(idx) => self.elements[idx].set_mouse_focus(false), [INFO] [stderr] 256 | | None => /*background.set_mouse_focus(false)*/ (), [INFO] [stderr] 257 | | } [INFO] [stderr] | |_________________^ help: try this: `if let Some(idx) = self.mouse_focused { self.elements[idx].set_mouse_focus(false) }` [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: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/ui/pane.rs:260:17 [INFO] [stderr] | [INFO] [stderr] 260 | / match newly_focused { [INFO] [stderr] 261 | | Some(idx) => self.elements[idx].set_mouse_focus(true), [INFO] [stderr] 262 | | None => /*background.set_mouse_focus(true)*/ (), [INFO] [stderr] 263 | | } [INFO] [stderr] | |_________________^ help: try this: `if let Some(idx) = newly_focused { self.elements[idx].set_mouse_focus(true) }` [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] warning: the variable `idx` is used as a loop counter. Consider using `for (idx, item) in self.elements.iter_mut().enumerate()` or similar iterators [INFO] [stderr] --> src/ui/pane.rs:277:24 [INFO] [stderr] | [INFO] [stderr] 277 | for element in self.elements.iter_mut() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::explicit_counter_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_counter_loop [INFO] [stderr] [INFO] [stderr] error: useless lint attribute [INFO] [stderr] --> src/ui/shape_2d.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | #[allow(dead_code)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: if you just forgot a `!`, use: `#![allow(dead_code)]` [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::useless_attribute)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_attribute [INFO] [stderr] [INFO] [stderr] error: useless lint attribute [INFO] [stderr] --> src/ui/shape_2d.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | #[allow(dead_code)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: if you just forgot a `!`, use: `#![allow(dead_code)]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_attribute [INFO] [stderr] [INFO] [stderr] warning: float has excessive precision [INFO] [stderr] --> src/ui/shape_2d.rs:71:26 [INFO] [stderr] | [INFO] [stderr] 71 | let sqrt_3_inv = 1.732050808; [INFO] [stderr] | ^^^^^^^^^^^ help: consider changing the type or truncating it to: `1.732_050_8` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/ui/shape_2d.rs:110:9 [INFO] [stderr] | [INFO] [stderr] 110 | (0..self.perim.len()).into_iter() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `(0..self.perim.len())` [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 should consider deriving a `Default` implementation for `ui::keyboard_state::KeyboardState` [INFO] [stderr] --> src/ui/keyboard_state.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | / pub fn new() -> KeyboardState { [INFO] [stderr] 11 | | KeyboardState { [INFO] [stderr] 12 | | shift: false, [INFO] [stderr] 13 | | control: false, [INFO] [stderr] 14 | | alt: false, [INFO] [stderr] 15 | | } [INFO] [stderr] 16 | | } [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] 3 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `ui::mouse_state::MouseState` [INFO] [stderr] --> src/ui/mouse_state.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | / pub fn new() -> MouseState { [INFO] [stderr] 21 | | MouseState { [INFO] [stderr] 22 | | position: [(0, 0); FRAME_HISTORY as usize], [INFO] [stderr] 23 | | frame: 0, [INFO] [stderr] ... | [INFO] [stderr] 29 | | } [INFO] [stderr] 30 | | } [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] 19 | impl Default for ui::mouse_state::MouseState { [INFO] [stderr] 20 | fn default() -> Self { [INFO] [stderr] 21 | Self::new() [INFO] [stderr] 22 | } [INFO] [stderr] 23 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/ui/mouse_state.rs:45:9 [INFO] [stderr] | [INFO] [stderr] 45 | self.frame = self.frame ^ 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `self.frame ^= 1` [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: using `clone` on a `Copy` type [INFO] [stderr] --> src/ui/mouse_state.rs:70:34 [INFO] [stderr] | [INFO] [stderr] 70 | MouseButton::Left => self.left.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.left` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/ui/mouse_state.rs:71:35 [INFO] [stderr] | [INFO] [stderr] 71 | MouseButton::Right => self.right.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.right` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/ui/mouse_state.rs:72:36 [INFO] [stderr] | [INFO] [stderr] 72 | MouseButton::Middle => self.middle.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.middle` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `ui::controls::button::Button` [INFO] [stderr] --> src/ui/controls/button.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | / pub fn new() -> Button { [INFO] [stderr] 11 | | Button { is_depressed: false } [INFO] [stderr] 12 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [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] 5 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/ui/controls/button.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | / pub fn new(anchor_pos: [f32; 3], offset: (f32, f32), extra_width: f32, [INFO] [stderr] 28 | | text: &str, color: [f32; 4]) -> Element where R: EventRemainder [INFO] [stderr] 29 | | { [INFO] [stderr] 30 | | let shape = Shape2d::rectangle(1.0, extra_width, 0.0, color); [INFO] [stderr] ... | [INFO] [stderr] 33 | | .text_string(text) [INFO] [stderr] 34 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_ret_no_self)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/ui/controls/button.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | / pub fn new(anchor_pos: [f32; 3], offset: (f32, f32), extra_width: f32, [INFO] [stderr] 42 | | text: &str, color: [f32; 4]) -> Element where R: EventRemainder [INFO] [stderr] 43 | | { [INFO] [stderr] 44 | | let shape = Shape2d::hexagon_panel(1.0, extra_width, 0.0, color); [INFO] [stderr] ... | [INFO] [stderr] 47 | | .text_string(text) [INFO] [stderr] 48 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/ui/controls/text_box.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | / pub fn new(anchor_pos: [f32; 3], offset: (f32, f32), extra_width: f32, [INFO] [stderr] 10 | | label: &str, color: [f32; 4], sub_text_string: &str) [INFO] [stderr] 11 | | -> Element where R: EventRemainder [INFO] [stderr] 12 | | { [INFO] [stderr] ... | [INFO] [stderr] 18 | | .sub(TextField::new(anchor_pos, offset, extra_width, sub_text_string)) [INFO] [stderr] 19 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/ui/controls/text_box.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | / pub fn new(anchor_pos: [f32; 3], offset: (f32, f32), width: f32, text_string: &str) [INFO] [stderr] 27 | | -> Element where R: EventRemainder [INFO] [stderr] 28 | | { [INFO] [stderr] 29 | | let color = [1.0, 1.0, 1.0, 1.0]; [INFO] [stderr] ... | [INFO] [stderr] 43 | | .keyboard_event_placeholder() [INFO] [stderr] 44 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: float has excessive precision [INFO] [stderr] --> src/ui/mod.rs:35:30 [INFO] [stderr] | [INFO] [stderr] 35 | pub const SUBSUBDEPTH: f32 = 0.000244140625; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `0.000_244_140_63` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/ui/mod.rs:146:13 [INFO] [stderr] | [INFO] [stderr] 146 | / if let &HandlerOption::None = self { [INFO] [stderr] 147 | | false [INFO] [stderr] 148 | | } else { [INFO] [stderr] 149 | | true [INFO] [stderr] 150 | | } [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] 146 | if let HandlerOption::None = *self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/ui/mod.rs:154:13 [INFO] [stderr] | [INFO] [stderr] 154 | / if let &HandlerOption::None = self { [INFO] [stderr] 155 | | true [INFO] [stderr] 156 | | } else { [INFO] [stderr] 157 | | false [INFO] [stderr] 158 | | } [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] 154 | if let HandlerOption::None = *self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/ui/mod.rs:164:13 [INFO] [stderr] | [INFO] [stderr] 164 | / match self { [INFO] [stderr] 165 | | &HandlerOption::None => write!(f, "HandlerOption::None"), [INFO] [stderr] 166 | | &HandlerOption::FnPlaceholder => write!(f, "HandlerOption::FnPlaceholder"), [INFO] [stderr] 167 | | &HandlerOption::Fn(_) => write!(f, "HandlerOption::Fn(_)"), [INFO] [stderr] 168 | | &HandlerOption::Sub(idx) => write!(f, "HandlerOption::Sub({})", idx), [INFO] [stderr] 169 | | } [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] 164 | match *self { [INFO] [stderr] 165 | HandlerOption::None => write!(f, "HandlerOption::None"), [INFO] [stderr] 166 | HandlerOption::FnPlaceholder => write!(f, "HandlerOption::FnPlaceholder"), [INFO] [stderr] 167 | HandlerOption::Fn(_) => write!(f, "HandlerOption::Fn(_)"), [INFO] [stderr] 168 | HandlerOption::Sub(idx) => write!(f, "HandlerOption::Sub({})", idx), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/util.rs:39:9 [INFO] [stderr] | [INFO] [stderr] 39 | assert_eq!(adjust_ccmp(1.0, 1.0), 1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::float_cmp)] on by default [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/util.rs:39:9 [INFO] [stderr] | [INFO] [stderr] 39 | assert_eq!(adjust_ccmp(1.0, 1.0), 1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/util.rs:40:9 [INFO] [stderr] | [INFO] [stderr] 40 | assert_eq!(adjust_ccmp(5.0, 5.0), 1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/util.rs:40:9 [INFO] [stderr] | [INFO] [stderr] 40 | assert_eq!(adjust_ccmp(5.0, 5.0), 1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/util.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 41 | assert_eq!(adjust_ccmp(1.5, 1.5), 1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/util.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 41 | assert_eq!(adjust_ccmp(1.5, 1.5), 1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/util.rs:43:9 [INFO] [stderr] | [INFO] [stderr] 43 | assert_eq!(adjust_ccmp(1.0, -1.0), 0.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/util.rs:43:9 [INFO] [stderr] | [INFO] [stderr] 43 | assert_eq!(adjust_ccmp(1.0, -1.0), 0.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/util.rs:44:9 [INFO] [stderr] | [INFO] [stderr] 44 | assert_eq!(adjust_ccmp(-5.0, -5.0), 0.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/util.rs:44:9 [INFO] [stderr] | [INFO] [stderr] 44 | assert_eq!(adjust_ccmp(-5.0, -5.0), 0.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/util.rs:45:9 [INFO] [stderr] | [INFO] [stderr] 45 | assert_eq!(adjust_ccmp(5.0, -5.0), 0.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/util.rs:45:9 [INFO] [stderr] | [INFO] [stderr] 45 | assert_eq!(adjust_ccmp(5.0, -5.0), 0.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/util.rs:47:9 [INFO] [stderr] | [INFO] [stderr] 47 | assert_eq!(adjust_ccmp(1.0, 0.0), 1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/util.rs:47:9 [INFO] [stderr] | [INFO] [stderr] 47 | assert_eq!(adjust_ccmp(1.0, 0.0), 1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/util.rs:49:9 [INFO] [stderr] | [INFO] [stderr] 49 | assert_eq!(adjust_ccmp(0.5, 1.0), 1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/util.rs:49:9 [INFO] [stderr] | [INFO] [stderr] 49 | assert_eq!(adjust_ccmp(0.5, 1.0), 1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/util.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 50 | assert_eq!(adjust_ccmp(0.5, -1.0), 0.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/util.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 50 | assert_eq!(adjust_ccmp(0.5, -1.0), 0.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/util.rs:51:9 [INFO] [stderr] | [INFO] [stderr] 51 | assert_eq!(adjust_ccmp(0.5, 0.0), 0.5); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/util.rs:51:9 [INFO] [stderr] | [INFO] [stderr] 51 | assert_eq!(adjust_ccmp(0.5, 0.0), 0.5); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/util.rs:53:9 [INFO] [stderr] | [INFO] [stderr] 53 | assert_eq!(adjust_ccmp(0.5, 0.5), 0.75); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/util.rs:53:9 [INFO] [stderr] | [INFO] [stderr] 53 | assert_eq!(adjust_ccmp(0.5, 0.5), 0.75); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/util.rs:54:9 [INFO] [stderr] | [INFO] [stderr] 54 | assert_eq!(adjust_ccmp(0.5, 0.05), 0.525); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/util.rs:54:9 [INFO] [stderr] | [INFO] [stderr] 54 | assert_eq!(adjust_ccmp(0.5, 0.05), 0.525); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/util.rs:55:9 [INFO] [stderr] | [INFO] [stderr] 55 | assert_eq!(adjust_ccmp(0.5, -0.5), 0.25); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/util.rs:55:9 [INFO] [stderr] | [INFO] [stderr] 55 | assert_eq!(adjust_ccmp(0.5, -0.5), 0.25); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/util.rs:56:9 [INFO] [stderr] | [INFO] [stderr] 56 | assert_eq!(adjust_ccmp(0.5, -0.05), 0.475); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/util.rs:56:9 [INFO] [stderr] | [INFO] [stderr] 56 | assert_eq!(adjust_ccmp(0.5, -0.05), 0.475); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: aborting due to 16 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `enamel`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "72dd275c53ac79652b467ae119fdcb58d8b1ef4c5b0cac9bcac76dfee7e21867"` [INFO] running `"docker" "rm" "-f" "72dd275c53ac79652b467ae119fdcb58d8b1ef4c5b0cac9bcac76dfee7e21867"` [INFO] [stdout] 72dd275c53ac79652b467ae119fdcb58d8b1ef4c5b0cac9bcac76dfee7e21867