[INFO] fetching crate dualis-optics 0.14.0...
[INFO] testing dualis-optics-0.14.0 against 1.99.0-beta.8+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate dualis-optics 0.14.0 into /workspace/builds/worker-2-tc1/source
[INFO] started tweaking crates.io crate dualis-optics 0.14.0
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate dualis-optics 0.14.0
[INFO] tweaked toml for crates.io crate dualis-optics 0.14.0 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate dualis-optics 0.14.0 on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate dualis-optics 0.14.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.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded dualis-core v0.14.0
[INFO] [stderr]   Downloaded dualis-units v0.14.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] e846a92937b38ff7450cc7caa3d3fdc007d3e1cbc14c2029b2809af0f7b8d9a1
[INFO] running `Command { std: "docker" "start" "e846a92937b38ff7450cc7caa3d3fdc007d3e1cbc14c2029b2809af0f7b8d9a1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e846a92937b38ff7450cc7caa3d3fdc007d3e1cbc14c2029b2809af0f7b8d9a1", 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" "e846a92937b38ff7450cc7caa3d3fdc007d3e1cbc14c2029b2809af0f7b8d9a1" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e846a92937b38ff7450cc7caa3d3fdc007d3e1cbc14c2029b2809af0f7b8d9a1", 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" "e846a92937b38ff7450cc7caa3d3fdc007d3e1cbc14c2029b2809af0f7b8d9a1" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.107
[INFO] [stderr]    Compiling quote v1.0.47
[INFO] [stderr]    Compiling syn v3.0.3
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling glam v0.29.3
[INFO] [stderr]    Compiling dualis-units v0.14.0
[INFO] [stderr]    Compiling dualis-core v0.14.0
[INFO] [stderr]    Compiling dualis-optics v0.14.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 17.38s
[INFO] running `Command { std: "docker" "inspect" "e846a92937b38ff7450cc7caa3d3fdc007d3e1cbc14c2029b2809af0f7b8d9a1", 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" "e846a92937b38ff7450cc7caa3d3fdc007d3e1cbc14c2029b2809af0f7b8d9a1" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]    Compiling dualis-optics v0.14.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 7.55s
[INFO] running `Command { std: "docker" "inspect" "e846a92937b38ff7450cc7caa3d3fdc007d3e1cbc14c2029b2809af0f7b8d9a1", 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" "e846a92937b38ff7450cc7caa3d3fdc007d3e1cbc14c2029b2809af0f7b8d9a1" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.04s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/deps/dualis_optics-60193047062741ff)
[INFO] [stdout] 
[INFO] [stdout] running 120 tests
[INFO] [stdout] test coherence::tests::a_source_can_be_measured_by_where_its_fringes_vanish ... ok
[INFO] [stdout] test coherence::tests::the_coherence_of_a_circular_source_is_the_airy_function ... ok
[INFO] [stdout] test detector::tests::noise_equivalent_power_improves_faster_while_read_limited ... ok
[INFO] [stdout] test coherence::tests::partial_coherence_trades_reach_for_contrast ... ok
[INFO] [stdout] test coherence::tests::coherent_transfer_is_flat_and_incoherent_transfer_slopes ... ok
[INFO] [stdout] test detector::tests::dark_current_grows_with_time_and_its_noise_with_the_root ... ok
[INFO] [stdout] test detector::tests::a_full_well_is_reported_as_saturated ... ok
[INFO] [stdout] test detector::tests::exposure_pays_linearly_below_the_crossover_and_as_a_root_above_it ... ok
[INFO] [stdout] test diffraction::tests::a_slit_narrower_than_the_wavelength_has_no_zeros ... ok
[INFO] [stdout] test diffraction::tests::a_slits_zeros_are_at_m_lambda_over_a ... ok
[INFO] [stdout] test detector::tests::the_exposure_for_a_target_snr_round_trips ... ok
[INFO] [stdout] test diffraction::tests::depth_of_focus_falls_as_the_square_of_the_aperture ... ok
[INFO] [stdout] test diffraction::tests::resolution_limits_match_the_catalogue_figures ... ok
[INFO] [stdout] test diffraction::tests::the_cutoff_is_where_transmission_stops_entirely ... ok
[INFO] [stdout] test diffraction::tests::the_diffraction_limit_is_a_fourteenth_of_a_wave_rms ... ok
[INFO] [stdout] test diffraction::tests::the_airy_disc_holds_five_sixths_of_the_light ... ok
[INFO] [stdout] test diffraction::tests::the_airy_pattern_has_a_bright_centre_and_dark_rings ... ok
[INFO] [stdout] test diffraction::tests::the_bessel_functions_hit_their_tabulated_zeros ... ok
[INFO] [stdout] test diffraction::tests::the_fresnel_number_separates_the_regimes ... ok
[INFO] [stdout] test diffraction::tests::the_ideal_mtf_matches_the_disc_autocorrelation ... ok
[INFO] [stdout] test geometry::tests::a_conic_departs_from_the_sphere_away_from_the_vertex ... ok
[INFO] [stdout] test geometry::tests::a_flat_cap_is_a_disc ... ok
[INFO] [stdout] test geometry::tests::a_ray_carries_a_place_and_a_bare_direction ... ok
[INFO] [stdout] test geometry::tests::a_spherical_cap_meets_its_vertex_and_carries_its_sag ... ok
[INFO] [stdout] test geometry::tests::advancing_escapes_the_surface_it_just_left ... ok
[INFO] [stdout] test geometry::tests::an_annulus_catches_only_its_ring ... ok
[INFO] [stdout] test geometry::tests::disc_sampling_is_deterministic_and_seed_dependent ... ok
[INFO] [stdout] test geometry::tests::refraction_obeys_the_sine_ratio ... ok
[INFO] [stdout] test geometry::tests::refraction_reports_total_internal_reflection ... ok
[INFO] [stdout] test geometry::tests::the_conic_solver_reproduces_the_sphere ... ok
[INFO] [stdout] test material::tests::abbe_numbers_match_the_catalogue ... ok
[INFO] [stdout] test material::tests::bulk_transmittance_follows_beer_lambert ... ok
[INFO] [stdout] test material::tests::cauchy_dispersion_behaves_like_dispersion ... ok
[INFO] [stdout] test material::tests::catalog_key_normalization ... ok
[INFO] [stdout] test material::tests::dense_flint_absorbs_blue_and_crown_does_not ... ok
[INFO] [stdout] test coherence::tests::coherent_imaging_cuts_off_at_half_the_incoherent_frequency ... ok
[INFO] [stdout] test coherence::tests::coherence_shrinks_with_source_size_and_grows_with_distance ... ok
[INFO] [stdout] test optics::tests::a_dichroic_reflects_what_it_does_not_pass ... ok
[INFO] [stdout] test material::tests::dispersion_direction ... ok
[INFO] [stdout] test material::tests::immersion_oil_matches_the_crown_it_is_used_with ... ok
[INFO] [stdout] test coherence::tests::degenerate_geometry_is_handled ... ok
[INFO] [stdout] test diffraction::tests::a_perfect_lens_still_has_a_finite_spot ... ok
[INFO] [stdout] test optics::tests::a_flocked_surface_sprays_its_reflection_into_the_hemisphere ... ok
[INFO] [stdout] test detector::tests::an_ideal_detector_is_exactly_root_n ... ok
[INFO] [stdout] test optics::tests::fresnel_rises_to_grazing_and_is_reciprocal ... ok
[INFO] [stdout] test optics::tests::p_polarisation_vanishes_at_brewsters_angle ... ok
[INFO] [stdout] test material::tests::nbk7_index_at_d_line ... ok
[INFO] [stdout] test optics::tests::reflectance_transmittance_and_absorptance_sum_to_one ... ok
[INFO] [stdout] test optics::tests::diffuse_scatter_does_not_change_the_energy_budget ... ok
[INFO] [stdout] test optics::tests::a_surface_that_would_gain_energy_is_rejected ... ok
[INFO] [stdout] test optics::tests::absorption_is_the_number_a_thermal_domain_would_receive ... ok
[INFO] [stdout] test detector::tests::the_signal_is_a_photon_count_through_the_efficiency_curve ... ok
[INFO] [stdout] test optics::tests::an_ar_coating_reduces_the_bare_reflection_spectrally ... ok
[INFO] [stdout] test optics::tests::fresnel_matches_the_closed_form_at_normal_incidence ... ok
[INFO] [stdout] test geometry::tests::a_cylinder_is_hit_within_its_length ... ok
[INFO] [stdout] test optics::tests::sampling_is_reproducible_per_index ... ok
[INFO] [stdout] test optics::tests::total_internal_reflection_starts_at_the_critical_angle ... ok
[INFO] [stdout] test detector::tests::a_count_becomes_watts_through_the_efficiency_and_the_photon_energy ... ok
[INFO] [stdout] test detector::tests::digitising_adds_the_variance_of_rounding ... ok
[INFO] [stdout] test propagation::tests::propagating_nowhere_changes_nothing ... ok
[INFO] [stdout] test detector::tests::a_dark_frame_is_the_detectors_own_noise ... ok
[INFO] [stdout] test propagation::tests::a_non_power_of_two_grid_is_refused - should panic ... ok
[INFO] [stdout] test propagation::tests::the_reach_is_set_by_the_grid_and_the_wavelength ... ok
[INFO] [stdout] test propagation::tests::a_zero_pitch_is_refused - should panic ... ok
[INFO] [stdout] test optics::tests::sampling_recovers_the_energy_split ... ok
[INFO] [stdout] test propagation::tests::a_tighter_waist_diverges_faster ... ok
[INFO] [stdout] test radiometry::tests::a_constant_integrates_to_its_rectangle ... ok
[INFO] [stdout] test radiometry::tests::a_gaussian_matches_its_closed_form_area ... ok
[INFO] [stdout] test radiometry::tests::a_narrow_source_gives_the_textbook_photon_rate ... ok
[INFO] [stdout] test detector::tests::measurements_are_reproducible_per_index ... ok
[INFO] [stdout] test radiometry::tests::a_blackbody_centroid_is_redder_than_its_peak ... ok
[INFO] [stdout] test radiometry::tests::an_empty_spectrum_has_no_centroid_rather_than_a_nan ... ok
[INFO] [stdout] test radiometry::tests::equal_power_is_not_equal_photons ... ok
[INFO] [stdout] test radiometry::tests::absorbed_power_is_a_definite_number_of_watts ... ok
[INFO] [stdout] test radiometry::tests::filtering_moves_the_centroid_not_just_the_total ... ok
[INFO] [stdout] test radiometry::tests::throughput_is_the_ratio_of_the_widths ... ok
[INFO] [stdout] test spectrum::tests::a_constant_spectrum_is_flat ... ok
[INFO] [stdout] test spectrum::tests::a_composed_path_round_trips_through_json ... ok
[INFO] [stdout] test radiometry::tests::the_trapezoid_is_exact_on_a_ramp_and_on_a_decaying_band ... ok
[INFO] [stdout] test spectrum::tests::a_band_may_invert ... ok
[INFO] [stdout] test spectrum::tests::a_blackbody_peaks_where_wien_says ... ok
[INFO] [stdout] test spectrum::tests::bands_have_edges_and_leak ... ok
[INFO] [stdout] test spectrum::tests::empty_products_and_sums_are_the_identities ... ok
[INFO] [stdout] test spectrum::tests::multiplying_then_integrating_matches_the_weighted_integral ... ok
[INFO] [stdout] test spectrum::tests::a_curve_interpolates_and_never_extrapolates ... ok
[INFO] [stdout] test spectrum::tests::normalising_scales_to_a_peak_or_to_an_area ... ok
[INFO] [stdout] test spectrum::tests::a_fluorescence_path_is_one_spectrum ... ok
[INFO] [stdout] test spectrum::tests::a_gaussian_is_half_at_its_half_width ... ok
[INFO] [stdout] test propagation::tests::too_far_is_an_error_and_not_a_wrapped_field ... ok
[INFO] [stdout] test spectrum::tests::a_product_multiplies_wavelength_by_wavelength ... ok
[INFO] [stdout] test spectrum::tests::tungsten_is_red_and_daylight_is_not ... ok
[INFO] [stdout] test spectrum::tests::wavelengths_are_lengths ... ok
[INFO] [stdout] test wavefront::tests::a_non_power_of_two_grid_is_refused - should panic ... ok
[INFO] [stdout] test wavefront::tests::an_aperture_larger_than_its_grid_is_refused - should panic ... ok
[INFO] [stdout] test spectrum::tests::scaling_joins_the_chain_rather_than_wrapping_it ... ok
[INFO] [stdout] test spectrum::tests::overlapping_bands_take_the_best ... ok
[INFO] [stdout] test spectrum::tests::products_flatten_and_so_associate_exactly ... ok
[INFO] [stdout] test spectrum::tests::a_long_chain_stays_flat ... ok
[INFO] [stdout] test wavefront::tests::only_real_modes_exist ... ok
[INFO] [stdout] test propagation::tests::propagation_is_bit_reproducible ... ok
[INFO] [stdout] test propagation::tests::propagation_is_reversible ... ok
[INFO] [stdout] test detector::tests::the_snr_equation_matches_what_the_noise_actually_does ... ok
[INFO] [stdout] test wavefront::tests::piston_is_invisible_and_tilt_only_moves_things ... ok
[INFO] [stdout] test detector::tests::shot_noise_has_variance_equal_to_its_mean ... ok
[INFO] [stdout] test wavefront::tests::the_transform_is_bit_reproducible ... ok
[INFO] [stdout] test wavefront::tests::the_transform_conserves_energy ... ok
[INFO] [stdout] test wavefront::tests::a_fourteenth_of_a_wave_is_still_diffraction_limited ... ok
[INFO] [stdout] test wavefront::tests::an_unaberrated_pupil_reproduces_the_airy_pattern ... ok
[INFO] [stdout] test propagation::tests::propagation_composes ... ok
[INFO] [stdout] test wavefront::tests::encircled_energy_agrees_with_the_closed_form ... ok
[INFO] [stdout] test wavefront::tests::coma_moves_the_image_and_defocus_does_not ... ok
[INFO] [stdout] test propagation::tests::propagation_conserves_power ... ok
[INFO] [stdout] test wavefront::tests::an_obscuration_buys_resolution_with_contrast ... ok
[INFO] [stdout] test wavefront::tests::the_mtf_reproduces_the_disc_autocorrelation ... ok
[INFO] [stdout] test propagation::tests::the_far_field_opens_at_the_divergence_angle ... ok
[INFO] [stdout] test wavefront::tests::small_aberrations_follow_the_marechal_approximation ... ok
[INFO] [stdout] test wavefront::tests::astigmatism_needs_defocus_to_pick_an_axis ... ok
[INFO] [stdout] test wavefront::tests::the_zernike_modes_are_orthonormal_over_the_disc ... ok
[INFO] [stdout] test propagation::tests::a_gaussian_beam_expands_by_its_closed_form ... ok
[INFO] [stdout] test propagation::tests::an_aperture_shadow_changes_with_distance ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 120 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.71s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests dualis_optics
[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" "e846a92937b38ff7450cc7caa3d3fdc007d3e1cbc14c2029b2809af0f7b8d9a1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e846a92937b38ff7450cc7caa3d3fdc007d3e1cbc14c2029b2809af0f7b8d9a1", kill_on_drop: false }`
[INFO] [stdout] e846a92937b38ff7450cc7caa3d3fdc007d3e1cbc14c2029b2809af0f7b8d9a1
