[INFO] cloning repository https://github.com/portaloffreedom/reinforcement-learning-in-rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/portaloffreedom/reinforcement-learning-in-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fportaloffreedom%2Freinforcement-learning-in-rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fportaloffreedom%2Freinforcement-learning-in-rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 470a8b6486a2c83dccbab9a0ef4bfd020e975d56 [INFO] checking portaloffreedom/reinforcement-learning-in-rust against try#a7a572ce3edd6d476191fbfe92c9c1986e009b34 for pr-87190-3 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fportaloffreedom%2Freinforcement-learning-in-rust" "/workspace/builds/worker-16/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-16/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/portaloffreedom/reinforcement-learning-in-rust on toolchain a7a572ce3edd6d476191fbfe92c9c1986e009b34 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a7a572ce3edd6d476191fbfe92c9c1986e009b34" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/portaloffreedom/reinforcement-learning-in-rust [INFO] finished tweaking git repo https://github.com/portaloffreedom/reinforcement-learning-in-rust [INFO] tweaked toml for git repo https://github.com/portaloffreedom/reinforcement-learning-in-rust written to /workspace/builds/worker-16/source/Cargo.toml [INFO] crate git repo https://github.com/portaloffreedom/reinforcement-learning-in-rust already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a7a572ce3edd6d476191fbfe92c9c1986e009b34" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded ordered-float v0.2.3 [INFO] [stderr] Downloaded ndarray v0.12.1 [INFO] [stderr] Downloaded lp-modeler v0.3.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-16/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-16/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+a7a572ce3edd6d476191fbfe92c9c1986e009b34" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] af12b34fdd59a072a3835e4753077f8a1bbb9fca3f74684a92b984ebbe6a2d6c [INFO] running `Command { std: "docker" "start" "-a" "af12b34fdd59a072a3835e4753077f8a1bbb9fca3f74684a92b984ebbe6a2d6c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "af12b34fdd59a072a3835e4753077f8a1bbb9fca3f74684a92b984ebbe6a2d6c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "af12b34fdd59a072a3835e4753077f8a1bbb9fca3f74684a92b984ebbe6a2d6c", kill_on_drop: false }` [INFO] [stdout] af12b34fdd59a072a3835e4753077f8a1bbb9fca3f74684a92b984ebbe6a2d6c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-16/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-16/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+a7a572ce3edd6d476191fbfe92c9c1986e009b34" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d1736149e4f4fb1bba8c6726ced315ffd211c8879399ac8acace60fb04ffc4e8 [INFO] running `Command { std: "docker" "start" "-a" "d1736149e4f4fb1bba8c6726ced315ffd211c8879399ac8acace60fb04ffc4e8", kill_on_drop: false }` [INFO] [stderr] Copying to /tmp/fixit [INFO] [stderr] Running `cargo fix --edition` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling libc v0.2.51 [INFO] [stderr] Checking rand_core v0.4.0 [INFO] [stderr] Compiling num-traits v0.2.6 [INFO] [stderr] Compiling memchr v2.2.0 [INFO] [stderr] Compiling serde v1.0.91 [INFO] [stderr] Compiling ryu v0.2.8 [INFO] [stderr] Compiling num-complex v0.2.1 [INFO] [stderr] Compiling matrixmultiply v0.1.15 [INFO] [stderr] Checking either v1.5.2 [INFO] [stderr] Checking rawpointer v0.1.0 [INFO] [stderr] Compiling ndarray v0.12.1 [INFO] [stderr] Checking cfg-if v0.1.7 [INFO] [stderr] Checking void v1.0.2 [INFO] [stderr] Checking maplit v1.0.1 [INFO] [stderr] Checking itoa v0.4.4 [INFO] [stderr] Checking unreachable v0.1.1 [INFO] [stderr] Checking itertools v0.7.11 [INFO] [stderr] Checking rand_core v0.3.1 [INFO] [stderr] Checking rand_pcg v0.1.2 [INFO] [stderr] Checking rand_jitter v0.1.3 [INFO] [stderr] Checking rand_hc v0.1.0 [INFO] [stderr] Checking rand_chacha v0.1.1 [INFO] [stderr] Checking rand_xorshift v0.1.1 [INFO] [stderr] Checking rand_isaac v0.1.1 [INFO] [stderr] Checking rand v0.4.6 [INFO] [stderr] Checking rand_os v0.1.3 [INFO] [stderr] Checking rand v0.6.5 [INFO] [stderr] Checking csv-core v0.1.5 [INFO] [stderr] Checking num-traits v0.1.43 [INFO] [stderr] Checking ordered-float v0.2.3 [INFO] [stderr] Checking uuid v0.6.5 [INFO] [stderr] Checking lp-modeler v0.3.2 [INFO] [stderr] Checking csv v1.0.7 [INFO] [stderr] Checking reinforcement_learning v0.1.0 (/tmp/fixit) [INFO] [stderr] Migrating src/main.rs from 2018 edition to 2021 [INFO] [stderr] Fixed src/environment.rs (7 fixes) [INFO] [stderr] Fixed src/rl.rs (12 fixes) [INFO] [stderr] Fixed src/main.rs (7 fixes) [INFO] [stderr] Fixed src/agent.rs (2 fixes) [INFO] [stderr] Fixed src/policy.rs (14 fixes) [INFO] [stdout] warning: unused import: `policy::Policy` [INFO] [stdout] --> src/main.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use policy::Policy; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `s` is never read [INFO] [stdout] --> src/policy.rs:33:17 [INFO] [stdout] | [INFO] [stdout] 33 | let mut s: i32= 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `count_i` is assigned to, but never used [INFO] [stdout] --> src/environment.rs:236:17 [INFO] [stdout] | [INFO] [stdout] 236 | let mut count_i = 1; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] = note: consider using `_count_i` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `initialize` [INFO] [stdout] --> src/policy.rs:93:8 [INFO] [stdout] | [INFO] [stdout] 93 | fn initialize(& mut self, env: &Env) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `RandomExplorationStrategy` [INFO] [stdout] --> src/rl.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | struct RandomExplorationStrategy {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `EpsilonGreedyExplorationStrategy` [INFO] [stdout] --> src/rl.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | struct EpsilonGreedyExplorationStrategy {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `SoftMaxExplorationStrategy` [INFO] [stdout] --> src/rl.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | struct SoftMaxExplorationStrategy {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `k` [INFO] [stdout] --> src/rl.rs:138:5 [INFO] [stdout] | [INFO] [stdout] 138 | k: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `l` [INFO] [stdout] --> src/rl.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | l: usize, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `t` [INFO] [stdout] --> src/rl.rs:140:5 [INFO] [stdout] | [INFO] [stdout] 140 | t: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `size` [INFO] [stdout] --> src/rl.rs:215:5 [INFO] [stdout] | [INFO] [stdout] 215 | size: Pos, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `write_statistics` [INFO] [stdout] --> src/main.rs:71:4 [INFO] [stdout] | [INFO] [stdout] 71 | fn write_statistics(name: &str, closure: &mut dyn Fn() -> (DetPolicy, Vec, Vec)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `V` should have a snake case name [INFO] [stdout] --> src/environment.rs:219:17 [INFO] [stdout] | [INFO] [stdout] 219 | let mut V = Array2::::zeros((self.size().x, self.size().y)); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `v` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `V` should have a snake case name [INFO] [stdout] --> src/environment.rs:234:64 [INFO] [stdout] | [INFO] [stdout] 234 | fn value_iterate_pol(&self, policy: Option<&P>, V: &mut Array2, discount: f32, max_delta: f32) { [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `V` should have a snake case name [INFO] [stdout] --> src/environment.rs:265:63 [INFO] [stdout] | [INFO] [stdout] 265 | fn inner(&self, pos: &Pos, policy: Option<&P>, V: &Array2, discount: f32) -> (f32, f32, Movement) { [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `V` should have a snake case name [INFO] [stdout] --> src/environment.rs:302:17 [INFO] [stdout] | [INFO] [stdout] 302 | let mut V = Array2::::zeros((self.size().x, self.size().y)); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `V` should have a snake case name [INFO] [stdout] --> src/environment.rs:309:17 [INFO] [stdout] | [INFO] [stdout] 309 | let mut V = Array2::::zeros((self.size().x, self.size().y)); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/environment.rs:360:9 [INFO] [stdout] | [INFO] [stdout] 360 | problem.write_lp("problem.lp"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 18 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `policy::Policy` [INFO] [stdout] --> src/main.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use policy::Policy; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `s` is never read [INFO] [stdout] --> src/policy.rs:33:17 [INFO] [stdout] | [INFO] [stdout] 33 | let mut s: i32= 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `count_i` is assigned to, but never used [INFO] [stdout] --> src/environment.rs:236:17 [INFO] [stdout] | [INFO] [stdout] 236 | let mut count_i = 1; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] = note: consider using `_count_i` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `initialize` [INFO] [stdout] --> src/policy.rs:93:8 [INFO] [stdout] | [INFO] [stdout] 93 | fn initialize(& mut self, env: &Env) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `RandomExplorationStrategy` [INFO] [stdout] --> src/rl.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | struct RandomExplorationStrategy {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `EpsilonGreedyExplorationStrategy` [INFO] [stdout] --> src/rl.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | struct EpsilonGreedyExplorationStrategy {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `SoftMaxExplorationStrategy` [INFO] [stdout] --> src/rl.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | struct SoftMaxExplorationStrategy {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `k` [INFO] [stdout] --> src/rl.rs:138:5 [INFO] [stdout] | [INFO] [stdout] 138 | k: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `l` [INFO] [stdout] --> src/rl.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | l: usize, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `t` [INFO] [stdout] --> src/rl.rs:140:5 [INFO] [stdout] | [INFO] [stdout] 140 | t: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `size` [INFO] [stdout] --> src/rl.rs:215:5 [INFO] [stdout] | [INFO] [stdout] 215 | size: Pos, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `write_statistics` [INFO] [stdout] --> src/main.rs:71:4 [INFO] [stdout] | [INFO] [stdout] 71 | fn write_statistics(name: &str, closure: &mut dyn Fn() -> (DetPolicy, Vec, Vec)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `V` should have a snake case name [INFO] [stdout] --> src/environment.rs:219:17 [INFO] [stdout] | [INFO] [stdout] 219 | let mut V = Array2::::zeros((self.size().x, self.size().y)); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `v` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `V` should have a snake case name [INFO] [stdout] --> src/environment.rs:234:64 [INFO] [stdout] | [INFO] [stdout] 234 | fn value_iterate_pol(&self, policy: Option<&P>, V: &mut Array2, discount: f32, max_delta: f32) { [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `V` should have a snake case name [INFO] [stdout] --> src/environment.rs:265:63 [INFO] [stdout] | [INFO] [stdout] 265 | fn inner(&self, pos: &Pos, policy: Option<&P>, V: &Array2, discount: f32) -> (f32, f32, Movement) { [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `V` should have a snake case name [INFO] [stdout] --> src/environment.rs:302:17 [INFO] [stdout] | [INFO] [stdout] 302 | let mut V = Array2::::zeros((self.size().x, self.size().y)); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `V` should have a snake case name [INFO] [stdout] --> src/environment.rs:309:17 [INFO] [stdout] | [INFO] [stdout] 309 | let mut V = Array2::::zeros((self.size().x, self.size().y)); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/environment.rs:360:9 [INFO] [stdout] | [INFO] [stdout] 360 | problem.write_lp("problem.lp"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 18 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 20.49s [INFO] [stderr] Running `cargo check` to verify 2021 [INFO] [stderr] Checking reinforcement_learning v0.1.0 (/tmp/fixit) [INFO] [stdout] warning: unused import: `policy::Policy` [INFO] [stdout] --> src/main.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use policy::Policy; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `s` is never read [INFO] [stdout] --> src/policy.rs:33:17 [INFO] [stdout] | [INFO] [stdout] 33 | let mut s: i32= 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `count_i` is assigned to, but never used [INFO] [stdout] --> src/environment.rs:236:17 [INFO] [stdout] | [INFO] [stdout] 236 | let mut count_i = 1; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] = note: consider using `_count_i` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `policy::Policy` [INFO] [stdout] --> src/main.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use policy::Policy; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `s` is never read [INFO] [stdout] --> src/policy.rs:33:17 [INFO] [stdout] | [INFO] [stdout] 33 | let mut s: i32= 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `count_i` is assigned to, but never used [INFO] [stdout] --> src/environment.rs:236:17 [INFO] [stdout] | [INFO] [stdout] 236 | let mut count_i = 1; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] = note: consider using `_count_i` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `initialize` [INFO] [stdout] --> src/policy.rs:93:8 [INFO] [stdout] | [INFO] [stdout] 93 | fn initialize(& mut self, env: &Env) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `RandomExplorationStrategy` [INFO] [stdout] --> src/rl.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | struct RandomExplorationStrategy {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `EpsilonGreedyExplorationStrategy` [INFO] [stdout] --> src/rl.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | struct EpsilonGreedyExplorationStrategy {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `SoftMaxExplorationStrategy` [INFO] [stdout] --> src/rl.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | struct SoftMaxExplorationStrategy {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `k` [INFO] [stdout] --> src/rl.rs:138:5 [INFO] [stdout] | [INFO] [stdout] 138 | k: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `l` [INFO] [stdout] --> src/rl.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | l: usize, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `t` [INFO] [stdout] --> src/rl.rs:140:5 [INFO] [stdout] | [INFO] [stdout] 140 | t: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `size` [INFO] [stdout] --> src/rl.rs:215:5 [INFO] [stdout] | [INFO] [stdout] 215 | size: Pos, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `write_statistics` [INFO] [stdout] --> src/main.rs:71:4 [INFO] [stdout] | [INFO] [stdout] 71 | fn write_statistics(name: &str, closure: &mut dyn Fn() -> (DetPolicy, Vec, Vec)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `initialize` [INFO] [stdout] --> src/policy.rs:93:8 [INFO] [stdout] | [INFO] [stdout] 93 | fn initialize(& mut self, env: &Env) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `RandomExplorationStrategy` [INFO] [stdout] --> src/rl.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | struct RandomExplorationStrategy {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `EpsilonGreedyExplorationStrategy` [INFO] [stdout] --> src/rl.rs:11:8 [INFO] [stdout] | [INFO] [stdout] 11 | struct EpsilonGreedyExplorationStrategy {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `SoftMaxExplorationStrategy` [INFO] [stdout] --> src/rl.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | struct SoftMaxExplorationStrategy {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `k` [INFO] [stdout] --> src/rl.rs:138:5 [INFO] [stdout] | [INFO] [stdout] 138 | k: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `l` [INFO] [stdout] --> src/rl.rs:139:5 [INFO] [stdout] | [INFO] [stdout] 139 | l: usize, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `t` [INFO] [stdout] --> src/rl.rs:140:5 [INFO] [stdout] | [INFO] [stdout] 140 | t: i32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `size` [INFO] [stdout] --> src/rl.rs:215:5 [INFO] [stdout] | [INFO] [stdout] 215 | size: Pos, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `write_statistics` [INFO] [stdout] --> src/main.rs:71:4 [INFO] [stdout] | [INFO] [stdout] 71 | fn write_statistics(name: &str, closure: &mut dyn Fn() -> (DetPolicy, Vec, Vec)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `V` should have a snake case name [INFO] [stdout] --> src/environment.rs:219:17 [INFO] [stdout] | [INFO] [stdout] 219 | let mut V = Array2::::zeros((self.size().x, self.size().y)); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `v` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `V` should have a snake case name [INFO] [stdout] --> src/environment.rs:234:64 [INFO] [stdout] | [INFO] [stdout] 234 | fn value_iterate_pol(&self, policy: Option<&P>, V: &mut Array2, discount: f32, max_delta: f32) { [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `V` should have a snake case name [INFO] [stdout] --> src/environment.rs:265:63 [INFO] [stdout] | [INFO] [stdout] 265 | fn inner(&self, pos: &Pos, policy: Option<&P>, V: &Array2, discount: f32) -> (f32, f32, Movement) { [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `V` should have a snake case name [INFO] [stdout] --> src/environment.rs:302:17 [INFO] [stdout] | [INFO] [stdout] 302 | let mut V = Array2::::zeros((self.size().x, self.size().y)); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `V` should have a snake case name [INFO] [stdout] --> src/environment.rs:309:17 [INFO] [stdout] | [INFO] [stdout] 309 | let mut V = Array2::::zeros((self.size().x, self.size().y)); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `V` should have a snake case name [INFO] [stdout] --> src/environment.rs:219:17 [INFO] [stdout] | [INFO] [stdout] 219 | let mut V = Array2::::zeros((self.size().x, self.size().y)); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `v` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `V` should have a snake case name [INFO] [stdout] --> src/environment.rs:234:64 [INFO] [stdout] | [INFO] [stdout] 234 | fn value_iterate_pol(&self, policy: Option<&P>, V: &mut Array2, discount: f32, max_delta: f32) { [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `V` should have a snake case name [INFO] [stdout] --> src/environment.rs:265:63 [INFO] [stdout] | [INFO] [stdout] 265 | fn inner(&self, pos: &Pos, policy: Option<&P>, V: &Array2, discount: f32) -> (f32, f32, Movement) { [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `V` should have a snake case name [INFO] [stdout] --> src/environment.rs:302:17 [INFO] [stdout] | [INFO] [stdout] 302 | let mut V = Array2::::zeros((self.size().x, self.size().y)); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `V` should have a snake case name [INFO] [stdout] --> src/environment.rs:309:17 [INFO] [stdout] | [INFO] [stdout] 309 | let mut V = Array2::::zeros((self.size().x, self.size().y)); [INFO] [stdout] | ^ help: convert the identifier to snake case (notice the capitalization): `v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/environment.rs:360:9 [INFO] [stdout] | [INFO] [stdout] 360 | problem.write_lp("problem.lp"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/environment.rs:360:9 [INFO] [stdout] | [INFO] [stdout] 360 | problem.write_lp("problem.lp"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 18 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 18 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.46s [INFO] running `Command { std: "docker" "inspect" "d1736149e4f4fb1bba8c6726ced315ffd211c8879399ac8acace60fb04ffc4e8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d1736149e4f4fb1bba8c6726ced315ffd211c8879399ac8acace60fb04ffc4e8", kill_on_drop: false }` [INFO] [stdout] d1736149e4f4fb1bba8c6726ced315ffd211c8879399ac8acace60fb04ffc4e8