[INFO] cloning repository https://github.com/huangziwei/kfxdedrm-fe
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/huangziwei/kfxdedrm-fe" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhuangziwei%2Fkfxdedrm-fe", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhuangziwei%2Fkfxdedrm-fe'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 4dc6857fb1d203bf656c7d8b2938e8b36dd1860c
[INFO] testing huangziwei/kfxdedrm-fe against 1.99.0-beta.8+cargoflags=--release for beta-release-1.100-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhuangziwei%2Fkfxdedrm-fe" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-5-tc1/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/huangziwei/kfxdedrm-fe
[INFO] finished tweaking git repo https://github.com/huangziwei/kfxdedrm-fe
[INFO] tweaked toml for git repo https://github.com/huangziwei/kfxdedrm-fe written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/huangziwei/kfxdedrm-fe on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/huangziwei/kfxdedrm-fe 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.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating git repository `https://github.com/RustCrypto/rustls-rustcrypto`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded base16ct v1.0.0
[INFO] [stderr]   Downloaded ureq-proto v0.6.1
[INFO] [stderr]   Downloaded ghash v0.6.0
[INFO] [stderr]   Downloaded universal-hash v0.6.1
[INFO] [stderr]   Downloaded rfc6979 v0.6.0
[INFO] [stderr]   Downloaded wnaf v0.14.0
[INFO] [stderr]   Downloaded cc v1.4.4
[INFO] [stderr]   Downloaded sec1 v0.8.1
[INFO] [stderr]   Downloaded ctr v0.10.1
[INFO] [stderr]   Downloaded serdect v0.4.3
[INFO] [stderr]   Downloaded primeorder v0.14.0
[INFO] [stderr]   Downloaded polyval v0.7.3
[INFO] [stderr]   Downloaded aead v0.6.1
[INFO] [stderr]   Downloaded group v0.14.0
[INFO] [stderr]   Downloaded primefield v0.14.0
[INFO] [stderr]   Downloaded ff v0.14.0
[INFO] [stderr]   Downloaded poly1305 v0.9.1
[INFO] [stderr]   Downloaded ecdsa v0.17.0
[INFO] [stderr]   Downloaded pkcs1 v0.8.0-rc.4
[INFO] [stderr]   Downloaded elliptic-curve v0.14.1
[INFO] [stderr]   Downloaded p256 v0.14.0
[INFO] [stderr]   Downloaded p384 v0.14.0
[INFO] [stderr]   Downloaded chacha20poly1305 v0.11.0
[INFO] [stderr]   Downloaded ureq v3.4.0
[INFO] [stderr]   Downloaded rsa v0.10.0-rc.18
[INFO] [stderr]   Downloaded aes-gcm v0.11.0
[INFO] [stderr]   Downloaded hkdf v0.13.0
[INFO] [stderr]   Downloaded crypto-primes v0.7.2
[INFO] [stderr]   Downloaded crypto-bigint v0.7.5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 95619a089e72a477a9f6d31deb9f8a031ba03bae315f0217876c7910af2933b5
[INFO] running `Command { std: "docker" "start" "95619a089e72a477a9f6d31deb9f8a031ba03bae315f0217876c7910af2933b5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "95619a089e72a477a9f6d31deb9f8a031ba03bae315f0217876c7910af2933b5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "95619a089e72a477a9f6d31deb9f8a031ba03bae315f0217876c7910af2933b5" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "95619a089e72a477a9f6d31deb9f8a031ba03bae315f0217876c7910af2933b5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "95619a089e72a477a9f6d31deb9f8a031ba03bae315f0217876c7910af2933b5" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling zeroize v1.9.0
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling typenum v1.20.1
[INFO] [stderr]    Compiling rand_core v0.10.1
[INFO] [stderr]    Compiling cmov v0.5.4
[INFO] [stderr]    Compiling const-oid v0.10.2
[INFO] [stderr]    Compiling autocfg v1.5.1
[INFO] [stderr]    Compiling cpufeatures v0.3.0
[INFO] [stderr]    Compiling cpubits v0.1.1
[INFO] [stderr]    Compiling base64ct v1.8.3
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling proc-macro2 v1.0.107
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling quote v1.0.47
[INFO] [stderr]    Compiling semver v1.0.28
[INFO] [stderr]    Compiling base16ct v1.0.0
[INFO] [stderr]    Compiling simd-adler32 v0.3.10
[INFO] [stderr]    Compiling rustls-pki-types v1.15.1
[INFO] [stderr]    Compiling bitflags v2.13.1
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling rustls v0.23.43
[INFO] [stderr]    Compiling untrusted v0.9.0
[INFO] [stderr]    Compiling libc v0.2.189
[INFO] [stderr]    Compiling ff v0.14.0
[INFO] [stderr]    Compiling log v0.4.33
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling ctutils v0.4.2
[INFO] [stderr]    Compiling adler2 v2.0.1
[INFO] [stderr]    Compiling serde_core v1.0.229
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling group v0.14.0
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]    Compiling getrandom v0.4.3
[INFO] [stderr]    Compiling pem-rfc7468 v1.0.0
[INFO] [stderr]    Compiling bytes v1.12.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling zmij v1.0.23
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling der v0.8.1
[INFO] [stderr]    Compiling fdeflate v0.3.7
[INFO] [stderr]    Compiling anyhow v1.0.104
[INFO] [stderr]    Compiling pxfm v0.1.30
[INFO] [stderr]    Compiling curve25519-dalek v5.0.0
[INFO] [stderr]    Compiling rustls-webpki v0.103.14
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling ttf-parser v0.25.1
[INFO] [stderr]    Compiling zune-core v0.5.3
[INFO] [stderr]    Compiling base64 v0.23.1
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling syn v3.0.3
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling hybrid-array v0.4.14
[INFO] [stderr]    Compiling http v1.5.0
[INFO] [stderr]    Compiling zune-jpeg v0.5.15
[INFO] [stderr]    Compiling crypto-common v0.2.2
[INFO] [stderr]    Compiling block-buffer v0.12.1
[INFO] [stderr]    Compiling crypto-bigint v0.7.5
[INFO] [stderr]    Compiling inout v0.2.2
[INFO] [stderr]    Compiling wnaf v0.14.0
[INFO] [stderr]    Compiling png v0.18.1
[INFO] [stderr]    Compiling webpki-roots v1.0.9
[INFO] [stderr]    Compiling ab_glyph_rasterizer v0.1.10
[INFO] [stderr]    Compiling byteorder-lite v0.1.0
[INFO] [stderr]    Compiling memchr v2.8.3
[INFO] [stderr]    Compiling ureq-proto v0.6.1
[INFO] [stderr]    Compiling spki v0.8.0
[INFO] [stderr]    Compiling sec1 v0.8.1
[INFO] [stderr]    Compiling digest v0.11.3
[INFO] [stderr]    Compiling pkcs8 v0.11.0
[INFO] [stderr]    Compiling hmac v0.13.0
[INFO] [stderr]    Compiling signature v3.0.0
[INFO] [stderr]    Compiling hkdf v0.13.0
[INFO] [stderr]    Compiling cipher v0.5.2
[INFO] [stderr]    Compiling universal-hash v0.6.1
[INFO] [stderr]    Compiling sha2 v0.11.0
[INFO] [stderr]    Compiling polyval v0.7.3
[INFO] [stderr]    Compiling aead v0.6.1
[INFO] [stderr]    Compiling ctr v0.10.1
[INFO] [stderr]    Compiling aes v0.9.2
[INFO] [stderr]    Compiling chacha20 v0.10.1
[INFO] [stderr]    Compiling ghash v0.6.0
[INFO] [stderr]    Compiling poly1305 v0.9.1
[INFO] [stderr]    Compiling ed25519 v3.0.0
[INFO] [stderr]    Compiling pkcs1 v0.8.0-rc.4
[INFO] [stderr]    Compiling x11rb-protocol v0.13.2
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling aes-gcm v0.11.0
[INFO] [stderr]    Compiling chacha20poly1305 v0.11.0
[INFO] [stderr]    Compiling owned_ttf_parser v0.25.1
[INFO] [stderr]    Compiling bytemuck v1.25.2
[INFO] [stderr]    Compiling utf8-zero v0.8.1
[INFO] [stderr]    Compiling moxcms v0.8.1
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling ab_glyph v0.2.32
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]    Compiling gethostname v1.1.0
[INFO] [stderr]    Compiling elliptic-curve v0.14.1
[INFO] [stderr]    Compiling rfc6979 v0.6.0
[INFO] [stderr]    Compiling primefield v0.14.0
[INFO] [stderr]    Compiling crypto-primes v0.7.2
[INFO] [stderr]    Compiling x25519-dalek v3.0.0
[INFO] [stderr]    Compiling ed25519-dalek v3.0.0
[INFO] [stderr]    Compiling ureq v3.4.0
[INFO] [stderr]    Compiling ecdsa v0.17.0
[INFO] [stderr]    Compiling primeorder v0.14.0
[INFO] [stderr]    Compiling p256 v0.14.0
[INFO] [stderr]    Compiling p384 v0.14.0
[INFO] [stderr]    Compiling rsa v0.10.0-rc.18
[INFO] [stderr]    Compiling x11rb v0.13.2
[INFO] [stderr]    Compiling image v0.25.10
[INFO] [stderr]    Compiling rustls-rustcrypto v0.0.2-alpha (https://github.com/RustCrypto/rustls-rustcrypto?rev=7b44a2de957b6596d267a920d3aec0d4137defb1#7b44a2de)
[INFO] [stderr]    Compiling kfxdedrm-fe-native v0.5.2 (/opt/rustwide/workdir/native)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1m 47s
[INFO] running `Command { std: "docker" "inspect" "95619a089e72a477a9f6d31deb9f8a031ba03bae315f0217876c7910af2933b5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "95619a089e72a477a9f6d31deb9f8a031ba03bae315f0217876c7910af2933b5" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling kfxdedrm-fe-native v0.5.2 (/opt/rustwide/workdir/native)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 52.12s
[INFO] running `Command { std: "docker" "inspect" "95619a089e72a477a9f6d31deb9f8a031ba03bae315f0217876c7910af2933b5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "95619a089e72a477a9f6d31deb9f8a031ba03bae315f0217876c7910af2933b5" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.14s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/deps/kfxdedrm_fe_native-ca154e91f56214da)
[INFO] [stdout] 
[INFO] [stdout] running 218 tests
[INFO] [stdout] test app::tests::a_batch_that_ran_to_the_end_reports_no_remainder ... ok
[INFO] [stdout] test app::tests::no_wait_here_blocks_the_touch_fd ... ok
[INFO] [stdout] test config::tests::a_folder_named_twice_is_scanned_once ... ok
[INFO] [stdout] test config::tests::a_folder_that_could_eat_a_book_is_refused ... ok
[INFO] [stdout] test config::tests::a_fresh_install_reads_the_folder_this_firmware_downloads_into ... ok
[INFO] [stdout] test config::tests::round_trips_through_the_file_format ... ok
[INFO] [stdout] test app::tests::a_title_longer_than_the_banner_is_ellipsized ... ok
[INFO] [stdout] test app::tests::a_stopped_batch_names_the_books_it_left ... ok
[INFO] [stdout] test app::tests::a_swipe_cancels_the_hold_long_before_it_pages ... ok
[INFO] [stdout] test config::tests::the_out_folder_is_never_one_of_the_scanned_folders ... ok
[INFO] [stdout] test config::tests::the_refusal_is_worded_for_the_keyboards_band ... ok
[INFO] [stdout] test config::tests::deselecting_every_folder_survives_the_round_trip ... ok
[INFO] [stdout] test config::tests::each_bad_value_costs_only_its_own_setting ... ok
[INFO] [stdout] test convert::tests::a_dotted_title_keeps_everything_but_the_real_extension ... ok
[INFO] [stdout] test convert::tests::a_format_bokai_cannot_read_is_left_alone ... ok
[INFO] [stdout] test config::tests::switching_every_format_off_is_also_an_empty_configuration ... ok
[INFO] [stdout] test config::tests::an_out_folder_that_names_no_full_path_takes_the_default ... ok
[INFO] [stdout] test config::tests::an_out_folder_inside_a_scanned_folder_is_kept ... ok
[INFO] [stdout] test app::tests::the_result_line_names_a_conversion_that_did_not_land ... ok
[INFO] [stdout] test convert::tests::a_mobi_family_copy_has_no_bundle_to_pack ... ok
[INFO] [stdout] test convert::tests::nothing_is_planned_without_a_converter ... ok
[INFO] [stdout] test convert::tests::probe_order_puts_the_hard_float_build_first ... ok
[INFO] [stdout] test convert::tests::the_epub_comes_off_the_kfx_this_run_packs ... ok
[INFO] [stdout] test convert::tests::the_outputs_are_the_steps_own_outputs ... ok
[INFO] [stdout] test eink::fb::tests::a_message_under_another_atom_is_ignored ... ok
[INFO] [stdout] test eink::fb::tests::a_pad_of_zero_is_one_byte ... ok
[INFO] [stdout] test eink::fb::tests::a_short_row_keeps_its_pad ... ok
[INFO] [stdout] test convert::tests::a_directory_where_nothing_starts_resolves_to_no_converter ... ok
[INFO] [stdout] test convert::tests::an_epub_alone_is_read_straight_out_of_the_bundle ... ok
[INFO] [stdout] test eink::fb::tests::a_partly_covered_window_keeps_the_screen ... ok
[INFO] [stdout] test eink::fb::tests::an_unchanged_state_is_not_reported ... ok
[INFO] [stdout] test eink::fb::tests::a_wide_pixel_scatters_to_its_channels ... ok
[INFO] [stdout] test app::tests::only_a_long_flat_stroke_pages ... ok
[INFO] [stdout] test convert::tests::a_soft_float_only_install_still_resolves ... ok
[INFO] [stdout] test eink::fb::tests::a_scanline_reaches_the_pad ... ok
[INFO] [stdout] test eink::fb::tests::only_visibility_uncovers ... ok
[INFO] [stdout] test eink::touch::tests::abs_mt_bit_is_read_from_the_right_word ... ok
[INFO] [stdout] test eink::fb::tests::an_offscreen_surface_presents_to_nothing ... ok
[INFO] [stdout] test eink::touch::tests::a_pen_named_node_is_used_when_it_is_the_only_candidate ... ok
[INFO] [stdout] test convert::tests::each_kind_names_itself_in_three_places ... ok
[INFO] [stdout] test eink::touch::tests::a_pen_named_node_still_loses_to_a_real_panel ... ok
[INFO] [stdout] test eink::fb::tests::the_last_layout_of_a_drain_wins ... ok
[INFO] [stdout] test convert::tests::an_upper_cased_extension_is_the_same_extension ... ok
[INFO] [stdout] test eink::touch::tests::left_drag_is_next ... ok
[INFO] [stdout] test eink::fb::tests::nothing_drained_changes_nothing ... ok
[INFO] [stdout] test eink::fb::tests::only_a_new_layout_is_reported ... ok
[INFO] [stdout] test eink::touch::tests::no_touch_node_yields_none ... ok
[INFO] [stdout] test eink::fb::tests::the_last_event_of_a_drain_wins ... ok
[INFO] [stdout] test eink::touch::tests::scribe_picks_the_finger_panel_not_the_pen ... ok
[INFO] [stdout] test eink::touch::tests::right_drag_is_prev ... ok
[INFO] [stdout] test app::tests::the_panel_is_told_what_runs_here_and_the_record_only_names_it ... ok
[INFO] [stdout] test eink::fb::tests::either_signal_covers_the_window ... ok
[INFO] [stdout] test eink::touch::tests::the_pen_loses_on_capability_even_without_its_name ... ok
[INFO] [stdout] test eink::fb::tests::no_columns_packs_nothing ... ok
[INFO] [stdout] test eink::touch::tests::vertical_drag_is_not_a_swipe ... ok
[INFO] [stdout] test convert::tests::a_missing_binary_resolves_to_no_converter ... ok
[INFO] [stdout] test engine::tests::kfx_output_takes_a_new_extension_and_mobi_keeps_its_own ... ok
[INFO] [stdout] test engine::tests::probe_order_matches_the_engines_own_launcher ... ok
[INFO] [stdout] test font::tests::a_hint_moves_its_face_to_the_front_and_keeps_the_rest_in_order ... ok
[INFO] [stdout] test font::tests::a_run_the_first_face_misses_moves_whole_to_the_next ... ok
[INFO] [stdout] test font::tests::invisible_characters_do_not_decide_the_face ... ok
[INFO] [stdout] test font::tests::language_classification_still_works_even_though_nothing_uses_it ... ok
[INFO] [stdout] test font::tests::a_hint_wins_over_a_face_that_would_also_have_covered_the_run ... ok
[INFO] [stdout] test eink::touch::tests::shallow_diagonal_still_counts ... ok
[INFO] [stdout] test font::tests::a_character_no_face_has_resolves_to_nothing ... ok
[INFO] [stdout] test eink::touch::tests::short_drag_is_not_a_swipe ... ok
[INFO] [stdout] test font::tests::a_hinted_face_that_misses_still_loses_to_coverage ... ok
[INFO] [stdout] test font::tests::a_chain_with_no_readable_candidate_fails_to_load ... ok
[INFO] [stdout] test font::tests::a_run_one_face_covers_is_drawn_entirely_by_it ... ok
[INFO] [stdout] test font::tests::a_run_no_single_face_covers_resolves_per_character ... ok
[INFO] [stdout] test font::tests::control_characters_never_reach_the_rasterizer ... ok
[INFO] [stdout] test engine::tests::a_dotted_title_keeps_everything_but_the_real_extension ... ok
[INFO] [stdout] test engine::tests::classifies_only_what_the_engine_has_a_path_for ... ok
[INFO] [stdout] test font::tests::the_ui_font_wins_on_a_real_device ... ok
[INFO] [stdout] test font::tests::an_empty_run_selects_the_first_face ... ok
[INFO] [stdout] test font::tests::language_tags_name_the_convention_they_are_set_in ... ok
[INFO] [stdout] test convert::tests::a_build_that_will_not_start_is_passed_over_for_one_that_will ... ok
[INFO] [stdout] test eink::fb::tests::a_resize_keeps_the_backing_in_step ... ok
[INFO] [stdout] test install::http::tests::every_failure_has_a_line_short_enough_for_the_banner ... ok
[INFO] [stdout] test install::archive::tests::the_root_is_whatever_holds_the_marker ... ok
[INFO] [stdout] test install::http::tests::the_user_agent_names_the_software_and_resolves ... ok
[INFO] [stdout] test install::record::tests::the_format_is_the_one_both_frontends_agree_on ... ok
[INFO] [stdout] test install::record::tests::a_hand_edited_file_costs_only_the_lines_that_are_wrong ... ok
[INFO] [stdout] test install::archive::tests::an_archive_without_the_marker_writes_nothing ... ok
[INFO] [stdout] test install::record::tests::a_file_that_is_not_there_reads_as_nothing_installed ... ok
[INFO] [stdout] test install::record::tests::an_empty_record_is_a_file_of_comments ... ok
[INFO] [stdout] test install::archive::tests::an_archive_unpacks_out_of_its_own_folder ... ok
[INFO] [stdout] test install::selfupdate::tests::a_later_release_is_offered_and_this_build_is_not_offered_to_itself ... ok
[INFO] [stdout] test install::selfupdate::tests::a_missing_component_reads_as_zero_and_a_suffix_loses_to_the_release ... ok
[INFO] [stdout] test install::selfupdate::tests::a_version_that_cannot_be_read_never_starts_an_update ... ok
[INFO] [stdout] test install::archive::tests::a_damaged_entry_is_caught_rather_than_written ... ok
[INFO] [stdout] test install::selfupdate::tests::the_newest_release_is_taken_by_asset_name_not_by_tag ... ok
[INFO] [stdout] test install::selfupdate::tests::a_first_install_with_nothing_to_carry_over_is_not_an_error ... ok
[INFO] [stdout] test install::selfupdate::tests::the_plugin_asset_of_the_same_release_is_not_this_one ... ok
[INFO] [stdout] test install::record::tests::round_trips_through_the_file_format ... ok
[INFO] [stdout] test install::selfupdate::tests::this_build_names_a_version_that_reads_as_one ... ok
[INFO] [stdout] test install::selfupdate::tests::a_folder_resolves_as_staged_only_once_the_launch_script_is_in_it ... ok
[INFO] [stdout] test install::archive::tests::something_that_is_not_a_zip_is_not_read ... ok
[INFO] [stdout] test install::tests::a_digest_is_read_off_whichever_shape_the_sidecar_takes ... ok
[INFO] [stdout] test install::tests::a_draft_and_a_list_with_nothing_in_it_pick_nothing ... ok
[INFO] [stdout] test install::tests::a_file_hashes_to_what_sha256sum_would_say ... ok
[INFO] [stdout] test install::selfupdate::tests::the_published_archive_unpacks_out_of_the_folder_it_replaces ... ok
[INFO] [stdout] test install::tests::a_step_names_which_add_on_it_is_of_how_many ... ok
[INFO] [stdout] test install::selfupdate::tests::the_settings_both_frontends_share_survive_the_folder_they_sit_in ... ok
[INFO] [stdout] test install::selfupdate::tests::the_shared_files_are_the_ones_the_two_frontends_write ... ok
[INFO] [stdout] test install::selfupdate::tests::the_version_recorded_is_the_one_the_filename_carries ... ok
[INFO] [stdout] test install::tests::an_asset_carrying_no_version_falls_back_to_the_tag ... ok
[INFO] [stdout] test install::selfupdate::tests::every_outcome_says_which_build_it_is_about ... ok
[INFO] [stdout] test install::selfupdate::tests::the_launch_script_names_the_same_builds_and_the_same_folders ... ok
[INFO] [stdout] test install::tests::bokai_is_taken_by_asset_pattern_rather_than_by_version ... ok
[INFO] [stdout] test install::tests::a_tag_published_before_its_assets_is_passed_over ... ok
[INFO] [stdout] test mobi::tests::an_undefined_type_is_not_offered ... ok
[INFO] [stdout] test install::tests::no_release_that_latest_would_return_carries_the_engine ... ok
[INFO] [stdout] test install::tests::the_transferred_line_prefers_a_percentage_and_falls_back_to_a_count ... ok
[INFO] [stdout] test install::tests::bokai_records_its_own_version_off_a_sidle_tag ... ok
[INFO] [stdout] test install::tests::both_sources_are_named_and_nothing_else_is ... ok
[INFO] [stdout] test net::tests::an_on_link_route_alone_is_not_a_way_out ... ok
[INFO] [stdout] test orientation::tests::landscape_reads_as_up ... ok
[INFO] [stdout] test orientation::tests::only_d_is_down ... ok
[INFO] [stdout] test ui::configmenu::tests::a_candidate_is_named_relative_to_the_library_root ... ok
[INFO] [stdout] test ui::configmenu::tests::a_folder_outside_the_library_root_keeps_its_whole_path ... ok
[INFO] [stdout] test install::tests::each_source_names_only_its_own_asset ... ok
[INFO] [stdout] test ui::configmenu::tests::a_hand_edited_format_pair_the_page_has_no_chip_for_fills_none ... ok
[INFO] [stdout] test install::tests::each_source_names_the_page_its_release_comes_from ... ok
[INFO] [stdout] test ui::configmenu::tests::a_tag_long_enough_to_push_the_other_add_on_off_the_panel_is_cut ... ok
[INFO] [stdout] test mobi::tests::short_and_truncated_files_classify_as_nothing ... ok
[INFO] [stdout] test ui::configmenu::tests::a_tap_on_the_folder_row_moves_no_setting ... ok
[INFO] [stdout] test mobi::tests::record0_offset_is_read_from_the_record_list ... ok
[INFO] [stdout] test install::tests::the_engine_comes_off_the_newest_release_carrying_its_asset ... ok
[INFO] [stdout] test net::tests::an_unreadable_table_is_not_an_answer ... ok
[INFO] [stdout] test ui::configmenu::tests::deselecting_every_folder_is_reachable_and_says_so ... ok
[INFO] [stdout] test ui::configmenu::tests::each_convert_chip_toggles_exactly_its_own_format ... ok
[INFO] [stdout] test mobi::tests::reads_each_defined_encryption_type ... ok
[INFO] [stdout] test mobi::tests::rejects_databases_that_are_not_mobipocket ... ok
[INFO] [stdout] test net::tests::columns_are_read_by_position ... ok
[INFO] [stdout] test ui::configmenu::tests::each_scan_chip_toggles_exactly_its_own_folder ... ok
[INFO] [stdout] test ui::configmenu::tests::every_row_of_the_page_is_reachable ... ok
[INFO] [stdout] test ui::configmenu::tests::every_item_either_changes_a_row_or_is_not_a_control ... ok
[INFO] [stdout] test net::tests::a_default_route_without_rtf_up_does_not_count ... ok
[INFO] [stdout] test ui::configmenu::tests::each_get_chip_leaves_the_panel_somewhere_of_its_own ... ok
[INFO] [stdout] test ui::configmenu::tests::no_status_line_runs_wider_than_the_panel_allows ... ok
[INFO] [stdout] test ui::configmenu::tests::no_note_line_runs_off_the_narrowest_panel ... ok
[INFO] [stdout] test ui::configmenu::tests::the_scan_row_draws_one_chip_per_folder_on_the_device ... ok
[INFO] [stdout] test ui::configmenu::tests::folders_can_be_scanned_together ... ok
[INFO] [stdout] test ui::configmenu::tests::the_folder_row_carries_the_whole_path_it_can ... ok
[INFO] [stdout] test net::tests::a_default_route_means_reachable ... ok
[INFO] [stdout] test ui::configmenu::tests::the_format_chips_are_a_pick_and_leave_exactly_one_filled ... ok
[INFO] [stdout] test ui::configmenu::tests::the_scan_note_counts_the_books_the_grid_would_show ... ok
[INFO] [stdout] test ui::configmenu::tests::the_folder_row_is_a_button_carrying_the_current_folder ... ok
[INFO] [stdout] test ui::configmenu::tests::the_status_line_asks_for_the_add_on_only_when_it_is_missing ... ok
[INFO] [stdout] test ui::configmenu::tests::the_get_row_is_two_buttons_and_neither_reads_as_a_setting ... ok
[INFO] [stdout] test ui::grid::tests::the_grid_is_centred_between_the_header_band_and_the_strip ... ok
[INFO] [stdout] test ui::configmenu::tests::the_status_line_names_the_build_and_says_when_one_is_waiting ... ok
[INFO] [stdout] test ui::configmenu::tests::the_add_ons_note_names_both_of_them_and_what_each_one_is ... ok
[INFO] [stdout] test ui::keyboard::tests::an_existing_folder_reads_as_one ... ok
[INFO] [stdout] test ui::configmenu::tests::the_convert_chips_are_grey_and_untappable_without_the_add_on ... ok
[INFO] [stdout] test ui::keyboard::tests::the_verdict_names_what_done_would_do ... ok
[INFO] [stdout] test ui::pager::tests::a_narrow_zone_gives_up_its_inset ... ok
[INFO] [stdout] test ui::pager::tests::a_panel_with_no_room_still_opens_the_way_out ... ok
[INFO] [stdout] test ui::pager::tests::a_wide_panel_keeps_the_full_zone_widths ... ok
[INFO] [stdout] test ui::pager::tests::an_empty_grid_still_has_one_page ... ok
[INFO] [stdout] test ui::pager::tests::decrypt_all_is_dead_when_there_is_nothing_left_to_decrypt ... ok
[INFO] [stdout] test ui::pager::tests::a_single_page_has_no_nav_zone ... ok
[INFO] [stdout] test ui::keyboard::tests::layout_covers_every_letter_digit_and_path_mark ... ok
[INFO] [stdout] test ui::pager::tests::every_fixed_zone_is_reachable_on_the_narrowest_panel ... ok
[INFO] [stdout] test ui::keyboard::tests::shift_reaches_upper_case_and_the_underscore ... ok
[INFO] [stdout] test ui::pager::tests::every_panel_keeps_a_tappable_zone_for_each_control ... ok
[INFO] [stdout] test ui::pager::tests::nav_splits_its_own_region_rather_than_the_screen ... ok
[INFO] [stdout] test ui::pager::tests::taps_above_the_strip_belong_to_the_grid ... ok
[INFO] [stdout] test ui::panel::tests::a_chip_is_its_own_text_plus_the_blank_either_side ... ok
[INFO] [stdout] test ui::keyboard::tests::the_strip_slots_tile_the_width_without_a_gap ... ok
[INFO] [stdout] test ui::panel::tests::a_chip_past_the_right_margin_is_dropped_rather_than_shrunk ... ok
[INFO] [stdout] test ui::grid::tests::degenerate_panel_still_yields_one_cell ... ok
[INFO] [stdout] test ui::grid::tests::every_shipped_panel_holds_at_least_the_target_page ... ok
[INFO] [stdout] test ui::grid::tests::scribe_gains_rows_and_columns ... ok
[INFO] [stdout] test ui::grid::tests::seven_inch_panels_are_unchanged ... ok
[INFO] [stdout] test ui::grid::tests::taps_in_gaps_and_margins_miss ... ok
[INFO] [stdout] test ui::header::tests::the_count_reads_as_work_remaining ... ok
[INFO] [stdout] test ui::configmenu::tests::the_whole_page_fits_the_shortest_panel ... ok
[INFO] [stdout] test ui::keyboard::tests::del_sits_at_the_right_end_of_the_number_row ... ok
[INFO] [stdout] test ui::keyboard::tests::every_character_a_kindle_path_is_spelled_with_is_reachable ... ok
[INFO] [stdout] test ui::panel::tests::a_gated_chip_is_live_only_when_its_gate_is ... ok
[INFO] [stdout] test install::selfupdate::tests::a_download_is_proved_by_whichever_of_the_two_builds_starts ... ok
[INFO] [stdout] test ui::pager::tests::the_zones_stay_in_order_and_inside_the_panel ... ok
[INFO] [stdout] test ui::panel::tests::an_inert_chip_is_laid_out_and_not_tappable ... ok
[INFO] [stdout] test ui::panel::tests::a_heading_and_a_note_take_no_taps ... ok
[INFO] [stdout] test ui::panel::tests::a_tap_lands_on_the_chip_it_is_over_and_nowhere_else ... ok
[INFO] [stdout] test ui::panel::tests::nothing_above_the_rows_or_on_the_strip_is_a_row ... ok
[INFO] [stdout] test ui::panel::tests::one_row_refreshes_across_the_panel_and_only_its_own_height ... ok
[INFO] [stdout] test ui::panel::tests::every_row_starts_where_the_one_above_it_ends ... ok
[INFO] [stdout] test ui::panel::tests::only_the_items_drawn_in_grey_say_so ... ok
[INFO] [stdout] test ui::scale::tests::a_hairline_survives_the_smallest_panel ... ok
[INFO] [stdout] test ui::panel::tests::the_tiers_fit_the_page_onto_the_shortest_panel ... ok
[INFO] [stdout] test ui::scale::tests::a_design_pixel_shrinks_with_the_panel ... ok
[INFO] [stdout] test ui::setup::tests::the_steps_name_the_asset_the_url_and_the_destination ... ok
[INFO] [stdout] test ui::setup::tests::the_two_failures_do_not_share_their_wording ... ok
[INFO] [stdout] test ui::setup::tests::the_bottom_row_is_the_only_thing_that_takes_a_tap ... ok
[INFO] [stdout] test ui::setup::tests::the_offer_says_what_each_button_does ... ok
[INFO] [stdout] test ui::strip::tests::a_centred_baseline_balances_the_white ... ok
[INFO] [stdout] test wrap::tests::clamp_keeps_all_lines_when_within_max ... ok
[INFO] [stdout] test wrap::tests::empty_text_returns_no_lines ... ok
[INFO] [stdout] test wrap::tests::fits_single_line_when_under_max ... ok
[INFO] [stdout] test wrap::tests::long_word_breaks_at_char_when_too_wide ... ok
[INFO] [stdout] test wrap::tests::no_line_exceeds_max_in_mixed_text ... ok
[INFO] [stdout] test ui::scale::tests::a_signed_constant_scales_both_ways ... ok
[INFO] [stdout] test wrap::tests::wraps_cjk_at_char_boundaries ... ok
[INFO] [stdout] test wrap::tests::wraps_latin_at_word_boundaries ... ok
[INFO] [stdout] test ui::scale::tests::the_shipped_widths_carry_their_own_density ... ok
[INFO] [stdout] test ui::panel::tests::a_note_is_as_tall_as_the_lines_it_holds ... ok
[INFO] [stdout] test ui::strip::tests::the_bar_scales_with_the_panel ... ok
[INFO] [stdout] test ui::strip::tests::the_bar_ends_the_panel ... ok
[INFO] [stdout] test ui::toast::tests::contains_covers_the_rect_and_stops_at_its_far_edge ... ok
[INFO] [stdout] test wrap::tests::clamp_to_one_line_ellipsizes ... ok
[INFO] [stdout] test wrap::tests::clamp_truncates_and_ellipsizes_last_line ... ok
[INFO] [stdout] test ui::panel::tests::the_chips_of_every_row_start_at_one_column ... ok
[INFO] [stdout] test ui::panel::tests::a_run_too_wide_for_the_column_starts_after_its_own_label ... ok
[INFO] [stdout] test ui::panel::tests::a_page_longer_than_the_panel_is_cut_at_the_strip ... ok
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/release/deps/kfxdedrm_fe_native-0012c849a566a1ad)
[INFO] [stdout] test install::archive::tests::a_name_that_walks_out_of_the_folder_is_refused ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 218 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.15s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/preview/main.rs (/opt/rustwide/target/release/deps/preview-474b152858664b73)
[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] [stdout] 
[INFO] [stderr]      Running tests/discovery.rs (/opt/rustwide/target/release/deps/discovery-40b2f7d6849053b7)
[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] [stdout] 
[INFO] [stdout] running 17 tests
[INFO] [stdout] test a_kfx_needs_its_voucher_to_be_listed ... ok
[INFO] [stdout] test a_book_missing_a_conversion_is_not_done_yet ... ok
[INFO] [stdout] test each_format_toggle_removes_only_its_own_books ... ok
[INFO] [stdout] test a_drm_free_sideload_is_never_listed ... ok
[INFO] [stdout] test already_decrypted_books_are_marked_or_hidden ... ok
[INFO] [stdout] test a_cover_is_taken_only_when_it_is_complete ... ok
[INFO] [stdout] test the_count_is_what_the_grid_would_show_there ... ok
[INFO] [stdout] test the_scan_stops_at_one_level ... ok
[INFO] [stdout] test sidecar_folders_are_never_offered ... ok
[INFO] [stdout] test roots_are_listed_in_the_order_they_were_given ... ok
[INFO] [stdout] test a_selected_folder_stays_on_the_list_when_it_empties ... ok
[INFO] [stdout] test a_folder_holding_a_drmd_book_is_offered_and_an_empty_one_is_not ... ok
[INFO] [stdout] test done_is_judged_against_the_output_folder_it_is_given ... ok
[INFO] [stdout] test a_finished_book_still_counts_towards_its_folder ... ok
[INFO] [stderr]      Running tests/real_archives.rs (/opt/rustwide/target/release/deps/real_archives-c9e236a5e6431642)
[INFO] [stdout] test an_absent_root_yields_nothing_rather_than_failing ... ok
[INFO] [stdout] test the_converter_has_to_run_before_it_counts_as_installed ... ok
[INFO] [stdout] test a_missing_engine_and_a_broken_one_are_told_apart ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 17 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test the_engine_archive_unpacks_into_the_folder_the_probe_walks ... ok
[INFO] [stdout] test the_bokai_archive_unpacks_out_of_a_deeper_root ... ok
[INFO] [stdout] test an_archive_that_is_not_the_one_asked_for_is_refused ... ok
[INFO] [stderr]      Running tests/shared_settings_file.rs (/opt/rustwide/target/release/deps/shared_settings_file-89c04d5a5c413b72)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test the_install_record_is_what_the_plugin_expects ... ok
[INFO] [stdout] test a_file_with_no_folder_selected_is_what_the_plugin_expects ... ok
[INFO] [stdout] test the_default_settings_file_is_what_the_plugin_expects ... ok
[INFO] [stderr]    Doc-tests kfxdedrm_fe_native
[INFO] [stdout] test the_fixtures_read_back_as_the_settings_that_wrote_them ... ok
[INFO] [stdout] test the_record_fixture_reads_back_as_the_releases_that_wrote_it ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "95619a089e72a477a9f6d31deb9f8a031ba03bae315f0217876c7910af2933b5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "95619a089e72a477a9f6d31deb9f8a031ba03bae315f0217876c7910af2933b5", kill_on_drop: false }`
[INFO] [stdout] 95619a089e72a477a9f6d31deb9f8a031ba03bae315f0217876c7910af2933b5
