[INFO] fetching crate eger 1.1.1...
[INFO] testing eger-1.1.1 against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate eger 1.1.1 into /workspace/builds/worker-1-tc2/source
[INFO] started tweaking crates.io crate eger 1.1.1
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate eger 1.1.1
[INFO] tweaked toml for crates.io crate eger 1.1.1 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate eger 1.1.1 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate eger 1.1.1 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.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:126:12
[INFO] [stderr]     |
[INFO] [stderr] 126 | homepage = "https://github.com/Gauravpawar101/eger"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 131 | repository = "https://github.com/Gauravpawar101/eger"
[INFO] [stderr]     |              ----------------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `eger` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/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] 338fcc4ae17bb6dc09d281966e9f0088c879fb0469fc0c6655941388d778c1ab
[INFO] running `Command { std: "docker" "start" "338fcc4ae17bb6dc09d281966e9f0088c879fb0469fc0c6655941388d778c1ab", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "338fcc4ae17bb6dc09d281966e9f0088c879fb0469fc0c6655941388d778c1ab", 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" "338fcc4ae17bb6dc09d281966e9f0088c879fb0469fc0c6655941388d778c1ab" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "338fcc4ae17bb6dc09d281966e9f0088c879fb0469fc0c6655941388d778c1ab", 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" "338fcc4ae17bb6dc09d281966e9f0088c879fb0469fc0c6655941388d778c1ab" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:126:12
[INFO] [stderr]     |
[INFO] [stderr] 126 | homepage = "https://github.com/Gauravpawar101/eger"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 131 | repository = "https://github.com/Gauravpawar101/eger"
[INFO] [stderr]     |              ----------------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `eger` (manifest) generated 1 warning
[INFO] [stderr]    Compiling crossbeam-utils v0.8.23
[INFO] [stderr]    Compiling simd-adler32 v0.3.10
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.21
[INFO] [stderr]    Compiling crossbeam-deque v0.8.8
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling rustix v1.1.5
[INFO] [stderr]    Compiling bitflags v2.13.2
[INFO] [stderr]    Compiling either v1.18.0
[INFO] [stderr]    Compiling crc32fast v1.5.2
[INFO] [stderr]    Compiling bytemuck v1.25.2
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling gif v0.13.3
[INFO] [stderr]    Compiling jpeg-decoder v0.3.2
[INFO] [stderr]    Compiling miniz_oxide v0.9.1
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling fdeflate v0.3.7
[INFO] [stderr]    Compiling flate2 v1.1.10
[INFO] [stderr]    Compiling png v0.17.16
[INFO] [stderr]    Compiling terminal_size v0.4.4
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling rayon v1.10.0
[INFO] [stderr]    Compiling image v0.24.9
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling iascii v0.1.2
[INFO] [stderr]    Compiling eger v1.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition value: `parallel`
[INFO] [stdout]   --> src/image.rs:61:7
[INFO] [stdout]    |
[INFO] [stdout] 61 | #[cfg(feature = "parallel")]
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default`, `full`, `video`, and `wasm`
[INFO] [stdout]    = help: consider adding `parallel` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `parallel`
[INFO] [stdout]   --> src/image.rs:78:11
[INFO] [stdout]    |
[INFO] [stdout] 78 | #[cfg(not(feature = "parallel"))]
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default`, `full`, `video`, and `wasm`
[INFO] [stdout]    = help: consider adding `parallel` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 26.91s
[INFO] running `Command { std: "docker" "inspect" "338fcc4ae17bb6dc09d281966e9f0088c879fb0469fc0c6655941388d778c1ab", 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" "338fcc4ae17bb6dc09d281966e9f0088c879fb0469fc0c6655941388d778c1ab" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:126:12
[INFO] [stderr]     |
[INFO] [stderr] 126 | homepage = "https://github.com/Gauravpawar101/eger"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 131 | repository = "https://github.com/Gauravpawar101/eger"
[INFO] [stderr]     |              ----------------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `eger` (manifest) generated 1 warning
[INFO] [stderr]    Compiling either v1.18.0
[INFO] [stderr]    Compiling colorchoice v1.0.5
[INFO] [stderr]    Compiling syn v3.0.5
[INFO] [stderr]    Compiling half v2.4.1
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling clap_lex v0.6.0
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling fastrand v2.1.1
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling anstream v0.6.21
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling rayon v1.10.0
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling clap_builder v4.4.18
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling tempfile v3.14.0
[INFO] [stderr]    Compiling iascii v0.1.2
[INFO] [stderr]    Compiling clap v4.4.18
[INFO] [stderr]    Compiling eger v1.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition value: `parallel`
[INFO] [stdout]   --> src/image.rs:61:7
[INFO] [stdout]    |
[INFO] [stdout] 61 | #[cfg(feature = "parallel")]
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default`, `full`, `video`, and `wasm`
[INFO] [stdout]    = help: consider adding `parallel` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `parallel`
[INFO] [stdout]   --> src/image.rs:78:11
[INFO] [stdout]    |
[INFO] [stdout] 78 | #[cfg(not(feature = "parallel"))]
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default`, `full`, `video`, and `wasm`
[INFO] [stdout]    = help: consider adding `parallel` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stdout] warning: unexpected `cfg` condition value: `parallel`
[INFO] [stdout]   --> src/image.rs:61:7
[INFO] [stdout]    |
[INFO] [stdout] 61 | #[cfg(feature = "parallel")]
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default`, `full`, `video`, and `wasm`
[INFO] [stdout]    = help: consider adding `parallel` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `parallel`
[INFO] [stdout]   --> src/image.rs:78:11
[INFO] [stdout]    |
[INFO] [stdout] 78 | #[cfg(not(feature = "parallel"))]
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default`, `full`, `video`, and `wasm`
[INFO] [stdout]    = help: consider adding `parallel` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 53.38s
[INFO] running `Command { std: "docker" "inspect" "338fcc4ae17bb6dc09d281966e9f0088c879fb0469fc0c6655941388d778c1ab", 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" "338fcc4ae17bb6dc09d281966e9f0088c879fb0469fc0c6655941388d778c1ab" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:126:12
[INFO] [stderr]     |
[INFO] [stderr] 126 | homepage = "https://github.com/Gauravpawar101/eger"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 131 | repository = "https://github.com/Gauravpawar101/eger"
[INFO] [stderr]     |              ----------------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `eger` (manifest) generated 1 warning
[INFO] [stderr] warning: unexpected `cfg` condition value: `parallel`
[INFO] [stderr]   --> src/image.rs:61:7
[INFO] [stderr]    |
[INFO] [stderr] 61 | #[cfg(feature = "parallel")]
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected values for `feature` are: `default`, `full`, `video`, and `wasm`
[INFO] [stderr]    = help: consider adding `parallel` as a feature in `Cargo.toml`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `parallel`
[INFO] [stderr]   --> src/image.rs:78:11
[INFO] [stderr]    |
[INFO] [stderr] 78 | #[cfg(not(feature = "parallel"))]
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected values for `feature` are: `default`, `full`, `video`, and `wasm`
[INFO] [stderr]    = help: consider adding `parallel` as a feature in `Cargo.toml`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: `eger` (lib) generated 2 warnings
[INFO] [stderr] warning: `eger` (lib test) generated 2 warnings (2 duplicates)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.15s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/eger/2b30b6f01bed43a4/out/eger-2b30b6f01bed43a4)
[INFO] [stdout] 
[INFO] [stdout] running 137 tests
[INFO] [stdout] test banner::tests::banner_lines_produces_seven_rows_and_widens_with_more_characters ... ok
[INFO] [stdout] test banner::tests::banner_frames_all_rows_have_matching_length_within_a_frame ... ok
[INFO] [stdout] test color::tests::apply_rgb8_buffer_transforms_every_pixel ... ok
[INFO] [stdout] test color::tests::brightness_zero_is_black ... ok
[INFO] [stdout] test banner::tests::wave_banner_sweep_eventually_lights_up_every_character_in_a_long_banner ... ok
[INFO] [stdout] test banner::tests::unsupported_characters_render_as_a_blank_glyph_without_panicking ... ok
[INFO] [stdout] test color::tests::grayscale_produces_equal_channels ... ok
[INFO] [stdout] test color::tests::contrast_one_is_identity ... ok
[INFO] [stdout] test color::tests::hsl_round_trip_preserves_grayscale ... ok
[INFO] [stdout] test banner::tests::typewriter_banner_stops_once_every_character_is_revealed ... ok
[INFO] [stdout] test color::tests::contrast_zero_collapses_to_mid_gray ... ok
[INFO] [stdout] test color::tests::hue_rotate_by_180_swaps_a_primary_red_toward_cyan ... ok
[INFO] [stdout] test color::tests::saturate_one_is_close_to_identity ... ok
[INFO] [stdout] test color::tests::brightness_clamps_channels_at_255 ... ok
[INFO] [stdout] test color::tests::grayscale_is_a_fixed_point_for_gray_input ... ok
[INFO] [stdout] test color::tests::invert_is_its_own_inverse ... ok
[INFO] [stdout] test banner::tests::typewriter_banner_of_empty_text_produces_no_frames ... ok
[INFO] [stdout] test color::tests::brightness_one_is_identity ... ok
[INFO] [stdout] test color::tests::none_is_identity ... ok
[INFO] [stdout] test banner::tests::banner_lines_has_no_escape_codes ... ok
[INFO] [stdout] test colorize::tests::blink_alternates_between_the_two_configured_colors_by_frame ... ok
[INFO] [stdout] test colorize::tests::colorize_lines_accepts_borrowed_str_slices_without_cloning ... ok
[INFO] [stdout] test colorize::tests::a_space_breaks_a_run_even_when_the_color_either_side_matches ... ok
[INFO] [stdout] test colorize::tests::colorize_lines_renders_gradient_and_transformed_end_to_end ... ok
[INFO] [stdout] test colorize::tests::custom_closure_receives_the_expected_coordinates_and_character ... ok
[INFO] [stdout] test colorize::tests::adjacent_and_cross_row_same_color_cells_share_one_escape_pair ... ok
[INFO] [stdout] test color::tests::hue_rotate_by_360_is_close_to_identity ... ok
[INFO] [stdout] test banner::tests::rainbow_banner_colors_each_glyph_and_resets_per_row ... ok
[INFO] [stdout] test colorize::tests::gradient_is_time_independent ... ok
[INFO] [stdout] test color::tests::invert_black_is_white_and_vice_versa ... ok
[INFO] [stdout] test colorize::tests::gradient_single_column_does_not_divide_by_zero ... ok
[INFO] [stdout] test banner::tests::typewriter_banner_hides_unrevealed_glyphs_as_blank_columns ... ok
[INFO] [stdout] test colorize::tests::gradient_vertical_starts_at_from_and_ends_at_to ... ok
[INFO] [stdout] test colorize::tests::rainbow_colors_every_non_space_cell_and_resets_after_each ... ok
[INFO] [stdout] test colorize::tests::transformed_grayscale_wraps_rainbow_and_desaturates_it ... ok
[INFO] [stdout] test colorize::tests::repeated_non_adjacent_colors_still_produce_the_correct_escapes ... ok
[INFO] [stdout] test colorize::tests::transformed_can_wrap_another_transformed ... ok
[INFO] [stdout] test colorize::tests::transformed_none_matches_the_base_animation_exactly ... ok
[INFO] [stdout] test colorize::tests::spaces_are_never_wrapped_in_color_escapes ... ok
[INFO] [stdout] test colorize::tests::colorize_frames_generates_the_requested_number_of_frames ... ok
[INFO] [stdout] test color::tests::sepia_removes_blue_dominance ... ok
[INFO] [stdout] test config::tests::build_from_file_succeeds_and_applies_defaults ... ok
[INFO] [stdout] test color::tests::tint_zero_is_identity_and_one_is_the_target_color ... ok
[INFO] [stdout] test colorize::tests::gradient_horizontal_starts_at_from_and_ends_at_to ... ok
[INFO] [stdout] test colorize::tests::colorize_sequence_uses_each_frames_own_index_as_animation_time ... ok
[INFO] [stdout] test config::tests::build_with_invalid_regex_fails ... ok
[INFO] [stdout] test config::tests::build_without_source_fails ... ok
[INFO] [stdout] test color::tests::saturate_zero_matches_grayscale_for_a_neutral_input ... ok
[INFO] [stdout] test colorize::tests::ripple_and_wave_do_not_panic_on_a_single_cell_grid ... ok
[INFO] [stdout] test colorize::tests::colorize_joined_sequence_splits_on_newlines_before_recoloring ... ok
[INFO] [stdout] test color::tests::compose_applies_each_step_in_order ... ok
[INFO] [stdout] test color::tests::hsl_round_trip_preserves_primary_hues ... ok
[INFO] [stdout] test config::tests::directory_pattern_matching_is_case_sensitive ... ok
[INFO] [stdout] test config::tests::calling_from_dir_after_from_file_switches_to_a_directory_source ... ok
[INFO] [stdout] test config::tests::build_with_missing_dir_fails ... ok
[INFO] [stdout] test config::tests::directory_source_ignores_subdirectories_even_if_name_matches ... ok
[INFO] [stdout] test config::tests::explicit_dimensions_setter_does_not_error_on_build ... ok
[INFO] [stdout] test config::tests::build_with_missing_file_fails ... ok
[INFO] [stdout] test config::tests::calling_from_file_after_from_dir_switches_to_a_single_file_source ... ok
[INFO] [stdout] test config::tests::files_for_directory_source_errors_when_nothing_matches ... ok
[INFO] [stdout] test config::tests::num_threads_zero_is_preserved_as_given ... ok
[INFO] [stdout] test config::tests::explicit_settings_are_preserved ... ok
[INFO] [stdout] test config::tests::from_dir_defaults_to_match_all_pattern ... ok
[INFO] [stdout] test dither::tests::transformed_grayscale_on_a_solid_red_grid_contains_no_pure_red_escape ... ok
[INFO] [stdout] test config::tests::ramp_luminance_aspect_and_parallel_threshold_setters_all_chain_and_build ... ok
[INFO] [stdout] test config::tests::output_setter_is_preserved_on_the_built_config ... ok
[INFO] [stdout] test dither::tests::none_method_matches_plain_nearest_palette_rendering ... ok
[INFO] [stdout] test dither::tests::transformed_composes_multiple_steps ... ok
[INFO] [stdout] test config::tests::files_for_single_file_source_returns_that_file ... ok
[INFO] [stdout] test dither::tests::bayer_and_atkinson_do_not_panic_on_small_grids ... ok
[INFO] [stdout] test dither::tests::transformed_invert_on_black_produces_white ... ok
[INFO] [stdout] test dither::tests::transformed_still_dithers_after_transforming ... ok
[INFO] [stdout] test config::tests::media_type_is_preserved_through_build ... ok
[INFO] [stdout] test dither::tests::transformed_with_none_transform_matches_untransformed ... ok
[INFO] [stdout] test dither::tests::truecolor_posterizes_to_the_requested_level_count ... ok
[INFO] [stdout] test config::tests::thread_pool_is_built_lazily_and_reused_across_calls ... ok
[INFO] [stdout] test config::tests::output_defaults_to_none_when_unset ... ok
[INFO] [stdout] test error::tests::no_matching_files_message_includes_dir_and_pattern ... ok
[INFO] [stdout] test dither::tests::dithering_reduces_banding_relative_to_plain_rounding ... ok
[INFO] [stdout] test error::tests::thread_pool_config_error_message_includes_the_detail ... ok
[INFO] [stdout] test dither::tests::floyd_steinberg_produces_output_without_panicking_and_keeps_shape ... ok
[INFO] [stdout] test illusions::tests::rotating_rings_animation_changes_over_frames_at_a_fixed_cell ... ok
[INFO] [stdout] test config::tests::files_for_directory_source_filters_sorts_and_dedupes_by_pattern ... ok
[INFO] [stdout] test error::tests::io_error_converts_into_eger_error ... ok
[INFO] [stdout] test illusions::tests::hermann_grid_has_white_lines_at_expected_spacing ... ok
[INFO] [stdout] test illusions::tests::cafe_wall_generates_requested_dimensions ... ok
[INFO] [stdout] test image::tests::convert_handles_a_grid_large_enough_to_cross_the_parallel_threshold ... ok
[INFO] [stdout] test illusions::tests::rotating_rings_frames_returns_requested_frame_count_and_dimensions ... ok
[INFO] [stdout] test error::tests::ffmpeg_not_found_has_actionable_message ... ok
[INFO] [stdout] test palette::tests::ansi256_roundtrips_cube_corners ... ok
[INFO] [stdout] test palette::tests::posterize_channel_clamps_to_levels ... ok
[INFO] [stdout] test error::tests::animation_spawn_error_wraps_the_source_io_error ... ok
[INFO] [stdout] test error::tests::config_error_converts_into_eger_error ... ok
[INFO] [stdout] test error::tests::config_error_messages_include_the_offending_path ... ok
[INFO] [stdout] test illusions::tests::twisted_cord_does_not_panic_on_small_images ... ok
[INFO] [stdout] test image::tests::convert_produces_a_grid_with_the_requested_dimensions ... ok
[INFO] [stdout] test image::tests::gif_to_lines_decodes_every_frame_with_its_own_delay ... ok
[INFO] [stdout] test image::tests::gif_to_lines_errors_on_a_missing_file ... ok
[INFO] [stdout] test render::tests::diff_frame_is_empty_for_identical_frames ... ok
[INFO] [stdout] test palette::tests::nearest_ansi16_matches_exact_palette_entries ... ok
[INFO] [stdout] test palette::tests::quantize_truecolor_without_levels_is_identity ... ok
[INFO] [stdout] test render::tests::checkerboard_pixels_map_to_two_distinct_characters ... ok
[INFO] [stdout] test render::tests::colorterm_truecolor_picked_over_lesser_term_signals ... ok
[INFO] [stdout] test render::tests::diff_frame_cell_granularity_only_rewrites_the_changed_span ... ok
[INFO] [stdout] test render::tests::diff_frame_handles_frames_with_different_line_counts ... ok
[INFO] [stdout] test render::tests::falls_back_to_universally_supported_ansi16 ... ok
[INFO] [stdout] test render::tests::dispatch_file_target_writes_and_returns_path ... ok
[INFO] [stdout] test image::tests::render_batch_parallel_with_an_oversized_item_does_not_deadlock ... ok
[INFO] [stdout] test error::tests::ffmpeg_error_reports_exit_status_and_stderr ... ok
[INFO] [stdout] test segment::tests::detect_splits_two_distinct_color_blocks_into_two_segments ... ok
[INFO] [stdout] test segment::tests::overlay_ids_marks_unsegmented_cells_with_a_dot ... ok
[INFO] [stdout] test segment::tests::min_cells_drops_tiny_noise_regions ... ok
[INFO] [stdout] test script::tests::dark_and_light_variants_wrap_correctly ... ok
[INFO] [stdout] test render::tests::terminal_size_does_not_panic_without_a_real_terminal ... ok
[INFO] [stdout] test script::tests::braille_ramp_has_256_entries_ordered_by_dot_count ... ok
[INFO] [stdout] test segment::tests::manual_segments_are_numbered_in_given_order_and_last_wins_on_overlap ... ok
[INFO] [stdout] test render::tests::grid_to_lines_none_depth_matches_row_by_row_plain_reconstruction ... ok
[INFO] [stdout] test render::tests::diff_frame_cell_granularity_clears_a_shrunk_line_tail ... ok
[INFO] [stdout] test text::tests::function_custom_animation_calls_the_closure_once_per_frame ... ok
[INFO] [stdout] test render::tests::dumb_terminal_forces_plain ... ok
[INFO] [stdout] test text::tests::marquee_window_has_the_requested_width_and_wraps ... ok
[INFO] [stdout] test render::tests::grid_to_lines_some_depth_splits_colored_output_by_row ... ok
[INFO] [stdout] test render::tests::no_color_env_var_forces_plain_even_on_a_rich_terminal ... ok
[INFO] [stdout] [H[2J[38;2;255;0;0mh[38;2;255;77;0mi[0m
[INFO] [stdout] [1;1H[K[38;2;255;51;0mh[38;2;255;128;0mi[0m[1;1H[K[38;2;255;102;0mh[38;2;255;179;0mi[0mtest render::tests::term_256color_picked_when_colorterm_absent ... ok
[INFO] [stdout] test text::tests::typewriter_reveals_one_more_character_per_frame_then_stops ... ok
[INFO] [stdout] test text::tests::hsv_to_rgb_primary_hues_are_exact ... ok
[INFO] [stdout] test text::tests::play_text_rejects_non_positive_fps ... ok
[INFO] [stdout] test render::tests::diff_frame_line_granularity_only_touches_changed_rows ... ok
[INFO] [stdout] test script::tests::every_script_builds_a_valid_ramp ... ok
[INFO] [stdout] test text::tests::play_text_with_diff_mode_succeeds_without_panicking ... ok
[INFO] [stdout] test segment::tests::render_segments_only_recolors_styled_segments ... ok
[INFO] [stdout] test text::tests::program_custom_animation_surfaces_a_nonzero_exit_as_an_error ... ok
[INFO] [stdout] test text::tests::program_custom_animation_splits_stdout_on_the_frame_separator ... ok
[INFO] [stdout] test render::tests::non_terminal_stdout_forces_plain_regardless_of_env ... ok
[INFO] [stdout] test render::tests::plain_string_has_no_escape_codes_and_expected_shape ... ok
[INFO] [stdout] test text::tests::blink_alternates_between_the_two_configured_colors ... ok
[INFO] [stdout] test text::tests::rainbow_colors_every_character_and_resets_at_the_end ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 137 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/image_pipeline.rs (/opt/rustwide/target/release/build/eger/4769d0cd33159339/out/image_pipeline-4769d0cd33159339)
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test end_to_end_image_to_file_round_trip ... ok
[INFO] [stdout] test nonexistent_directory_produces_folder_not_found_error ... ok
[INFO] [stdout] test batch_directory_pipeline_processes_all_matching_files_in_parallel ... ok
[INFO] [stdout] test end_to_end_image_to_string_via_public_builder ... ok
[INFO] [stdout] test empty_matching_set_surfaces_as_files_error_not_a_panic ... ok
[INFO] [stdout] test color_depth_setting_changes_output_encoding_end_to_end ... ok
[INFO] [stdout] test single_file_input_via_from_dir_pattern_matching_only_that_file ... ok
[INFO] [stdout] test stress_large_batch_with_constrained_thread_pool ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/span.rs (/opt/rustwide/target/release/build/eger/56b9c12a8da4cc57/out/span-56b9c12a8da4cc57)
[INFO] [stdout] 
[INFO] [stdout] running 15 tests
[INFO] [stdout] test every_illusion_renders_through_the_full_config_pipeline ... ok
[INFO] [stdout] test full_pipeline_image_file_to_every_render_target ... ok
[INFO] [stdout] test colorize_grid_matches_colorize_lines_over_the_grids_own_plain_text ... ok
[INFO] [stdout] test dithered_render_dynamic_image_covers_every_method_and_depth ... ok
[INFO] [stdout] test rotating_rings_frames_can_be_recolored_again_with_a_pixel_animation ... ok
[INFO] [stdout] test missing_file_error_propagates_as_config_error_through_the_top_level_error_type ... ok
[INFO] [stdout] test dither_and_no_dither_configs_can_diverge_on_a_coarse_palette_gradient ... ok
[INFO] [stdout] test segment_detect_on_a_real_converted_photo_then_style_named_regions ... ok
[INFO] [stdout] test every_script_ramp_drives_a_real_conversion_without_erroring ... ok
[INFO] [stdout] test banner_frames_own_per_character_coloring_differs_from_pixel_animation_recoloring ... ok
[INFO] [stdout] test plain_no_color_config_produces_ansi_free_output ... ok
[INFO] [stdout] test banner_lines_recolored_with_every_builtin_pixel_animation ... ok
[INFO] [stdout] test text_frames_feed_directly_into_diff_frame_without_panicking ... ok
[INFO] [stdout] test gif_frames_can_be_recolored_with_colorize_sequence_and_joined_sequence ... ok
[INFO] [stdout] test render_batch_parallel_end_to_end_over_a_directory_of_real_images ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/video_pipeline.rs (/opt/rustwide/target/release/build/eger/b299cb5b78a71806/out/video_pipeline-b299cb5b78a71806)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests eger
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test src/lib.rs - (line 74) - compile ... ok
[INFO] [stdout] test src/colorize.rs - colorize::PixelAnimation::custom (line 135) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.34s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "338fcc4ae17bb6dc09d281966e9f0088c879fb0469fc0c6655941388d778c1ab", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "338fcc4ae17bb6dc09d281966e9f0088c879fb0469fc0c6655941388d778c1ab", kill_on_drop: false }`
[INFO] [stdout] 338fcc4ae17bb6dc09d281966e9f0088c879fb0469fc0c6655941388d778c1ab
