[INFO] updating cached repository floriama/agents [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/floriama/agents [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/floriama/agents" "work/ex/clippy-test-run/sources/stable/gh/floriama/agents"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/floriama/agents'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/floriama/agents" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/floriama/agents"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/floriama/agents'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 4cbecde2dbb408266b94c1ac73aa7c2d405936f3 [INFO] sha for GitHub repo floriama/agents: 4cbecde2dbb408266b94c1ac73aa7c2d405936f3 [INFO] validating manifest of floriama/agents 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 floriama/agents 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 floriama/agents [INFO] finished frobbing floriama/agents [INFO] frobbed toml for floriama/agents written to work/ex/clippy-test-run/sources/stable/gh/floriama/agents/Cargo.toml [INFO] started frobbing floriama/agents [INFO] finished frobbing floriama/agents [INFO] frobbed toml for floriama/agents written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/floriama/agents/Cargo.toml [INFO] crate floriama/agents 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 floriama/agents against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-6/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/floriama/agents:/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] 20f69cafb8ed9f430e15f8cc58dbb18019a2f2a19674f765c7a8dec996ef3fcb [INFO] running `"docker" "start" "-a" "20f69cafb8ed9f430e15f8cc58dbb18019a2f2a19674f765c7a8dec996ef3fcb"` [INFO] [stderr] Compiling glutin v0.12.2 [INFO] [stderr] Checking glium v0.20.0 [INFO] [stderr] Checking agents v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/graphics.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | display: display, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `display` [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/graphics.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | event_loop: event_loop, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `event_loop` [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/graphics.rs:48:13 [INFO] [stderr] | [INFO] [stderr] 48 | 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/graphics.rs:49:13 [INFO] [stderr] | [INFO] [stderr] 49 | circle_mesh: circle_mesh, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `circle_mesh` [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/graphics.rs:50:13 [INFO] [stderr] | [INFO] [stderr] 50 | line_mesh: line_mesh, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `line_mesh` [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/network.rs:279:20 [INFO] [stderr] | [INFO] [stderr] 279 | Relation { 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/network.rs:294:13 [INFO] [stderr] | [INFO] [stderr] 294 | pos: pos, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `pos` [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/network.rs:295:13 [INFO] [stderr] | [INFO] [stderr] 295 | vel: vel, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `vel` [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/network.rs:296:13 [INFO] [stderr] | [INFO] [stderr] 296 | r: r, [INFO] [stderr] | ^^^^ help: replace it with: `r` [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/network.rs:297:13 [INFO] [stderr] | [INFO] [stderr] 297 | 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/simulation.rs:37:13 [INFO] [stderr] | [INFO] [stderr] 37 | n: n, [INFO] [stderr] | ^^^^ help: replace it with: `n` [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/simulation.rs:38:13 [INFO] [stderr] | [INFO] [stderr] 38 | p: p, [INFO] [stderr] | ^^^^ help: replace it with: `p` [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/simulation.rs:39:13 [INFO] [stderr] | [INFO] [stderr] 39 | renderer: renderer, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `renderer` [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/simulation.rs:40:13 [INFO] [stderr] | [INFO] [stderr] 40 | network: network, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `network` [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/simulation.rs:41:13 [INFO] [stderr] | [INFO] [stderr] 41 | input: input, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `input` [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/simulation.rs:140:26 [INFO] [stderr] | [INFO] [stderr] 140 | LogicComponent { ptype: ptype, plant: 10, meat: 10, alive: true } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `ptype` [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/graph.rs:29:42 [INFO] [stderr] | [INFO] [stderr] 29 | Node { free: false, first: None, payload: payload } [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `payload` [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/graph.rs:88:16 [INFO] [stderr] | [INFO] [stderr] 88 | Edge { target: target, next: next, payload: payload } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `target` [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/graph.rs:88:32 [INFO] [stderr] | [INFO] [stderr] 88 | Edge { target: target, next: next, payload: payload } [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `next` [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/graph.rs:88:44 [INFO] [stderr] | [INFO] [stderr] 88 | Edge { target: target, next: next, payload: payload } [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `payload` [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/util.rs:12:16 [INFO] [stderr] | [INFO] [stderr] 12 | Vec2 { x: x, y: y } [INFO] [stderr] | ^^^^ help: replace it with: `x` [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/util.rs:12:22 [INFO] [stderr] | [INFO] [stderr] 12 | Vec2 { x: x, y: y } [INFO] [stderr] | ^^^^ help: replace it with: `y` [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/util.rs:89:27 [INFO] [stderr] | [INFO] [stderr] 89 | Ticker{ ticks: 0, period: period, first: true } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `period` [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/graphics.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | display: display, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `display` [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/graphics.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | event_loop: event_loop, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `event_loop` [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/graphics.rs:48:13 [INFO] [stderr] | [INFO] [stderr] 48 | 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/graphics.rs:49:13 [INFO] [stderr] | [INFO] [stderr] 49 | circle_mesh: circle_mesh, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `circle_mesh` [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/graphics.rs:50:13 [INFO] [stderr] | [INFO] [stderr] 50 | line_mesh: line_mesh, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `line_mesh` [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/network.rs:279:20 [INFO] [stderr] | [INFO] [stderr] 279 | Relation { 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/network.rs:294:13 [INFO] [stderr] | [INFO] [stderr] 294 | pos: pos, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `pos` [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/network.rs:295:13 [INFO] [stderr] | [INFO] [stderr] 295 | vel: vel, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `vel` [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/network.rs:296:13 [INFO] [stderr] | [INFO] [stderr] 296 | r: r, [INFO] [stderr] | ^^^^ help: replace it with: `r` [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/network.rs:297:13 [INFO] [stderr] | [INFO] [stderr] 297 | 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/simulation.rs:37:13 [INFO] [stderr] | [INFO] [stderr] 37 | n: n, [INFO] [stderr] | ^^^^ help: replace it with: `n` [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/simulation.rs:38:13 [INFO] [stderr] | [INFO] [stderr] 38 | p: p, [INFO] [stderr] | ^^^^ help: replace it with: `p` [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/simulation.rs:39:13 [INFO] [stderr] | [INFO] [stderr] 39 | renderer: renderer, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `renderer` [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/simulation.rs:40:13 [INFO] [stderr] | [INFO] [stderr] 40 | network: network, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `network` [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/simulation.rs:41:13 [INFO] [stderr] | [INFO] [stderr] 41 | input: input, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `input` [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/simulation.rs:140:26 [INFO] [stderr] | [INFO] [stderr] 140 | LogicComponent { ptype: ptype, plant: 10, meat: 10, alive: true } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `ptype` [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/graph.rs:29:42 [INFO] [stderr] | [INFO] [stderr] 29 | Node { free: false, first: None, payload: payload } [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `payload` [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/graph.rs:88:16 [INFO] [stderr] | [INFO] [stderr] 88 | Edge { target: target, next: next, payload: payload } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `target` [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/graph.rs:88:32 [INFO] [stderr] | [INFO] [stderr] 88 | Edge { target: target, next: next, payload: payload } [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `next` [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/graph.rs:88:44 [INFO] [stderr] | [INFO] [stderr] 88 | Edge { target: target, next: next, payload: payload } [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `payload` [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/util.rs:12:16 [INFO] [stderr] | [INFO] [stderr] 12 | Vec2 { x: x, y: y } [INFO] [stderr] | ^^^^ help: replace it with: `x` [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/util.rs:12:22 [INFO] [stderr] | [INFO] [stderr] 12 | Vec2 { x: x, y: y } [INFO] [stderr] | ^^^^ help: replace it with: `y` [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/util.rs:89:27 [INFO] [stderr] | [INFO] [stderr] 89 | Ticker{ ticks: 0, period: period, first: true } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `period` [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: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/graphics.rs:222:5 [INFO] [stderr] | [INFO] [stderr] 222 | perspective [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/graphics.rs:210:23 [INFO] [stderr] | [INFO] [stderr] 210 | let perspective = { [INFO] [stderr] | _______________________^ [INFO] [stderr] 211 | | let (width, height) = frame.get_dimensions(); [INFO] [stderr] 212 | | let ar = height as f32 / width as f32; [INFO] [stderr] 213 | | [INFO] [stderr] ... | [INFO] [stderr] 219 | | ] [INFO] [stderr] 220 | | }; [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: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/graphics.rs:241:5 [INFO] [stderr] | [INFO] [stderr] 241 | perspective [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/graphics.rs:229:23 [INFO] [stderr] | [INFO] [stderr] 229 | let perspective = { [INFO] [stderr] | _______________________^ [INFO] [stderr] 230 | | let (width, height) = frame.get_dimensions(); [INFO] [stderr] 231 | | let ar = height as f32 / width as f32; [INFO] [stderr] 232 | | [INFO] [stderr] ... | [INFO] [stderr] 238 | | ] [INFO] [stderr] 239 | | }; [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: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/graphics.rs:254:5 [INFO] [stderr] | [INFO] [stderr] 254 | model [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/graphics.rs:245:17 [INFO] [stderr] | [INFO] [stderr] 245 | let model = { [INFO] [stderr] | _________________^ [INFO] [stderr] 246 | | [ [INFO] [stderr] 247 | | [r, 0.0, 0.0, 0.0], [INFO] [stderr] 248 | | [0.0, r, 0.0, 0.0], [INFO] [stderr] ... | [INFO] [stderr] 251 | | ] [INFO] [stderr] 252 | | }; [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: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/graphics.rs:269:5 [INFO] [stderr] | [INFO] [stderr] 269 | model [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/graphics.rs:258:17 [INFO] [stderr] | [INFO] [stderr] 258 | let model = { [INFO] [stderr] | _________________^ [INFO] [stderr] 259 | | let d = p2 - p1; [INFO] [stderr] 260 | | [INFO] [stderr] 261 | | [ [INFO] [stderr] ... | [INFO] [stderr] 266 | | ] [INFO] [stderr] 267 | | }; [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: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/graphics.rs:222:5 [INFO] [stderr] | [INFO] [stderr] 222 | perspective [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/graphics.rs:210:23 [INFO] [stderr] | [INFO] [stderr] 210 | let perspective = { [INFO] [stderr] | _______________________^ [INFO] [stderr] 211 | | let (width, height) = frame.get_dimensions(); [INFO] [stderr] 212 | | let ar = height as f32 / width as f32; [INFO] [stderr] 213 | | [INFO] [stderr] ... | [INFO] [stderr] 219 | | ] [INFO] [stderr] 220 | | }; [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: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/graphics.rs:241:5 [INFO] [stderr] | [INFO] [stderr] 241 | perspective [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/graphics.rs:229:23 [INFO] [stderr] | [INFO] [stderr] 229 | let perspective = { [INFO] [stderr] | _______________________^ [INFO] [stderr] 230 | | let (width, height) = frame.get_dimensions(); [INFO] [stderr] 231 | | let ar = height as f32 / width as f32; [INFO] [stderr] 232 | | [INFO] [stderr] ... | [INFO] [stderr] 238 | | ] [INFO] [stderr] 239 | | }; [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: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/graphics.rs:254:5 [INFO] [stderr] | [INFO] [stderr] 254 | model [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/graphics.rs:245:17 [INFO] [stderr] | [INFO] [stderr] 245 | let model = { [INFO] [stderr] | _________________^ [INFO] [stderr] 246 | | [ [INFO] [stderr] 247 | | [r, 0.0, 0.0, 0.0], [INFO] [stderr] 248 | | [0.0, r, 0.0, 0.0], [INFO] [stderr] ... | [INFO] [stderr] 251 | | ] [INFO] [stderr] 252 | | }; [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: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/graphics.rs:269:5 [INFO] [stderr] | [INFO] [stderr] 269 | model [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/graphics.rs:258:17 [INFO] [stderr] | [INFO] [stderr] 258 | let model = { [INFO] [stderr] | _________________^ [INFO] [stderr] 259 | | let d = p2 - p1; [INFO] [stderr] 260 | | [INFO] [stderr] 261 | | [ [INFO] [stderr] ... | [INFO] [stderr] 266 | | ] [INFO] [stderr] 267 | | }; [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: variant is never constructed: `AddAgent` [INFO] [stderr] --> src/network.rs:241:5 [INFO] [stderr] | [INFO] [stderr] 241 | AddAgent, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `RemoveAgent` [INFO] [stderr] --> src/network.rs:242:5 [INFO] [stderr] | [INFO] [stderr] 242 | RemoveAgent(NodeIndex), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `AddRelation` [INFO] [stderr] --> src/network.rs:243:5 [INFO] [stderr] | [INFO] [stderr] 243 | AddRelation(NodeIndex, NodeIndex), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `num_edges` [INFO] [stderr] --> src/graph.rs:102:5 [INFO] [stderr] | [INFO] [stderr] 102 | pub fn num_edges(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `nodes_mut` [INFO] [stderr] --> src/graph.rs:110:5 [INFO] [stderr] | [INFO] [stderr] 110 | pub fn nodes_mut(&mut self) -> Vec<&mut T> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `contains_edge` [INFO] [stderr] --> src/graph.rs:286:5 [INFO] [stderr] | [INFO] [stderr] 286 | pub fn contains_edge(&self, source: NodeIndex, target: NodeIndex) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `edge_payload` [INFO] [stderr] --> src/graph.rs:316:5 [INFO] [stderr] | [INFO] [stderr] 316 | pub fn edge_payload(&self, source: NodeIndex, target: NodeIndex) -> Option<&S> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `edge_payload_mut` [INFO] [stderr] --> src/graph.rs:336:5 [INFO] [stderr] | [INFO] [stderr] 336 | pub fn edge_payload_mut(&mut self, source: NodeIndex, target: NodeIndex) -> Option<&mut S> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: The function/method `get_perspective_zoom` doesn't need a mutable reference [INFO] [stderr] --> src/graphics.rs:64:59 [INFO] [stderr] | [INFO] [stderr] 64 | self.perspective_zoom = Some(get_perspective_zoom(&mut self.frame.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_mut_passed)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stderr] [INFO] [stderr] warning: The function/method `get_perspective_shift` doesn't need a mutable reference [INFO] [stderr] --> src/graphics.rs:66:61 [INFO] [stderr] | [INFO] [stderr] 66 | self.perspective_shift = Some(get_perspective_shift(&mut self.frame.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/simulation.rs:98:13 [INFO] [stderr] | [INFO] [stderr] 98 | / if let &InputEvent::ToggleFreeze = e { [INFO] [stderr] 99 | | self.freeze = !self.freeze; [INFO] [stderr] 100 | | } [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] 98 | if let InputEvent::ToggleFreeze = *e { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ ^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/simulation.rs:101:13 [INFO] [stderr] | [INFO] [stderr] 101 | / if let &InputEvent::Quit = e { [INFO] [stderr] 102 | | return true; [INFO] [stderr] 103 | | } [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] 101 | if let InputEvent::Quit = *e { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ ^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/simulation.rs:104:13 [INFO] [stderr] | [INFO] [stderr] 104 | / if let &InputEvent::Rebuild = e { [INFO] [stderr] 105 | | self.network = Network::random(self.n, self.p); [INFO] [stderr] 106 | | self.network.physics_tick_till_rest(TIME_STEP, VEL_THRESH, IT_THRESH); [INFO] [stderr] 107 | | } [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] 104 | if let InputEvent::Rebuild = *e { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ ^^ [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/graph.rs:106:5 [INFO] [stderr] | [INFO] [stderr] 106 | / pub fn nodes_iter<'a>(&'a self) -> NodeIterator<'a, T, S> { [INFO] [stderr] 107 | | NodeIterator { graph: self, cur_idx: 0 } [INFO] [stderr] 108 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [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/input.rs:47:9 [INFO] [stderr] | [INFO] [stderr] 47 | / match event { [INFO] [stderr] 48 | | WindowEvent{event: e, ..} => { [INFO] [stderr] 49 | | match e { [INFO] [stderr] 50 | | Closed => { self.keyset.insert(VK::Escape); }, [INFO] [stderr] ... | [INFO] [stderr] 58 | | _ => () [INFO] [stderr] 59 | | }; [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] 47 | if let WindowEvent{event: e, ..} = event { [INFO] [stderr] 48 | match e { [INFO] [stderr] 49 | Closed => { self.keyset.insert(VK::Escape); }, [INFO] [stderr] 50 | CursorMoved {position: (x,y), ..} => self.mouse_moved_input(x, y), [INFO] [stderr] 51 | MouseInput { state, button, ..} => self.mouse_click_input(state, button), [INFO] [stderr] 52 | MouseWheel {delta, ..} => self.mouse_wheel_input(delta), [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/util.rs:15:19 [INFO] [stderr] | [INFO] [stderr] 15 | pub fn length(&self) -> f32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/util.rs:19:18 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn scale(&self, s: f32) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/util.rs:23:23 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn normalized(&self) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/util.rs:27:27 [INFO] [stderr] | [INFO] [stderr] 27 | pub fn horizontal_sum(&self) -> f32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/util.rs:31:16 [INFO] [stderr] | [INFO] [stderr] 31 | pub fn abs(&self) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/util.rs:35:14 [INFO] [stderr] | [INFO] [stderr] 35 | pub fn x(&self) -> f32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/util.rs:39:14 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn y(&self) -> f32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `AddAgent` [INFO] [stderr] --> src/network.rs:241:5 [INFO] [stderr] | [INFO] [stderr] 241 | AddAgent, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `RemoveAgent` [INFO] [stderr] --> src/network.rs:242:5 [INFO] [stderr] | [INFO] [stderr] 242 | RemoveAgent(NodeIndex), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `AddRelation` [INFO] [stderr] --> src/network.rs:243:5 [INFO] [stderr] | [INFO] [stderr] 243 | AddRelation(NodeIndex, NodeIndex), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: The function/method `get_perspective_zoom` doesn't need a mutable reference [INFO] [stderr] --> src/graphics.rs:64:59 [INFO] [stderr] | [INFO] [stderr] 64 | self.perspective_zoom = Some(get_perspective_zoom(&mut self.frame.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_mut_passed)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stderr] [INFO] [stderr] warning: The function/method `get_perspective_shift` doesn't need a mutable reference [INFO] [stderr] --> src/graphics.rs:66:61 [INFO] [stderr] | [INFO] [stderr] 66 | self.perspective_shift = Some(get_perspective_shift(&mut self.frame.as_mut().unwrap(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/simulation.rs:98:13 [INFO] [stderr] | [INFO] [stderr] 98 | / if let &InputEvent::ToggleFreeze = e { [INFO] [stderr] 99 | | self.freeze = !self.freeze; [INFO] [stderr] 100 | | } [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] 98 | if let InputEvent::ToggleFreeze = *e { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ ^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/simulation.rs:101:13 [INFO] [stderr] | [INFO] [stderr] 101 | / if let &InputEvent::Quit = e { [INFO] [stderr] 102 | | return true; [INFO] [stderr] 103 | | } [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] 101 | if let InputEvent::Quit = *e { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ ^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/simulation.rs:104:13 [INFO] [stderr] | [INFO] [stderr] 104 | / if let &InputEvent::Rebuild = e { [INFO] [stderr] 105 | | self.network = Network::random(self.n, self.p); [INFO] [stderr] 106 | | self.network.physics_tick_till_rest(TIME_STEP, VEL_THRESH, IT_THRESH); [INFO] [stderr] 107 | | } [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] 104 | if let InputEvent::Rebuild = *e { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ ^^ [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/graph.rs:106:5 [INFO] [stderr] | [INFO] [stderr] 106 | / pub fn nodes_iter<'a>(&'a self) -> NodeIterator<'a, T, S> { [INFO] [stderr] 107 | | NodeIterator { graph: self, cur_idx: 0 } [INFO] [stderr] 108 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [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/input.rs:47:9 [INFO] [stderr] | [INFO] [stderr] 47 | / match event { [INFO] [stderr] 48 | | WindowEvent{event: e, ..} => { [INFO] [stderr] 49 | | match e { [INFO] [stderr] 50 | | Closed => { self.keyset.insert(VK::Escape); }, [INFO] [stderr] ... | [INFO] [stderr] 58 | | _ => () [INFO] [stderr] 59 | | }; [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] 47 | if let WindowEvent{event: e, ..} = event { [INFO] [stderr] 48 | match e { [INFO] [stderr] 49 | Closed => { self.keyset.insert(VK::Escape); }, [INFO] [stderr] 50 | CursorMoved {position: (x,y), ..} => self.mouse_moved_input(x, y), [INFO] [stderr] 51 | MouseInput { state, button, ..} => self.mouse_click_input(state, button), [INFO] [stderr] 52 | MouseWheel {delta, ..} => self.mouse_wheel_input(delta), [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/util.rs:15:19 [INFO] [stderr] | [INFO] [stderr] 15 | pub fn length(&self) -> f32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/util.rs:19:18 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn scale(&self, s: f32) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/util.rs:23:23 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn normalized(&self) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/util.rs:27:27 [INFO] [stderr] | [INFO] [stderr] 27 | pub fn horizontal_sum(&self) -> f32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/util.rs:31:16 [INFO] [stderr] | [INFO] [stderr] 31 | pub fn abs(&self) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/util.rs:35:14 [INFO] [stderr] | [INFO] [stderr] 35 | pub fn x(&self) -> f32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/util.rs:39:14 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn y(&self) -> f32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 33.54s [INFO] running `"docker" "inspect" "20f69cafb8ed9f430e15f8cc58dbb18019a2f2a19674f765c7a8dec996ef3fcb"` [INFO] running `"docker" "rm" "-f" "20f69cafb8ed9f430e15f8cc58dbb18019a2f2a19674f765c7a8dec996ef3fcb"` [INFO] [stdout] 20f69cafb8ed9f430e15f8cc58dbb18019a2f2a19674f765c7a8dec996ef3fcb