[INFO] fetching crate spherekit-image 2026.8.0...
[INFO] testing spherekit-image-2026.8.0 against 1.100.0-beta.1 for beta-1.100-2
[INFO] extracting crate spherekit-image 2026.8.0 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate spherekit-image 2026.8.0
[INFO] finished tweaking crates.io crate spherekit-image 2026.8.0
[INFO] tweaked toml for crates.io crate spherekit-image 2026.8.0 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate spherekit-image 2026.8.0 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 spherekit-image 2026.8.0 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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] ac54526e67511f0f0c84d4700ffc5730ffb51594f8bb81e2abdc1afd438a9d10
[INFO] running `Command { std: "docker" "start" "ac54526e67511f0f0c84d4700ffc5730ffb51594f8bb81e2abdc1afd438a9d10", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ac54526e67511f0f0c84d4700ffc5730ffb51594f8bb81e2abdc1afd438a9d10", 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" "ac54526e67511f0f0c84d4700ffc5730ffb51594f8bb81e2abdc1afd438a9d10" "/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" "ac54526e67511f0f0c84d4700ffc5730ffb51594f8bb81e2abdc1afd438a9d10", 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" "ac54526e67511f0f0c84d4700ffc5730ffb51594f8bb81e2abdc1afd438a9d10" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v3.0.3
[INFO] [stderr]    Compiling bitflags v2.13.1
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling quick-error v2.0.1
[INFO] [stderr]    Compiling rustc-hash v2.1.3
[INFO] [stderr]    Compiling slotmap v1.1.1
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling moxcms v0.7.11
[INFO] [stderr]    Compiling image-webp v0.2.4
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling png v0.18.1
[INFO] [stderr]    Compiling bytemuck_derive v1.12.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.20
[INFO] [stderr]    Compiling thiserror v2.0.20
[INFO] [stderr]    Compiling bytemuck v1.25.2
[INFO] [stderr]    Compiling spherekit-core v2026.8.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling image v0.25.9
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling spherekit-image v2026.8.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 22.81s
[INFO] running `Command { std: "docker" "inspect" "ac54526e67511f0f0c84d4700ffc5730ffb51594f8bb81e2abdc1afd438a9d10", 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" "ac54526e67511f0f0c84d4700ffc5730ffb51594f8bb81e2abdc1afd438a9d10" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling spherekit-image v2026.8.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.23s
[INFO] running `Command { std: "docker" "inspect" "ac54526e67511f0f0c84d4700ffc5730ffb51594f8bb81e2abdc1afd438a9d10", 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" "ac54526e67511f0f0c84d4700ffc5730ffb51594f8bb81e2abdc1afd438a9d10" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/build/spherekit-image/0a69a2c1a876473f/out/spherekit_image-0a69a2c1a876473f)
[INFO] [stdout] 
[INFO] [stdout] running 95 tests
[INFO] [stdout] test cache::tests::exceeding_the_budget_evicts_the_least_recently_used ... ok
[INFO] [stdout] test cache::tests::get_touches_and_peek_does_not ... ok
[INFO] [stdout] test cache::tests::a_stale_id_resolves_to_nothing_rather_than_someone_elses_image ... ok
[INFO] [stdout] test cache::tests::lookup_finds_live_entries_only ... ok
[INFO] [stdout] test cache::tests::everything_loaded_this_frame_survives_even_over_budget ... ok
[INFO] [stdout] test cache::tests::lowering_the_budget_evicts_immediately ... ok
[INFO] [stdout] test cache::tests::inserting_a_decoded_image_is_content_keyed_too ... ok
[INFO] [stdout] test cache::tests::raw_buffers_are_keyed_by_pixels_and_shape ... ok
[INFO] [stdout] test cache::tests::removing_an_entry_returns_its_pixels_and_frees_its_key ... ok
[INFO] [stdout] test cache::tests::textures_can_be_attached_and_detached ... ok
[INFO] [stdout] test cache::tests::eviction_reports_the_texture_the_renderer_must_free ... ok
[INFO] [stdout] test cache::tests::hit_rate_reflects_the_load_history ... ok
[INFO] [stdout] test cache::tests::pins_nest_and_unbalanced_unpins_saturate ... ok
[INFO] [stdout] test cache::tests::content_keys_separate_their_domains ... ok
[INFO] [stdout] test cache::tests::bytes_and_the_file_holding_them_share_an_entry ... ok
[INFO] [stdout] test cache::tests::a_missing_file_is_an_error_and_leaves_no_entry ... ok
[INFO] [stdout] test decode::tests::a_declared_pixel_bomb_is_rejected_on_its_header ... ok
[INFO] [stdout] test decode::tests::alpha_mode_conversions_are_idempotent ... ok
[INFO] [stdout] test cache::tests::building_mips_for_a_stale_id_is_an_error_not_a_panic ... ok
[INFO] [stdout] test cache::tests::the_same_bytes_decode_once_and_share_an_id ... ok
[INFO] [stdout] test decode::tests::an_unbounded_dimension_limit_does_not_overflow_the_budget_check ... ok
[INFO] [stdout] test cache::tests::the_same_path_loads_once ... ok
[INFO] [stdout] test cache::tests::memory_bytes_tracks_what_is_actually_held ... ok
[INFO] [stdout] test cache::tests::an_image_larger_than_the_whole_budget_is_still_admitted ... ok
[INFO] [stdout] test cache::tests::a_failed_decode_leaves_the_cache_clean_and_visible_in_the_stats ... ok
[INFO] [stdout] test decode::tests::natural_size_and_row_bytes_describe_the_layout ... ok
[INFO] [stdout] test decode::tests::opaque_texels_round_trip_exactly ... ok
[INFO] [stdout] test decode::tests::oversized_declared_dimensions_are_rejected_before_allocating ... ok
[INFO] [stdout] test decode::tests::jpeg_round_trips_within_tolerance ... ok
[INFO] [stdout] test cache::tests::two_paths_to_identical_content_share_one_decode ... ok
[INFO] [stdout] test decode::tests::missing_file_is_an_io_error_carrying_the_path ... ok
[INFO] [stdout] test decode::tests::premultiply_clears_rgb_of_transparent_texels ... ok
[INFO] [stdout] test decode::tests::png_defaults_to_premultiplied ... ok
[INFO] [stdout] test decode::tests::png_round_trips_exactly ... ok
[INFO] [stdout] test decode::tests::dimensions_that_are_individually_legal_but_jointly_absurd_are_rejected ... ok
[INFO] [stdout] test cache::tests::building_mips_grows_the_accounted_memory_without_duplicating_level_zero ... ok
[INFO] [stdout] test decode::tests::corrupt_png_body_is_an_error_not_a_panic ... ok
[INFO] [stdout] test decode::tests::empty_and_short_input_is_an_error_not_a_panic ... ok
[INFO] [stdout] test cache::tests::an_evicted_key_is_reloadable ... ok
[INFO] [stdout] test decode::tests::format_is_detected_from_content_not_extension ... ok
[INFO] [stdout] test decode::tests::format_metadata_is_consistent ... ok
[INFO] [stdout] test cache::tests::a_pinned_entry_survives_eviction ... ok
[INFO] [stdout] test decode::tests::unpremultiply_does_not_divide_by_zero ... ok
[INFO] [stdout] test fit::tests::contain_never_overflows_the_destination ... ok
[INFO] [stdout] test fit::tests::cover_crops_the_source_and_fills_the_destination ... ok
[INFO] [stdout] test decode::tests::unknown_data_reports_its_leading_bytes ... ok
[INFO] [stdout] test decode::tests::premultiply_round_trips_within_the_quantisation_bound ... ok
[INFO] [stdout] test fit::tests::cover_never_samples_outside_the_image ... ok
[INFO] [stdout] test fit::tests::fill_stretches_both_axes ... ok
[INFO] [stdout] test decode::tests::random_bytes_never_panic ... ok
[INFO] [stdout] test fit::tests::contain_letterboxes_on_the_slack_axis ... ok
[INFO] [stdout] test fit::tests::source_uv_normalises_the_crop ... ok
[INFO] [stdout] test fit::tests::source_uv_of_a_degenerate_size_is_zero_not_nan ... ok
[INFO] [stdout] test fit::tests::zero_size_destinations_produce_nothing_and_never_nan ... ok
[INFO] [stdout] test decode::tests::raw_source_declaring_an_absurd_size_does_not_allocate ... ok
[INFO] [stdout] test decode::tests::zero_sized_raw_buffers_are_rejected ... ok
[INFO] [stdout] test fit::tests::zero_size_images_produce_nothing ... ok
[INFO] [stdout] test cache::tests::a_rewritten_file_is_reloaded_rather_than_served_stale ... ok
[INFO] [stdout] test fit::tests::a_tall_destination_flips_which_axis_is_cropped ... ok
[INFO] [stdout] test decode::tests::texel_access_is_bounds_checked ... ok
[INFO] [stdout] test decode::tests::unsupported_but_recognised_format_says_which ... ok
[INFO] [stdout] test fit::tests::destination_origin_is_respected_by_every_mode ... ok
[INFO] [stdout] test fit::tests::matching_aspect_ratios_make_contain_and_cover_agree ... ok
[INFO] [stdout] test fit::tests::non_finite_input_produces_nothing_rather_than_a_nan_rectangle ... ok
[INFO] [stdout] test integration_tests::the_public_surface_names_every_error_case ... ok
[INFO] [stdout] test texture::tests::a_chain_halves_down_to_one_by_one ... ok
[INFO] [stdout] test hash::tests::single_bit_flips_change_the_digest_at_every_length ... ok
[INFO] [stdout] test decode::tests::raw_buffer_length_must_match_declared_dimensions ... ok
[INFO] [stdout] test texture::tests::a_hand_filled_descriptor_cannot_overflow_or_spin ... ok
[INFO] [stdout] test texture::tests::a_one_by_one_image_still_produces_a_valid_chain ... ok
[INFO] [stdout] test fit::tests::none_clips_rather_than_scaling_when_the_image_is_larger ... ok
[INFO] [stdout] test integration_tests::the_whole_pipeline_agrees_on_one_representation ... ok
[INFO] [stdout] test texture::tests::an_extremely_anisotropic_image_never_reaches_a_zero_extent ... ok
[INFO] [stdout] test hash::tests::byte_order_matters ... ok
[INFO] [stdout] test hash::tests::empty_input_is_stable_and_seed_sensitive ... ok
[INFO] [stdout] test integration_tests::fit_resolution_composes_with_a_cached_image ... ok
[INFO] [stdout] test texture::tests::downscaling_a_flat_colour_preserves_it ... ok
[INFO] [stdout] test texture::tests::downscaling_straight_alpha_does_not_produce_a_halo ... ok
[INFO] [stdout] test texture::tests::resize_to_the_same_size_is_an_exact_copy ... ok
[INFO] [stdout] test texture::tests::mip_level_count_matches_the_standard_definition ... ok
[INFO] [stdout] test fit::tests::none_anchors_at_the_top_left_at_natural_size ... ok
[INFO] [stdout] test texture::tests::resize_rejects_degenerate_targets ... ok
[INFO] [stdout] test texture::tests::texture_desc_describes_the_image_it_came_from ... ok
[INFO] [stdout] test texture::tests::texel_format_follows_the_colour_space ... ok
[INFO] [stdout] test integration_tests::a_thumbnail_of_a_cached_image_keeps_its_representation ... ok
[INFO] [stdout] test texture::tests::level_for_scale_picks_by_octave ... ok
[INFO] [stdout] test texture::tests::chain_byte_length_is_about_four_thirds_of_the_base ... ok
[INFO] [stdout] test texture::tests::thumbnail_of_an_extreme_aspect_ratio_keeps_one_texel_of_height ... ok
[INFO] [stdout] test cache::tests::different_bytes_get_different_ids ... ok
[INFO] [stdout] test decode::tests::webp_round_trips_losslessly ... ok
[INFO] [stdout] test hash::tests::length_is_part_of_the_digest ... ok
[INFO] [stdout] test hash::tests::both_output_halves_carry_information ... ok
[INFO] [stdout] test hash::tests::no_collisions_over_a_large_structured_corpus ... ok
[INFO] [stdout] test decode::tests::truncated_png_is_an_error_not_a_panic ... ok
[INFO] [stdout] test texture::tests::thumbnail_preserves_aspect_ratio_and_never_upscales ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 95 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.33s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests spherekit_image
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test src/lib.rs - (line 11) - compile ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] all doctests ran in 0.51s; merged doctests compilation took 0.49s
[INFO] running `Command { std: "docker" "inspect" "ac54526e67511f0f0c84d4700ffc5730ffb51594f8bb81e2abdc1afd438a9d10", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ac54526e67511f0f0c84d4700ffc5730ffb51594f8bb81e2abdc1afd438a9d10", kill_on_drop: false }`
[INFO] [stdout] ac54526e67511f0f0c84d4700ffc5730ffb51594f8bb81e2abdc1afd438a9d10
