[INFO] cloning repository https://github.com/afeldman/RustyElevator [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/afeldman/RustyElevator" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fafeldman%2FRustyElevator", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fafeldman%2FRustyElevator'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 6d6bd111a1d6209504796fac0af56b01a431c872 [INFO] checking afeldman/RustyElevator against master#021fc25b7a48f6051bee1e1f06c7a277e4de1cc9 for pr-151510 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fafeldman%2FRustyElevator" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/afeldman/RustyElevator [INFO] finished tweaking git repo https://github.com/afeldman/RustyElevator [INFO] tweaked toml for git repo https://github.com/afeldman/RustyElevator written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/afeldman/RustyElevator on toolchain 021fc25b7a48f6051bee1e1f06c7a277e4de1cc9 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+021fc25b7a48f6051bee1e1f06c7a277e4de1cc9" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/afeldman/RustyElevator already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+021fc25b7a48f6051bee1e1f06c7a277e4de1cc9" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded fastbloom v0.14.0 [INFO] [stderr] Downloaded thin-vec v0.2.14 [INFO] [stderr] Downloaded tracing-appender v0.2.4 [INFO] [stderr] Downloaded rhai_codegen v3.1.0 [INFO] [stderr] Downloaded sea-orm-macros v0.12.15 [INFO] [stderr] Downloaded webpki-root-certs v1.0.4 [INFO] [stderr] Downloaded sea-query v0.30.7 [INFO] [stderr] Downloaded sea-orm v0.12.15 [INFO] [stderr] Downloaded rhai v1.23.6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+021fc25b7a48f6051bee1e1f06c7a277e4de1cc9" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5caf28cbcd7f35ae2b7a26b4910e64e9c62acf70c27e19a9b8f67847a707485d [INFO] running `Command { std: "docker" "start" "-a" "5caf28cbcd7f35ae2b7a26b4910e64e9c62acf70c27e19a9b8f67847a707485d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5caf28cbcd7f35ae2b7a26b4910e64e9c62acf70c27e19a9b8f67847a707485d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5caf28cbcd7f35ae2b7a26b4910e64e9c62acf70c27e19a9b8f67847a707485d", kill_on_drop: false }` [INFO] [stdout] 5caf28cbcd7f35ae2b7a26b4910e64e9c62acf70c27e19a9b8f67847a707485d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/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" "RUSTDOCFLAGS=--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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+021fc25b7a48f6051bee1e1f06c7a277e4de1cc9" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] fe335aa7e95a2d7bcbe6f55c2fd6f5ed0c240cba8fc298e3dae595656fa16b1a [INFO] running `Command { std: "docker" "start" "-a" "fe335aa7e95a2d7bcbe6f55c2fd6f5ed0c240cba8fc298e3dae595656fa16b1a", kill_on_drop: false }` [INFO] [stderr] Compiling portable-atomic v1.12.0 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling find-msvc-tools v0.1.5 [INFO] [stderr] Checking ryu v1.0.21 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Compiling libc v0.2.178 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling syn v2.0.111 [INFO] [stderr] Checking signal-hook-registry v1.4.7 [INFO] [stderr] Compiling crunchy v0.2.4 [INFO] [stderr] Compiling time-core v0.1.6 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling tiny-keccak v2.0.2 [INFO] [stderr] Compiling fs_extra v1.3.0 [INFO] [stderr] Compiling time-macros v0.2.24 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Compiling openssl v0.10.75 [INFO] [stderr] Compiling rust_decimal v1.39.0 [INFO] [stderr] Checking http v1.4.0 [INFO] [stderr] Checking arrayvec v0.7.6 [INFO] [stderr] Compiling native-tls v0.2.14 [INFO] [stderr] Checking nom v7.1.3 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Checking unicode_categories v0.1.1 [INFO] [stderr] Checking crc-catalog v2.4.0 [INFO] [stderr] Compiling aws-lc-rs v1.15.2 [INFO] [stderr] Checking crossbeam-queue v0.3.12 [INFO] [stderr] Checking sha2 v0.10.9 [INFO] [stderr] Checking atoi v2.0.0 [INFO] [stderr] Checking crc v3.4.0 [INFO] [stderr] Checking futures-intrusive v0.5.0 [INFO] [stderr] Checking num-bigint v0.4.6 [INFO] [stderr] Checking spin v0.9.8 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Checking flume v0.11.1 [INFO] [stderr] Compiling proc-macro-error-attr2 v2.0.0 [INFO] [stderr] Checking urlencoding v2.1.3 [INFO] [stderr] Checking rand_core v0.9.3 [INFO] [stderr] Checking http-body v1.0.1 [INFO] [stderr] Checking ordered-float v3.9.2 [INFO] [stderr] Compiling rustls v0.23.35 [INFO] [stderr] Checking tracing-core v0.1.36 [INFO] [stderr] Compiling unicase v2.8.1 [INFO] [stderr] Checking http-body-util v0.1.3 [INFO] [stderr] Compiling quinn-udp v0.5.14 [INFO] [stderr] Checking rand_chacha v0.9.0 [INFO] [stderr] Checking rustls-native-certs v0.8.2 [INFO] [stderr] Compiling smartstring v1.0.1 [INFO] [stderr] Compiling protobuf v2.28.0 [INFO] [stderr] Compiling mime_guess v2.0.5 [INFO] [stderr] Checking sync_wrapper v1.0.2 [INFO] [stderr] Checking data-encoding v2.9.0 [INFO] [stderr] Checking strum v0.25.0 [INFO] [stderr] Checking rand v0.9.2 [INFO] [stderr] Compiling quinn v0.11.9 [INFO] [stderr] Compiling prometheus v0.13.4 [INFO] [stderr] Checking lru-slab v0.1.2 [INFO] [stderr] Checking pem v3.0.6 [INFO] [stderr] Checking tracing-log v0.2.0 [INFO] [stderr] Checking matchit v0.7.3 [INFO] [stderr] Checking thin-vec v0.2.14 [INFO] [stderr] Compiling jobserver v0.1.34 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Checking half v1.8.3 [INFO] [stderr] Checking http-range-header v0.4.2 [INFO] [stderr] Compiling const-random-macro v0.1.16 [INFO] [stderr] Compiling cc v1.2.50 [INFO] [stderr] Checking sqlformat v0.2.6 [INFO] [stderr] Checking fastbloom v0.14.0 [INFO] [stderr] Checking const-random v0.1.18 [INFO] [stderr] Checking bigdecimal v0.3.1 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Compiling cmake v0.1.57 [INFO] [stderr] Checking deranged v0.5.5 [INFO] [stderr] Checking uuid v1.19.0 [INFO] [stderr] Checking serde_path_to_error v0.1.20 [INFO] [stderr] Checking serde_bytes v0.11.19 [INFO] [stderr] Compiling openssl-sys v0.9.111 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling libsqlite3-sys v0.27.0 [INFO] [stderr] Checking hashlink v0.8.4 [INFO] [stderr] Compiling aws-lc-sys v0.35.0 [INFO] [stderr] Compiling derivative v2.2.0 [INFO] [stderr] Checking futures-executor v0.3.31 [INFO] [stderr] Checking futures v0.3.31 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling proc-macro-error2 v2.0.1 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling tokio-macros v2.6.0 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling thiserror-impl v2.0.17 [INFO] [stderr] Checking tokio v1.48.0 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling inherent v1.0.13 [INFO] [stderr] Compiling ouroboros_macro v0.17.2 [INFO] [stderr] Compiling async-stream-impl v0.3.6 [INFO] [stderr] Checking thiserror v1.0.69 [INFO] [stderr] Checking zerofrom v0.1.6 [INFO] [stderr] Compiling sea-bae v0.2.1 [INFO] [stderr] Checking tungstenite v0.24.0 [INFO] [stderr] Checking yoke v0.8.1 [INFO] [stderr] Compiling rhai_codegen v3.1.0 [INFO] [stderr] Checking zerotrie v0.2.3 [INFO] [stderr] Checking tracing v0.1.44 [INFO] [stderr] Checking zerovec v0.11.5 [INFO] [stderr] Checking async-stream v0.3.6 [INFO] [stderr] Checking tracing-subscriber v0.3.22 [INFO] [stderr] Checking thiserror v2.0.17 [INFO] [stderr] Compiling sea-orm-macros v0.12.15 [INFO] [stderr] Checking axum-core v0.4.5 [INFO] [stderr] Checking tinystr v0.8.2 [INFO] [stderr] Checking potential_utf v0.1.4 [INFO] [stderr] Checking icu_collections v2.1.1 [INFO] [stderr] Checking ouroboros v0.17.2 [INFO] [stderr] Checking icu_locale_core v2.1.1 [INFO] [stderr] Checking rhai v1.23.6 [INFO] [stderr] Checking icu_provider v2.1.1 [INFO] [stderr] Checking icu_properties v2.1.2 [INFO] [stderr] Checking icu_normalizer v2.1.1 [INFO] [stderr] Checking error v0.1.0 (/opt/rustwide/workdir/error) [INFO] [stderr] Checking time v0.3.44 [INFO] [stderr] Checking chrono v0.4.42 [INFO] [stderr] Checking either v1.15.0 [INFO] [stderr] Checking platform v0.1.0 (/opt/rustwide/workdir/platform) [INFO] [stderr] Checking serde_yaml v0.9.34+deprecated [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking plugin_api v0.1.0 (/opt/rustwide/workdir/plugin_api) [INFO] [stderr] Checking serde_cbor v0.11.2 [INFO] [stderr] Checking scripting v0.1.0 (/opt/rustwide/workdir/scripting) [INFO] [stderr] Checking idna_adapter v1.2.1 [INFO] [stderr] Checking idna v1.1.0 [INFO] [stdout] warning: method `decode_inputs` is never used [INFO] [stdout] --> platform/src/safety_bus_modbus.rs:99:8 [INFO] [stdout] | [INFO] [stdout] 66 | impl ModbusSafetyBus { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 99 | fn decode_inputs(&self, registers: &[u16]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking safety_kernel v0.1.0 (/opt/rustwide/workdir/safety_kernel) [INFO] [stderr] Checking actuators v0.1.0 (/opt/rustwide/workdir/actuators) [INFO] [stderr] Checking sensors v0.1.0 (/opt/rustwide/workdir/sensors) [INFO] [stderr] Checking control_kernel v0.1.0 (/opt/rustwide/workdir/control_kernel) [INFO] [stderr] Checking url v2.5.7 [INFO] [stderr] Checking sea-query v0.30.7 [INFO] [stderr] Checking yasna v0.5.2 [INFO] [stderr] Checking tracing-appender v0.2.4 [INFO] [stderr] Checking tokio-stream v0.1.17 [INFO] [stderr] Checking hyper v1.8.1 [INFO] [stderr] Checking tokio-tungstenite v0.24.0 [INFO] [stderr] Checking tokio-util v0.7.17 [INFO] [stderr] Checking tower v0.5.2 [INFO] [stderr] Checking tower-http v0.6.8 [INFO] [stderr] Checking rcgen v0.13.2 [INFO] [stderr] Checking sqlx-core v0.7.4 [INFO] [stderr] Checking hyper-util v0.1.19 [INFO] [stderr] Checking axum v0.7.9 [INFO] [stderr] Checking sqlx-sqlite v0.7.4 [INFO] [stderr] Checking rustls-webpki v0.103.8 [INFO] [stderr] Checking sqlx v0.7.4 [INFO] [stderr] Checking sea-query-binder v0.5.0 [INFO] [stderr] Checking sea-orm v0.12.15 [INFO] [stderr] Checking rustls-platform-verifier v0.6.2 [INFO] [stderr] Checking quinn-proto v0.11.13 [INFO] [stderr] Checking config v0.1.0 (/opt/rustwide/workdir/config) [INFO] [stderr] Checking runtime v0.1.0 (/opt/rustwide/workdir/runtime) [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> runtime/src/main.rs:805:5 [INFO] [stdout] | [INFO] [stdout] 805 | /// Serves the root HTML documentation page. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 806 | Html(include_str!("../../docs/index.html").to_string()) [INFO] [stdout] | ------------------------------------------------------- rustdoc does not generate documentation for expressions [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> runtime/src/main.rs:826:5 [INFO] [stdout] | [INFO] [stdout] 826 | / /// Get current elevator state snapshot. [INFO] [stdout] 827 | | /// [INFO] [stdout] 828 | | /// # Response [INFO] [stdout] 829 | | /// [INFO] [stdout] ... | [INFO] [stdout] 840 | | /// } [INFO] [stdout] 841 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] 842 | let runtime = state.elevator.lock().await; [INFO] [stdout] | ------------------------------------------ rustdoc does not generate documentation for statements [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> runtime/src/main.rs:869:5 [INFO] [stdout] | [INFO] [stdout] 869 | / /// WebSocket upgrade handler. [INFO] [stdout] 870 | | /// [INFO] [stdout] 871 | | /// Clients connect here to receive continuous `StateSnapshot`s and send floor requests. [INFO] [stdout] | |____________________________________________________________________________________________^ [INFO] [stdout] 872 | ws.on_upgrade(move |socket| handle_websocket(socket, state)) [INFO] [stdout] | ------------------------------------------------------------ rustdoc does not generate documentation for expressions [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> runtime/src/main.rs:987:5 [INFO] [stdout] | [INFO] [stdout] 987 | / /// Load current system configuration. [INFO] [stdout] 988 | | /// [INFO] [stdout] 989 | | /// Returns the stored configuration (floors, motion profiles, safety settings, etc.) [INFO] [stdout] 990 | | /// as JSON. [INFO] [stdout] | |________________^ [INFO] [stdout] 991 | / match state.config_manager.load_config().await { [INFO] [stdout] 992 | | Ok(cfg) => Json(cfg).into_response(), [INFO] [stdout] 993 | | Err(_) => ( [INFO] [stdout] 994 | | StatusCode::INTERNAL_SERVER_ERROR, [INFO] [stdout] ... | [INFO] [stdout] 997 | | .into_response(), [INFO] [stdout] 998 | | } [INFO] [stdout] | |_____- rustdoc does not generate documentation for expressions [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> runtime/src/main.rs:1005:5 [INFO] [stdout] | [INFO] [stdout] 1005 | / /// Update system configuration. [INFO] [stdout] 1006 | | /// [INFO] [stdout] 1007 | | /// Validates the new configuration and saves it to persistent storage. [INFO] [stdout] 1008 | | /// The next restart will load this configuration. [INFO] [stdout] ... | [INFO] [stdout] 1019 | | /// -d '{"floors": [...], "motion_profile": {...}}' [INFO] [stdout] 1020 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] 1021 | / if let Err(e) = new_config.validate() { [INFO] [stdout] 1022 | | return ( [INFO] [stdout] 1023 | | StatusCode::BAD_REQUEST, [INFO] [stdout] 1024 | | Json(json!({"error": e})), [INFO] [stdout] 1025 | | ).into_response(); [INFO] [stdout] 1026 | | } [INFO] [stdout] | |_____- rustdoc does not generate documentation for expressions [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> runtime/src/main.rs:1039:5 [INFO] [stdout] | [INFO] [stdout] 1039 | / /// Export system configuration as YAML. [INFO] [stdout] 1040 | | /// [INFO] [stdout] 1041 | | /// # Example [INFO] [stdout] 1042 | | /// [INFO] [stdout] ... | [INFO] [stdout] 1047 | | /// The returned file can be distributed to other instances or archived [INFO] [stdout] 1048 | | /// for version control. [INFO] [stdout] | |____________________________^ [INFO] [stdout] 1049 | / match state.config_manager.load_config().await { [INFO] [stdout] 1050 | | Ok(cfg) => match cfg.to_yaml() { [INFO] [stdout] 1051 | | Ok(yaml) => (StatusCode::OK, Yaml(yaml)).into_response(), [INFO] [stdout] 1052 | | Err(_) => ( [INFO] [stdout] ... | [INFO] [stdout] 1062 | | .into_response(), [INFO] [stdout] 1063 | | } [INFO] [stdout] | |_____- rustdoc does not generate documentation for expressions [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> runtime/src/main.rs:1067:5 [INFO] [stdout] | [INFO] [stdout] 1067 | / /// Export Prometheus metrics. [INFO] [stdout] 1068 | | /// [INFO] [stdout] 1069 | | /// # Example [INFO] [stdout] 1070 | | /// [INFO] [stdout] ... | [INFO] [stdout] 1080 | | /// - `motion_state`: Current motion state (with label) [INFO] [stdout] 1081 | | /// - `door_state`: Current door state (with label) [INFO] [stdout] | |_______________________________________________________^ [INFO] [stdout] 1082 | let body = state.metrics.render(); [INFO] [stdout] | ---------------------------------- rustdoc does not generate documentation for statements [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> runtime/src/main.rs:1127:5 [INFO] [stdout] | [INFO] [stdout] 1127 | / /// Get recent logged events (limit 100). [INFO] [stdout] 1128 | | /// [INFO] [stdout] 1129 | | /// Returns array of `DataEvent`s with latest first. [INFO] [stdout] 1130 | | /// [INFO] [stdout] ... | [INFO] [stdout] 1141 | | /// ] [INFO] [stdout] 1142 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] 1143 | let events = state.data_logger.get_recent(100).await; [INFO] [stdout] | ----------------------------------------------------- rustdoc does not generate documentation for statements [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> runtime/src/main.rs:805:5 [INFO] [stdout] | [INFO] [stdout] 805 | /// Serves the root HTML documentation page. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 806 | Html(include_str!("../../docs/index.html").to_string()) [INFO] [stdout] | ------------------------------------------------------- rustdoc does not generate documentation for expressions [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> runtime/src/main.rs:826:5 [INFO] [stdout] | [INFO] [stdout] 826 | / /// Get current elevator state snapshot. [INFO] [stdout] 827 | | /// [INFO] [stdout] 828 | | /// # Response [INFO] [stdout] 829 | | /// [INFO] [stdout] ... | [INFO] [stdout] 840 | | /// } [INFO] [stdout] 841 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] 842 | let runtime = state.elevator.lock().await; [INFO] [stdout] | ------------------------------------------ rustdoc does not generate documentation for statements [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> runtime/src/main.rs:869:5 [INFO] [stdout] | [INFO] [stdout] 869 | / /// WebSocket upgrade handler. [INFO] [stdout] 870 | | /// [INFO] [stdout] 871 | | /// Clients connect here to receive continuous `StateSnapshot`s and send floor requests. [INFO] [stdout] | |____________________________________________________________________________________________^ [INFO] [stdout] 872 | ws.on_upgrade(move |socket| handle_websocket(socket, state)) [INFO] [stdout] | ------------------------------------------------------------ rustdoc does not generate documentation for expressions [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> runtime/src/main.rs:987:5 [INFO] [stdout] | [INFO] [stdout] 987 | / /// Load current system configuration. [INFO] [stdout] 988 | | /// [INFO] [stdout] 989 | | /// Returns the stored configuration (floors, motion profiles, safety settings, etc.) [INFO] [stdout] 990 | | /// as JSON. [INFO] [stdout] | |________________^ [INFO] [stdout] 991 | / match state.config_manager.load_config().await { [INFO] [stdout] 992 | | Ok(cfg) => Json(cfg).into_response(), [INFO] [stdout] 993 | | Err(_) => ( [INFO] [stdout] 994 | | StatusCode::INTERNAL_SERVER_ERROR, [INFO] [stdout] ... | [INFO] [stdout] 997 | | .into_response(), [INFO] [stdout] 998 | | } [INFO] [stdout] | |_____- rustdoc does not generate documentation for expressions [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> runtime/src/main.rs:1005:5 [INFO] [stdout] | [INFO] [stdout] 1005 | / /// Update system configuration. [INFO] [stdout] 1006 | | /// [INFO] [stdout] 1007 | | /// Validates the new configuration and saves it to persistent storage. [INFO] [stdout] 1008 | | /// The next restart will load this configuration. [INFO] [stdout] ... | [INFO] [stdout] 1019 | | /// -d '{"floors": [...], "motion_profile": {...}}' [INFO] [stdout] 1020 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] 1021 | / if let Err(e) = new_config.validate() { [INFO] [stdout] 1022 | | return ( [INFO] [stdout] 1023 | | StatusCode::BAD_REQUEST, [INFO] [stdout] 1024 | | Json(json!({"error": e})), [INFO] [stdout] 1025 | | ).into_response(); [INFO] [stdout] 1026 | | } [INFO] [stdout] | |_____- rustdoc does not generate documentation for expressions [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> runtime/src/main.rs:1039:5 [INFO] [stdout] | [INFO] [stdout] 1039 | / /// Export system configuration as YAML. [INFO] [stdout] 1040 | | /// [INFO] [stdout] 1041 | | /// # Example [INFO] [stdout] 1042 | | /// [INFO] [stdout] ... | [INFO] [stdout] 1047 | | /// The returned file can be distributed to other instances or archived [INFO] [stdout] 1048 | | /// for version control. [INFO] [stdout] | |____________________________^ [INFO] [stdout] 1049 | / match state.config_manager.load_config().await { [INFO] [stdout] 1050 | | Ok(cfg) => match cfg.to_yaml() { [INFO] [stdout] 1051 | | Ok(yaml) => (StatusCode::OK, Yaml(yaml)).into_response(), [INFO] [stdout] 1052 | | Err(_) => ( [INFO] [stdout] ... | [INFO] [stdout] 1062 | | .into_response(), [INFO] [stdout] 1063 | | } [INFO] [stdout] | |_____- rustdoc does not generate documentation for expressions [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> runtime/src/main.rs:1067:5 [INFO] [stdout] | [INFO] [stdout] 1067 | / /// Export Prometheus metrics. [INFO] [stdout] 1068 | | /// [INFO] [stdout] 1069 | | /// # Example [INFO] [stdout] 1070 | | /// [INFO] [stdout] ... | [INFO] [stdout] 1080 | | /// - `motion_state`: Current motion state (with label) [INFO] [stdout] 1081 | | /// - `door_state`: Current door state (with label) [INFO] [stdout] | |_______________________________________________________^ [INFO] [stdout] 1082 | let body = state.metrics.render(); [INFO] [stdout] | ---------------------------------- rustdoc does not generate documentation for statements [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> runtime/src/main.rs:1127:5 [INFO] [stdout] | [INFO] [stdout] 1127 | / /// Get recent logged events (limit 100). [INFO] [stdout] 1128 | | /// [INFO] [stdout] 1129 | | /// Returns array of `DataEvent`s with latest first. [INFO] [stdout] 1130 | | /// [INFO] [stdout] ... | [INFO] [stdout] 1141 | | /// ] [INFO] [stdout] 1142 | | /// ``` [INFO] [stdout] | |___________^ [INFO] [stdout] 1143 | let events = state.data_logger.get_recent(100).await; [INFO] [stdout] | ----------------------------------------------------- rustdoc does not generate documentation for statements [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Event` is never used [INFO] [stdout] --> runtime/src/events.rs:44:10 [INFO] [stdout] | [INFO] [stdout] 44 | pub enum Event { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `event_name` is never used [INFO] [stdout] --> runtime/src/events.rs:114:12 [INFO] [stdout] | [INFO] [stdout] 104 | impl Event { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 114 | pub fn event_name(&self) -> &str { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `EventBus` is never constructed [INFO] [stdout] --> runtime/src/events.rs:145:12 [INFO] [stdout] | [INFO] [stdout] 145 | pub struct EventBus { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `subscribe`, and `emit` are never used [INFO] [stdout] --> runtime/src/events.rs:154:12 [INFO] [stdout] | [INFO] [stdout] 149 | impl EventBus { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 154 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 173 | pub fn subscribe(&mut self, handler: Box) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 185 | pub fn emit(&mut self, event: Event) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `EventHandler` is never used [INFO] [stdout] --> runtime/src/events.rs:214:11 [INFO] [stdout] | [INFO] [stdout] 214 | pub trait EventHandler: Send { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AutomationRule` is never constructed [INFO] [stdout] --> runtime/src/automation.rs:71:12 [INFO] [stdout] | [INFO] [stdout] 71 | pub struct AutomationRule { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `default_true` is never used [INFO] [stdout] --> runtime/src/automation.rs:86:4 [INFO] [stdout] | [INFO] [stdout] 86 | fn default_true() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `TriggerConfig` is never used [INFO] [stdout] --> runtime/src/automation.rs:96:10 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum TriggerConfig { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ActionConfig` is never used [INFO] [stdout] --> runtime/src/automation.rs:143:10 [INFO] [stdout] | [INFO] [stdout] 143 | pub enum ActionConfig { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AutomationEngine` is never constructed [INFO] [stdout] --> runtime/src/automation.rs:172:12 [INFO] [stdout] | [INFO] [stdout] 172 | pub struct AutomationEngine { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ButtonPress` is never constructed [INFO] [stdout] --> runtime/src/automation.rs:191:8 [INFO] [stdout] | [INFO] [stdout] 191 | struct ButtonPress { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PeriodicState` is never constructed [INFO] [stdout] --> runtime/src/automation.rs:198:8 [INFO] [stdout] | [INFO] [stdout] 198 | struct PeriodicState { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `update`, `check_sequences`, and `matches_sequence` are never used [INFO] [stdout] --> runtime/src/automation.rs:206:12 [INFO] [stdout] | [INFO] [stdout] 204 | impl AutomationEngine { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 205 | /// Create a new automation engine with given rules [INFO] [stdout] 206 | pub fn new(rules: Vec) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 234 | pub fn update(&mut self) -> Vec { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 288 | fn check_sequences(&mut self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 326 | fn matches_sequence(&self, sequence: &[u8], window: Duration) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `runtime_tx` is never read [INFO] [stdout] --> runtime/src/scripting.rs:52:5 [INFO] [stdout] | [INFO] [stdout] 50 | pub struct ScriptContext { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 51 | /// Shared runtime state (for sending commands) [INFO] [stdout] 52 | runtime_tx: tokio::sync::mpsc::UnboundedSender, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ScriptContext` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `RequestFloor`, `SetLight`, `SetDisplay`, `Log`, and `InjectFault` are never constructed [INFO] [stdout] --> runtime/src/scripting.rs:65:5 [INFO] [stdout] | [INFO] [stdout] 63 | pub enum ScriptCommand { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] 64 | /// Request a floor [INFO] [stdout] 65 | RequestFloor(u8), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | SetLight(bool), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | SetDisplay(String), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | Log { level: String, message: String }, [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | InjectFault(String), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ScriptCommand` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `request_floor`, `set_light`, `set_display`, `log`, and `inject_fault` are never used [INFO] [stdout] --> runtime/src/scripting.rs:107:12 [INFO] [stdout] | [INFO] [stdout] 80 | impl ScriptContext { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn request_floor(&self, floor: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 112 | pub fn set_light(&self, on: bool) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn set_display(&self, text: String) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | pub fn log(&self, level: String, message: String) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn inject_fault(&self, name: String) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `context` is never read [INFO] [stdout] --> runtime/src/scripting.rs:146:5 [INFO] [stdout] | [INFO] [stdout] 144 | pub struct RhaiEngine { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 145 | engine: Engine, [INFO] [stdout] 146 | context: ScriptContext, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `execute` and `execute_source` are never used [INFO] [stdout] --> runtime/src/scripting.rs:189:12 [INFO] [stdout] | [INFO] [stdout] 149 | impl RhaiEngine { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 189 | pub fn execute(&self, ast: &AST) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 203 | pub fn execute_source(&self, source: &str) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ScriptExecutor` is never constructed [INFO] [stdout] --> runtime/src/scripting.rs:210:12 [INFO] [stdout] | [INFO] [stdout] 210 | pub struct ScriptExecutor { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `execute_rhai`, and `execute_python` are never used [INFO] [stdout] --> runtime/src/scripting.rs:217:12 [INFO] [stdout] | [INFO] [stdout] 215 | impl ScriptExecutor { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 216 | /// Create a new script executor [INFO] [stdout] 217 | pub fn new(context: ScriptContext, script_dir: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 225 | pub async fn execute_rhai(&self, script_path: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 239 | pub fn execute_python(&self, script_path: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Event` is never used [INFO] [stdout] --> runtime/src/events.rs:44:10 [INFO] [stdout] | [INFO] [stdout] 44 | pub enum Event { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `event_name` is never used [INFO] [stdout] --> runtime/src/events.rs:114:12 [INFO] [stdout] | [INFO] [stdout] 104 | impl Event { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 114 | pub fn event_name(&self) -> &str { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `EventBus` is never constructed [INFO] [stdout] --> runtime/src/events.rs:145:12 [INFO] [stdout] | [INFO] [stdout] 145 | pub struct EventBus { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `subscribe`, and `emit` are never used [INFO] [stdout] --> runtime/src/events.rs:154:12 [INFO] [stdout] | [INFO] [stdout] 149 | impl EventBus { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 154 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 173 | pub fn subscribe(&mut self, handler: Box) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 185 | pub fn emit(&mut self, event: Event) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `EventHandler` is never used [INFO] [stdout] --> runtime/src/events.rs:214:11 [INFO] [stdout] | [INFO] [stdout] 214 | pub trait EventHandler: Send { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AutomationRule` is never constructed [INFO] [stdout] --> runtime/src/automation.rs:71:12 [INFO] [stdout] | [INFO] [stdout] 71 | pub struct AutomationRule { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `default_true` is never used [INFO] [stdout] --> runtime/src/automation.rs:86:4 [INFO] [stdout] | [INFO] [stdout] 86 | fn default_true() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `TriggerConfig` is never used [INFO] [stdout] --> runtime/src/automation.rs:96:10 [INFO] [stdout] | [INFO] [stdout] 96 | pub enum TriggerConfig { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ActionConfig` is never used [INFO] [stdout] --> runtime/src/automation.rs:143:10 [INFO] [stdout] | [INFO] [stdout] 143 | pub enum ActionConfig { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AutomationEngine` is never constructed [INFO] [stdout] --> runtime/src/automation.rs:172:12 [INFO] [stdout] | [INFO] [stdout] 172 | pub struct AutomationEngine { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ButtonPress` is never constructed [INFO] [stdout] --> runtime/src/automation.rs:191:8 [INFO] [stdout] | [INFO] [stdout] 191 | struct ButtonPress { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PeriodicState` is never constructed [INFO] [stdout] --> runtime/src/automation.rs:198:8 [INFO] [stdout] | [INFO] [stdout] 198 | struct PeriodicState { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `update`, `check_sequences`, and `matches_sequence` are never used [INFO] [stdout] --> runtime/src/automation.rs:206:12 [INFO] [stdout] | [INFO] [stdout] 204 | impl AutomationEngine { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 205 | /// Create a new automation engine with given rules [INFO] [stdout] 206 | pub fn new(rules: Vec) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 234 | pub fn update(&mut self) -> Vec { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 288 | fn check_sequences(&mut self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 326 | fn matches_sequence(&self, sequence: &[u8], window: Duration) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ScriptContext` is never constructed [INFO] [stdout] --> runtime/src/scripting.rs:50:12 [INFO] [stdout] | [INFO] [stdout] 50 | pub struct ScriptContext { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ScriptCommand` is never used [INFO] [stdout] --> runtime/src/scripting.rs:63:10 [INFO] [stdout] | [INFO] [stdout] 63 | pub enum ScriptCommand { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `request_floor`, `set_light`, `set_display`, `log`, and `inject_fault` are never used [INFO] [stdout] --> runtime/src/scripting.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 80 | impl ScriptContext { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn new(runtime_tx: tokio::sync::mpsc::UnboundedSender) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn request_floor(&self, floor: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 112 | pub fn set_light(&self, on: bool) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn set_display(&self, text: String) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | pub fn log(&self, level: String, message: String) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn inject_fault(&self, name: String) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RhaiEngine` is never constructed [INFO] [stdout] --> runtime/src/scripting.rs:144:12 [INFO] [stdout] | [INFO] [stdout] 144 | pub struct RhaiEngine { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile`, `execute`, and `execute_source` are never used [INFO] [stdout] --> runtime/src/scripting.rs:158:12 [INFO] [stdout] | [INFO] [stdout] 149 | impl RhaiEngine { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 158 | pub fn new(context: ScriptContext) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 180 | pub fn compile(&self, source: &str) -> Result { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 189 | pub fn execute(&self, ast: &AST) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 203 | pub fn execute_source(&self, source: &str) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ScriptExecutor` is never constructed [INFO] [stdout] --> runtime/src/scripting.rs:210:12 [INFO] [stdout] | [INFO] [stdout] 210 | pub struct ScriptExecutor { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `execute_rhai`, and `execute_python` are never used [INFO] [stdout] --> runtime/src/scripting.rs:217:12 [INFO] [stdout] | [INFO] [stdout] 215 | impl ScriptExecutor { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 216 | /// Create a new script executor [INFO] [stdout] 217 | pub fn new(context: ScriptContext, script_dir: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 225 | pub async fn execute_rhai(&self, script_path: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 239 | pub fn execute_python(&self, script_path: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking cluster v0.1.0 (/opt/rustwide/workdir/cluster) [INFO] [stdout] warning: unused variable: `addr` [INFO] [stdout] --> cluster/src/transport.rs:213:13 [INFO] [stdout] | [INFO] [stdout] 213 | let addr: SocketAddr = "127.0.0.1:4433".parse().unwrap(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_addr` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 38s [INFO] running `Command { std: "docker" "inspect" "fe335aa7e95a2d7bcbe6f55c2fd6f5ed0c240cba8fc298e3dae595656fa16b1a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fe335aa7e95a2d7bcbe6f55c2fd6f5ed0c240cba8fc298e3dae595656fa16b1a", kill_on_drop: false }` [INFO] [stdout] fe335aa7e95a2d7bcbe6f55c2fd6f5ed0c240cba8fc298e3dae595656fa16b1a