[INFO] fetching crate lmb_engine_simulator 0.1.0... [INFO] testing lmb_engine_simulator-0.1.0 against beta-2022-04-10 for beta-1.61-1 [INFO] extracting crate lmb_engine_simulator 0.1.0 into /workspace/builds/worker-12/source [INFO] validating manifest of crates.io crate lmb_engine_simulator 0.1.0 on toolchain beta-2022-04-10 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate lmb_engine_simulator 0.1.0 [INFO] finished tweaking crates.io crate lmb_engine_simulator 0.1.0 [INFO] tweaked toml for crates.io crate lmb_engine_simulator 0.1.0 written to /workspace/builds/worker-12/source/Cargo.toml [INFO] crate crates.io crate lmb_engine_simulator 0.1.0 already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] c131f79f8fd13701d558e0b23ba4250b4d749dcd070f244d17896b459900358e [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "c131f79f8fd13701d558e0b23ba4250b4d749dcd070f244d17896b459900358e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c131f79f8fd13701d558e0b23ba4250b4d749dcd070f244d17896b459900358e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c131f79f8fd13701d558e0b23ba4250b4d749dcd070f244d17896b459900358e", kill_on_drop: false }` [INFO] [stdout] c131f79f8fd13701d558e0b23ba4250b4d749dcd070f244d17896b459900358e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/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=warn" "-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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 1f15115d9ea691ec32a9543368e6dd5b28c0770e44697b40ce38a6fe684ccd23 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "1f15115d9ea691ec32a9543368e6dd5b28c0770e44697b40ce38a6fe684ccd23", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.0.0 [INFO] [stderr] Compiling proc-macro2 v1.0.9 [INFO] [stderr] Compiling unicode-xid v0.2.0 [INFO] [stderr] Compiling syn v1.0.17 [INFO] [stderr] Compiling ryu v1.0.3 [INFO] [stderr] Compiling byteorder v1.3.4 [INFO] [stderr] Compiling serde v1.0.105 [INFO] [stderr] Compiling either v1.5.3 [INFO] [stderr] Compiling ndarray v0.13.0 [INFO] [stderr] Compiling rawpointer v0.2.1 [INFO] [stderr] Compiling itoa v0.4.5 [INFO] [stderr] Compiling ansi_term v0.12.1 [INFO] [stderr] Compiling dyn-clone v1.0.2 [INFO] [stderr] Compiling matrixmultiply v0.2.3 [INFO] [stderr] Compiling itertools v0.8.2 [INFO] [stderr] Compiling num-traits v0.2.11 [INFO] [stderr] Compiling num-integer v0.1.42 [INFO] [stderr] Compiling num-complex v0.2.4 [INFO] [stderr] Compiling gnuplot v0.0.34 [INFO] [stderr] Compiling quote v1.0.3 [INFO] [stderr] Compiling serde_derive v1.0.105 [INFO] [stderr] Compiling serde_json v1.0.48 [INFO] [stderr] Compiling lmb_engine_simulator v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: field is never read: `max_lift` [INFO] [stdout] --> src/connector/valve.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | max_lift: f64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] note: `Valve` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/connector/valve.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Clone)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `time_opened` [INFO] [stdout] --> src/connector/valve.rs:374:5 [INFO] [stdout] | [INFO] [stdout] 374 | time_opened: f64, //in crank angle degree [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `ValveLift` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] --> src/connector/valve.rs:372:10 [INFO] [stdout] | [INFO] [stdout] 372 | #[derive(Debug, Clone)] [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `acceler_ratio` [INFO] [stdout] --> src/connector/valve.rs:375:5 [INFO] [stdout] | [INFO] [stdout] 375 | acceler_ratio: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `ValveLift` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] --> src/connector/valve.rs:372:10 [INFO] [stdout] | [INFO] [stdout] 372 | #[derive(Debug, Clone)] [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `max_lift_diam_ratio` [INFO] [stdout] --> src/connector/valve.rs:376:5 [INFO] [stdout] | [INFO] [stdout] 376 | max_lift_diam_ratio: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `ValveLift` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] --> src/connector/valve.rs:372:10 [INFO] [stdout] | [INFO] [stdout] 372 | #[derive(Debug, Clone)] [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `air_fuel_ratio` [INFO] [stdout] --> src/reaction/combustion.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | air_fuel_ratio: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TwoZoneCombustion` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] --> src/reaction/combustion.rs:26:10 [INFO] [stdout] | [INFO] [stdout] 26 | #[derive(Debug, Clone)] [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 56.00s [INFO] running `Command { std: "docker" "inspect" "1f15115d9ea691ec32a9543368e6dd5b28c0770e44697b40ce38a6fe684ccd23", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1f15115d9ea691ec32a9543368e6dd5b28c0770e44697b40ce38a6fe684ccd23", kill_on_drop: false }` [INFO] [stdout] 1f15115d9ea691ec32a9543368e6dd5b28c0770e44697b40ce38a6fe684ccd23 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/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=warn" "-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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7305cc9a00dacce7deec27924bbd946984cfd7e37cf1d80b76a2abcdd80f028e [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "7305cc9a00dacce7deec27924bbd946984cfd7e37cf1d80b76a2abcdd80f028e", kill_on_drop: false }` [INFO] [stderr] Compiling lmb_engine_simulator v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: field is never read: `max_lift` [INFO] [stdout] --> src/connector/valve.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | max_lift: f64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] note: `Valve` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/connector/valve.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Clone)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `time_opened` [INFO] [stdout] --> src/connector/valve.rs:374:5 [INFO] [stdout] | [INFO] [stdout] 374 | time_opened: f64, //in crank angle degree [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `ValveLift` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] --> src/connector/valve.rs:372:10 [INFO] [stdout] | [INFO] [stdout] 372 | #[derive(Debug, Clone)] [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `acceler_ratio` [INFO] [stdout] --> src/connector/valve.rs:375:5 [INFO] [stdout] | [INFO] [stdout] 375 | acceler_ratio: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `ValveLift` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] --> src/connector/valve.rs:372:10 [INFO] [stdout] | [INFO] [stdout] 372 | #[derive(Debug, Clone)] [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `max_lift_diam_ratio` [INFO] [stdout] --> src/connector/valve.rs:376:5 [INFO] [stdout] | [INFO] [stdout] 376 | max_lift_diam_ratio: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `ValveLift` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] --> src/connector/valve.rs:372:10 [INFO] [stdout] | [INFO] [stdout] 372 | #[derive(Debug, Clone)] [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `air_fuel_ratio` [INFO] [stdout] --> src/reaction/combustion.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | air_fuel_ratio: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TwoZoneCombustion` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] --> src/reaction/combustion.rs:26:10 [INFO] [stdout] | [INFO] [stdout] 26 | #[derive(Debug, Clone)] [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: crate `Ryobi_26_engine` should have a snake case name [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] = help: convert the identifier to snake case: `ryobi_26_engine` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `max_lift` [INFO] [stdout] --> src/connector/valve.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | max_lift: f64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] note: `Valve` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/connector/valve.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Clone)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `time_opened` [INFO] [stdout] --> src/connector/valve.rs:374:5 [INFO] [stdout] | [INFO] [stdout] 374 | time_opened: f64, //in crank angle degree [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `ValveLift` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] --> src/connector/valve.rs:372:10 [INFO] [stdout] | [INFO] [stdout] 372 | #[derive(Debug, Clone)] [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `acceler_ratio` [INFO] [stdout] --> src/connector/valve.rs:375:5 [INFO] [stdout] | [INFO] [stdout] 375 | acceler_ratio: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `ValveLift` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] --> src/connector/valve.rs:372:10 [INFO] [stdout] | [INFO] [stdout] 372 | #[derive(Debug, Clone)] [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `max_lift_diam_ratio` [INFO] [stdout] --> src/connector/valve.rs:376:5 [INFO] [stdout] | [INFO] [stdout] 376 | max_lift_diam_ratio: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `ValveLift` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] --> src/connector/valve.rs:372:10 [INFO] [stdout] | [INFO] [stdout] 372 | #[derive(Debug, Clone)] [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `air_fuel_ratio` [INFO] [stdout] --> src/reaction/combustion.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | air_fuel_ratio: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TwoZoneCombustion` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] --> src/reaction/combustion.rs:26:10 [INFO] [stdout] | [INFO] [stdout] 26 | #[derive(Debug, Clone)] [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 3.34s [INFO] [stderr] Executable unittests src/lib.rs (/opt/rustwide/target/debug/deps/lmb_engine_simulator-b185655c57cfd14c) [INFO] [stderr] Executable unittests src/main.rs (/opt/rustwide/target/debug/deps/lmb_engine_simulator-9180412962cdecd3) [INFO] running `Command { std: "docker" "inspect" "7305cc9a00dacce7deec27924bbd946984cfd7e37cf1d80b76a2abcdd80f028e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7305cc9a00dacce7deec27924bbd946984cfd7e37cf1d80b76a2abcdd80f028e", kill_on_drop: false }` [INFO] [stdout] 7305cc9a00dacce7deec27924bbd946984cfd7e37cf1d80b76a2abcdd80f028e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/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=warn" "-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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "test" "--frozen", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] a37bad0e0f1902ffc52f1b2d30fb02c859bfe6eb200d3364fa7e252cd5b3839a [INFO] running `Command { std: "docker" "start" "-a" "a37bad0e0f1902ffc52f1b2d30fb02c859bfe6eb200d3364fa7e252cd5b3839a", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] warning: field is never read: `max_lift` [INFO] [stderr] --> src/connector/valve.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | max_lift: f64, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] note: `Valve` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/connector/valve.rs:12:10 [INFO] [stderr] | [INFO] [stderr] 12 | #[derive(Clone)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: field is never read: `time_opened` [INFO] [stderr] --> src/connector/valve.rs:374:5 [INFO] [stderr] | [INFO] [stderr] 374 | time_opened: f64, //in crank angle degree [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `ValveLift` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] --> src/connector/valve.rs:372:10 [INFO] [stderr] | [INFO] [stderr] 372 | #[derive(Debug, Clone)] [INFO] [stderr] | ^^^^^ ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: field is never read: `acceler_ratio` [INFO] [stderr] --> src/connector/valve.rs:375:5 [INFO] [stderr] | [INFO] [stderr] 375 | acceler_ratio: f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `ValveLift` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] --> src/connector/valve.rs:372:10 [INFO] [stderr] | [INFO] [stderr] 372 | #[derive(Debug, Clone)] [INFO] [stderr] | ^^^^^ ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: field is never read: `max_lift_diam_ratio` [INFO] [stderr] --> src/connector/valve.rs:376:5 [INFO] [stderr] | [INFO] [stderr] 376 | max_lift_diam_ratio: f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `ValveLift` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] --> src/connector/valve.rs:372:10 [INFO] [stderr] | [INFO] [stderr] 372 | #[derive(Debug, Clone)] [INFO] [stderr] | ^^^^^ ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: field is never read: `air_fuel_ratio` [INFO] [stderr] --> src/reaction/combustion.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | air_fuel_ratio: f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TwoZoneCombustion` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] --> src/reaction/combustion.rs:26:10 [INFO] [stderr] | [INFO] [stderr] 26 | #[derive(Debug, Clone)] [INFO] [stderr] | ^^^^^ ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: `lmb_engine_simulator` (lib) generated 5 warnings [INFO] [stderr] warning: `lmb_engine_simulator` (lib test) generated 5 warnings (5 duplicates) [INFO] [stderr] warning: crate `Ryobi_26_engine` should have a snake case name [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] = help: convert the identifier to snake case: `ryobi_26_engine` [INFO] [stderr] [INFO] [stderr] warning: `lmb_engine_simulator` (example "Ryobi_26_engine") generated 1 warning [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.25s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/lmb_engine_simulator-b185655c57cfd14c) [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/lmb_engine_simulator-9180412962cdecd3) [INFO] [stdout] running 1 test [INFO] [stdout] test tests::it_works ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests lmb_engine_simulator [INFO] [stdout] [INFO] [stdout] running 10 tests [INFO] [stdout] test src/lib.rs - (line 81) ... FAILED [INFO] [stdout] test src/doc/ryobi_26cm3_engine.rs - doc::ryobi_26cm3_engine (line 5) ... FAILED [INFO] [stdout] test src/numerics/ode_solvers.rs - numerics::ode_solvers::rk4_step (line 12) ... FAILED [INFO] [stdout] test src/reaction/gas.rs - reaction::gas::Gas::if_mixed_with (line 132) ... FAILED [INFO] [stdout] test src/reaction/gas.rs - reaction::gas::Gas::X (line 89) ... FAILED [INFO] [stdout] test src/reaction/gas.rs - reaction::gas::Gas::TP (line 55) ... FAILED [INFO] [stdout] test src/reaction/gas.rs - reaction::gas::Gas::TPX (line 71) ... FAILED [INFO] [stdout] test src/doc/ryobi_26cm3_engine.rs - doc::ryobi_26cm3_engine (line 60) ... FAILED [INFO] [stdout] test src/lib.rs - (line 34) ... FAILED [INFO] [stdout] test src/lib.rs - (line 147) ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- src/lib.rs - (line 81) stdout ---- [INFO] [stdout] error: expected type, found `3000.0` [INFO] [stdout] --> src/lib.rs:83:14 [INFO] [stdout] | [INFO] [stdout] 4 | "speed": 3000.0, [INFO] [stdout] | - ^^^^^^ expected type [INFO] [stdout] | | [INFO] [stdout] | tried to parse a type due to this [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error [INFO] [stdout] [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/doc/ryobi_26cm3_engine.rs - doc::ryobi_26cm3_engine (line 5) stdout ---- [INFO] [stdout] error: expected type, found `7500.0` [INFO] [stdout] --> src/doc/ryobi_26cm3_engine.rs:7:14 [INFO] [stdout] | [INFO] [stdout] 4 | "speed": 7500.0, [INFO] [stdout] | - ^^^^^^ expected type [INFO] [stdout] | | [INFO] [stdout] | tried to parse a type due to this [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error [INFO] [stdout] [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/numerics/ode_solvers.rs - numerics::ode_solvers::rk4_step (line 12) stdout ---- [INFO] [stdout] error: cannot find macro `array` in this scope [INFO] [stdout] --> src/numerics/ode_solvers.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 4 | array![ c[0] * (x[1] - x[0]), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider importing this macro: [INFO] [stdout] ndarray::array [INFO] [stdout] [INFO] [stdout] error: cannot find macro `array` in this scope [INFO] [stdout] --> src/numerics/ode_solvers.rs:18:17 [INFO] [stdout] | [INFO] [stdout] 8 | let ini_state = array![0.1, 0.1, 0.1]; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider importing this macro: [INFO] [stdout] ndarray::array [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `f` in this scope [INFO] [stdout] --> src/numerics/ode_solvers.rs:13:24 [INFO] [stdout] | [INFO] [stdout] 3 | let lorentz_eqs = |t: &f, x: &Array1, c: &Vec| -> Array1 { [INFO] [stdout] | ^ not found in this scope [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `Array1` in this scope [INFO] [stdout] --> src/numerics/ode_solvers.rs:13:31 [INFO] [stdout] | [INFO] [stdout] 3 | let lorentz_eqs = |t: &f, x: &Array1, c: &Vec| -> Array1 { [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this type alias [INFO] [stdout] | [INFO] [stdout] 2 | use ndarray::Array1; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `Array1` in this scope [INFO] [stdout] --> src/numerics/ode_solvers.rs:13:61 [INFO] [stdout] | [INFO] [stdout] 3 | let lorentz_eqs = |t: &f, x: &Array1, c: &Vec| -> Array1 { [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this type alias [INFO] [stdout] | [INFO] [stdout] 2 | use ndarray::Array1; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `rk4_step` in this scope [INFO] [stdout] --> src/numerics/ode_solvers.rs:20:16 [INFO] [stdout] | [INFO] [stdout] 10 | let solution = rk4_step( lorentz_eqs, &ini_state, &consts, &0.0, 1e-4 ); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 2 | use lmb_engine_simulator::numerics::ode_solvers::rk4_step; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error: aborting due to 6 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0412, E0425. [INFO] [stdout] For more information about an error, try `rustc --explain E0412`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/reaction/gas.rs - reaction::gas::Gas::if_mixed_with (line 132) stdout ---- [INFO] [stdout] error[E0425]: cannot find value `gas` in this scope [INFO] [stdout] --> src/reaction/gas.rs:133:1 [INFO] [stdout] | [INFO] [stdout] 3 | gas.X("O2:1.0"); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `Array1` in this scope [INFO] [stdout] --> src/reaction/gas.rs:135:20 [INFO] [stdout] | [INFO] [stdout] 5 | let mix_mole_frac: Array1 = gas.if_mixed_with(0.100, additional_gas); [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this type alias [INFO] [stdout] | [INFO] [stdout] 2 | use ndarray::Array1; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `gas` in this scope [INFO] [stdout] --> src/reaction/gas.rs:135:34 [INFO] [stdout] | [INFO] [stdout] 5 | let mix_mole_frac: Array1 = gas.if_mixed_with(0.100, additional_gas); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0412, E0425. [INFO] [stdout] For more information about an error, try `rustc --explain E0412`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/reaction/gas.rs - reaction::gas::Gas::X (line 89) stdout ---- [INFO] [stdout] error[E0425]: cannot find value `gas` in this scope [INFO] [stdout] --> src/reaction/gas.rs:91:1 [INFO] [stdout] | [INFO] [stdout] 4 | gas.X(mol_frac); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `mol_frac` in this scope [INFO] [stdout] --> src/reaction/gas.rs:91:7 [INFO] [stdout] | [INFO] [stdout] 4 | gas.X(mol_frac); [INFO] [stdout] | ^^^^^^^^ help: a local variable with a similar name exists: `mole_frac` [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `gas` in this scope [INFO] [stdout] --> src/reaction/gas.rs:92:18 [INFO] [stdout] | [INFO] [stdout] 5 | assert_eq!(0.21, gas.mol_frac_of("O2")); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `gas` in this scope [INFO] [stdout] --> src/reaction/gas.rs:93:18 [INFO] [stdout] | [INFO] [stdout] 6 | assert_eq!(0.79, gas.mol_frac_of("N2")); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error: aborting due to 4 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0425`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/reaction/gas.rs - reaction::gas::Gas::TP (line 55) stdout ---- [INFO] [stdout] error[E0425]: cannot find value `gas` in this scope [INFO] [stdout] --> src/reaction/gas.rs:58:1 [INFO] [stdout] | [INFO] [stdout] 5 | gas.TP(temp, press); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `gas` in this scope [INFO] [stdout] --> src/reaction/gas.rs:59:17 [INFO] [stdout] | [INFO] [stdout] 6 | assert_eq!(350, gas.T()); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `gas` in this scope [INFO] [stdout] --> src/reaction/gas.rs:60:17 [INFO] [stdout] | [INFO] [stdout] 7 | assert_eq!(2e5, gas.P()); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0425`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/reaction/gas.rs - reaction::gas::Gas::TPX (line 71) stdout ---- [INFO] [stdout] error[E0425]: cannot find value `gas` in this scope [INFO] [stdout] --> src/reaction/gas.rs:75:1 [INFO] [stdout] | [INFO] [stdout] 6 | gas.TPX(temp, press, mol_frac); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `mol_frac` in this scope [INFO] [stdout] --> src/reaction/gas.rs:75:22 [INFO] [stdout] | [INFO] [stdout] 6 | gas.TPX(temp, press, mol_frac); [INFO] [stdout] | ^^^^^^^^ help: a local variable with a similar name exists: `mole_frac` [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `gas` in this scope [INFO] [stdout] --> src/reaction/gas.rs:76:17 [INFO] [stdout] | [INFO] [stdout] 7 | assert_eq!(350, gas.T()); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `gas` in this scope [INFO] [stdout] --> src/reaction/gas.rs:77:17 [INFO] [stdout] | [INFO] [stdout] 8 | assert_eq!(2e5, gas.P()); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `gas` in this scope [INFO] [stdout] --> src/reaction/gas.rs:78:18 [INFO] [stdout] | [INFO] [stdout] 9 | assert_eq!(0.21, gas.mol_frac_of("O2")); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error: aborting due to 5 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0425`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/doc/ryobi_26cm3_engine.rs - doc::ryobi_26cm3_engine (line 60) stdout ---- [INFO] [stdout] Test executable failed (exit code 101). [INFO] [stdout] [INFO] [stdout] stderr: [INFO] [stdout] thread 'main' panicked at 'Unable to read file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/engine/engine.rs:409:60 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5560c220212d - std::backtrace_rs::backtrace::libunwind::trace::ha359b7f0090e2792 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5560c220212d - std::backtrace_rs::backtrace::trace_unsynchronized::h0584631f25c1d70e [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5560c220212d - std::sys_common::backtrace::_print_fmt::hdadffd97d279ff14 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/sys_common/backtrace.rs:66:5 [INFO] [stdout] 3: 0x5560c220212d - ::fmt::h26f189e611080a74 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/sys_common/backtrace.rs:45:22 [INFO] [stdout] 4: 0x5560c222181c - core::fmt::write::hfb5d11dfe037e8b7 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/core/src/fmt/mod.rs:1194:17 [INFO] [stdout] 5: 0x5560c2200141 - std::io::Write::write_fmt::ha30651f608022a46 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/io/mod.rs:1655:15 [INFO] [stdout] 6: 0x5560c22038d5 - std::sys_common::backtrace::_print::h7a0e44402913ba60 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/sys_common/backtrace.rs:48:5 [INFO] [stdout] 7: 0x5560c22038d5 - std::sys_common::backtrace::print::h9767dc455a84e728 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/sys_common/backtrace.rs:35:9 [INFO] [stdout] 8: 0x5560c22038d5 - std::panicking::default_hook::{{closure}}::h60afd6c8b12988ad [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:295:22 [INFO] [stdout] 9: 0x5560c2203589 - std::panicking::default_hook::ha7b9bac6813f9d21 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:314:9 [INFO] [stdout] 10: 0x5560c2203e22 - std::panicking::rust_panic_with_hook::h7b117a162a6f8664 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:698:17 [INFO] [stdout] 11: 0x5560c2203d07 - std::panicking::begin_panic_handler::{{closure}}::h346750923c608600 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:588:13 [INFO] [stdout] 12: 0x5560c22025e4 - std::sys_common::backtrace::__rust_end_short_backtrace::h768c56c6a0c055c0 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/sys_common/backtrace.rs:138:18 [INFO] [stdout] 13: 0x5560c2203a39 - rust_begin_unwind [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:584:5 [INFO] [stdout] 14: 0x5560c20d53f3 - core::panicking::panic_fmt::h5c41cb2fa118fdbc [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/core/src/panicking.rs:143:14 [INFO] [stdout] 15: 0x5560c20d54e3 - core::result::unwrap_failed::h6bc7b183ec719494 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/core/src/result.rs:1785:5 [INFO] [stdout] 16: 0x5560c20e1915 - core::result::Result::expect::h01d41a0958eb9330 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/core/src/result.rs:1035:23 [INFO] [stdout] 17: 0x5560c213294f - lmb_engine_simulator::engine::engine::Engine::reading_json::h93fa6ac54e038de5 [INFO] [stdout] at /opt/rustwide/workdir/src/engine/engine.rs:409:25 [INFO] [stdout] 18: 0x5560c212e29a - lmb_engine_simulator::engine::engine::Engine::new::h4d27cb242f282001 [INFO] [stdout] at /opt/rustwide/workdir/src/engine/engine.rs:33:33 [INFO] [stdout] 19: 0x5560c20e82eb - lmb_engine_simulator::core::system_builder::SystemBuilder::add_engine::hddeb40b84dcd86ac [INFO] [stdout] at /opt/rustwide/workdir/src/core/system_builder.rs:65:28 [INFO] [stdout] 20: 0x5560c20d677a - rust_out::main::h3d3c95f1f21b751b [INFO] [stdout] 21: 0x5560c20d5b73 - core::ops::function::FnOnce::call_once::h359be4aec5e1561c [INFO] [stdout] 22: 0x5560c20d5989 - std::sys_common::backtrace::__rust_begin_short_backtrace::hf1c468c32d98493e [INFO] [stdout] 23: 0x5560c20d59f9 - std::rt::lang_start::{{closure}}::hc74257e153f5ba59 [INFO] [stdout] 24: 0x5560c21fc9ae - core::ops::function::impls:: for &F>::call_once::hae31cd38f966dcbc [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/core/src/ops/function.rs:259:13 [INFO] [stdout] 25: 0x5560c21fc9ae - std::panicking::try::do_call::h4a4c12a32b804624 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:492:40 [INFO] [stdout] 26: 0x5560c21fc9ae - std::panicking::try::h87f80f5db1929b60 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:456:19 [INFO] [stdout] 27: 0x5560c21fc9ae - std::panic::catch_unwind::hbc53afd5a2bdc195 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panic.rs:137:14 [INFO] [stdout] 28: 0x5560c21fc9ae - std::rt::lang_start_internal::{{closure}}::h2e62ddd08385fac8 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/rt.rs:128:48 [INFO] [stdout] 29: 0x5560c21fc9ae - std::panicking::try::do_call::h04b85b79b362213e [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:492:40 [INFO] [stdout] 30: 0x5560c21fc9ae - std::panicking::try::h428fba6a4941d8ed [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:456:19 [INFO] [stdout] 31: 0x5560c21fc9ae - std::panic::catch_unwind::hd73c90258412492e [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panic.rs:137:14 [INFO] [stdout] 32: 0x5560c21fc9ae - std::rt::lang_start_internal::h26255896a96668b5 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/rt.rs:128:20 [INFO] [stdout] 33: 0x5560c20d59e1 - std::rt::lang_start::habb7d5349de31a07 [INFO] [stdout] 34: 0x5560c20d7833 - main [INFO] [stdout] 35: 0x7f152dbef0b3 - __libc_start_main [INFO] [stdout] 36: 0x5560c20d564e - _start [INFO] [stdout] 37: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] ---- src/lib.rs - (line 34) stdout ---- [INFO] [stdout] Test executable failed (exit code 101). [INFO] [stdout] [INFO] [stdout] stdout: [INFO] [stdout] WARNING: At `advance_to_steady_state`! [INFO] [stdout] WARNING: No one-dimensional nor engine objects were found! [INFO] [stdout] WARNING: Time step assumed as 0.1ms [INFO] [stdout] [INFO] [stdout] System successfully advanced to steady state! [INFO] [stdout] number of iterations: 50000 [INFO] [stdout] time taken: 6.117012144s [INFO] [stdout] [INFO] [stdout] stderr: [INFO] [stdout] thread 'main' panicked at 'Error opening writing file: Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }', src/lib.rs:359:57 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x558835918e9d - std::backtrace_rs::backtrace::libunwind::trace::ha359b7f0090e2792 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x558835918e9d - std::backtrace_rs::backtrace::trace_unsynchronized::h0584631f25c1d70e [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x558835918e9d - std::sys_common::backtrace::_print_fmt::hdadffd97d279ff14 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/sys_common/backtrace.rs:66:5 [INFO] [stdout] 3: 0x558835918e9d - ::fmt::h26f189e611080a74 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/sys_common/backtrace.rs:45:22 [INFO] [stdout] 4: 0x55883593858c - core::fmt::write::hfb5d11dfe037e8b7 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/core/src/fmt/mod.rs:1194:17 [INFO] [stdout] 5: 0x558835916f51 - std::io::Write::write_fmt::ha30651f608022a46 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/io/mod.rs:1655:15 [INFO] [stdout] 6: 0x55883591a645 - std::sys_common::backtrace::_print::h7a0e44402913ba60 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/sys_common/backtrace.rs:48:5 [INFO] [stdout] 7: 0x55883591a645 - std::sys_common::backtrace::print::h9767dc455a84e728 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/sys_common/backtrace.rs:35:9 [INFO] [stdout] 8: 0x55883591a645 - std::panicking::default_hook::{{closure}}::h60afd6c8b12988ad [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:295:22 [INFO] [stdout] 9: 0x55883591a2f9 - std::panicking::default_hook::ha7b9bac6813f9d21 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:314:9 [INFO] [stdout] 10: 0x55883591ab92 - std::panicking::rust_panic_with_hook::h7b117a162a6f8664 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:698:17 [INFO] [stdout] 11: 0x55883591aa77 - std::panicking::begin_panic_handler::{{closure}}::h346750923c608600 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:588:13 [INFO] [stdout] 12: 0x558835919354 - std::sys_common::backtrace::__rust_end_short_backtrace::h768c56c6a0c055c0 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/sys_common/backtrace.rs:138:18 [INFO] [stdout] 13: 0x55883591a7a9 - rust_begin_unwind [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:584:5 [INFO] [stdout] 14: 0x5588358293f3 - core::panicking::panic_fmt::h5c41cb2fa118fdbc [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/core/src/panicking.rs:143:14 [INFO] [stdout] 15: 0x5588358294e3 - core::result::unwrap_failed::h6bc7b183ec719494 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/core/src/result.rs:1785:5 [INFO] [stdout] 16: 0x558835832192 - core::result::Result::expect::hd64c81ecc9870bc6 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/core/src/result.rs:1035:23 [INFO] [stdout] 17: 0x55883588128f - lmb_engine_simulator::StoreData::write_to_file::hcf1a3b990fe02dbf [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:359:24 [INFO] [stdout] 18: 0x558835839637 - lmb_engine_simulator::core::system::System::write_to_file::hab262d6ff8c19568 [INFO] [stdout] at /opt/rustwide/workdir/src/core/system.rs:287:13 [INFO] [stdout] 19: 0x55883582a00c - rust_out::main::h3d3c95f1f21b751b [INFO] [stdout] 20: 0x558835829873 - core::ops::function::FnOnce::call_once::h359be4aec5e1561c [INFO] [stdout] 21: 0x558835829719 - std::sys_common::backtrace::__rust_begin_short_backtrace::hf1c468c32d98493e [INFO] [stdout] 22: 0x558835829789 - std::rt::lang_start::{{closure}}::hc74257e153f5ba59 [INFO] [stdout] 23: 0x558835913c8e - core::ops::function::impls:: for &F>::call_once::hae31cd38f966dcbc [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/core/src/ops/function.rs:259:13 [INFO] [stdout] 24: 0x558835913c8e - std::panicking::try::do_call::h4a4c12a32b804624 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:492:40 [INFO] [stdout] 25: 0x558835913c8e - std::panicking::try::h87f80f5db1929b60 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:456:19 [INFO] [stdout] 26: 0x558835913c8e - std::panic::catch_unwind::hbc53afd5a2bdc195 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panic.rs:137:14 [INFO] [stdout] 27: 0x558835913c8e - std::rt::lang_start_internal::{{closure}}::h2e62ddd08385fac8 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/rt.rs:128:48 [INFO] [stdout] 28: 0x558835913c8e - std::panicking::try::do_call::h04b85b79b362213e [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:492:40 [INFO] [stdout] 29: 0x558835913c8e - std::panicking::try::h428fba6a4941d8ed [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:456:19 [INFO] [stdout] 30: 0x558835913c8e - std::panic::catch_unwind::hd73c90258412492e [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panic.rs:137:14 [INFO] [stdout] 31: 0x558835913c8e - std::rt::lang_start_internal::h26255896a96668b5 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/rt.rs:128:20 [INFO] [stdout] 32: 0x558835829771 - std::rt::lang_start::habb7d5349de31a07 [INFO] [stdout] 33: 0x55883582a0d3 - main [INFO] [stdout] 34: 0x7fc2e50af0b3 - __libc_start_main [INFO] [stdout] 35: 0x55883582964e - _start [INFO] [stdout] 36: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] ---- src/lib.rs - (line 147) stdout ---- [INFO] [stdout] Test executable failed (exit code 101). [INFO] [stdout] [INFO] [stdout] stdout: [INFO] [stdout] [INFO] [stdout] System successfully advanced to steady state! [INFO] [stdout] number of iterations: 158399 [INFO] [stdout] time taken: 25.718389784s [INFO] [stdout] Engine performance: [INFO] [stdout] Speed [RPM]: [3000.0] [INFO] [stdout] Power [W]: [11514.44] [INFO] [stdout] Torque [Nm]: [36.65] [INFO] [stdout] IMEP [bar]: [11.51] [INFO] [stdout] effic [%]: [36.83] [INFO] [stdout] vol_effic [%]: [104.72] [INFO] [stdout] residual_mass [%]: [3.16] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] stderr: [INFO] [stdout] thread 'main' panicked at 'Error opening writing file: Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }', src/lib.rs:359:57 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5613e5cea66d - std::backtrace_rs::backtrace::libunwind::trace::ha359b7f0090e2792 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x5613e5cea66d - std::backtrace_rs::backtrace::trace_unsynchronized::h0584631f25c1d70e [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5613e5cea66d - std::sys_common::backtrace::_print_fmt::hdadffd97d279ff14 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/sys_common/backtrace.rs:66:5 [INFO] [stdout] 3: 0x5613e5cea66d - ::fmt::h26f189e611080a74 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/sys_common/backtrace.rs:45:22 [INFO] [stdout] 4: 0x5613e5d09d5c - core::fmt::write::hfb5d11dfe037e8b7 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/core/src/fmt/mod.rs:1194:17 [INFO] [stdout] 5: 0x5613e5ce8681 - std::io::Write::write_fmt::ha30651f608022a46 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/io/mod.rs:1655:15 [INFO] [stdout] 6: 0x5613e5cebe15 - std::sys_common::backtrace::_print::h7a0e44402913ba60 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/sys_common/backtrace.rs:48:5 [INFO] [stdout] 7: 0x5613e5cebe15 - std::sys_common::backtrace::print::h9767dc455a84e728 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/sys_common/backtrace.rs:35:9 [INFO] [stdout] 8: 0x5613e5cebe15 - std::panicking::default_hook::{{closure}}::h60afd6c8b12988ad [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:295:22 [INFO] [stdout] 9: 0x5613e5cebac9 - std::panicking::default_hook::ha7b9bac6813f9d21 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:314:9 [INFO] [stdout] 10: 0x5613e5cec362 - std::panicking::rust_panic_with_hook::h7b117a162a6f8664 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:698:17 [INFO] [stdout] 11: 0x5613e5cec247 - std::panicking::begin_panic_handler::{{closure}}::h346750923c608600 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:588:13 [INFO] [stdout] 12: 0x5613e5ceab24 - std::sys_common::backtrace::__rust_end_short_backtrace::h768c56c6a0c055c0 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/sys_common/backtrace.rs:138:18 [INFO] [stdout] 13: 0x5613e5cebf79 - rust_begin_unwind [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:584:5 [INFO] [stdout] 14: 0x5613e5bc63f3 - core::panicking::panic_fmt::h5c41cb2fa118fdbc [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/core/src/panicking.rs:143:14 [INFO] [stdout] 15: 0x5613e5bc64e3 - core::result::unwrap_failed::h6bc7b183ec719494 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/core/src/result.rs:1785:5 [INFO] [stdout] 16: 0x5613e5bd0cb2 - core::result::Result::expect::hd64c81ecc9870bc6 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/core/src/result.rs:1035:23 [INFO] [stdout] 17: 0x5613e5c3bf9f - lmb_engine_simulator::StoreData::write_to_file::hcf1a3b990fe02dbf [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:359:24 [INFO] [stdout] 18: 0x5613e5bdba27 - lmb_engine_simulator::core::system::System::write_to_file::hab262d6ff8c19568 [INFO] [stdout] at /opt/rustwide/workdir/src/core/system.rs:287:13 [INFO] [stdout] 19: 0x5613e5bc6c54 - rust_out::main::h3d3c95f1f21b751b [INFO] [stdout] 20: 0x5613e5bc6853 - core::ops::function::FnOnce::call_once::h359be4aec5e1561c [INFO] [stdout] 21: 0x5613e5bc6719 - std::sys_common::backtrace::__rust_begin_short_backtrace::hf1c468c32d98493e [INFO] [stdout] 22: 0x5613e5bc6789 - std::rt::lang_start::{{closure}}::hc74257e153f5ba59 [INFO] [stdout] 23: 0x5613e5ce4eee - core::ops::function::impls:: for &F>::call_once::hae31cd38f966dcbc [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/core/src/ops/function.rs:259:13 [INFO] [stdout] 24: 0x5613e5ce4eee - std::panicking::try::do_call::h4a4c12a32b804624 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:492:40 [INFO] [stdout] 25: 0x5613e5ce4eee - std::panicking::try::h87f80f5db1929b60 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:456:19 [INFO] [stdout] 26: 0x5613e5ce4eee - std::panic::catch_unwind::hbc53afd5a2bdc195 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panic.rs:137:14 [INFO] [stdout] 27: 0x5613e5ce4eee - std::rt::lang_start_internal::{{closure}}::h2e62ddd08385fac8 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/rt.rs:128:48 [INFO] [stdout] 28: 0x5613e5ce4eee - std::panicking::try::do_call::h04b85b79b362213e [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:492:40 [INFO] [stdout] 29: 0x5613e5ce4eee - std::panicking::try::h428fba6a4941d8ed [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panicking.rs:456:19 [INFO] [stdout] 30: 0x5613e5ce4eee - std::panic::catch_unwind::hd73c90258412492e [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/panic.rs:137:14 [INFO] [stdout] 31: 0x5613e5ce4eee - std::rt::lang_start_internal::h26255896a96668b5 [INFO] [stdout] at /rustc/7c13df853721b60a03e7c0bb084d2eb1e27a9caa/library/std/src/rt.rs:128:20 [INFO] [stdout] 32: 0x5613e5bc6771 - std::rt::lang_start::habb7d5349de31a07 [INFO] [stdout] 33: 0x5613e5bc6d63 - main [INFO] [stdout] 34: 0x7fe08ee800b3 - __libc_start_main [INFO] [stdout] 35: 0x5613e5bc664e - _start [INFO] [stdout] 36: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] src/doc/ryobi_26cm3_engine.rs - doc::ryobi_26cm3_engine (line 5) [INFO] [stdout] src/doc/ryobi_26cm3_engine.rs - doc::ryobi_26cm3_engine (line 60) [INFO] [stdout] src/lib.rs - (line 147) [INFO] [stdout] src/lib.rs - (line 34) [INFO] [stdout] src/lib.rs - (line 81) [INFO] [stdout] src/numerics/ode_solvers.rs - numerics::ode_solvers::rk4_step (line 12) [INFO] [stdout] src/reaction/gas.rs - reaction::gas::Gas::TP (line 55) [INFO] [stdout] src/reaction/gas.rs - reaction::gas::Gas::TPX (line 71) [INFO] [stdout] src/reaction/gas.rs - reaction::gas::Gas::X (line 89) [INFO] [stdout] src/reaction/gas.rs - reaction::gas::Gas::if_mixed_with (line 132) [INFO] [stdout] [INFO] [stdout] test result: FAILED. 0 passed; 10 failed; 0 ignored; 0 measured; 0 filtered out; finished in 28.56s [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass '--doc' [INFO] running `Command { std: "docker" "inspect" "a37bad0e0f1902ffc52f1b2d30fb02c859bfe6eb200d3364fa7e252cd5b3839a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a37bad0e0f1902ffc52f1b2d30fb02c859bfe6eb200d3364fa7e252cd5b3839a", kill_on_drop: false }` [INFO] [stdout] a37bad0e0f1902ffc52f1b2d30fb02c859bfe6eb200d3364fa7e252cd5b3839a