[INFO] updating cached repository argencore/rustyGFX [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/argencore/rustyGFX [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/argencore/rustyGFX" "work/ex/clippy-test-run/sources/stable/gh/argencore/rustyGFX"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/argencore/rustyGFX'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/argencore/rustyGFX" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/argencore/rustyGFX"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/argencore/rustyGFX'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 7fd978623e0de016f5e7ed015fb1f720c658c162 [INFO] sha for GitHub repo argencore/rustyGFX: 7fd978623e0de016f5e7ed015fb1f720c658c162 [INFO] validating manifest of argencore/rustyGFX 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 argencore/rustyGFX 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 argencore/rustyGFX [INFO] finished frobbing argencore/rustyGFX [INFO] frobbed toml for argencore/rustyGFX written to work/ex/clippy-test-run/sources/stable/gh/argencore/rustyGFX/Cargo.toml [INFO] started frobbing argencore/rustyGFX [INFO] finished frobbing argencore/rustyGFX [INFO] frobbed toml for argencore/rustyGFX written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/argencore/rustyGFX/Cargo.toml [INFO] crate argencore/rustyGFX has a lockfile. skipping [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting argencore/rustyGFX against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-4/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/argencore/rustyGFX:/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] 3e77437d4ed648b424785f76887828bf72744d7e489545900d746dca9142b996 [INFO] running `"docker" "start" "-a" "3e77437d4ed648b424785f76887828bf72744d7e489545900d746dca9142b996"` [INFO] [stderr] Checking debug-builders v0.1.0 [INFO] [stderr] Checking memmap v0.6.2 [INFO] [stderr] Checking shared_library v0.1.8 [INFO] [stderr] Checking tempfile v3.0.2 [INFO] [stderr] Compiling gl_generator v0.5.5 [INFO] [stderr] Checking x11-dl v2.17.5 [INFO] [stderr] Compiling glutin v0.14.0 [INFO] [stderr] Compiling glium v0.21.0 [INFO] [stderr] Compiling num-derive v0.2.2 [INFO] [stderr] Checking backtrace v0.1.8 [INFO] [stderr] Checking osmesa-sys v0.1.2 [INFO] [stderr] Checking wayland-client v0.12.5 [INFO] [stderr] Compiling glium v0.14.0 [INFO] [stderr] Checking wayland-protocols v0.12.5 [INFO] [stderr] Checking wayland-kbd v0.13.1 [INFO] [stderr] Checking image v0.19.0 [INFO] [stderr] Checking wayland-window v0.13.3 [INFO] [stderr] Checking winit v0.12.0 [INFO] [stderr] Checking obj-rs v0.4.20 [INFO] [stderr] Checking rustyGFX v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/shader_parser.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | return contents; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `contents` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/object_parser.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 74 | return vertices; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `vertices` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/object_parser.rs:108:5 [INFO] [stderr] | [INFO] [stderr] 108 | return textures; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `textures` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/object_parser.rs:153:5 [INFO] [stderr] | [INFO] [stderr] 153 | return normals; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `normals` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/object_parser.rs:196:5 [INFO] [stderr] | [INFO] [stderr] 196 | return faces; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `faces` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/object_parser.rs:223:5 [INFO] [stderr] | [INFO] [stderr] 223 | return positions; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `positions` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/object_parser.rs:245:5 [INFO] [stderr] | [INFO] [stderr] 245 | return texels; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `texels` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/object_parser.rs:266:5 [INFO] [stderr] | [INFO] [stderr] 266 | return normals; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `normals` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/object_parser.rs:288:5 [INFO] [stderr] | [INFO] [stderr] 288 | return posTex; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `posTex` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/object_parser.rs:330:5 [INFO] [stderr] | [INFO] [stderr] 330 | return lines[index % lines.len()].to_string().trim().to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `lines[index % lines.len()].to_string().trim().to_string()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/object_parser.rs:354:5 [INFO] [stderr] | [INFO] [stderr] 354 | return tokenLines; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `tokenLines` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/main.rs:74:3 [INFO] [stderr] | [INFO] [stderr] 74 | ) -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unused_unit)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/main.rs:189:3 [INFO] [stderr] | [INFO] [stderr] 189 | ) -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/main.rs:198:24 [INFO] [stderr] | [INFO] [stderr] 198 | let fov: f32 = 3.141592 / 3.0; [INFO] [stderr] | ^^^^^^^^ help: consider: `3.141_592` [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: unneeded return statement [INFO] [stderr] --> src/shader_parser.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | return contents; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `contents` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/object_parser.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 74 | return vertices; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `vertices` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/object_parser.rs:108:5 [INFO] [stderr] | [INFO] [stderr] 108 | return textures; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `textures` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/object_parser.rs:153:5 [INFO] [stderr] | [INFO] [stderr] 153 | return normals; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `normals` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/object_parser.rs:196:5 [INFO] [stderr] | [INFO] [stderr] 196 | return faces; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `faces` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/object_parser.rs:223:5 [INFO] [stderr] | [INFO] [stderr] 223 | return positions; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `positions` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/object_parser.rs:245:5 [INFO] [stderr] | [INFO] [stderr] 245 | return texels; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `texels` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/object_parser.rs:266:5 [INFO] [stderr] | [INFO] [stderr] 266 | return normals; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `normals` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/object_parser.rs:288:5 [INFO] [stderr] | [INFO] [stderr] 288 | return posTex; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `posTex` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/object_parser.rs:330:5 [INFO] [stderr] | [INFO] [stderr] 330 | return lines[index % lines.len()].to_string().trim().to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `lines[index % lines.len()].to_string().trim().to_string()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/object_parser.rs:354:5 [INFO] [stderr] | [INFO] [stderr] 354 | return tokenLines; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `tokenLines` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/main.rs:74:3 [INFO] [stderr] | [INFO] [stderr] 74 | ) -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unused_unit)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: unneeded unit return type [INFO] [stderr] --> src/main.rs:189:3 [INFO] [stderr] | [INFO] [stderr] 189 | ) -> () { [INFO] [stderr] | ^^^^^ help: remove the `-> ()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/main.rs:198:24 [INFO] [stderr] | [INFO] [stderr] 198 | let fov: f32 = 3.141592 / 3.0; [INFO] [stderr] | ^^^^^^^^ help: consider: `3.141_592` [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: value assigned to `state` is never read [INFO] [stderr] --> src/main.rs:43:13 [INFO] [stderr] | [INFO] [stderr] 43 | let mut state = program_state::INITIALIZING; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_assignments)] on by default [INFO] [stderr] [INFO] [stderr] warning: value passed to `state` is never read [INFO] [stderr] --> src/main.rs:71:9 [INFO] [stderr] | [INFO] [stderr] 71 | mut state: program_state, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `STOPPING` [INFO] [stderr] --> src/main.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | STOPPING, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `STOPPED` [INFO] [stderr] --> src/main.rs:35:5 [INFO] [stderr] | [INFO] [stderr] 35 | STOPPED, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: crate `rustyGFX` should have a snake case name such as `rusty_gfx` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] warning: `ref` directly on a function argument is ignored. Consider using a reference type instead. [INFO] [stderr] --> src/window.rs:14:22 [INFO] [stderr] | [INFO] [stderr] 14 | pub fn create_window(ref mut events_loop: &glutin::EventsLoop) -> glium::Display { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::toplevel_ref_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/shader_parser.rs:16:29 [INFO] [stderr] | [INFO] [stderr] 16 | pub fn read_file(file_path: &String) -> String { [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/shader_parser.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | file.read_to_string(&mut contents); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_must_use)] on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: value assigned to `state` is never read [INFO] [stderr] --> src/main.rs:43:13 [INFO] [stderr] | [INFO] [stderr] 43 | let mut state = program_state::INITIALIZING; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_assignments)] on by default [INFO] [stderr] [INFO] [stderr] warning: value passed to `state` is never read [INFO] [stderr] --> src/main.rs:71:9 [INFO] [stderr] | [INFO] [stderr] 71 | mut state: program_state, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/object_parser.rs:35:27 [INFO] [stderr] | [INFO] [stderr] 35 | pub fn vertices(fileName: &String) -> Vec { [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: variable `fileName` should have a snake case name such as `file_name` [INFO] [stderr] --> src/object_parser.rs:35:17 [INFO] [stderr] | [INFO] [stderr] 35 | pub fn vertices(fileName: &String) -> Vec { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `vertStrings` should have a snake case name such as `vert_strings` [INFO] [stderr] --> src/object_parser.rs:39:9 [INFO] [stderr] | [INFO] [stderr] 39 | let vertStrings = fileSection(&fileName, "v".to_string()); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/object_parser.rs:84:37 [INFO] [stderr] | [INFO] [stderr] 84 | pub fn unmodifiedTextures(fileName: &String) -> Vec { [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: function `unmodifiedTextures` should have a snake case name such as `unmodified_textures` [INFO] [stderr] --> src/object_parser.rs:84:1 [INFO] [stderr] | [INFO] [stderr] 84 | / pub fn unmodifiedTextures(fileName: &String) -> Vec { [INFO] [stderr] 85 | | // create vector of Texture [INFO] [stderr] 86 | | let mut textures: Vec = Vec::new(); [INFO] [stderr] 87 | | [INFO] [stderr] ... | [INFO] [stderr] 108 | | return textures; [INFO] [stderr] 109 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: variable `fileName` should have a snake case name such as `file_name` [INFO] [stderr] --> src/object_parser.rs:84:27 [INFO] [stderr] | [INFO] [stderr] 84 | pub fn unmodifiedTextures(fileName: &String) -> Vec { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `texStrings` should have a snake case name such as `tex_strings` [INFO] [stderr] --> src/object_parser.rs:89:9 [INFO] [stderr] | [INFO] [stderr] 89 | let texStrings = fileSection(&fileName, "vt".to_string()); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/object_parser.rs:117:36 [INFO] [stderr] | [INFO] [stderr] 117 | pub fn unmodifiedNormals(fileName: &String) -> Vec { [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: function `unmodifiedNormals` should have a snake case name such as `unmodified_normals` [INFO] [stderr] --> src/object_parser.rs:117:1 [INFO] [stderr] | [INFO] [stderr] 117 | / pub fn unmodifiedNormals(fileName: &String) -> Vec { [INFO] [stderr] 118 | | // create vector of structs [INFO] [stderr] 119 | | let mut normals: Vec = Vec::new(); [INFO] [stderr] 120 | | // get chunk of file [INFO] [stderr] ... | [INFO] [stderr] 153 | | return normals; [INFO] [stderr] 154 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: variable `fileName` should have a snake case name such as `file_name` [INFO] [stderr] --> src/object_parser.rs:117:26 [INFO] [stderr] | [INFO] [stderr] 117 | pub fn unmodifiedNormals(fileName: &String) -> Vec { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `normalStrings` should have a snake case name such as `normal_strings` [INFO] [stderr] --> src/object_parser.rs:121:9 [INFO] [stderr] | [INFO] [stderr] 121 | let normalStrings = fileSection(&fileName, "vn".to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/object_parser.rs:162:24 [INFO] [stderr] | [INFO] [stderr] 162 | pub fn faces(fileName: &String) -> Vec { [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: variable `fileName` should have a snake case name such as `file_name` [INFO] [stderr] --> src/object_parser.rs:162:14 [INFO] [stderr] | [INFO] [stderr] 162 | pub fn faces(fileName: &String) -> Vec { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `faceStrings` should have a snake case name such as `face_strings` [INFO] [stderr] --> src/object_parser.rs:166:9 [INFO] [stderr] | [INFO] [stderr] 166 | let faceStrings = fileSection(&fileName, "f".to_string()); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `fileName` should have a snake case name such as `file_name` [INFO] [stderr] --> src/object_parser.rs:206:18 [INFO] [stderr] | [INFO] [stderr] 206 | pub fn positions(fileName: String) -> Vec { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `fileName` should have a snake case name such as `file_name` [INFO] [stderr] --> src/object_parser.rs:232:15 [INFO] [stderr] | [INFO] [stderr] 232 | pub fn texels(fileName: String) -> Vec { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `fileName` should have a snake case name such as `file_name` [INFO] [stderr] --> src/object_parser.rs:253:16 [INFO] [stderr] | [INFO] [stderr] 253 | pub fn normals(fileName: String) -> Vec { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/object_parser.rs:273:26 [INFO] [stderr] | [INFO] [stderr] 273 | pub fn posTex(positions: &Vec, texels: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: change this to: `&[mat::Vertex]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/object_parser.rs:273:53 [INFO] [stderr] | [INFO] [stderr] 273 | pub fn posTex(positions: &Vec, texels: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: change this to: `&[mat::Texture]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: function `posTex` should have a snake case name such as `pos_tex` [INFO] [stderr] --> src/object_parser.rs:273:1 [INFO] [stderr] | [INFO] [stderr] 273 | / pub fn posTex(positions: &Vec, texels: &Vec) -> Vec { [INFO] [stderr] 274 | | // create vector [INFO] [stderr] 275 | | let mut posTex: Vec = Vec::new(); [INFO] [stderr] 276 | | // for each position [INFO] [stderr] ... | [INFO] [stderr] 288 | | return posTex; [INFO] [stderr] 289 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: variable `posTex` should have a snake case name such as `pos_tex` [INFO] [stderr] --> src/object_parser.rs:275:9 [INFO] [stderr] | [INFO] [stderr] 275 | let mut posTex: Vec = Vec::new(); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `test_posTex` should have a snake case name such as `test_pos_tex` [INFO] [stderr] --> src/object_parser.rs:293:1 [INFO] [stderr] | [INFO] [stderr] 293 | / fn test_posTex() { [INFO] [stderr] 294 | | let test_vertex = mat::Vertex { [INFO] [stderr] 295 | | position: [1.0, 0.5, 0.25], [INFO] [stderr] 296 | | }; [INFO] [stderr] ... | [INFO] [stderr] 312 | | ); [INFO] [stderr] 313 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: variable `test_posTex` should have a snake case name such as `test_pos_tex` [INFO] [stderr] --> src/object_parser.rs:300:9 [INFO] [stderr] | [INFO] [stderr] 300 | let test_posTex = mat::PosTex { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `vVec` should have a snake case name such as `v_vec` [INFO] [stderr] --> src/object_parser.rs:304:9 [INFO] [stderr] | [INFO] [stderr] 304 | let mut vVec: Vec = Vec::new(); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `tVec` should have a snake case name such as `t_vec` [INFO] [stderr] --> src/object_parser.rs:305:9 [INFO] [stderr] | [INFO] [stderr] 305 | let mut tVec: Vec = Vec::new(); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `test_posTex_vec` should have a snake case name such as `test_pos_tex_vec` [INFO] [stderr] --> src/object_parser.rs:308:9 [INFO] [stderr] | [INFO] [stderr] 308 | let test_posTex_vec = posTex(&vVec, &tVec); [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `getObjectFileName` should have a snake case name such as `get_object_file_name` [INFO] [stderr] --> src/object_parser.rs:321:1 [INFO] [stderr] | [INFO] [stderr] 321 | / pub fn getObjectFileName(index: usize) -> String { [INFO] [stderr] 322 | | // get the file of names [INFO] [stderr] 323 | | let mut file = File::open("objectToLoad.txt").expect("unable to open objectToLoad.txt"); [INFO] [stderr] 324 | | // get the content as a string [INFO] [stderr] ... | [INFO] [stderr] 330 | | return lines[index % lines.len()].to_string().trim().to_string(); [INFO] [stderr] 331 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/object_parser.rs:326:5 [INFO] [stderr] | [INFO] [stderr] 326 | file.read_to_string(&mut content); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/object_parser.rs:338:34 [INFO] [stderr] | [INFO] [stderr] 338 | pub fn fileSection(ref fileName: &String, token: String) -> Vec { [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: function `fileSection` should have a snake case name such as `file_section` [INFO] [stderr] --> src/object_parser.rs:338:1 [INFO] [stderr] | [INFO] [stderr] 338 | / pub fn fileSection(ref fileName: &String, token: String) -> Vec { [INFO] [stderr] 339 | | // get file [INFO] [stderr] 340 | | let mut file = File::open(fileName).expect("unable to open file"); [INFO] [stderr] 341 | | let mut content = String::new(); [INFO] [stderr] ... | [INFO] [stderr] 354 | | return tokenLines; [INFO] [stderr] 355 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: `ref` directly on a function argument is ignored. Consider using a reference type instead. [INFO] [stderr] --> src/object_parser.rs:338:20 [INFO] [stderr] | [INFO] [stderr] 338 | pub fn fileSection(ref fileName: &String, token: String) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: variable `fileName` should have a snake case name such as `file_name` [INFO] [stderr] --> src/object_parser.rs:338:20 [INFO] [stderr] | [INFO] [stderr] 338 | pub fn fileSection(ref fileName: &String, token: String) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `tokenLines` should have a snake case name such as `token_lines` [INFO] [stderr] --> src/object_parser.rs:343:9 [INFO] [stderr] | [INFO] [stderr] 343 | let mut tokenLines: Vec = Vec::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/object_parser.rs:345:5 [INFO] [stderr] | [INFO] [stderr] 345 | file.read_to_string(&mut content); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: taken reference of right operand [INFO] [stderr] --> src/object_parser.rs:350:12 [INFO] [stderr] | [INFO] [stderr] 350 | if v[0] == &token { [INFO] [stderr] | ^^^^^^^^------ [INFO] [stderr] | | [INFO] [stderr] | help: use the right value directly: `token` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::op_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#op_ref [INFO] [stderr] [INFO] [stderr] warning: function `test_fileSelection` should have a snake case name such as `test_file_selection` [INFO] [stderr] --> src/object_parser.rs:359:1 [INFO] [stderr] | [INFO] [stderr] 359 | / fn test_fileSelection() { [INFO] [stderr] 360 | | let test_section = fileSection(&"testfile.txt".to_string(), "TEST".to_string()); [INFO] [stderr] 361 | | assert!(test_section[0] == "TEST this is a test file!".to_string()); [INFO] [stderr] 362 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: this creates an owned instance just for comparison [INFO] [stderr] --> src/object_parser.rs:361:32 [INFO] [stderr] | [INFO] [stderr] 361 | assert!(test_section[0] == "TEST this is a test file!".to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `"TEST this is a test file!"` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cmp_owned)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stderr] [INFO] [stderr] warning: type `program_state` should have a camel case name such as `ProgramState` [INFO] [stderr] --> src/main.rs:30:1 [INFO] [stderr] | [INFO] [stderr] 30 | / enum program_state { [INFO] [stderr] 31 | | INITIALIZING, [INFO] [stderr] 32 | | INITIALIZED, [INFO] [stderr] 33 | | RUNNING, [INFO] [stderr] ... | [INFO] [stderr] 36 | | CLOSEING, [INFO] [stderr] 37 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_camel_case_types)] on by default [INFO] [stderr] [INFO] [stderr] warning: `ref` directly on a function argument is ignored. Consider using a reference type instead. [INFO] [stderr] --> src/main.rs:59:9 [INFO] [stderr] | [INFO] [stderr] 59 | fn init(ref mut events_loop: &glutin::EventsLoop) -> glium::Display { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: `ref` directly on a function argument is ignored. Consider using a reference type instead. [INFO] [stderr] --> src/main.rs:72:5 [INFO] [stderr] | [INFO] [stderr] 72 | ref window: &glium::Display, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: variable `objectName` should have a snake case name such as `object_name` [INFO] [stderr] --> src/main.rs:87:9 [INFO] [stderr] | [INFO] [stderr] 87 | let mut objectName = object_parser::getObjectFileName(index); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `posTex` should have a snake case name such as `pos_tex` [INFO] [stderr] --> src/main.rs:97:9 [INFO] [stderr] | [INFO] [stderr] 97 | let mut posTex = object_parser::posTex(&shape, &texels); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/main.rs:108:13 [INFO] [stderr] | [INFO] [stderr] 108 | / match ev { [INFO] [stderr] 109 | | // match on WindowEvent [INFO] [stderr] 110 | | glutin::Event::WindowEvent { event, .. } => match event { [INFO] [stderr] 111 | | // if window event is closed set state to closing to end loop [INFO] [stderr] ... | [INFO] [stderr] 172 | | _ => (), [INFO] [stderr] 173 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 108 | if let glutin::Event::WindowEvent { event, .. } = ev { match event { [INFO] [stderr] 109 | // if window event is closed set state to closing to end loop [INFO] [stderr] 110 | glutin::WindowEvent::Closed => state = program_state::CLOSEING, [INFO] [stderr] 111 | // match on KeyboardInput [INFO] [stderr] 112 | glutin::WindowEvent::KeyboardInput { input, .. } => { [INFO] [stderr] 113 | match input.virtual_keycode { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:151:64 [INFO] [stderr] | [INFO] [stderr] 151 | Some(glutin::VirtualKeyCode::W) => position[2] = position[2] + 0.1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `position[2] += 0.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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:152:64 [INFO] [stderr] | [INFO] [stderr] 152 | Some(glutin::VirtualKeyCode::A) => position[0] = position[0] - 0.1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `position[0] -= 0.1` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:153:64 [INFO] [stderr] | [INFO] [stderr] 153 | Some(glutin::VirtualKeyCode::S) => position[2] = position[2] - 0.1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `position[2] -= 0.1` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:154:64 [INFO] [stderr] | [INFO] [stderr] 154 | Some(glutin::VirtualKeyCode::D) => position[0] = position[0] + 0.1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `position[0] += 0.1` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:155:64 [INFO] [stderr] | [INFO] [stderr] 155 | Some(glutin::VirtualKeyCode::Q) => direction[0] = direction[0] - 0.1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `direction[0] -= 0.1` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:156:64 [INFO] [stderr] | [INFO] [stderr] 156 | Some(glutin::VirtualKeyCode::E) => direction[0] = direction[0] + 0.1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `direction[0] += 0.1` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:157:65 [INFO] [stderr] | [INFO] [stderr] 157 | Some(glutin::VirtualKeyCode::Up) => direction[1] = direction[1] + 0.1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `direction[1] += 0.1` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:158:67 [INFO] [stderr] | [INFO] [stderr] 158 | Some(glutin::VirtualKeyCode::Down) => direction[1] = direction[1] - 0.1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `direction[1] -= 0.1` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:160:33 [INFO] [stderr] | [INFO] [stderr] 160 | direction[2] = direction[2] + 0.1 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `direction[2] += 0.1` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:162:67 [INFO] [stderr] | [INFO] [stderr] 162 | Some(glutin::VirtualKeyCode::Left) => direction[2] = direction[2] - 0.1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `direction[2] -= 0.1` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:163:69 [INFO] [stderr] | [INFO] [stderr] 163 | Some(glutin::VirtualKeyCode::PageUp) => position[1] = position[1] + 0.1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `position[1] += 0.1` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:165:33 [INFO] [stderr] | [INFO] [stderr] 165 | position[1] = position[1] - 0.1 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `position[1] -= 0.1` [INFO] [stderr] | [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: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/main.rs:185:13 [INFO] [stderr] | [INFO] [stderr] 185 | posTex: &Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `&[object_parser::mat::PosTex]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/main.rs:186:14 [INFO] [stderr] | [INFO] [stderr] 186 | normals: &Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `&[object_parser::mat::Normal]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: variable `posTex` should have a snake case name such as `pos_tex` [INFO] [stderr] --> src/main.rs:185:5 [INFO] [stderr] | [INFO] [stderr] 185 | posTex: &Vec, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] error: approximate value of `f{32, 64}::consts::PI` found. Consider using it directly [INFO] [stderr] --> src/main.rs:198:24 [INFO] [stderr] | [INFO] [stderr] 198 | let fov: f32 = 3.141592 / 3.0; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::approx_constant)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#approx_constant [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `STOPPING` [INFO] [stderr] --> src/main.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | STOPPING, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `STOPPED` [INFO] [stderr] --> src/main.rs:35:5 [INFO] [stderr] | [INFO] [stderr] 35 | STOPPED, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: crate `rustyGFX` should have a snake case name such as `rusty_gfx` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] error: Could not compile `rustyGFX`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: `ref` directly on a function argument is ignored. Consider using a reference type instead. [INFO] [stderr] --> src/window.rs:14:22 [INFO] [stderr] | [INFO] [stderr] 14 | pub fn create_window(ref mut events_loop: &glutin::EventsLoop) -> glium::Display { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::toplevel_ref_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/shader_parser.rs:16:29 [INFO] [stderr] | [INFO] [stderr] 16 | pub fn read_file(file_path: &String) -> String { [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/shader_parser.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | file.read_to_string(&mut contents); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_must_use)] on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/object_parser.rs:35:27 [INFO] [stderr] | [INFO] [stderr] 35 | pub fn vertices(fileName: &String) -> Vec { [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: variable `fileName` should have a snake case name such as `file_name` [INFO] [stderr] --> src/object_parser.rs:35:17 [INFO] [stderr] | [INFO] [stderr] 35 | pub fn vertices(fileName: &String) -> Vec { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `vertStrings` should have a snake case name such as `vert_strings` [INFO] [stderr] --> src/object_parser.rs:39:9 [INFO] [stderr] | [INFO] [stderr] 39 | let vertStrings = fileSection(&fileName, "v".to_string()); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/object_parser.rs:84:37 [INFO] [stderr] | [INFO] [stderr] 84 | pub fn unmodifiedTextures(fileName: &String) -> Vec { [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: function `unmodifiedTextures` should have a snake case name such as `unmodified_textures` [INFO] [stderr] --> src/object_parser.rs:84:1 [INFO] [stderr] | [INFO] [stderr] 84 | / pub fn unmodifiedTextures(fileName: &String) -> Vec { [INFO] [stderr] 85 | | // create vector of Texture [INFO] [stderr] 86 | | let mut textures: Vec = Vec::new(); [INFO] [stderr] 87 | | [INFO] [stderr] ... | [INFO] [stderr] 108 | | return textures; [INFO] [stderr] 109 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: variable `fileName` should have a snake case name such as `file_name` [INFO] [stderr] --> src/object_parser.rs:84:27 [INFO] [stderr] | [INFO] [stderr] 84 | pub fn unmodifiedTextures(fileName: &String) -> Vec { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `texStrings` should have a snake case name such as `tex_strings` [INFO] [stderr] --> src/object_parser.rs:89:9 [INFO] [stderr] | [INFO] [stderr] 89 | let texStrings = fileSection(&fileName, "vt".to_string()); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/object_parser.rs:117:36 [INFO] [stderr] | [INFO] [stderr] 117 | pub fn unmodifiedNormals(fileName: &String) -> Vec { [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: function `unmodifiedNormals` should have a snake case name such as `unmodified_normals` [INFO] [stderr] --> src/object_parser.rs:117:1 [INFO] [stderr] | [INFO] [stderr] 117 | / pub fn unmodifiedNormals(fileName: &String) -> Vec { [INFO] [stderr] 118 | | // create vector of structs [INFO] [stderr] 119 | | let mut normals: Vec = Vec::new(); [INFO] [stderr] 120 | | // get chunk of file [INFO] [stderr] ... | [INFO] [stderr] 153 | | return normals; [INFO] [stderr] 154 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: variable `fileName` should have a snake case name such as `file_name` [INFO] [stderr] --> src/object_parser.rs:117:26 [INFO] [stderr] | [INFO] [stderr] 117 | pub fn unmodifiedNormals(fileName: &String) -> Vec { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `normalStrings` should have a snake case name such as `normal_strings` [INFO] [stderr] --> src/object_parser.rs:121:9 [INFO] [stderr] | [INFO] [stderr] 121 | let normalStrings = fileSection(&fileName, "vn".to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/object_parser.rs:162:24 [INFO] [stderr] | [INFO] [stderr] 162 | pub fn faces(fileName: &String) -> Vec { [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: variable `fileName` should have a snake case name such as `file_name` [INFO] [stderr] --> src/object_parser.rs:162:14 [INFO] [stderr] | [INFO] [stderr] 162 | pub fn faces(fileName: &String) -> Vec { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `faceStrings` should have a snake case name such as `face_strings` [INFO] [stderr] --> src/object_parser.rs:166:9 [INFO] [stderr] | [INFO] [stderr] 166 | let faceStrings = fileSection(&fileName, "f".to_string()); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `fileName` should have a snake case name such as `file_name` [INFO] [stderr] --> src/object_parser.rs:206:18 [INFO] [stderr] | [INFO] [stderr] 206 | pub fn positions(fileName: String) -> Vec { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `fileName` should have a snake case name such as `file_name` [INFO] [stderr] --> src/object_parser.rs:232:15 [INFO] [stderr] | [INFO] [stderr] 232 | pub fn texels(fileName: String) -> Vec { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `fileName` should have a snake case name such as `file_name` [INFO] [stderr] --> src/object_parser.rs:253:16 [INFO] [stderr] | [INFO] [stderr] 253 | pub fn normals(fileName: String) -> Vec { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/object_parser.rs:273:26 [INFO] [stderr] | [INFO] [stderr] 273 | pub fn posTex(positions: &Vec, texels: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: change this to: `&[mat::Vertex]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/object_parser.rs:273:53 [INFO] [stderr] | [INFO] [stderr] 273 | pub fn posTex(positions: &Vec, texels: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: change this to: `&[mat::Texture]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: function `posTex` should have a snake case name such as `pos_tex` [INFO] [stderr] --> src/object_parser.rs:273:1 [INFO] [stderr] | [INFO] [stderr] 273 | / pub fn posTex(positions: &Vec, texels: &Vec) -> Vec { [INFO] [stderr] 274 | | // create vector [INFO] [stderr] 275 | | let mut posTex: Vec = Vec::new(); [INFO] [stderr] 276 | | // for each position [INFO] [stderr] ... | [INFO] [stderr] 288 | | return posTex; [INFO] [stderr] 289 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: variable `posTex` should have a snake case name such as `pos_tex` [INFO] [stderr] --> src/object_parser.rs:275:9 [INFO] [stderr] | [INFO] [stderr] 275 | let mut posTex: Vec = Vec::new(); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `getObjectFileName` should have a snake case name such as `get_object_file_name` [INFO] [stderr] --> src/object_parser.rs:321:1 [INFO] [stderr] | [INFO] [stderr] 321 | / pub fn getObjectFileName(index: usize) -> String { [INFO] [stderr] 322 | | // get the file of names [INFO] [stderr] 323 | | let mut file = File::open("objectToLoad.txt").expect("unable to open objectToLoad.txt"); [INFO] [stderr] 324 | | // get the content as a string [INFO] [stderr] ... | [INFO] [stderr] 330 | | return lines[index % lines.len()].to_string().trim().to_string(); [INFO] [stderr] 331 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/object_parser.rs:326:5 [INFO] [stderr] | [INFO] [stderr] 326 | file.read_to_string(&mut content); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/object_parser.rs:338:34 [INFO] [stderr] | [INFO] [stderr] 338 | pub fn fileSection(ref fileName: &String, token: String) -> Vec { [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: function `fileSection` should have a snake case name such as `file_section` [INFO] [stderr] --> src/object_parser.rs:338:1 [INFO] [stderr] | [INFO] [stderr] 338 | / pub fn fileSection(ref fileName: &String, token: String) -> Vec { [INFO] [stderr] 339 | | // get file [INFO] [stderr] 340 | | let mut file = File::open(fileName).expect("unable to open file"); [INFO] [stderr] 341 | | let mut content = String::new(); [INFO] [stderr] ... | [INFO] [stderr] 354 | | return tokenLines; [INFO] [stderr] 355 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: `ref` directly on a function argument is ignored. Consider using a reference type instead. [INFO] [stderr] --> src/object_parser.rs:338:20 [INFO] [stderr] | [INFO] [stderr] 338 | pub fn fileSection(ref fileName: &String, token: String) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: variable `fileName` should have a snake case name such as `file_name` [INFO] [stderr] --> src/object_parser.rs:338:20 [INFO] [stderr] | [INFO] [stderr] 338 | pub fn fileSection(ref fileName: &String, token: String) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `tokenLines` should have a snake case name such as `token_lines` [INFO] [stderr] --> src/object_parser.rs:343:9 [INFO] [stderr] | [INFO] [stderr] 343 | let mut tokenLines: Vec = Vec::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/object_parser.rs:345:5 [INFO] [stderr] | [INFO] [stderr] 345 | file.read_to_string(&mut content); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: taken reference of right operand [INFO] [stderr] --> src/object_parser.rs:350:12 [INFO] [stderr] | [INFO] [stderr] 350 | if v[0] == &token { [INFO] [stderr] | ^^^^^^^^------ [INFO] [stderr] | | [INFO] [stderr] | help: use the right value directly: `token` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::op_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#op_ref [INFO] [stderr] [INFO] [stderr] warning: type `program_state` should have a camel case name such as `ProgramState` [INFO] [stderr] --> src/main.rs:30:1 [INFO] [stderr] | [INFO] [stderr] 30 | / enum program_state { [INFO] [stderr] 31 | | INITIALIZING, [INFO] [stderr] 32 | | INITIALIZED, [INFO] [stderr] 33 | | RUNNING, [INFO] [stderr] ... | [INFO] [stderr] 36 | | CLOSEING, [INFO] [stderr] 37 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_camel_case_types)] on by default [INFO] [stderr] [INFO] [stderr] warning: `ref` directly on a function argument is ignored. Consider using a reference type instead. [INFO] [stderr] --> src/main.rs:59:9 [INFO] [stderr] | [INFO] [stderr] 59 | fn init(ref mut events_loop: &glutin::EventsLoop) -> glium::Display { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: `ref` directly on a function argument is ignored. Consider using a reference type instead. [INFO] [stderr] --> src/main.rs:72:5 [INFO] [stderr] | [INFO] [stderr] 72 | ref window: &glium::Display, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: variable `objectName` should have a snake case name such as `object_name` [INFO] [stderr] --> src/main.rs:87:9 [INFO] [stderr] | [INFO] [stderr] 87 | let mut objectName = object_parser::getObjectFileName(index); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `posTex` should have a snake case name such as `pos_tex` [INFO] [stderr] --> src/main.rs:97:9 [INFO] [stderr] | [INFO] [stderr] 97 | let mut posTex = object_parser::posTex(&shape, &texels); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/main.rs:108:13 [INFO] [stderr] | [INFO] [stderr] 108 | / match ev { [INFO] [stderr] 109 | | // match on WindowEvent [INFO] [stderr] 110 | | glutin::Event::WindowEvent { event, .. } => match event { [INFO] [stderr] 111 | | // if window event is closed set state to closing to end loop [INFO] [stderr] ... | [INFO] [stderr] 172 | | _ => (), [INFO] [stderr] 173 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 108 | if let glutin::Event::WindowEvent { event, .. } = ev { match event { [INFO] [stderr] 109 | // if window event is closed set state to closing to end loop [INFO] [stderr] 110 | glutin::WindowEvent::Closed => state = program_state::CLOSEING, [INFO] [stderr] 111 | // match on KeyboardInput [INFO] [stderr] 112 | glutin::WindowEvent::KeyboardInput { input, .. } => { [INFO] [stderr] 113 | match input.virtual_keycode { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:151:64 [INFO] [stderr] | [INFO] [stderr] 151 | Some(glutin::VirtualKeyCode::W) => position[2] = position[2] + 0.1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `position[2] += 0.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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:152:64 [INFO] [stderr] | [INFO] [stderr] 152 | Some(glutin::VirtualKeyCode::A) => position[0] = position[0] - 0.1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `position[0] -= 0.1` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:153:64 [INFO] [stderr] | [INFO] [stderr] 153 | Some(glutin::VirtualKeyCode::S) => position[2] = position[2] - 0.1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `position[2] -= 0.1` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:154:64 [INFO] [stderr] | [INFO] [stderr] 154 | Some(glutin::VirtualKeyCode::D) => position[0] = position[0] + 0.1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `position[0] += 0.1` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:155:64 [INFO] [stderr] | [INFO] [stderr] 155 | Some(glutin::VirtualKeyCode::Q) => direction[0] = direction[0] - 0.1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `direction[0] -= 0.1` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:156:64 [INFO] [stderr] | [INFO] [stderr] 156 | Some(glutin::VirtualKeyCode::E) => direction[0] = direction[0] + 0.1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `direction[0] += 0.1` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:157:65 [INFO] [stderr] | [INFO] [stderr] 157 | Some(glutin::VirtualKeyCode::Up) => direction[1] = direction[1] + 0.1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `direction[1] += 0.1` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:158:67 [INFO] [stderr] | [INFO] [stderr] 158 | Some(glutin::VirtualKeyCode::Down) => direction[1] = direction[1] - 0.1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `direction[1] -= 0.1` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:160:33 [INFO] [stderr] | [INFO] [stderr] 160 | direction[2] = direction[2] + 0.1 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `direction[2] += 0.1` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:162:67 [INFO] [stderr] | [INFO] [stderr] 162 | Some(glutin::VirtualKeyCode::Left) => direction[2] = direction[2] - 0.1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `direction[2] -= 0.1` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:163:69 [INFO] [stderr] | [INFO] [stderr] 163 | Some(glutin::VirtualKeyCode::PageUp) => position[1] = position[1] + 0.1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `position[1] += 0.1` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/main.rs:165:33 [INFO] [stderr] | [INFO] [stderr] 165 | position[1] = position[1] - 0.1 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `position[1] -= 0.1` [INFO] [stderr] | [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: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/main.rs:185:13 [INFO] [stderr] | [INFO] [stderr] 185 | posTex: &Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `&[object_parser::mat::PosTex]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/main.rs:186:14 [INFO] [stderr] | [INFO] [stderr] 186 | normals: &Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `&[object_parser::mat::Normal]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: variable `posTex` should have a snake case name such as `pos_tex` [INFO] [stderr] --> src/main.rs:185:5 [INFO] [stderr] | [INFO] [stderr] 185 | posTex: &Vec, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] error: approximate value of `f{32, 64}::consts::PI` found. Consider using it directly [INFO] [stderr] --> src/main.rs:198:24 [INFO] [stderr] | [INFO] [stderr] 198 | let fov: f32 = 3.141592 / 3.0; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::approx_constant)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#approx_constant [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `rustyGFX`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "3e77437d4ed648b424785f76887828bf72744d7e489545900d746dca9142b996"` [INFO] running `"docker" "rm" "-f" "3e77437d4ed648b424785f76887828bf72744d7e489545900d746dca9142b996"` [INFO] [stdout] 3e77437d4ed648b424785f76887828bf72744d7e489545900d746dca9142b996