[INFO] cloning repository https://github.com/shiguri-01/preview-pdf [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/shiguri-01/preview-pdf" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fshiguri-01%2Fpreview-pdf", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fshiguri-01%2Fpreview-pdf'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] b2d5118f178371e1de35a29eb2e698d11cd144fa [INFO] testing shiguri-01/preview-pdf against beta-2026-04-21 for beta-1.96-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fshiguri-01%2Fpreview-pdf" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/shiguri-01/preview-pdf [INFO] finished tweaking git repo https://github.com/shiguri-01/preview-pdf [INFO] tweaked toml for git repo https://github.com/shiguri-01/preview-pdf written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/shiguri-01/preview-pdf on toolchain beta-2026-04-21 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/shiguri-01/preview-pdf 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" "+beta-2026-04-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/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" "+beta-2026-04-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d31979357d98a0e4435200bb1b1899a42e41e0e00ebceead99e3b42d93b291ad [INFO] running `Command { std: "docker" "start" "-a" "d31979357d98a0e4435200bb1b1899a42e41e0e00ebceead99e3b42d93b291ad", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d31979357d98a0e4435200bb1b1899a42e41e0e00ebceead99e3b42d93b291ad", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d31979357d98a0e4435200bb1b1899a42e41e0e00ebceead99e3b42d93b291ad", kill_on_drop: false }` [INFO] [stdout] d31979357d98a0e4435200bb1b1899a42e41e0e00ebceead99e3b42d93b291ad [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 471db1aa795daee8f7a9fda909e79d43fc79563b3e9b89a7052842845547b01d [INFO] running `Command { std: "docker" "start" "-a" "471db1aa795daee8f7a9fda909e79d43fc79563b3e9b89a7052842845547b01d", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Compiling quote v1.0.44 [INFO] [stderr] Compiling unicode-ident v1.0.24 [INFO] [stderr] Compiling cfg-if v1.0.4 [INFO] [stderr] Compiling libc v0.2.182 [INFO] [stderr] Compiling libm v0.2.16 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling autocfg v1.5.0 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling simd-adler32 v0.3.8 [INFO] [stderr] Compiling allocator-api2 v0.2.21 [INFO] [stderr] Compiling equivalent v1.0.2 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling crc32fast v1.5.0 [INFO] [stderr] Compiling rustversion v1.0.22 [INFO] [stderr] Compiling arrayvec v0.7.6 [INFO] [stderr] Compiling adler2 v2.0.1 [INFO] [stderr] Compiling unicode-segmentation v1.12.0 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Compiling itertools v0.14.0 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling rayon-core v1.13.0 [INFO] [stderr] Compiling zlib-rs v0.6.2 [INFO] [stderr] Compiling zerocopy v0.8.40 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling memchr v2.8.0 [INFO] [stderr] Compiling stable_deref_trait v1.2.1 [INFO] [stderr] Compiling itoa v1.0.17 [INFO] [stderr] Compiling ident_case v1.0.1 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling anyhow v1.0.102 [INFO] [stderr] Compiling scopeguard v1.2.0 [INFO] [stderr] Compiling lock_api v0.4.14 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling castaway v0.2.4 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling static_assertions v1.1.0 [INFO] [stderr] Compiling signal-hook v0.3.18 [INFO] [stderr] Compiling ryu v1.0.23 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling rayon v1.11.0 [INFO] [stderr] Compiling as-slice v0.2.1 [INFO] [stderr] Compiling fdeflate v0.3.7 [INFO] [stderr] Compiling foldhash v0.2.0 [INFO] [stderr] Compiling unicode-width v0.2.0 [INFO] [stderr] Compiling built v0.8.0 [INFO] [stderr] Compiling av-scenechange v0.14.1 [INFO] [stderr] Compiling indoc v2.0.7 [INFO] [stderr] Compiling instability v0.3.11 [INFO] [stderr] Compiling hashbrown v0.16.1 [INFO] [stderr] Compiling aligned v0.4.3 [INFO] [stderr] Compiling rav1e v0.8.1 [INFO] [stderr] Compiling nom v8.0.0 [INFO] [stderr] Compiling core2 v0.4.0 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling siphasher v1.0.2 [INFO] [stderr] Compiling zune-core v0.5.1 [INFO] [stderr] Compiling num-rational v0.4.2 [INFO] [stderr] Compiling y4m v0.8.0 [INFO] [stderr] Compiling litrs v1.0.0 [INFO] [stderr] Compiling pastey v0.1.1 [INFO] [stderr] Compiling quick-error v2.0.1 [INFO] [stderr] Compiling zune-jpeg v0.5.12 [INFO] [stderr] Compiling document-features v0.2.12 [INFO] [stderr] Compiling signal-hook-mio v0.2.5 [INFO] [stderr] Compiling bitstream-io v4.9.0 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling pxfm v0.1.27 [INFO] [stderr] Compiling darling_core v0.23.0 [INFO] [stderr] Compiling maybe-rayon v0.1.1 [INFO] [stderr] Compiling simd_helpers v0.1.0 [INFO] [stderr] Compiling noop_proc_macro v0.3.0 [INFO] [stderr] Compiling foldhash v0.1.5 [INFO] [stderr] Compiling imgref v1.12.0 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling new_debug_unreachable v1.0.6 [INFO] [stderr] Compiling weezl v0.1.12 [INFO] [stderr] Compiling zune-core v0.4.12 [INFO] [stderr] Compiling flate2 v1.1.9 [INFO] [stderr] Compiling zune-jpeg v0.4.21 [INFO] [stderr] Compiling loop9 v0.1.5 [INFO] [stderr] Compiling hashbrown v0.15.5 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling lru v0.16.3 [INFO] [stderr] Compiling phf_shared v0.13.1 [INFO] [stderr] Compiling unicode-truncate v2.0.1 [INFO] [stderr] Compiling compact_str v0.9.0 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling convert_case v0.10.0 [INFO] [stderr] Compiling avif-serialize v0.8.8 [INFO] [stderr] Compiling bytemuck_derive v1.10.2 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling equator-macro v0.4.2 [INFO] [stderr] Compiling zerocopy-derive v0.8.40 [INFO] [stderr] Compiling arg_enum_proc_macro v0.3.4 [INFO] [stderr] Compiling equator v0.4.2 [INFO] [stderr] Compiling profiling-procmacros v1.0.17 [INFO] [stderr] Compiling aligned-vec v0.6.4 [INFO] [stderr] Compiling profiling v1.0.17 [INFO] [stderr] Compiling strum_macros v0.27.2 [INFO] [stderr] Compiling fax_derive v0.2.0 [INFO] [stderr] Compiling v_frame v0.3.9 [INFO] [stderr] Compiling av1-grain v0.2.5 [INFO] [stderr] Compiling bytemuck v1.25.0 [INFO] [stderr] Compiling num-derive v0.4.2 [INFO] [stderr] Compiling darling_macro v0.23.0 [INFO] [stderr] Compiling fearless_simd v0.3.0 [INFO] [stderr] Compiling darling v0.23.0 [INFO] [stderr] Compiling kasuari v0.4.11 [INFO] [stderr] Compiling fax v0.2.6 [INFO] [stderr] Compiling moxcms v0.7.11 [INFO] [stderr] Compiling zune-inflate v0.2.54 [INFO] [stderr] Compiling radium v0.7.0 [INFO] [stderr] Compiling byteorder-lite v0.1.0 [INFO] [stderr] Compiling powerfmt v0.2.0 [INFO] [stderr] Compiling bit_field v0.10.3 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stderr] Compiling lebe v0.5.3 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Compiling color_quant v1.1.0 [INFO] [stderr] Compiling rgb v0.8.53 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling gif v0.14.1 [INFO] [stderr] Compiling strum v0.27.2 [INFO] [stderr] Compiling ratatui-core v0.1.0 [INFO] [stderr] Compiling image-webp v0.2.4 [INFO] [stderr] Compiling phf_generator v0.13.1 [INFO] [stderr] Compiling deranged v0.5.8 [INFO] [stderr] Compiling qoi v0.4.1 [INFO] [stderr] Compiling derive_more-impl v2.1.1 [INFO] [stderr] Compiling png v0.18.1 [INFO] [stderr] Compiling kurbo v0.12.0 [INFO] [stderr] Compiling palette v0.7.6 [INFO] [stderr] Compiling ref-cast v1.0.25 [INFO] [stderr] Compiling time-core v0.1.8 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling by_address v1.2.1 [INFO] [stderr] Compiling num-conv v0.2.0 [INFO] [stderr] Compiling tap v1.0.1 [INFO] [stderr] Compiling rand_core v0.9.5 [INFO] [stderr] Compiling futures-core v0.3.32 [INFO] [stderr] Compiling linux-raw-sys v0.4.15 [INFO] [stderr] Compiling num_threads v0.1.7 [INFO] [stderr] Compiling time v0.3.47 [INFO] [stderr] Compiling half v2.7.1 [INFO] [stderr] Compiling wyz v0.5.1 [INFO] [stderr] Compiling palette_derive v0.7.6 [INFO] [stderr] Compiling derive_more v2.1.1 [INFO] [stderr] Compiling tiff v0.10.3 [INFO] [stderr] Compiling exr v1.74.0 [INFO] [stderr] Compiling phf_macros v0.13.1 [INFO] [stderr] Compiling ravif v0.12.0 [INFO] [stderr] Compiling font-types v0.11.0 [INFO] [stderr] Compiling safe_arch v0.9.3 [INFO] [stderr] Compiling color v0.3.2 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling ref-cast-impl v1.0.25 [INFO] [stderr] Compiling line-clipping v0.3.5 [INFO] [stderr] Compiling hayro-ccitt v0.2.0 [INFO] [stderr] Compiling fast-srgb8 v1.0.0 [INFO] [stderr] Compiling linebender_resource_handle v0.1.1 [INFO] [stderr] Compiling utf8parse v0.2.2 [INFO] [stderr] Compiling funty v2.0.0 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling anstyle-parse v0.2.7 [INFO] [stderr] Compiling hayro-jbig2 v0.1.0 [INFO] [stderr] Compiling png v0.17.16 [INFO] [stderr] Compiling peniko v0.5.0 [INFO] [stderr] Compiling image v0.25.9 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling bitvec v1.0.1 [INFO] [stderr] Compiling phf v0.13.1 [INFO] [stderr] Compiling ratatui-widgets v0.3.0 [INFO] [stderr] Compiling wide v0.8.3 [INFO] [stderr] Compiling read-fonts v0.37.0 [INFO] [stderr] Compiling crossterm v0.29.0 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling rand_xoshiro v0.7.0 [INFO] [stderr] Compiling hayro-jpeg2000 v0.2.0 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling strum_macros v0.26.4 [INFO] [stderr] Compiling ordered-float v5.1.0 [INFO] [stderr] Compiling itertools v0.13.0 [INFO] [stderr] Compiling unicode-width v0.1.14 [INFO] [stderr] Compiling is_terminal_polyfill v1.70.2 [INFO] [stderr] Compiling zmij v1.0.21 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling rustc-hash v2.1.1 [INFO] [stderr] Compiling anstyle v1.0.13 [INFO] [stderr] Compiling colorchoice v1.0.4 [INFO] [stderr] Compiling anstyle-query v1.1.5 [INFO] [stderr] Compiling hayro-syntax v0.5.0 [INFO] [stderr] Compiling anstream v0.6.21 [INFO] [stderr] Compiling strum v0.26.3 [INFO] [stderr] Compiling quantette v0.5.1 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling unicode-truncate v1.1.0 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling ratatui-crossterm v0.1.0 [INFO] [stderr] Compiling ratatui-macros v0.7.0 [INFO] [stderr] Compiling hayro-font v0.4.0 [INFO] [stderr] Compiling vello_common v0.0.5 [INFO] [stderr] Compiling crossterm v0.28.1 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling skrifa v0.40.0 [INFO] [stderr] Compiling lru v0.12.5 [INFO] [stderr] Compiling compact_str v0.8.1 [INFO] [stderr] Compiling cassowary v0.3.0 [INFO] [stderr] Compiling winnow v0.7.14 [INFO] [stderr] Compiling vsimd v0.8.0 [INFO] [stderr] Compiling clap_lex v1.0.0 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling pin-project-lite v0.2.17 [INFO] [stderr] Compiling outref v0.5.2 [INFO] [stderr] Compiling ratatui-image v10.0.6 [INFO] [stderr] Compiling base64-simd v0.8.0 [INFO] [stderr] Compiling clap_builder v4.5.60 [INFO] [stderr] Compiling ratatui v0.29.0 [INFO] [stderr] Compiling icy_sixel v0.5.0 [INFO] [stderr] Compiling toml_parser v1.0.9+spec-1.1.0 [INFO] [stderr] Compiling hayro-interpret v0.5.0 [INFO] [stderr] Compiling vello_cpu v0.0.5 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling ratatui v0.30.0 [INFO] [stderr] Compiling toml_datetime v0.7.5+spec-1.1.0 [INFO] [stderr] Compiling serde_spanned v1.0.4 [INFO] [stderr] Compiling fast_image_resize v5.5.0 [INFO] [stderr] Compiling nanorand v0.7.0 [INFO] [stderr] Compiling futures-macro v0.3.32 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling clap_derive v4.5.55 [INFO] [stderr] Compiling tokio-macros v2.6.0 [INFO] [stderr] Compiling spin v0.9.8 [INFO] [stderr] Compiling slab v0.4.12 [INFO] [stderr] Compiling futures-sink v0.3.32 [INFO] [stderr] Compiling toml_writer v1.0.6+spec-1.1.0 [INFO] [stderr] Compiling futures-task v0.3.32 [INFO] [stderr] Compiling toml v0.9.12+spec-1.1.0 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling tokio v1.49.0 [INFO] [stderr] Compiling hayro v0.5.0 [INFO] [stderr] Compiling clap v4.5.60 [INFO] [stderr] Compiling flume v0.11.1 [INFO] [stderr] Compiling tui-input v0.11.1 [INFO] [stderr] Compiling fast_image_resize v6.0.0 [INFO] [stderr] Compiling preview-pdf v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 5m 57s [INFO] running `Command { std: "docker" "inspect" "471db1aa795daee8f7a9fda909e79d43fc79563b3e9b89a7052842845547b01d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "471db1aa795daee8f7a9fda909e79d43fc79563b3e9b89a7052842845547b01d", kill_on_drop: false }` [INFO] [stdout] 471db1aa795daee8f7a9fda909e79d43fc79563b3e9b89a7052842845547b01d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a1fb8fded2de225577654195cd3a39ec3becde198a226214a15f428d87c0bc05 [INFO] running `Command { std: "docker" "start" "-a" "a1fb8fded2de225577654195cd3a39ec3becde198a226214a15f428d87c0bc05", kill_on_drop: false }` [INFO] [stderr] Compiling preview-pdf v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 34.71s [INFO] running `Command { std: "docker" "inspect" "a1fb8fded2de225577654195cd3a39ec3becde198a226214a15f428d87c0bc05", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a1fb8fded2de225577654195cd3a39ec3becde198a226214a15f428d87c0bc05", kill_on_drop: false }` [INFO] [stdout] a1fb8fded2de225577654195cd3a39ec3becde198a226214a15f428d87c0bc05 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 3480eb84815c47bb35c803723541419ac675147b91e51a01c6637e1f42b99548 [INFO] running `Command { std: "docker" "start" "-a" "3480eb84815c47bb35c803723541419ac675147b91e51a01c6637e1f42b99548", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.88s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pvf-4aa67210e24219fa) [INFO] [stdout] [INFO] [stdout] running 413 tests [INFO] [stdout] test app::actors::tests::render_actor_prefetch_due_is_consumed_once ... ok [INFO] [stdout] test app::actors::tests::ui_actor_redraw_flag_roundtrip ... ok [INFO] [stdout] test app::event_loop::tests::cold_start_initial_preview_plan_is_disabled_after_navigation_begins ... ok [INFO] [stdout] test app::event_loop::tests::cold_start_initial_preview_plan_is_available_before_first_image ... ok [INFO] [stdout] test app::event_bus::tests::spawn_headless_creates_runtime_without_tasks ... ok [INFO] [stdout] test app::event_bus::tests::spawn_interactive_creates_runtime_with_tasks ... ok [INFO] [stdout] test app::event_loop::tests::cold_start_initial_preview_plan_is_disabled_after_first_image ... ok [INFO] [stdout] test app::event_loop::tests::cold_start_initial_preview_plan_stays_available_until_current_frame_is_cached ... ok [INFO] [stdout] test app::event_loop::tests::wake_timeout_clears_terminal_when_sequence_dispatch_requests_it ... ok [INFO] [stdout] test app::frame_ops::tests::compose_spread_frame_keeps_blank_slot_for_missing_side ... ok [INFO] [stdout] test app::frame_ops::tests::compose_spread_frame_places_left_and_right_with_gap ... ok [INFO] [stdout] test app::actors::tests::ui_actor_waits_for_pending_redraw_only_while_busy_without_cached_frame ... ok [INFO] [stdout] test app::event_loop::tests::resolve_command_request_preserves_explicit_pan_amounts ... ok [INFO] [stdout] test app::event_loop::tests::resolve_command_uses_short_edge_fifth_for_default_pan_step ... ok [INFO] [stdout] test app::frame_ops::tests::crop_frame_for_viewport_normalizes_negative_and_overflow_pan ... ok [INFO] [stdout] test app::frame_ops::tests::prepare_presenter_frame_without_crop_reuses_pixel_buffer ... ok [INFO] [stdout] test app::frame_ops::tests::crop_frame_for_viewport_applies_pan_offset ... ok [INFO] [stdout] test app::event_loop::tests::command_error_becomes_notice_and_loop_continues ... ok [INFO] [stdout] test app::input_ops::tests::batched_palette_open_and_close_clears_pending_sequences ... ok [INFO] [stdout] test app::event_loop::tests::resolve_command_clamps_default_pan_step_to_at_least_one_cell ... ok [INFO] [stdout] test app::event_loop::tests::input_outcome_queues_commands_before_quit_event ... ok [INFO] [stdout] test app::input_ops::tests::dispatch_command_clears_pending_sequences_after_mode_change ... ok [INFO] [stdout] test app::input_ops::tests::help_key_requests_open_help_command ... ok [INFO] [stdout] test app::input_ops::tests::help_mode_ignores_question_mark_key ... ok [INFO] [stdout] test app::input_ops::tests::palette_close_repairs_stale_palette_mode_even_without_active_session ... ok [INFO] [stdout] test app::input_ops::tests::help_close_requests_viewer_area_clear ... ok [INFO] [stdout] test app::input_ops::tests::palette_close_clears_terminal_and_restores_normal_mode ... ok [INFO] [stdout] test app::frame_ops::tests::crop_frame_for_viewport_clamps_when_target_exceeds_source ... ok [INFO] [stdout] test app::event_loop::tests::wait_next_event_maps_presenter_event_then_eof_to_wake ... ok [INFO] [stdout] test app::input_ops::tests::help_mode_scrolls_and_requests_close_help ... ok [INFO] [stdout] test app::input_ops::tests::pending_sequence_prevents_help_toggle_from_stealing_followup_key ... ok [INFO] [stdout] test app::input_ops::tests::opening_palette_clears_pending_sequences ... ok [INFO] [stdout] test app::input_ops::tests::pending_sequence_waits_for_confirmation ... ok [INFO] [stdout] test app::nav::tests::nav_tracker_bumps_generation_for_each_page_step ... ok [INFO] [stdout] test app::input_ops::tests::timed_out_sequence_returns_expired_command_before_processing_new_key ... ok [INFO] [stdout] test app::input_ops::tests::quit_key_requests_immediate_quit_without_command_requeue ... ok [INFO] [stdout] test app::nav::tests::nav_tracker_treats_two_page_spread_steps_as_continuous ... ok [INFO] [stdout] test app::perf_runner::tests::headless_terminal_session_supports_terminal_surface_contract ... ok [INFO] [stdout] test app::render_ops::tests::process_render_result_ignores_prefetch_render_failure_notice ... ok [INFO] [stdout] test app::input_ops::tests::timed_out_sequence_followed_by_quit_sets_quit_requested ... ok [INFO] [stdout] test app::scale::tests::input_poll_timeout_is_idle_without_pending_work ... ok [INFO] [stdout] test app::render_ops::tests::process_render_result_surfaces_visible_render_failure ... ok [INFO] [stdout] test app::runtime::tests::spread_render_spaces_offsets_right_page_after_blank_left_slot ... ok [INFO] [stdout] test app::runtime::tests::spread_render_spaces_skips_page_dimension_failures_per_page ... ok [INFO] [stdout] test app::scale::tests::input_poll_timeout_is_busy_when_render_or_encode_is_pending ... ok [INFO] [stdout] test app::input_ops::tests::timeout_flush_ignores_pending_sequences_outside_normal_mode ... ok [INFO] [stdout] test app::scale::tests::render_scale_falls_back_when_cell_size_missing ... ok [INFO] [stdout] test app::scale::tests::render_scale_uses_viewport_and_page_dimensions ... ok [INFO] [stdout] test app::scale::tests::render_scale_upsamples_when_viewport_is_smaller_than_page ... ok [INFO] [stdout] test app::input_ops::tests::wake_flushes_timed_out_sequence ... ok [INFO] [stdout] test app::scale::tests::render_scale_is_capped_by_preferred_max ... ok [INFO] [stdout] test app::scale::tests::zoom_steps_move_to_the_next_or_previous_ladder_entry ... ok [INFO] [stdout] test app::state::tests::notice_action_for_invalid_argument_is_warning ... ok [INFO] [stdout] test app::state::tests::notice_action_for_io_error_is_error ... ok [INFO] [stdout] test app::tests::runtime_worker::prepare_current_page_uses_zero_overlay_stamp_when_decoration_falls_back ... ok [INFO] [stdout] test app::tests::runtime_worker::prefetch_encode_from_cache_invokes_presenter ... ok [INFO] [stdout] test app::scale::tests::input_poll_timeout_is_busy_when_prefetch_is_pending ... ok [INFO] [stdout] test app::view_ops::tests::compute_initial_preview_plan_handles_tail_spread ... ok [INFO] [stdout] test app::tests::runtime_worker::prefetch_encode_from_cache_skips_when_overlay_active ... ok [INFO] [stdout] test app::view_ops::tests::compute_initial_preview_plan_includes_both_spread_pages ... ok [INFO] [stdout] test app::view_ops::tests::display_decision_clears_and_error_for_failed_without_image ... ok [INFO] [stdout] test app::view_ops::tests::compute_initial_preview_plan_uses_lower_scale_on_cold_start ... ok [INFO] [stdout] test app::tests::runtime_worker::schedule_navigation_updates_queue_and_cancellation_metrics ... ok [INFO] [stdout] test app::view_ops::tests::display_decision_clears_and_loading_for_pending_without_image ... ok [INFO] [stdout] test app::view_ops::tests::display_decision_clears_when_no_image_drawn ... ok [INFO] [stdout] test app::view_ops::tests::display_decision_overlays_loading_on_pending_image ... ok [INFO] [stdout] test app::view_ops::tests::display_decision_overlays_loading_when_pending_and_viewer_has_image ... ok [INFO] [stdout] test app::view_ops::tests::display_decision_overlays_error_on_failed_image ... ok [INFO] [stdout] test app::view_ops::tests::loading_target_formats_single_page_with_p_prefix ... ok [INFO] [stdout] test app::view_ops::tests::loading_target_formats_spread_with_pp_prefix ... ok [INFO] [stdout] test app::view_ops::tests::presenter_render_options_derive_stale_fallback_from_viewer_image_state ... ok [INFO] [stdout] test app::view_ops::tests::render_failure_message_falls_back_to_current_page ... ok [INFO] [stdout] test app::view_ops::tests::render_failure_message_uses_single_page_label ... ok [INFO] [stdout] test app::view_ops::tests::render_failure_message_uses_spread_label ... ok [INFO] [stdout] test app::view_ops::tests::render_target_uses_loading_label_convention ... ok [INFO] [stdout] test app::view_ops::tests::resolve_layout_dimensions_uses_blank_partner_width_for_tail_spread ... ok [INFO] [stdout] test app::view_ops::tests::resolve_layout_dimensions_uses_both_pages_when_trailing_exists ... ok [INFO] [stdout] test app::view_ops::tests::sync_render_notice_clears_stale_render_error_after_success ... ok [INFO] [stdout] test app::view_ops::tests::sync_render_notice_clears_stale_render_error_while_pending ... ok [INFO] [stdout] test app::view_ops::tests::sync_render_notice_preserves_non_render_notice ... ok [INFO] [stdout] test backend::hayro::tests::decode_pdf_text_string_decodes_pdfdoc_encoding_control_byte_0x16 ... ok [INFO] [stdout] test backend::hayro::tests::decode_pdf_text_string_decodes_utf16be_bom ... ok [INFO] [stdout] test backend::hayro::tests::decode_pdf_text_string_falls_back_to_utf8_lossy_without_bom ... ok [INFO] [stdout] test backend::hayro::tests::decode_pdf_text_string_uses_pdfdoc_encoding_without_bom ... ok [INFO] [stdout] test backend::hayro::tests::extract_outline_handles_cyclic_named_destination_tree ... ok [INFO] [stdout] test app::view_ops::tests::normalize_render_outcome_keeps_full_feedback_unchanged ... ok [INFO] [stdout] test backend::hayro::tests::extract_outline_resolves_named_destinations_from_name_tree ... ok [INFO] [stdout] test backend::hayro::tests::extract_text_does_not_insert_false_space_from_tj_position_gap ... ok [INFO] [stdout] test backend::hayro::tests::extract_text_returns_page_bucket_text ... ok [INFO] [stdout] test backend::hayro::tests::open_accepts_valid_pdf_with_page_count ... ok [INFO] [stdout] test backend::hayro::tests::open_rejects_directory_path ... ok [INFO] [stdout] test backend::hayro::tests::page_render_dimensions_read_page_size ... ok [INFO] [stdout] test backend::hayro::tests::extract_outline_handles_named_destination_alias_cycles ... ok [INFO] [stdout] test app::tests::config_init::new_with_config_applies_l1_cache_limits ... ok [INFO] [stdout] test backend::hayro::tests::pixel_buffer_from_pixmap_matches_slice_copy_bytes ... ok [INFO] [stdout] test backend::hayro::tests::render_page_rejects_out_of_range_page ... ok [INFO] [stdout] test backend::traits::tests::into_pixels_vec_reuses_unique_allocation ... ok [INFO] [stdout] test backend::traits::tests::pixel_buffer_ptr_eq_tracks_shared_storage ... ok [INFO] [stdout] test backend::traits::tests::pooled_pixel_buffer_returns_storage_after_drop ... ok [INFO] [stdout] test backend::traits::tests::text_page_extracted_text_preserves_line_breaks ... ok [INFO] [stdout] test backend::traits::tests::with_mut_bytes_recycles_pooled_storage_after_use ... ok [INFO] [stdout] test command::core::tests::reset_zoom_reports_noop_only_when_zoom_and_pan_are_already_reset ... ok [INFO] [stdout] test command::core::tests::set_zoom_accepts_exact_bounds_without_warning ... ok [INFO] [stdout] test command::core::tests::set_zoom_clamps_out_of_range_values_with_warnings ... ok [INFO] [stdout] test command::dispatch::tests::collect_transition_events_emits_outline_reason ... ok [INFO] [stdout] test command::dispatch::tests::collect_transition_events_emits_outline_reason_when_page_is_unchanged ... ok [INFO] [stdout] test command::dispatch::tests::collect_transition_events_emits_search_when_page_is_unchanged ... ok [INFO] [stdout] test app::tests::runtime_worker::prepare_current_page_updates_l1_and_presenter_metrics ... ok [INFO] [stdout] test command::dispatch::tests::dispatch_close_help_returns_to_normal_mode ... ok [INFO] [stdout] test backend::traits::tests::into_pixels_vec_clones_pooled_storage_and_recycles_original ... ok [INFO] [stdout] test app::view_ops::tests::normalize_render_outcome_keeps_loading_feedback_for_initial_preview ... ok [INFO] [stdout] test command::dispatch::tests::dispatch_cancel_clears_active_search ... ok [INFO] [stdout] test command::dispatch::tests::dispatch_open_palette_emits_command_executed_only ... ok [INFO] [stdout] test command::dispatch::tests::dispatch_next_page_emits_page_changed_and_command_executed ... ok [INFO] [stdout] test command::dispatch::tests::dispatch_open_help_changes_mode_and_emits_mode_event ... ok [INFO] [stdout] test command::dispatch::tests::dispatch_pan_applies_explicit_cell_amount ... ok [INFO] [stdout] test command::dispatch::tests::dispatch_set_zoom_warns_when_input_is_below_minimum ... ok [INFO] [stdout] test command::dispatch::tests::dispatch_set_zoom_warns_when_input_is_clamped ... ok [INFO] [stdout] test command::dispatch::tests::dispatch_rejects_unavailable_command_from_keymap ... ok [INFO] [stdout] test command::dispatch::tests::dispatch_set_zoom_warns_when_input_is_slightly_above_maximum ... ok [INFO] [stdout] test command::dispatch::tests::dispatch_set_zoom_warns_when_input_is_slightly_below_minimum ... ok [INFO] [stdout] test command::dispatch::tests::dispatch_zoom_in_and_out_follow_the_zoom_ladder ... ok [INFO] [stdout] test command::dispatch::tests::dispatch_rejects_internal_command_from_keymap ... ok [INFO] [stdout] test command::dispatch::tests::dispatch_set_page_layout_emits_layout_normalize_when_anchor_changes ... ok [INFO] [stdout] test command::dispatch::tests::dispatch_zoom_in_at_maximum_keeps_the_boundary_warning ... ok [INFO] [stdout] test command::dispatch::tests::dispatch_zoom_in_near_maximum_advances_without_boundary_warning ... ok [INFO] [stdout] test command::dispatch::tests::dispatch_zoom_out_at_minimum_keeps_the_boundary_warning ... ok [INFO] [stdout] test command::parse::tests::first_token_ignores_leading_whitespace ... ok [INFO] [stdout] test command::dispatch::tests::dispatch_zoom_reset_restores_default_zoom_and_pan ... ok [INFO] [stdout] test command::dispatch::tests::dispatch_zoom_out_near_minimum_advances_without_boundary_warning ... ok [INFO] [stdout] test command::parse::tests::parse_outline_goto_accepts_page_and_title ... ok [INFO] [stdout] test command::parse::tests::parse_outline_without_args_opens_outline_palette ... ok [INFO] [stdout] test command::parse::tests::parse_page_layout_aliases_support_mode_and_direction ... ok [INFO] [stdout] test command::parse::tests::parse_pan_allows_i32_min_for_right_and_down ... ok [INFO] [stdout] test command::parse::tests::parse_pan_clamps_i32_min_for_left_and_up ... ok [INFO] [stdout] test command::parse::tests::parse_pan_clamps_out_of_i32_range_values ... ok [INFO] [stdout] test command::parse::tests::parse_pan_rejects_non_integer_amounts ... ok [INFO] [stdout] test command::parse::tests::parse_pan_supports_directional_form_only ... ok [INFO] [stdout] test command::parse::tests::parse_search_goto_accepts_page ... ok [INFO] [stdout] test command::parse::tests::parse_search_without_args_opens_search_palette ... ok [INFO] [stdout] test command::parse::tests::parse_submit_search_accepts_optional_matcher ... ok [INFO] [stdout] test command::parse::tests::parses_basic_commands ... ok [INFO] [stdout] test command::spec::tests::command_validation_rejects_search_navigation_when_search_is_inactive ... ok [INFO] [stdout] test command::spec::tests::find_command_spec_returns_metadata_for_internal_command ... ok [INFO] [stdout] test command::spec::tests::keymap_only_close_help_is_hidden_from_palette ... ok [INFO] [stdout] test command::spec::tests::keymap_only_command_is_allowed_from_keymap_but_not_palette_input ... ok [INFO] [stdout] test command::spec::tests::palette_visibility_hides_internal_commands ... ok [INFO] [stdout] test command::types::tests::command_action_id_maps_search_and_history_variants ... ok [INFO] [stdout] test command::types::tests::enum_command_arguments_round_trip_through_strings ... ok [INFO] [stdout] test command::types::tests::enum_value_lists_are_derived_from_variant_strings ... ok [INFO] [stdout] test config::tests::load_from_path_applies_partial_overrides_and_sanitizes ... ok [INFO] [stdout] test config::tests::load_from_path_ignores_legacy_keymap_section ... ok [INFO] [stdout] test app::tests::runtime_worker::run_next_prefetch_reduces_queue_depth ... ok [INFO] [stdout] test app::tests::runtime_worker::render_worker_rejects_duplicate_key_while_inflight ... ok [INFO] [stdout] test error::tests::pdf_render_error_wraps_page_and_source ... ok [INFO] [stdout] test config::tests::load_from_path_returns_defaults_for_missing_file ... ok [INFO] [stdout] test history::palette::tests::goto_first_page_renders_label_and_right_page ... ok [INFO] [stdout] test history::palette::tests::goto_last_page_renders_label_and_right_page ... ok [INFO] [stdout] test history::palette::tests::list_orders_forward_entries_before_current_in_reverse_stack_order ... ok [INFO] [stdout] test error::tests::page_out_of_range_uses_human_friendly_range ... ok [INFO] [stdout] test history::palette::tests::assistive_text_reflects_selected_candidate ... ok [INFO] [stdout] test extension::host::tests::status_bar_segments_includes_search_when_query_is_active ... ok [INFO] [stdout] test history::palette::tests::list_orders_matches_by_index_then_reason_then_page ... ok [INFO] [stdout] test extension::host::tests::cancel_search_clears_active_query ... ok [INFO] [stdout] test history::palette::tests::outline_reason_renders_secondary_prefix_and_right_page ... ok [INFO] [stdout] test history::palette::tests::page_only_reason_renders_page_on_both_sides ... ok [INFO] [stdout] test history::palette::tests::match_bucket_prefers_index_before_reason_before_page ... ok [INFO] [stdout] test extension::host::tests::status_bar_segments_is_empty_without_active_extensions ... ok [INFO] [stdout] test history::palette::tests::reason_display_text_decodes_escaped_components ... ok [INFO] [stdout] test history::palette::tests::reason_display_text_matches_visible_labeling ... ok [INFO] [stdout] test history::palette::tests::search_reason_renders_secondary_prefix_and_right_page ... ok [INFO] [stdout] test history::state::tests::back_and_forward_preserve_destination_reasons ... ok [INFO] [stdout] test history::state::tests::outline_navigation_is_recorded ... ok [INFO] [stdout] test history::state::tests::back_without_movement_does_not_suppress_next_real_page_change ... ok [INFO] [stdout] test history::state::tests::destination_reason_is_stored_on_the_destination_page ... ok [INFO] [stdout] test history::state::tests::record_policy_dedupes_origin_page_index ... ok [INFO] [stdout] test history::state::tests::same_page_search_refreshes_reason_on_deduped_page ... ok [INFO] [stdout] test history::state::tests::same_page_search_records_current_reason_without_duplicate_origin ... ok [INFO] [stdout] test history::state::tests::serialize_seed_escapes_outline_titles ... ok [INFO] [stdout] test input::history::tests::command_history_is_mru_deduplicated ... ok [INFO] [stdout] test input::history::tests::empty_entries_are_ignored ... ok [INFO] [stdout] test input::keymap::tests::builtins_include_pan_keys ... ok [INFO] [stdout] test input::keymap::tests::builtins_map_equal_to_zoom_reset ... ok [INFO] [stdout] test input::keymap::tests::builtins_preserve_existing_single_key_bindings ... ok [INFO] [stdout] test input::keymap::tests::builtins_require_double_g_for_first_page ... ok [INFO] [stdout] test input::keymap::tests::builtins_support_numeric_goto_prefix ... ok [INFO] [stdout] test input::history::tests::palette_snapshots_only_exist_for_command_and_search ... ok [INFO] [stdout] test input::sequence::tests::ambiguous_exact_waits_for_timeout_or_confirmation ... ok [INFO] [stdout] test input::sequence::tests::enter_confirms_pending_exact_match ... ok [INFO] [stdout] test input::sequence::tests::exact_single_key_dispatches_immediately ... ok [INFO] [stdout] test input::sequence::tests::expired_pending_sequence_dispatches_before_consuming_next_key ... ok [INFO] [stdout] test input::keymap::tests::builtins_accept_shift_modified_char_events_for_uppercase_commands ... ok [INFO] [stdout] test input::sequence::tests::registry_rejects_digit_numeric_suffixes ... ok [INFO] [stdout] test input::sequence::tests::registry_rejects_reserved_keys_in_multikey_sequences ... ok [INFO] [stdout] test input::sequence::tests::registry_rejects_shift_modified_printable_char_bindings ... ok [INFO] [stdout] test input::sequence::tests::snapshot_includes_exact_and_numeric_bindings ... ok [INFO] [stdout] test input::sequence::tests::non_digit_exact_binding_dispatches_immediately_alongside_numeric_prefix ... ok [INFO] [stdout] test input::keymap::tests::builtins_accept_ctrl_shift_letter_as_ctrl_shortcut ... ok [INFO] [stdout] test input::sequence::tests::numeric_prefix_dispatches_and_formats_pending_digits ... ok [INFO] [stdout] test input::sequence::tests::mismatch_clears_pending_buffer_without_retrying_latest_key ... ok [INFO] [stdout] test input::sequence::tests::registry_canonicalizes_ctrl_shift_letters_to_ctrl_letters ... ok [INFO] [stdout] test input::shortcut::tests::formats_shortcut_alternatives ... ok [INFO] [stdout] test input::shortcut::tests::try_new_rejects_unsupported_modifiers ... ok [INFO] [stdout] test input::shortcut::tests::formats_shortcut_sequences ... ok [INFO] [stdout] test input::shortcut::tests::formats_tight_shortcut_alternatives ... ok [INFO] [stdout] test input::sequence::tests::unsupported_modifier_input_is_ignored ... ok [INFO] [stdout] test outline::palette::tests::list_matches_unicode_titles_case_insensitively ... ok [INFO] [stdout] test outline::palette::tests::list_treats_p_prefixed_queries_as_text ... ok [INFO] [stdout] test input::shortcut::tests::formats_regular_and_modified_keys ... ok [INFO] [stdout] test outline::palette::tests::list_uses_p_prefixed_page_detail ... ok [INFO] [stdout] test outline::palette::tests::list_uses_text_matches_before_page_label_matches ... ok [INFO] [stdout] test outline::palette::tests::page_detail_uses_loading_overlay_format ... ok [INFO] [stdout] test outline::palette::tests::payload_round_trip_preserves_separator_in_title ... ok [INFO] [stdout] test outline::state::tests::palette_entries_flatten_outline_depth_first ... ok [INFO] [stdout] test outline::state::tests::palette_entries_preserve_depth_first_sibling_order ... ok [INFO] [stdout] test outline::palette::tests::payload_round_trip_preserves_page_and_title ... ok [INFO] [stdout] test outline::state::tests::palette_entries_reuse_cached_arc_for_same_document ... ok [INFO] [stdout] test palette::manager::tests::search_palette_keeps_selection_when_typing_after_ctrl_n ... ok [INFO] [stdout] test palette::matcher::tests::contains_matcher_prioritizes_prefix_hits ... ok [INFO] [stdout] test palette::matcher::tests::contains_matcher_uses_structured_search_texts ... ok [INFO] [stdout] test palette::providers::command::tests::assistive_text_shows_title_for_complete_no_argument_command ... ok [INFO] [stdout] test palette::manager::tests::command_palette_uses_ctrl_n_for_selection_when_input_history_is_enabled ... ok [INFO] [stdout] test palette::manager::tests::tab_completion_resets_history_navigation_state ... ok [INFO] [stdout] test palette::manager::tests::command_palette_recalls_input_history_with_up_and_restores_draft_on_down ... ok [INFO] [stdout] test palette::manager::tests::history_palette_selects_current_candidate_on_open ... ok [INFO] [stdout] test palette::providers::command::tests::assistive_text_shows_title_when_all_arguments_are_complete ... ok [INFO] [stdout] test palette::providers::command::tests::enum_argument_candidates_fall_back_to_full_list_when_no_match ... ok [INFO] [stdout] test palette::providers::command::tests::enum_argument_candidates_keep_definition_order ... ok [INFO] [stdout] test palette::providers::command::tests::assistive_text_uses_enum_values_for_enum_arguments ... ok [INFO] [stdout] test palette::providers::command::tests::assistive_text_uses_number_label_for_float_arguments ... ok [INFO] [stdout] test palette::providers::command::tests::enum_argument_phase_filters_values ... ok [INFO] [stdout] test palette::providers::command::tests::assistive_text_uses_integer_label_for_integer_arguments ... ok [INFO] [stdout] test palette::providers::command::tests::enum_argument_phase_lists_values ... ok [INFO] [stdout] test palette::providers::command::tests::enum_argument_candidates_filter_without_reordering ... ok [INFO] [stdout] test palette::providers::command::tests::list_hides_search_hit_navigation_when_search_is_inactive ... ok [INFO] [stdout] test palette::providers::command::tests::list_shows_search_hit_navigation_when_search_is_active ... ok [INFO] [stdout] test palette::providers::command::tests::non_enum_argument_phase_hides_candidates ... ok [INFO] [stdout] test palette::providers::command::tests::submit_dispatches_optional_only_page_layout_without_reopen ... ok [INFO] [stdout] test palette::providers::command::tests::scoring_prioritizes_exact_id_match ... ok [INFO] [stdout] test palette::providers::command::tests::scoring_tie_breaks_by_shorter_id_then_lexicographic ... ok [INFO] [stdout] test palette::providers::command::tests::scoring_prioritizes_id_prefix_over_contains ... ok [INFO] [stdout] test palette::providers::command::tests::scoring_supports_hyphen_acronym_query ... ok [INFO] [stdout] test palette::providers::command::tests::submit_dispatches_search_to_open_search_palette ... ok [INFO] [stdout] test backend::hayro::tests::render_page_uses_hayro_pixmap_output ... ok [INFO] [stdout] test palette::providers::command::tests::submit_dispatches_typed_optional_enum_command_without_argument ... ok [INFO] [stdout] test palette::providers::command::tests::submit_errors_when_explicit_input_has_invalid_arguments ... ok [INFO] [stdout] test palette::providers::command::tests::submit_dispatches_selected_enum_argument_when_result_is_complete ... ok [INFO] [stdout] test palette::providers::command::tests::submit_dispatches_typed_command_with_history_record ... ok [INFO] [stdout] test palette::registry::tests::get_returns_provider_for_all_palette_kinds ... ok [INFO] [stdout] test palette::providers::command::tests::submit_reopens_for_required_argument_commands ... ok [INFO] [stdout] test palette::providers::command::tests::submit_reopens_when_input_targets_internal_command ... ok [INFO] [stdout] test palette::types::tests::constructors_set_expected_tones ... ok [INFO] [stdout] test palette::types::tests::plain_text_joins_left_and_right_segments ... ok [INFO] [stdout] test palette::providers::command::tests::tab_completion_appends_trailing_space_for_no_argument_commands ... ok [INFO] [stdout] test palette::types::tests::search_text_falls_back_to_plain_text_when_empty ... ok [INFO] [stdout] test palette::types::tests::search_text_joins_search_segments_with_spaces ... ok [INFO] [stdout] test perf::tests::does_not_retain_samples_unless_enabled ... ok [INFO] [stdout] test palette::providers::command::tests::tab_completion_appends_trailing_space_for_required_argument_commands ... ok [INFO] [stdout] test palette::providers::command::tests::tab_completion_replaces_enum_argument_and_appends_space ... ok [INFO] [stdout] test perf::tests::parses_perf_scenarios ... ok [INFO] [stdout] test perf::tests::merge_stats_averages_cache_hit_rates ... ok [INFO] [stdout] test palette::types::tests::plain_text_preserves_internal_spacing_in_parts ... ok [INFO] [stdout] test perf::tests::records_milliseconds_and_clamped_rates ... ok [INFO] [stdout] test perf::tests::absorbs_presenter_metrics_without_overwriting_render_path ... ok [INFO] [stdout] test perf::tests::rejects_zero_measured_iterations ... ok [INFO] [stdout] test perf::tests::clear_blit_metrics_drops_samples_and_current_value ... ok [INFO] [stdout] test perf::tests::reset_clears_counters_and_samples ... ok [INFO] [stdout] test perf::tests::summarizes_metrics_and_scalars ... ok [INFO] [stdout] test presenter::encode::tests::current_lane_drops_older_generations ... ok [INFO] [stdout] test palette::providers::command::tests::trailing_non_enum_argument_phase_hides_enum_candidates ... ok [INFO] [stdout] test presenter::image_ops::tests::fit_downscale_dimensions_preserves_aspect_ratio ... ok [INFO] [stdout] test presenter::image_ops::tests::fit_downscale_dimensions_returns_none_when_source_fits ... ok [INFO] [stdout] test presenter::encode::tests::enqueue_with_notifications_emits_canceled_stale_events ... ok [INFO] [stdout] test presenter::encode::tests::enqueue_with_notifications_keeps_newer_same_key_when_older_request_arrives_late ... ok [INFO] [stdout] test presenter::image_ops::tests::fit_resize_dimensions_skips_upscale_when_disallowed ... ok [INFO] [stdout] test presenter::image_ops::tests::fit_resize_dimensions_upscales_when_allowed ... ok [INFO] [stdout] test presenter::ratatui::tests::center_rect_within_places_rect_in_the_middle ... ok [INFO] [stdout] test presenter::ratatui::tests::centered_fit_area_keeps_aspect_and_centers ... ok [INFO] [stdout] test presenter::image_ops::tests::resize_frame_for_area_downscales_shared_frame_without_touching_source ... ok [INFO] [stdout] test presenter::tests::cell_size_from_window_metrics_divides_pixels_by_cells ... ok [INFO] [stdout] test presenter::tests::cell_size_from_window_metrics_rejects_invalid_inputs ... ok [INFO] [stdout] test presenter::encode::tests::current_lane_keeps_newer_same_key_when_older_request_arrives_late ... ok [INFO] [stdout] test perf::tests::rejects_iteration_count_overflow ... ok [INFO] [stdout] test presenter::tests::l2_oversize_insert_with_override_keeps_single_entry ... ok [INFO] [stdout] test presenter::tests::l2_cached_mut_does_not_touch_lru_order ... ok [INFO] [stdout] test presenter::tests::l2_insert_keeps_pending_frame_buffer_shared ... ok [INFO] [stdout] test presenter::tests::l2_oversize_insert_with_protected_key_keeps_visible_entry ... ok [INFO] [stdout] test presenter::tests::current_encode_queue_cancels_stale_generation ... ok [INFO] [stdout] test presenter::tests::l2_non_oversize_insert_does_not_evict_single_oversize_entry ... ok [INFO] [stdout] test presenter::tests::l2_oversize_insert_with_protected_key_respects_single_entry_limit ... ok [INFO] [stdout] test presenter::tests::l2_insert_at_capacity_keeps_memory_accounting_consistent ... ok [INFO] [stdout] test presenter::tests::l2_oversize_insert_without_override_preserves_existing_entries ... ok [INFO] [stdout] test presenter::tests::encode_queue_prioritizes_current_over_prefetch ... ok [INFO] [stdout] test presenter::tests::presenter_cache_key_distinguishes_overlay_stamps ... ok [INFO] [stdout] test presenter::tests::prefetch_encode_does_not_change_current_key ... ok [INFO] [stdout] test app::tests::runtime_worker::render_worker_accepts_up_to_three_inflight_tasks ... ok [INFO] [stdout] test presenter::tests::prefetch_encode_advances_entry_to_ready ... ok [INFO] [stdout] test presenter::tests::presenter_runtime_info_exposes_graphics_protocol_when_available ... ok [INFO] [stdout] test presenter::tests::presenter_uses_l2_cache_between_same_frames ... ok [INFO] [stdout] test presenter::tests::presenter_with_cache_limits_applies_l2_cache_limits ... ok [INFO] [stdout] test presenter::tests::presenter_renders_after_prepare ... ok [INFO] [stdout] test presenter::tests::presenter_has_pending_work_tracks_encode_progress ... ok [INFO] [stdout] test presenter::tests::presenter_cache_key_distinguishes_pages_even_with_same_pixels ... ok [INFO] [stdout] test presenter::tests::recv_background_event_requests_redraw_for_current_encode_completion ... ok [INFO] [stdout] test presenter::tests::render_reports_failed_feedback_when_encode_worker_is_disconnected ... ok [INFO] [stdout] test presenter::tests::select_ratatui_presenter ... ok [INFO] [stdout] test presenter::tests::render_failed_does_not_use_stale_fallback_when_disallowed ... ok [INFO] [stdout] test render::cache::tests::cache_reinsert_updates_memory_without_double_counting ... ok [INFO] [stdout] test render::cache::tests::cache_tracks_hit_rate ... ok [INFO] [stdout] test render::cache::tests::cache_evicts_when_over_budget ... ok [INFO] [stdout] test render::cache::tests::get_cloned_shares_pixel_buffer ... ok [INFO] [stdout] test render::cache::tests::insert_at_capacity_keeps_memory_accounting_consistent ... ok [INFO] [stdout] test render::cache::tests::layout_tag_partitions_cache_entries ... ok [INFO] [stdout] test render::cache::tests::non_oversize_insert_does_not_evict_single_oversize_entry ... ok [INFO] [stdout] test render::cache::tests::oversize_insert_with_override_keeps_single_entry ... ok [INFO] [stdout] test render::cache::tests::oversize_insert_without_override_does_not_clear_existing_entries ... ok [INFO] [stdout] test render::cache::tests::remove_doc_reduces_memory_and_counts_evictions ... ok [INFO] [stdout] test render::prefetch::tests::cancel_stale_prefetch_removes_only_lead_and_background ... ok [INFO] [stdout] test render::prefetch::tests::dedupe_by_key_skips_duplicate_tasks ... ok [INFO] [stdout] test render::prefetch::tests::fifo_within_same_class_and_generation ... ok [INFO] [stdout] test render::prefetch::tests::guard_reverse_depth_config_supports_0_1_2 ... ok [INFO] [stdout] test render::prefetch::tests::pop_order_follows_priority_and_generation ... ok [INFO] [stdout] test render::prefetch::tests::retain_rebuilds_dedupe_index_after_filtering ... ok [INFO] [stdout] test render::scheduler::tests::can_override_prefetch_policy ... ok [INFO] [stdout] test render::scheduler::tests::cancel_obsolete_counts_removed_tasks ... ok [INFO] [stdout] test render::scheduler::tests::guard_reverse_depth_supports_multiple_pages ... ok [INFO] [stdout] test render::scheduler::tests::prefetch_depth_changes_with_streak ... ok [INFO] [stdout] test render::scheduler::tests::prefetch_forward_order_matches_rule ... ok [INFO] [stdout] test render::scheduler::tests::scheduler_pops_highest_priority_first ... ok [INFO] [stdout] test render::scheduler::tests::should_cancel_respects_generation_and_scale ... ok [INFO] [stdout] test search::engine::tests::apply_hit_snippet_uses_original_glyph_boundaries_after_case_fold_expansion ... ok [INFO] [stdout] test presenter::tests::render_pending_keeps_stale_fallback_when_new_oversize_entry_arrives ... ok [INFO] [stdout] test search::engine::tests::locate_occurrences_keeps_direct_and_whitespace_insensitive_matches ... ok [INFO] [stdout] test presenter::tests::render_returns_failed_feedback_for_failed_current_entry ... ok [INFO] [stdout] test presenter::tests::render_pending_does_not_use_stale_fallback_when_disallowed ... ok [INFO] [stdout] test search::engine::tests::merge_occurrence_rects_merges_same_line_with_spaces ... ok [INFO] [stdout] test presenter::tests::render_pending_uses_stale_fallback_when_allowed ... ok [INFO] [stdout] test search::engine::tests::locate_occurrences_preserves_multi_char_lowercase_expansion ... ok [INFO] [stdout] test search::engine::tests::cancel_enqueues_empty_query_with_new_generation ... ok [INFO] [stdout] test render::worker::tests::enqueue_current_with_preemption_does_not_exceed_inflight_limit ... ok [INFO] [stdout] test search::engine::tests::merge_occurrence_rects_merges_vertical_column ... ok [INFO] [stdout] test search::engine::tests::merge_occurrence_rects_splits_wrapped_horizontal_lines ... ok [INFO] [stdout] test search::engine::tests::merge_occurrence_rects_splits_wrapped_vertical_columns ... ok [INFO] [stdout] test search::engine::tests::search_keeps_hit_pages_when_positioned_text_is_unavailable ... ok [INFO] [stdout] test search::engine::tests::search_marks_highlight_unavailable_when_match_has_no_geometry ... ok [INFO] [stdout] test search::engine::tests::search_matches_phrase_when_extraction_omits_tj_space ... ok [INFO] [stdout] test search::engine::tests::search_finds_hits_case_insensitively ... ok [INFO] [stdout] test search::palette::tests::results_assistive_text_shows_zero_hits ... ok [INFO] [stdout] test search::palette::tests::results_initial_selection_accepts_right_page_of_visible_spread ... ok [INFO] [stdout] test search::palette::tests::results_list_shows_index_snippet_and_page ... ok [INFO] [stdout] test search::palette::tests::search_payload_prefills_query_input ... ok [INFO] [stdout] test search::palette::tests::search_payload_selects_current_matcher ... ok [INFO] [stdout] test search::palette::tests::non_search_payload_keeps_default_selection ... ok [INFO] [stdout] test search::state::tests::goto_result_keeps_right_page_hit_selected_in_spread_layout ... ok [INFO] [stdout] test search::state::tests::goto_result_moves_to_selected_page ... ok [INFO] [stdout] test search::state::tests::next_hit_keeps_active_error_notice_when_no_hits_exist ... ok [INFO] [stdout] test search::state::tests::next_hit_keeps_progress_notice_while_search_is_still_running ... ok [INFO] [stdout] test search::state::tests::next_hit_shows_progress_notice_when_search_is_running_without_notice ... ok [INFO] [stdout] test search::state::tests::next_hit_stays_silent_when_no_search_is_active ... ok [INFO] [stdout] test search::engine::tests::submit_returns_incrementing_generation ... ok [INFO] [stdout] test search::state::tests::cancel_clears_active_search_state ... ok [INFO] [stdout] test search::state::tests::open_palette_includes_query_and_matcher_in_payload ... ok [INFO] [stdout] test search::state::tests::open_results_palette_is_available_with_zero_hits_when_search_is_active ... ok [INFO] [stdout] test search::state::tests::open_results_palette_requires_active_search ... ok [INFO] [stdout] test search::state::tests::status_bar_segment_only_shows_position_after_hit_selection ... ok [INFO] [stdout] test search::engine::tests::search_treats_dropped_positioned_glyphs_as_highlight_failure ... ok [INFO] [stdout] test search::engine::tests::search_can_use_case_sensitive_matcher ... ok [INFO] [stdout] test ui::chrome::tests::build_presenter_path_text_formats_presenter_with_proto ... ok [INFO] [stdout] test search::state::tests::on_background_warns_when_highlight_is_unavailable ... ok [INFO] [stdout] test ui::chrome::tests::build_presenter_path_text_uses_placeholder_for_unknown_proto ... ok [INFO] [stdout] test ui::chrome::tests::build_status_text_drops_filename_before_extension ... ok [INFO] [stdout] test ui::chrome::tests::build_status_text_elides_filename_in_middle_on_tight_width ... ok [INFO] [stdout] test ui::chrome::tests::build_status_text_handles_very_narrow_width ... ok [INFO] [stdout] test ui::chrome::tests::build_status_text_includes_page_zoom_and_file ... ok [INFO] [stdout] test ui::chrome::tests::build_status_text_skips_empty_elided_filename_segment ... ok [INFO] [stdout] test search::state::tests::submit_empty_query_clears_search_active ... ok [INFO] [stdout] test search::engine::tests::search_marks_highlight_unavailable_when_dropped_glyphs_and_occurrences_exist ... ok [INFO] [stdout] test ui::chrome::tests::build_status_text_uses_last_non_empty_extension_segment ... ok [INFO] [stdout] test ui::chrome::tests::build_status_text_keeps_page_segment_width_constant ... ok [INFO] [stdout] test ui::chrome::tests::build_status_text_uses_spread_page_segment ... ok [INFO] [stdout] test search::state::tests::submit_search_marks_search_active ... ok [INFO] [stdout] test ui::chrome::tests::format_filename_segment_drops_long_name_below_elision_threshold ... ok [INFO] [stdout] test ui::chrome::tests::format_filename_segment_elides_long_name_at_threshold ... ok [INFO] [stdout] test ui::chrome::tests::format_filename_segment_keeps_short_name_when_it_fits_under_threshold ... ok [INFO] [stdout] test ui::chrome::tests::stylize_notice_line_prefixes_severity ... ok [INFO] [stdout] test ui::help::tests::help_lines_include_runtime_bindings ... ok [INFO] [stdout] test ui::help::tests::help_lines_reflect_runtime_registry_changes ... ok [INFO] [stdout] test ui::help::tests::help_scroll_limit_accounts_for_wrapping ... ok [INFO] [stdout] test ui::layout::tests::centered_rect_stays_within_area ... ok [INFO] [stdout] test ui::layout::tests::split_layout_reserves_status_bar ... ok [INFO] [stdout] test ui::overlay::tests::error_overlay_uses_friendly_title_and_message ... ok [INFO] [stdout] test ui::layout::tests::split_layout_with_debug_reserves_two_status_rows ... ok [INFO] [stdout] test ui::overlay::tests::loading_overlay_uses_fixed_width_for_short_and_long_labels ... ok [INFO] [stdout] test ui::overlay::tests::palette_item_line_fills_full_row_width ... ok [INFO] [stdout] test ui::overlay::tests::loading_overlay_keeps_message_centered_with_vertical_padding ... ok [INFO] [stdout] test ui::overlay::tests::draw_palette_overlay_sets_terminal_cursor_position ... ok [INFO] [stdout] test ui::overlay::tests::palette_item_line_fills_full_row_width_when_wide_text_truncates_in_split_layout ... ok [INFO] [stdout] test ui::overlay::tests::palette_item_line_hides_right_fragment_when_space_is_tight ... ok [INFO] [stdout] test ui::overlay::tests::palette_item_line_reserves_trailing_padding ... ok [INFO] [stdout] test ui::overlay::tests::palette_item_line_keeps_right_fragment_when_left_is_long ... ok [INFO] [stdout] test ui::overlay::tests::palette_item_line_uses_single_space_before_detail ... ok [INFO] [stdout] test ui::overlay::tests::palette_item_line_preserves_column_gap_when_left_and_right_exactly_fill_text_width ... ok [INFO] [stdout] test ui::overlay::tests::palette_item_line_selected_uses_uniform_style ... ok [INFO] [stdout] test ui::overlay::tests::palette_overlay_keeps_combining_sequence ... ok [INFO] [stdout] test ui::overlay::tests::palette_overlay_keeps_zwj_emoji_sequence ... ok [INFO] [stdout] test ui::overlay::tests::palette_overlay_positions_cursor_at_wide_char_boundary ... ok [INFO] [stdout] test ui::overlay::tests::palette_overlay_scrolls_cursor_with_long_input ... ok [INFO] [stdout] test ui::overlay::tests::palette_overlay_positions_cursor_on_character ... ok [INFO] [stdout] test ui::overlay::tests::palette_overlay_handles_multibyte_input_without_panic ... ok [INFO] [stdout] test ui::overlay::tests::palette_overlay_positions_cursor_at_end_of_input ... ok [INFO] [stdout] test render::worker::tests::current_enqueue_preempts_prefetch_when_worker_is_full ... ok [INFO] [stdout] test render::worker::tests::cancel_stale_prefetch_drops_results_for_old_generation_prefetch ... ok [INFO] [stdout] test search::state::tests::on_background_ignores_synthetic_events_after_cancel ... ok [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/pvf-edafb51133513f75) [INFO] [stdout] [INFO] [stdout] test result: ok. 413 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.38s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test tests::parse_cli_accepts_plain_pdf_path ... ok [INFO] [stdout] test tests::parse_cli_accepts_perf_options ... ok [INFO] [stdout] test tests::parse_cli_accepts_stdout_perf_output ... ok [INFO] [stdout] test tests::parse_cli_rejects_invalid_combinations ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests pvf [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" "3480eb84815c47bb35c803723541419ac675147b91e51a01c6637e1f42b99548", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3480eb84815c47bb35c803723541419ac675147b91e51a01c6637e1f42b99548", kill_on_drop: false }` [INFO] [stdout] 3480eb84815c47bb35c803723541419ac675147b91e51a01c6637e1f42b99548