[INFO] cloning repository https://github.com/wu-hongjun/OpenInstax [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/wu-hongjun/OpenInstax" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwu-hongjun%2FOpenInstax", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwu-hongjun%2FOpenInstax'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] dc7bdf928a9f76b4704ec9559d14fdcec56eb9bd [INFO] testing wu-hongjun/OpenInstax against master#ec6f9a5b4413f74386267ef8efc93712c2ce6db6 for pr-155739 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwu-hongjun%2FOpenInstax" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/wu-hongjun/OpenInstax [INFO] finished tweaking git repo https://github.com/wu-hongjun/OpenInstax [INFO] tweaked toml for git repo https://github.com/wu-hongjun/OpenInstax written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/wu-hongjun/OpenInstax on toolchain ec6f9a5b4413f74386267ef8efc93712c2ce6db6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/wu-hongjun/OpenInstax 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" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded avif-serialize v0.8.8 [INFO] [stderr] Downloaded libfuzzer-sys v0.4.12 [INFO] [stderr] Downloaded bluez-generated v0.4.0 [INFO] [stderr] Downloaded zune-core v0.5.1 [INFO] [stderr] Downloaded objc2-core-bluetooth v0.2.2 [INFO] [stderr] Downloaded dbus-tokio v0.7.6 [INFO] [stderr] Downloaded zune-jpeg v0.5.12 [INFO] [stderr] Downloaded bluez-async v0.8.2 [INFO] [stderr] Downloaded xml v1.2.1 [INFO] [stderr] Downloaded jni-utils v0.1.1 [INFO] [stderr] Downloaded dbus v0.9.10 [INFO] [stderr] Downloaded serde-xml-rs v0.8.2 [INFO] [stderr] Downloaded btleplug v0.11.8 [INFO] [stderr] Downloaded cbindgen v0.27.0 [INFO] [stderr] Downloaded libdbus-sys v0.2.7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 7784b2be6029f3b7f4e201c55831e35733edeeedb16d41aa5593346f0445fcd1 [INFO] running `Command { std: "docker" "start" "-a" "7784b2be6029f3b7f4e201c55831e35733edeeedb16d41aa5593346f0445fcd1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "7784b2be6029f3b7f4e201c55831e35733edeeedb16d41aa5593346f0445fcd1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7784b2be6029f3b7f4e201c55831e35733edeeedb16d41aa5593346f0445fcd1", kill_on_drop: false }` [INFO] [stdout] 7784b2be6029f3b7f4e201c55831e35733edeeedb16d41aa5593346f0445fcd1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b6501687a0c9b1c43f1d064129fd345a05b9a8399e6ac0d08975f66474cb8ac6 [INFO] running `Command { std: "docker" "start" "-a" "b6501687a0c9b1c43f1d064129fd345a05b9a8399e6ac0d08975f66474cb8ac6", kill_on_drop: false }` [INFO] [stderr] Compiling unicode-ident v1.0.24 [INFO] [stderr] Compiling quote v1.0.45 [INFO] [stderr] Compiling memchr v2.8.0 [INFO] [stderr] Compiling libc v0.2.182 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling futures-sink v0.3.32 [INFO] [stderr] Compiling pin-project-lite v0.2.17 [INFO] [stderr] Compiling futures-core v0.3.32 [INFO] [stderr] Compiling slab v0.4.12 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling futures-task v0.3.32 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling futures-io v0.3.32 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling rayon-core v1.13.0 [INFO] [stderr] Compiling simd-adler32 v0.3.8 [INFO] [stderr] Compiling libdbus-sys v0.2.7 [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Compiling anyhow v1.0.102 [INFO] [stderr] Compiling anstyle v1.0.13 [INFO] [stderr] Compiling zmij v1.0.21 [INFO] [stderr] Compiling anstyle-query v1.1.5 [INFO] [stderr] Compiling is_terminal_polyfill v1.70.2 [INFO] [stderr] Compiling futures-channel v0.3.32 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling adler2 v2.0.1 [INFO] [stderr] Compiling arrayvec v0.7.6 [INFO] [stderr] Compiling anstream v0.6.21 [INFO] [stderr] Compiling zerocopy v0.8.40 [INFO] [stderr] Compiling as-slice v0.2.1 [INFO] [stderr] Compiling itertools v0.14.0 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling av-scenechange v0.14.1 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling clap_lex v1.0.0 [INFO] [stderr] Compiling built v0.8.0 [INFO] [stderr] Compiling clap_builder v4.5.60 [INFO] [stderr] Compiling nom v8.0.0 [INFO] [stderr] Compiling core2 v0.4.0 [INFO] [stderr] Compiling aligned v0.4.3 [INFO] [stderr] Compiling crc32fast v1.5.0 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling pastey v0.1.1 [INFO] [stderr] Compiling hashbrown v0.16.1 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling y4m v0.8.0 [INFO] [stderr] Compiling quick-error v2.0.1 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling flate2 v1.1.9 [INFO] [stderr] Compiling simd_helpers v0.1.0 [INFO] [stderr] Compiling bitstream-io v4.9.0 [INFO] [stderr] Compiling rav1e v0.8.1 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling noop_proc_macro v0.3.0 [INFO] [stderr] Compiling imgref v1.12.0 [INFO] [stderr] Compiling indexmap v2.13.0 [INFO] [stderr] Compiling winnow v0.7.15 [INFO] [stderr] Compiling new_debug_unreachable v1.0.6 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling toml_write v0.1.2 [INFO] [stderr] Compiling xml v1.2.1 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling socket2 v0.6.3 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling rayon v1.11.0 [INFO] [stderr] Compiling weezl v0.1.12 [INFO] [stderr] Compiling num-rational v0.4.2 [INFO] [stderr] Compiling zune-core v0.4.12 [INFO] [stderr] Compiling uuid v1.22.0 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling zune-jpeg v0.4.21 [INFO] [stderr] Compiling loop9 v0.1.5 [INFO] [stderr] Compiling avif-serialize v0.8.8 [INFO] [stderr] Compiling fdeflate v0.3.7 [INFO] [stderr] Compiling zune-inflate v0.2.54 [INFO] [stderr] Compiling pxfm v0.1.28 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stderr] Compiling bit_field v0.10.3 [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling byteorder-lite v0.1.0 [INFO] [stderr] Compiling lebe v0.5.3 [INFO] [stderr] Compiling rgb v0.8.53 [INFO] [stderr] Compiling zune-core v0.5.1 [INFO] [stderr] Compiling cbindgen v0.27.0 [INFO] [stderr] Compiling bytemuck v1.25.0 [INFO] [stderr] Compiling image-webp v0.2.4 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling qoi v0.4.1 [INFO] [stderr] Compiling gif v0.14.1 [INFO] [stderr] Compiling png v0.18.1 [INFO] [stderr] Compiling zune-jpeg v0.5.12 [INFO] [stderr] Compiling clap v4.5.60 [INFO] [stderr] Compiling portable-atomic v1.13.1 [INFO] [stderr] Compiling dashmap v6.1.0 [INFO] [stderr] Compiling maybe-rayon v0.1.1 [INFO] [stderr] Compiling unicode-width v0.2.2 [INFO] [stderr] Compiling jiff v0.2.23 [INFO] [stderr] Compiling number_prefix v0.4.0 [INFO] [stderr] Compiling console v0.15.11 [INFO] [stderr] Compiling tempfile v3.26.0 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling indicatif v0.17.11 [INFO] [stderr] Compiling env_filter v1.0.0 [INFO] [stderr] Compiling moxcms v0.7.11 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling futures-macro v0.3.32 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling equator-macro v0.4.2 [INFO] [stderr] Compiling tokio-macros v2.6.1 [INFO] [stderr] Compiling zerocopy-derive v0.8.40 [INFO] [stderr] Compiling arg_enum_proc_macro v0.3.4 [INFO] [stderr] Compiling profiling-procmacros v1.0.17 [INFO] [stderr] Compiling fax_derive v0.2.0 [INFO] [stderr] Compiling num-derive v0.4.2 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling clap_derive v4.5.55 [INFO] [stderr] Compiling fax v0.2.6 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling profiling v1.0.17 [INFO] [stderr] Compiling tokio v1.50.0 [INFO] [stderr] Compiling equator v0.4.2 [INFO] [stderr] Compiling aligned-vec v0.6.4 [INFO] [stderr] Compiling v_frame v0.3.9 [INFO] [stderr] Compiling av1-grain v0.2.5 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling env_logger v0.11.9 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling serde-xml-rs v0.8.2 [INFO] [stderr] Compiling dbus v0.9.10 [INFO] [stderr] Compiling futures-executor v0.3.32 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling futures v0.3.32 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling tokio-stream v0.1.18 [INFO] [stderr] Compiling half v2.7.1 [INFO] [stderr] Compiling exr v1.74.0 [INFO] [stderr] Compiling tiff v0.10.3 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling bluez-generated v0.4.0 [INFO] [stderr] Compiling dbus-tokio v0.7.6 [INFO] [stderr] Compiling bluez-async v0.8.2 [INFO] [stderr] Compiling ravif v0.12.0 [INFO] [stderr] Compiling btleplug v0.11.8 [INFO] [stderr] Compiling image v0.25.9 [INFO] [stderr] Compiling instantlink-ffi v0.1.5 (/opt/rustwide/workdir/crates/instantlink-ffi) [INFO] [stderr] Compiling instantlink-core v0.1.5 (/opt/rustwide/workdir/crates/instantlink-core) [INFO] [stderr] Compiling instantlink-cli v0.1.5 (/opt/rustwide/workdir/crates/instantlink-cli) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 31s [INFO] running `Command { std: "docker" "inspect" "b6501687a0c9b1c43f1d064129fd345a05b9a8399e6ac0d08975f66474cb8ac6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b6501687a0c9b1c43f1d064129fd345a05b9a8399e6ac0d08975f66474cb8ac6", kill_on_drop: false }` [INFO] [stdout] b6501687a0c9b1c43f1d064129fd345a05b9a8399e6ac0d08975f66474cb8ac6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7a85c17330b4bd64527be776813dbb209fb0378dda1c3d4a9e7e5e1e3649a7fc [INFO] running `Command { std: "docker" "start" "-a" "7a85c17330b4bd64527be776813dbb209fb0378dda1c3d4a9e7e5e1e3649a7fc", kill_on_drop: false }` [INFO] [stderr] Compiling tokio v1.50.0 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling dbus-tokio v0.7.6 [INFO] [stderr] Compiling bluez-async v0.8.2 [INFO] [stderr] Compiling tokio-stream v0.1.18 [INFO] [stderr] Compiling btleplug v0.11.8 [INFO] [stderr] Compiling instantlink-core v0.1.5 (/opt/rustwide/workdir/crates/instantlink-core) [INFO] [stderr] Compiling instantlink-cli v0.1.5 (/opt/rustwide/workdir/crates/instantlink-cli) [INFO] [stderr] Compiling instantlink-ffi v0.1.5 (/opt/rustwide/workdir/crates/instantlink-ffi) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 18.51s [INFO] running `Command { std: "docker" "inspect" "7a85c17330b4bd64527be776813dbb209fb0378dda1c3d4a9e7e5e1e3649a7fc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7a85c17330b4bd64527be776813dbb209fb0378dda1c3d4a9e7e5e1e3649a7fc", kill_on_drop: false }` [INFO] [stdout] 7a85c17330b4bd64527be776813dbb209fb0378dda1c3d4a9e7e5e1e3649a7fc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] cf67a4c9db30de0a71b65563d55ab751aad154b7ed36c90203a443185e733525 [INFO] running `Command { std: "docker" "start" "-a" "cf67a4c9db30de0a71b65563d55ab751aad154b7ed36c90203a443185e733525", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.27s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/instantlink-2e8cef31d56fc325) [INFO] [stdout] [INFO] [stdout] running 14 tests [INFO] [stdout] test tests::led_set_json_emits_expected_payload ... ok [INFO] [stdout] test tests::info_json_emits_expected_payload ... ok [INFO] [stdout] test tests::led_off_json_emits_expected_payload ... ok [INFO] [stdout] test tests::parse_hex_color_rejects_invalid_component ... ok [INFO] [stdout] test tests::parse_hex_color_accepts_hash_prefixed_and_plain ... ok [INFO] [stdout] test tests::parse_hex_color_rejects_invalid_length ... ok [INFO] [stdout] test tests::parse_global_json_and_device_flags ... ok [INFO] [stdout] test tests::print_json_emits_expected_payload ... ok [INFO] [stdout] test tests::status_json_disconnected_shape_is_stable ... ok [INFO] [stdout] test tests::parse_led_set_defaults ... ok [INFO] [stdout] test tests::parse_print_defaults ... ok [INFO] [stdout] test tests::parse_print_custom_values ... ok [INFO] [stdout] test tests::parse_scan_defaults ... ok [INFO] [stdout] test tests::status_json_connected_shape_is_stable ... ok [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/instantlink_core-11f755b044d39bd3) [INFO] [stdout] [INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 121 tests [INFO] [stdout] test commands::tests::decode_download_ack ... ok [INFO] [stdout] test commands::tests::decode_download_ack_missing_status_fails_closed ... ok [INFO] [stdout] test commands::tests::decode_battery_status ... ok [INFO] [stdout] test commands::tests::decode_history_info ... ok [INFO] [stdout] test commands::tests::decode_image_support_info ... ok [INFO] [stdout] test commands::tests::decode_printer_function_info ... ok [INFO] [stdout] test commands::tests::decode_print_status_missing_status_fails_closed ... ok [INFO] [stdout] test commands::tests::decode_unknown_opcode ... ok [INFO] [stdout] test commands::tests::encode_battery_status ... ok [INFO] [stdout] test commands::tests::encode_decode_roundtrip ... ok [INFO] [stdout] test commands::tests::encode_data_chunk ... ok [INFO] [stdout] test commands::tests::encode_download_end ... ok [INFO] [stdout] test commands::tests::encode_device_info ... ok [INFO] [stdout] test commands::tests::encode_download_start_natural_mode ... ok [INFO] [stdout] test commands::tests::encode_image_support_info ... ok [INFO] [stdout] test commands::tests::encode_download_start ... ok [INFO] [stdout] test commands::tests::encode_led_pattern ... ok [INFO] [stdout] test commands::tests::encode_print_image ... ok [INFO] [stdout] test commands::tests::encode_reset ... ok [INFO] [stdout] test commands::tests::encode_shutdown ... ok [INFO] [stdout] test connect_progress::tests::connect_stage_codes_are_stable ... ok [INFO] [stdout] test device::tests::battery ... ok [INFO] [stdout] test device::tests::check_status_busy ... ok [INFO] [stdout] test device::tests::battery_unexpected_response ... ok [INFO] [stdout] test device::tests::check_status_cover_open ... ok [INFO] [stdout] test device::tests::detect_model_wrong_response ... ok [INFO] [stdout] test device::tests::data_chunk_rejected ... ok [INFO] [stdout] test device::tests::detect_model_mini_without_dis ... ok [INFO] [stdout] test device::tests::download_end_rejected ... ok [INFO] [stdout] test device::tests::check_status_no_film ... ok [INFO] [stdout] test device::tests::detect_model_wide ... ok [INFO] [stdout] test device::tests::detect_model_link3_via_dis ... ok [INFO] [stdout] test device::tests::detect_model_mini ... ok [INFO] [stdout] test device::tests::check_status_low_battery ... ok [INFO] [stdout] test device::tests::download_no_film_error ... ok [INFO] [stdout] test device::tests::disconnect_delegates ... ok [INFO] [stdout] test device::tests::detect_model_square ... ok [INFO] [stdout] test device::tests::detect_model_unknown ... ok [INFO] [stdout] test device::tests::download_start_rejected ... ok [INFO] [stdout] test device::tests::film_remaining ... ok [INFO] [stdout] test device::tests::is_print_success_mini ... ok [INFO] [stdout] test device::tests::is_print_success_square ... ok [INFO] [stdout] test device::tests::is_print_success_wide ... ok [INFO] [stdout] test device::tests::led_off ... ok [INFO] [stdout] test device::tests::malformed_download_ack_fails_closed ... ok [INFO] [stdout] test device::tests::print_count ... ok [INFO] [stdout] test device::tests::name_stored_and_returned ... ok [INFO] [stdout] test device::tests::progress_callback ... ok [INFO] [stdout] test device::tests::send_image_data_multi_chunk ... ok [INFO] [stdout] test device::tests::send_image_data_single_chunk ... ok [INFO] [stdout] test device::tests::set_led ... ok [INFO] [stdout] test device::tests::status_all ... ok [INFO] [stdout] test device::tests::transport_error_during_new ... ok [INFO] [stdout] test device::tests::status_queries_run_in_stable_command_order ... ok [INFO] [stdout] test device::tests::unexpected_response_in_download ... ok [INFO] [stdout] test image::tests::chunk_image_data_mini ... ok [INFO] [stdout] test image::tests::all_models_includes_link3 ... ok [INFO] [stdout] test image::tests::chunk_image_data_square ... ok [INFO] [stdout] test image::tests::chunk_image_data_empty ... ok [INFO] [stdout] test image::tests::fit_mode_from_str ... ok [INFO] [stdout] test image::tests::load_from_bytes_invalid ... ok [INFO] [stdout] test image::tests::model_specs_correct ... ok [INFO] [stdout] test image::tests::load_from_bytes_png ... ok [INFO] [stdout] test printer::tests::extracted_printer_serial_returns_none_for_non_instax_names ... ok [INFO] [stdout] test printer::tests::extracts_serial_from_instax_name ... ok [INFO] [stdout] test printer::tests::matches_same_printer_with_ios_suffix_variants ... ok [INFO] [stdout] test printer::tests::combine_operation_and_disconnect_returns_success_value ... ok [INFO] [stdout] test printer::tests::combine_operation_and_disconnect_prefers_operation_error ... ok [INFO] [stdout] test printer::tests::combine_operation_and_disconnect_returns_disconnect_error_after_success ... ok [INFO] [stdout] test printer::tests::normalizes_parenthetical_suffixes ... ok [INFO] [stdout] test printer::tests::printer_name_matches_returns_false_for_different_serials ... ok [INFO] [stdout] test printer::tests::normalized_printer_name_collapses_whitespace_and_uppercases ... ok [INFO] [stdout] test printer::tests::select_matching_result_falls_back_to_partial_match ... ok [INFO] [stdout] test printer::tests::select_matching_result_prefers_exact_match_over_partial_match ... ok [INFO] [stdout] test printer::tests::select_matching_result_returns_multiple_printers_for_multiple_exact_matches ... ok [INFO] [stdout] test printer::tests::select_matching_result_returns_multiple_printers_for_multiple_partial_matches ... ok [INFO] [stdout] test printer::tests::select_matching_result_returns_not_found_when_no_match_exists ... ok [INFO] [stdout] test protocol::tests::assembler_fragmented ... ok [INFO] [stdout] test protocol::tests::assembler_length_mismatch_reports_pre_drain_length ... ok [INFO] [stdout] test protocol::tests::assembler_invalid_header_resets ... ok [INFO] [stdout] test protocol::tests::assembler_reset ... ok [INFO] [stdout] test protocol::tests::assembler_single_packet ... ok [INFO] [stdout] test protocol::tests::build_packet_empty_payload ... ok [INFO] [stdout] test protocol::tests::checksum_empty ... ok [INFO] [stdout] test protocol::tests::checksum_known_values ... ok [INFO] [stdout] test protocol::tests::checksum_single_byte ... ok [INFO] [stdout] test protocol::tests::feed_signals_bad_checksum ... ok [INFO] [stdout] test protocol::tests::feed_signals_invalid_header ... ok [INFO] [stdout] test protocol::tests::fragment_exact_mtu ... ok [INFO] [stdout] test protocol::tests::build_packet_rejects_oversize_payload ... ok [INFO] [stdout] test protocol::tests::fragment_large_packet ... ok [INFO] [stdout] test protocol::tests::build_packet_with_payload ... ok [INFO] [stdout] test protocol::tests::fragment_small_packet ... ok [INFO] [stdout] test protocol::tests::parse_packet_bad_checksum ... ok [INFO] [stdout] test protocol::tests::parse_packet_bad_header ... ok [INFO] [stdout] test protocol::tests::parse_packet_empty_payload ... ok [INFO] [stdout] test protocol::tests::parse_packet_too_short ... ok [INFO] [stdout] test protocol::tests::parse_packet_truncated ... ok [INFO] [stdout] test transport::tests::receive_packet_from_channel_errors_when_notification_channel_closes ... ok [INFO] [stdout] test protocol::tests::parse_packet_roundtrip ... ok [INFO] [stdout] test transport::tests::receive_packet_from_channel_returns_buffered_packet_without_waiting ... ok [INFO] [stdout] test protocol::tests::build_packet_accepts_max_payload ... ok [INFO] [stdout] test transport::tests::receive_packet_from_channel_surfaces_persistent_corruption ... ok [INFO] [stdout] test transport::tests::receive_packet_from_channel_logs_corruption_then_resumes ... ok [INFO] [stdout] test transport::tests::receive_packet_from_channel_uses_total_deadline_across_fragments ... ok [INFO] [stdout] test transport::tests::receive_packet_from_channel_returns_packet_when_fragments_arrive_in_time ... ok [INFO] [stdout] test transport::tests::listener_exits_promptly_after_cancellation ... ok [INFO] [stdout] test transport::tests::repeated_cycles_do_not_accumulate_tasks ... ok [INFO] [stdout] test device::tests::send_image_data_with_model_success_code ... ok [INFO] [stdout] test transport::tests::shutdown_listener_aborts_non_cancellable_task ... ok [INFO] [stdout] test image::tests::encode_jpeg_produces_data ... ok [INFO] [stdout] test image::tests::encode_jpeg_link3_size_limit ... ok [INFO] [stdout] test image::tests::encode_jpeg_fits_within_max ... ok [INFO] [stdout] test image::tests::encode_jpeg_returns_image_too_large_when_quality_one_still_exceeds_limit ... ok [INFO] [stdout] test device::tests::print_prepared_unlocked_print_rejected_returns_error ... ok [INFO] [stdout] test image::tests::prepare_image_from_bytes_flips_vertically_for_link3 ... ok [INFO] [stdout] test device::tests::print_prepared_unlocked_led_handoff_and_print_status ... ok [INFO] [stdout] test image::tests::resize_contain_dimensions ... ok [INFO] [stdout] test image::tests::resize_stretch_dimensions ... ok [INFO] [stdout] test image::tests::resize_crop_dimensions ... ok [INFO] [stdout] test image::tests::resize_wide_model ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 121 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 5.52s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/instantlink_ffi-fee21f99b7cb9a71) [INFO] [stdout] [INFO] [stdout] running 29 tests [INFO] [stdout] test tests::ffi_device_name_truncates_and_nul_terminates ... ok [INFO] [stdout] test tests::ffi_error_code_mapping_is_stable ... ok [INFO] [stdout] test tests::ffi_getters_map_device_errors ... ok [INFO] [stdout] test tests::ffi_device_model_writes_model_name ... ok [INFO] [stdout] test tests::ffi_is_connected_returns_zero_without_device ... ok [INFO] [stdout] test tests::emit_connect_progress_with_context_passes_stage_and_detail ... ok [INFO] [stdout] test tests::ffi_panic_during_print_does_not_leak_device ... ok [INFO] [stdout] test tests::ffi_print_progress_ctx_accepts_null_callback_without_device ... ok [INFO] [stdout] test tests::ffi_status_returns_not_found_without_device ... ok [INFO] [stdout] test tests::ffi_print_progress_wrapper_accepts_null_callback_without_device ... ok [INFO] [stdout] test tests::ffi_status_works_during_print ... ok [INFO] [stdout] test tests::ffi_status_writes_outputs_for_connected_device ... ok [INFO] [stdout] test tests::ffi_string_helpers_reject_invalid_inputs ... ok [INFO] [stdout] test tests::print_progress_context_callback_can_observe_context ... ok [INFO] [stdout] test tests::write_str_to_buf_truncates_and_nul_terminates ... ok [INFO] [stdout] test tests::ffi_status_rejects_null_pointers ... ok [INFO] [stdout] test tests::ffi_print_with_progress_ctx_maps_fit_and_reports_progress ... ok [INFO] [stdout] test tests::ffi_scan_rejects_null_output_buffer ... ok [INFO] [stdout] test tests::ffi_simple_getters_require_a_connected_device ... ok [INFO] [stdout] test tests::ffi_simple_getters_return_connected_values ... ok [INFO] [stdout] test tests::ffi_print_variants_reject_invalid_utf8_paths ... ok [INFO] [stdout] test tests::ffi_device_name_and_model_validate_buffers_and_connection ... ok [INFO] [stdout] test tests::ffi_disconnect_surfaces_device_error_codes ... ok [INFO] [stdout] test tests::ffi_print_and_led_calls_surface_device_errors ... ok [INFO] [stdout] test tests::ffi_connect_named_variants_reject_invalid_utf8 ... ok [INFO] [stdout] test tests::ffi_connect_progress_wrapper_accepts_null_callback ... ok [INFO] [stdout] test tests::ffi_disconnect_returns_not_found_when_no_device ... ok [INFO] [stdout] test tests::ffi_led_shutdown_and_reset_delegate_to_connected_device ... ok [INFO] [stdout] test tests::ffi_is_connected_reflects_device_presence ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 29 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.34s [INFO] [stdout] [INFO] [stderr] Doc-tests instantlink_core [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test crates/instantlink-core/src/protocol.rs - protocol::RESPONSE_HEADER (line 25) ... 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] all doctests ran in 1.40s; merged doctests compilation took 1.36s [INFO] running `Command { std: "docker" "inspect" "cf67a4c9db30de0a71b65563d55ab751aad154b7ed36c90203a443185e733525", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cf67a4c9db30de0a71b65563d55ab751aad154b7ed36c90203a443185e733525", kill_on_drop: false }` [INFO] [stdout] cf67a4c9db30de0a71b65563d55ab751aad154b7ed36c90203a443185e733525