[INFO] cloning repository https://github.com/robyoung/tplinker
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/robyoung/tplinker" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frobyoung%2Ftplinker", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frobyoung%2Ftplinker'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 400fbf6f74efc27b21962d2e47128f70ef4d10c0
[INFO] testing robyoung/tplinker against 1.91.0 for beta-1.92-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frobyoung%2Ftplinker" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/robyoung/tplinker
[INFO] finished tweaking git repo https://github.com/robyoung/tplinker
[INFO] tweaked toml for git repo https://github.com/robyoung/tplinker written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/robyoung/tplinker on toolchain 1.91.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.91.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/robyoung/tplinker 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" "+1.91.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded rayon v1.5.1
[INFO] [stderr]   Downloaded crossbeam-utils v0.8.8
[INFO] [stderr]   Downloaded cc v1.0.72
[INFO] [stderr]   Downloaded crossbeam-queue v0.3.2
[INFO] [stderr]   Downloaded if-addrs v0.6.7
[INFO] [stderr]   Downloaded syn v1.0.82
[INFO] [stderr]   Downloaded crossbeam-epoch v0.9.5
[INFO] [stderr]   Downloaded serde_derive v1.0.131
[INFO] [stderr]   Downloaded serde_json v1.0.72
[INFO] [stderr]   Downloaded serde v1.0.131
[INFO] [stderr]   Downloaded rayon-core v1.9.1
[INFO] [stderr]   Downloaded quote v1.0.10
[INFO] [stderr]   Downloaded if-addrs-sys v0.3.2
[INFO] [stderr]   Downloaded proc-macro2 v1.0.33
[INFO] [stderr]   Downloaded ryu v1.0.9
[INFO] [stderr]   Downloaded num_cpus v1.13.0
[INFO] [stderr]   Downloaded libc v0.2.111
[INFO] [stderr]   Downloaded crossbeam-channel v0.5.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0de37f8664ebd6e5b0973b321d9fbea28686d3fcc56bf0ebc23e35b61ff53a15
[INFO] running `Command { std: "docker" "start" "-a" "0de37f8664ebd6e5b0973b321d9fbea28686d3fcc56bf0ebc23e35b61ff53a15", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0de37f8664ebd6e5b0973b321d9fbea28686d3fcc56bf0ebc23e35b61ff53a15", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0de37f8664ebd6e5b0973b321d9fbea28686d3fcc56bf0ebc23e35b61ff53a15", kill_on_drop: false }`
[INFO] [stdout] 0de37f8664ebd6e5b0973b321d9fbea28686d3fcc56bf0ebc23e35b61ff53a15
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=warn" "-e" "RUSTDOCFLAGS=--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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 917292a1d8bbadd92005cc6e112da0035321e3197c4edb10c5ea5220e1788108
[INFO] running `Command { std: "docker" "start" "-a" "917292a1d8bbadd92005cc6e112da0035321e3197c4edb10c5ea5220e1788108", kill_on_drop: false }`
[INFO] [stderr]    Compiling crossbeam-utils v0.8.8
[INFO] [stderr]    Compiling libc v0.2.111
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.5
[INFO] [stderr]    Compiling proc-macro2 v1.0.33
[INFO] [stderr]    Compiling rayon-core v1.9.1
[INFO] [stderr]    Compiling syn v1.0.82
[INFO] [stderr]    Compiling crossbeam-queue v0.3.2
[INFO] [stderr]    Compiling serde v1.0.131
[INFO] [stderr]    Compiling rayon v1.5.1
[INFO] [stderr]    Compiling serde_derive v1.0.131
[INFO] [stderr]    Compiling unicode-width v0.1.9
[INFO] [stderr]    Compiling serde_json v1.0.72
[INFO] [stderr]    Compiling strsim v0.8.0
[INFO] [stderr]    Compiling ansi_term v0.12.1
[INFO] [stderr]    Compiling either v1.6.1
[INFO] [stderr]    Compiling textwrap v0.11.0
[INFO] [stderr]    Compiling itoa v0.4.8
[INFO] [stderr]    Compiling ryu v1.0.9
[INFO] [stderr]    Compiling crossbeam-channel v0.5.1
[INFO] [stderr]    Compiling crossbeam-deque v0.8.1
[INFO] [stderr]    Compiling num_cpus v1.13.0
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling if-addrs v0.6.7
[INFO] [stderr]    Compiling clap v2.34.0
[INFO] [stderr]    Compiling quote v1.0.10
[INFO] [stderr]    Compiling crossbeam v0.8.1
[INFO] [stderr]    Compiling tplinker v0.4.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/devices.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 153 |     fn switch_on(&self) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `for<'de> !: Deserialize<'de>` will fail
[INFO] [stdout]    --> src/devices.rs:154:14
[INFO] [stdout]     |
[INFO] [stdout] 154 |         self.send(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":1}}}"#)?;
[INFO] [stdout]     |              ^^^^
[INFO] [stdout]     = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 154 |         self.send::<()>(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":1}}}"#)?;
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/devices.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     fn switch_off(&self) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `for<'de> !: Deserialize<'de>` will fail
[INFO] [stdout]    --> src/devices.rs:159:14
[INFO] [stdout]     |
[INFO] [stdout] 159 |         self.send(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":0}}}"#)?;
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 159 |         self.send::<()>(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":0}}}"#)?;
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/devices.rs:178:5
[INFO] [stdout]     |
[INFO] [stdout] 178 |     fn switch_on(&self) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `for<'de> !: Deserialize<'de>` will fail
[INFO] [stdout]    --> src/devices.rs:179:14
[INFO] [stdout]     |
[INFO] [stdout] 179 |         self.send(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":1}}}"#)?;
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 179 |         self.send::<()>(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":1}}}"#)?;
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/devices.rs:183:5
[INFO] [stdout]     |
[INFO] [stdout] 183 |     fn switch_off(&self) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `for<'de> !: Deserialize<'de>` will fail
[INFO] [stdout]    --> src/devices.rs:184:14
[INFO] [stdout]     |
[INFO] [stdout] 184 |         self.send(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":0}}}"#)?;
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 184 |         self.send::<()>(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":0}}}"#)?;
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 13.70s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: tplinker v0.4.4 (/opt/rustwide/workdir)
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "917292a1d8bbadd92005cc6e112da0035321e3197c4edb10c5ea5220e1788108", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "917292a1d8bbadd92005cc6e112da0035321e3197c4edb10c5ea5220e1788108", kill_on_drop: false }`
[INFO] [stdout] 917292a1d8bbadd92005cc6e112da0035321e3197c4edb10c5ea5220e1788108
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=warn" "-e" "RUSTDOCFLAGS=--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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ffed711e858a7aa1fcaca5c08861e75f13968ce10ed0ea1cb37e31d25bb74b52
[INFO] running `Command { std: "docker" "start" "-a" "ffed711e858a7aa1fcaca5c08861e75f13968ce10ed0ea1cb37e31d25bb74b52", kill_on_drop: false }`
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/devices.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 153 |     fn switch_on(&self) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `for<'de> !: Deserialize<'de>` will fail
[INFO] [stdout]    --> src/devices.rs:154:14
[INFO] [stdout]     |
[INFO] [stdout] 154 |         self.send(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":1}}}"#)?;
[INFO] [stdout]     |              ^^^^
[INFO] [stdout]     = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 154 |         self.send::<()>(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":1}}}"#)?;
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/devices.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     fn switch_off(&self) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `for<'de> !: Deserialize<'de>` will fail
[INFO] [stdout]    --> src/devices.rs:159:14
[INFO] [stdout]     |
[INFO] [stdout] 159 |         self.send(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":0}}}"#)?;
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 159 |         self.send::<()>(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":0}}}"#)?;
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/devices.rs:178:5
[INFO] [stdout]     |
[INFO] [stdout] 178 |     fn switch_on(&self) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `for<'de> !: Deserialize<'de>` will fail
[INFO] [stdout]    --> src/devices.rs:179:14
[INFO] [stdout]     |
[INFO] [stdout] 179 |         self.send(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":1}}}"#)?;
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 179 |         self.send::<()>(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":1}}}"#)?;
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/devices.rs:183:5
[INFO] [stdout]     |
[INFO] [stdout] 183 |     fn switch_off(&self) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `for<'de> !: Deserialize<'de>` will fail
[INFO] [stdout]    --> src/devices.rs:184:14
[INFO] [stdout]     |
[INFO] [stdout] 184 |         self.send(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":0}}}"#)?;
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 184 |         self.send::<()>(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":0}}}"#)?;
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling tplinker v0.4.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/devices.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 153 |     fn switch_on(&self) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `for<'de> !: Deserialize<'de>` will fail
[INFO] [stdout]    --> src/devices.rs:154:14
[INFO] [stdout]     |
[INFO] [stdout] 154 |         self.send(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":1}}}"#)?;
[INFO] [stdout]     |              ^^^^
[INFO] [stdout]     = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 154 |         self.send::<()>(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":1}}}"#)?;
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/devices.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     fn switch_off(&self) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `for<'de> !: Deserialize<'de>` will fail
[INFO] [stdout]    --> src/devices.rs:159:14
[INFO] [stdout]     |
[INFO] [stdout] 159 |         self.send(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":0}}}"#)?;
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 159 |         self.send::<()>(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":0}}}"#)?;
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/devices.rs:178:5
[INFO] [stdout]     |
[INFO] [stdout] 178 |     fn switch_on(&self) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `for<'de> !: Deserialize<'de>` will fail
[INFO] [stdout]    --> src/devices.rs:179:14
[INFO] [stdout]     |
[INFO] [stdout] 179 |         self.send(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":1}}}"#)?;
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 179 |         self.send::<()>(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":1}}}"#)?;
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]    --> src/devices.rs:183:5
[INFO] [stdout]     |
[INFO] [stdout] 183 |     fn switch_off(&self) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]     = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `for<'de> !: Deserialize<'de>` will fail
[INFO] [stdout]    --> src/devices.rs:184:14
[INFO] [stdout]     |
[INFO] [stdout] 184 |         self.send(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":0}}}"#)?;
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]     |
[INFO] [stdout] 184 |         self.send::<()>(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":0}}}"#)?;
[INFO] [stdout]     |                  ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.37s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: tplinker v0.4.4 (/opt/rustwide/workdir)
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "ffed711e858a7aa1fcaca5c08861e75f13968ce10ed0ea1cb37e31d25bb74b52", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ffed711e858a7aa1fcaca5c08861e75f13968ce10ed0ea1cb37e31d25bb74b52", kill_on_drop: false }`
[INFO] [stdout] ffed711e858a7aa1fcaca5c08861e75f13968ce10ed0ea1cb37e31d25bb74b52
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=warn" "-e" "RUSTDOCFLAGS=--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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 46b8cee38a17eb2d9690f75bcf5e8321e1e615cf7c29dc5c0b6c71e793f4fe26
[INFO] running `Command { std: "docker" "start" "-a" "46b8cee38a17eb2d9690f75bcf5e8321e1e615cf7c29dc5c0b6c71e793f4fe26", kill_on_drop: false }`
[INFO] [stderr] warning: this function depends on never type fallback being `()`
[INFO] [stderr]    --> src/devices.rs:153:5
[INFO] [stderr]     |
[INFO] [stderr] 153 |     fn switch_on(&self) -> Result<()> {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stderr]     = help: specify the types explicitly
[INFO] [stderr] note: in edition 2024, the requirement `for<'de> !: Deserialize<'de>` will fail
[INFO] [stderr]    --> src/devices.rs:154:14
[INFO] [stderr]     |
[INFO] [stderr] 154 |         self.send(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":1}}}"#)?;
[INFO] [stderr]     |              ^^^^
[INFO] [stderr]     = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] help: use `()` annotations to avoid fallback changes
[INFO] [stderr]     |
[INFO] [stderr] 154 |         self.send::<()>(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":1}}}"#)?;
[INFO] [stderr]     |                  ++++++
[INFO] [stderr] 
[INFO] [stderr] warning: this function depends on never type fallback being `()`
[INFO] [stderr]    --> src/devices.rs:158:5
[INFO] [stderr]     |
[INFO] [stderr] 158 |     fn switch_off(&self) -> Result<()> {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stderr]     = help: specify the types explicitly
[INFO] [stderr] note: in edition 2024, the requirement `for<'de> !: Deserialize<'de>` will fail
[INFO] [stderr]    --> src/devices.rs:159:14
[INFO] [stderr]     |
[INFO] [stderr] 159 |         self.send(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":0}}}"#)?;
[INFO] [stderr]     |              ^^^^
[INFO] [stderr] help: use `()` annotations to avoid fallback changes
[INFO] [stderr]     |
[INFO] [stderr] 159 |         self.send::<()>(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":0}}}"#)?;
[INFO] [stderr]     |                  ++++++
[INFO] [stderr] 
[INFO] [stderr] warning: this function depends on never type fallback being `()`
[INFO] [stderr]    --> src/devices.rs:178:5
[INFO] [stderr]     |
[INFO] [stderr] 178 |     fn switch_on(&self) -> Result<()> {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stderr]     = help: specify the types explicitly
[INFO] [stderr] note: in edition 2024, the requirement `for<'de> !: Deserialize<'de>` will fail
[INFO] [stderr]    --> src/devices.rs:179:14
[INFO] [stderr]     |
[INFO] [stderr] 179 |         self.send(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":1}}}"#)?;
[INFO] [stderr]     |              ^^^^
[INFO] [stderr] help: use `()` annotations to avoid fallback changes
[INFO] [stderr]     |
[INFO] [stderr] 179 |         self.send::<()>(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":1}}}"#)?;
[INFO] [stderr]     |                  ++++++
[INFO] [stderr] 
[INFO] [stderr] warning: this function depends on never type fallback being `()`
[INFO] [stderr]    --> src/devices.rs:183:5
[INFO] [stderr]     |
[INFO] [stderr] 183 |     fn switch_off(&self) -> Result<()> {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stderr]     = help: specify the types explicitly
[INFO] [stderr] note: in edition 2024, the requirement `for<'de> !: Deserialize<'de>` will fail
[INFO] [stderr]    --> src/devices.rs:184:14
[INFO] [stderr]     |
[INFO] [stderr] 184 |         self.send(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":0}}}"#)?;
[INFO] [stderr]     |              ^^^^
[INFO] [stderr] help: use `()` annotations to avoid fallback changes
[INFO] [stderr]     |
[INFO] [stderr] 184 |         self.send::<()>(&r#"{"smartlife.iot.smartbulb.lightingservice":{"transition_light_state":{"on_off":0}}}"#)?;
[INFO] [stderr]     |                  ++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `tplinker` (lib) generated 4 warnings (run `cargo fix --lib -p tplinker` to apply 4 suggestions)
[INFO] [stderr] warning: `tplinker` (lib test) generated 4 warnings (4 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.07s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: tplinker v0.4.4 (/opt/rustwide/workdir)
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/tplinker-0b04f9b3dbdf7574)
[INFO] [stdout] 
[INFO] [stdout] running 36 tests
[INFO] [stdout] test capabilities::tests::device_alias ... ok
[INFO] [stdout] test capabilities::tests::brightness ... ok
[INFO] [stdout] test capabilities::tests::device_reboot ... ok
[INFO] [stdout] test capabilities::tests::color_temp ... ok
[INFO] [stdout] test capabilities::tests::device_location ... ok
[INFO] [stdout] test capabilities::tests::device_reboot_with_delay ... ok
[INFO] [stdout] test capabilities::tests::device_set_alias_invalid_response ... ok
[INFO] [stdout] test capabilities::tests::device_sysinfo ... ok
[INFO] [stdout] test capabilities::tests::device_set_alias ... ok
[INFO] [stdout] test capabilities::tests::get_emeter_daily ... ok
[INFO] [stdout] test capabilities::tests::get_emeter_daily_invalid_month ... ok
[INFO] [stdout] test capabilities::tests::get_light_state ... ok
[INFO] [stdout] test capabilities::tests::switch_off ... ok
[INFO] [stdout] test capabilities::tests::switch_on ... ok
[INFO] [stdout] test capabilities::tests::switch_is_on_off ... ok
[INFO] [stdout] test datatypes::tests::deserialise_hs110 ... ok
[INFO] [stdout] test datatypes::tests::deserialise_hs300 ... ok
[INFO] [stdout] test capabilities::tests::switch_toggle_off ... ok
[INFO] [stdout] test datatypes::tests::deserialise_kp115 ... ok
[INFO] [stdout] test datatypes::tests::deserialise_hs100 ... ok
[INFO] [stdout] test datatypes::tests::deserialise_kl110_on ... ok
[INFO] [stdout] test datatypes::tests::deserialise_lb110_off ... ok
[INFO] [stdout] test capabilities::tests::set_light_state ... ok
[INFO] [stdout] test datatypes::tests::deserialise_lb110_on ... ok
[INFO] [stdout] test capabilities::tests::set_color_temp ... ok
[INFO] [stdout] test capabilities::tests::switch_toggle_on ... ok
[INFO] [stdout] test capabilities::tests::get_emeter_monthly ... ok
[INFO] [stdout] test capabilities::tests::set_brightness ... ok
[INFO] [stdout] test datatypes::tests::deserialise_kl110_off ... ok
[INFO] [stdout] test devices::tests::test_raw_device_submit_failure ... ok
[INFO] [stdout] test devices::tests::test_raw_device_submit_success ... ok
[INFO] [stdout] test protocol::tests::encrypt_decrypt ... ok
[INFO] [stdout] test protocol::tests::protocol_send ... ok
[INFO] [stdout] test datatypes::tests::deserialise_lb120 ... ok
[INFO] [stdout] test capabilities::tests::get_emeter_realtime ... ok
[INFO] [stdout] test devices::tests::test_raw_device_location ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 36 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/tplinker-ae194b1829ef7628)
[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 tplinker
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test src/lib.rs - (line 21) - compile ... ok
[INFO] [stdout] test src/discovery.rs - discovery (line 3) - compile ... ok
[INFO] [stdout] test src/devices.rs - devices (line 3) - compile ... ok
[INFO] [stdout] test src/lib.rs - (line 44) - compile ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.22s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "46b8cee38a17eb2d9690f75bcf5e8321e1e615cf7c29dc5c0b6c71e793f4fe26", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "46b8cee38a17eb2d9690f75bcf5e8321e1e615cf7c29dc5c0b6c71e793f4fe26", kill_on_drop: false }`
[INFO] [stdout] 46b8cee38a17eb2d9690f75bcf5e8321e1e615cf7c29dc5c0b6c71e793f4fe26
