[INFO] fetching crate ogeom-algo 0.11.1... [INFO] testing ogeom-algo-0.11.1 against 1.99.0-beta.8+cargoflags=--release for beta-release-1.100-2 [INFO] extracting crate ogeom-algo 0.11.1 into /workspace/builds/worker-7-tc1/source [INFO] started tweaking crates.io crate ogeom-algo 0.11.1 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate ogeom-algo 0.11.1 [INFO] tweaked toml for crates.io crate ogeom-algo 0.11.1 written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate ogeom-algo 0.11.1 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 ogeom-algo 0.11.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.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 ogeom-core v0.11.1 [INFO] [stderr] Downloaded nalgebra-macros v0.3.0 [INFO] [stderr] Downloaded ogeom-math v0.11.1 [INFO] [stderr] Downloaded simba v0.10.0 [INFO] [stderr] Downloaded matrixmultiply v0.3.11 [INFO] [stderr] Downloaded ogeom-topo v0.11.1 [INFO] [stderr] Downloaded safe_arch v1.1.0 [INFO] [stderr] Downloaded ogeom-mesh v0.11.1 [INFO] [stderr] Downloaded ogeom-geom v0.11.1 [INFO] [stderr] Downloaded ogeom-intersect v0.11.1 [INFO] [stderr] Downloaded wide v1.6.1 [INFO] [stderr] Downloaded nalgebra v0.35.0 [INFO] [stderr] Downloaded glam v0.31.1 [INFO] [stderr] Downloaded glam v0.30.10 [INFO] [stderr] Downloaded glam v0.32.1 [INFO] [stderr] Downloaded glam v0.33.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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] c336154571f4e62c758c31da6b327369d50f5c729416f681dafcc470764c321e [INFO] running `Command { std: "docker" "start" "c336154571f4e62c758c31da6b327369d50f5c729416f681dafcc470764c321e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c336154571f4e62c758c31da6b327369d50f5c729416f681dafcc470764c321e", 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" "c336154571f4e62c758c31da6b327369d50f5c729416f681dafcc470764c321e" "/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" "c336154571f4e62c758c31da6b327369d50f5c729416f681dafcc470764c321e", 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" "c336154571f4e62c758c31da6b327369d50f5c729416f681dafcc470764c321e" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }` [INFO] [stderr] Compiling bytemuck v1.25.2 [INFO] [stderr] Compiling matrixmultiply v0.3.11 [INFO] [stderr] Compiling smallvec v1.15.2 [INFO] [stderr] Compiling rawpointer v0.2.1 [INFO] [stderr] Compiling robust v1.2.0 [INFO] [stderr] Compiling indexmap v2.14.0 [INFO] [stderr] Compiling approx v0.5.1 [INFO] [stderr] Compiling num-complex v0.4.6 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling syn v2.0.119 [INFO] [stderr] Compiling safe_arch v1.1.0 [INFO] [stderr] Compiling num-rational v0.4.2 [INFO] [stderr] Compiling ogeom-core v0.11.1 [INFO] [stderr] Compiling spade v2.15.1 [INFO] [stderr] Compiling wide v1.6.1 [INFO] [stderr] Compiling nalgebra-macros v0.3.0 [INFO] [stderr] Compiling simba v0.10.0 [INFO] [stderr] Compiling nalgebra v0.35.0 [INFO] [stderr] Compiling ogeom-math v0.11.1 [INFO] [stderr] Compiling ogeom-geom v0.11.1 [INFO] [stderr] Compiling ogeom-topo v0.11.1 [INFO] [stderr] Compiling ogeom-intersect v0.11.1 [INFO] [stderr] Compiling ogeom-mesh v0.11.1 [INFO] [stderr] Compiling ogeom-algo v0.11.1 (/opt/rustwide/workdir) [INFO] [stderr] Finished `release` profile [optimized] target(s) in 1m 13s [INFO] running `Command { std: "docker" "inspect" "c336154571f4e62c758c31da6b327369d50f5c729416f681dafcc470764c321e", 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" "c336154571f4e62c758c31da6b327369d50f5c729416f681dafcc470764c321e" "/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 zerocopy v0.8.55 [INFO] [stderr] Compiling approx v0.5.1 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling getrandom v0.4.3 [INFO] [stderr] Compiling wait-timeout v0.2.1 [INFO] [stderr] Compiling simba v0.10.0 [INFO] [stderr] Compiling rand_core v0.9.5 [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling rand_xorshift v0.4.0 [INFO] [stderr] Compiling rand v0.9.5 [INFO] [stderr] Compiling rusty-fork v0.3.1 [INFO] [stderr] Compiling nalgebra v0.35.0 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling proptest v1.11.0 [INFO] [stderr] Compiling ogeom-math v0.11.1 [INFO] [stderr] Compiling ogeom-geom v0.11.1 [INFO] [stderr] Compiling ogeom-topo v0.11.1 [INFO] [stderr] Compiling ogeom-intersect v0.11.1 [INFO] [stderr] Compiling ogeom-mesh v0.11.1 [INFO] [stderr] Compiling ogeom-algo v0.11.1 (/opt/rustwide/workdir) [INFO] [stderr] Finished `release` profile [optimized] target(s) in 1m 08s [INFO] running `Command { std: "docker" "inspect" "c336154571f4e62c758c31da6b327369d50f5c729416f681dafcc470764c321e", 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" "c336154571f4e62c758c31da6b327369d50f5c729416f681dafcc470764c321e" "/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.11s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/release/deps/ogeom_algo-dcce5be11857a340) [INFO] [stdout] [INFO] [stdout] running 317 tests [INFO] [stdout] test build::band_tests::an_apex_band_needs_a_cone ... ok [INFO] [stdout] test build::band_tests::two_degenerate_rings_bound_nothing_and_are_refused ... ok [INFO] [stdout] test build::polygon_tests::a_closed_polygon_names_its_first_vertex_again_rather_than_a_second_one ... ok [INFO] [stdout] test build::compsolid_tests::glued_solids_build_a_compsolid_and_loose_ones_are_refused ... ok [INFO] [stdout] test build::band_tests::a_ring_square_to_the_axis_is_not_a_band_ring ... ok [INFO] [stdout] test build::band_tests::a_band_keeps_its_face_on_the_left_whichever_way_its_rings_come ... ok [INFO] [stdout] test build::band_tests::a_refused_band_leaves_its_rings_without_pcurves ... ok [INFO] [stdout] test build::polygon_tests::a_planar_shape_reports_the_plane_it_lies_in ... ok [INFO] [stdout] test build::polygon_tests::a_curved_edge_is_sampled_along_its_length_not_only_at_its_ends ... ok [INFO] [stdout] test bins::tests::near_finds_every_point_within_reach ... ok [INFO] [stdout] test build::polygon_tests::a_shape_that_is_not_planar_says_so_rather_than_fitting_one_anyway ... ok [INFO] [stdout] test build::polygon_tests::an_open_polygon_is_one_edge_short_and_says_it_is_open ... ok [INFO] [stdout] test build::polygon_tests::a_face_is_planar_when_its_surface_is ... ok [INFO] [stdout] test build::tests::a_planar_face_walks_its_rings_about_its_plane ... ok [INFO] [stdout] test build::tests::a_closed_edge_names_one_vertex_twice ... ok [INFO] [stdout] test build::tests::a_pcurve_can_be_attached_after_the_edge_exists ... ok [INFO] [stdout] test build::tests::a_shell_of_one_face_is_not_closed ... ok [INFO] [stdout] test build::tests::a_face_refuses_an_open_boundary ... ok [INFO] [stdout] test build::tests::a_band_whose_rings_start_apart_gets_a_helical_connector ... ok [INFO] [stdout] test build::tests::a_natural_face_needs_no_wires_at_all ... ok [INFO] [stdout] test build::tests::a_small_chart_miss_whose_ends_meet_in_space_lays_no_pole ... ok [INFO] [stdout] test build::tests::a_band_between_a_circle_and_a_fitted_wavy_ring_closes_with_its_seam ... ok [INFO] [stdout] test build::tests::an_edge_takes_its_vertices_from_its_own_geometry ... ok [INFO] [stdout] test build::tests::an_edges_vertices_record_where_they_came_from ... ok [INFO] [stdout] test build::tests::an_edge_whose_curve_does_not_reach_its_vertices_is_refused ... ok [INFO] [stdout] test build::tests::a_wire_of_edges_that_meet_is_accepted_and_reported_closed ... ok [INFO] [stdout] test build::polygon_tests::a_polygon_that_describes_nothing_is_refused ... ok [INFO] [stdout] test build::tests::a_vertex_with_a_loose_tolerance_admits_a_curve_that_stops_short ... ok [INFO] [stdout] test build::tests::a_wire_whose_edges_do_not_meet_is_refused ... ok [INFO] [stdout] test build::tests::a_small_ring_far_from_the_origin_turns_by_its_area ... ok [INFO] [stdout] test build::tests::an_open_wire_is_reported_open ... ok [INFO] [stdout] test build::tests::edge_vertices_follow_the_direction_of_travel ... ok [INFO] [stdout] test build::tests::builders_reject_children_of_the_wrong_type ... ok [INFO] [stdout] test build::tests::two_faces_sharing_every_edge_form_a_closed_shell ... ok [INFO] [stdout] test build::tests::a_face_on_a_fitted_surface_gains_projected_pcurves ... ok [INFO] [stdout] test check::tessellation_tests::a_shape_with_no_shell_has_nothing_to_disagree_about ... ok [INFO] [stdout] test check::tessellation_tests::an_open_shell_is_not_reported_because_it_never_claimed_to_close ... ok [INFO] [stdout] test build::tests::degenerate_edge_ranges_are_refused ... ok [INFO] [stdout] test check::tests::a_handle_that_does_not_resolve_is_an_error_not_a_finding ... ok [INFO] [stdout] test build::tests::a_fitted_connector_states_its_charts_gap ... ok [INFO] [stdout] test check::tests::a_face_too_loose_for_its_boundary_names_each_part_once ... ok [INFO] [stdout] test build::band_tests::a_degenerate_ring_is_accepted_whichever_side_it_is_passed_on ... ok [INFO] [stdout] test check::tests::a_vertex_tighter_than_its_edge_is_caught ... ok [INFO] [stdout] test check::tests::an_edge_with_no_curve_and_no_excuse_is_caught ... ok [INFO] [stdout] test check::tests::a_single_face_is_reported_open_but_still_usable ... ok [INFO] [stdout] test check::tests::a_face_whose_edge_has_no_pcurve_is_caught ... ok [INFO] [stdout] test build::band_tests::a_cone_cap_takes_its_apex_as_a_degenerate_ring ... ok [INFO] [stdout] test build::band_tests::a_rim_split_on_the_other_rims_column_closes_the_drum ... ok [INFO] [stdout] test check::tests::an_edge_whose_curve_misses_its_vertex_is_caught ... ok [INFO] [stdout] test build::tests::a_fitted_trim_states_its_gap_along_the_whole_edge ... ok [INFO] [stdout] test classify::tests::a_point_on_a_face_is_inside_its_trimming_or_not ... ok [INFO] [stdout] test classify::tests::a_point_on_a_strip_winding_many_turns_folds_onto_its_own_turn ... ok [INFO] [stdout] test classify::tests::a_point_every_ray_from_which_meets_a_vertex_is_read_by_its_winding_number ... ok [INFO] [stdout] test classify::tests::a_ray_along_a_grid_of_edges_does_not_defeat_the_classifier ... ok [INFO] [stdout] test check::tests::a_prism_is_valid ... ok [INFO] [stdout] test check::tessellation_tests::moving_a_vertex_does_not_move_the_mesh ... ok [INFO] [stdout] test check::tests::a_diagnosis_reads_as_a_report_rather_than_a_debug_dump ... ok [INFO] [stdout] test classify::tests::an_open_shell_has_no_inside ... ok [INFO] [stdout] test classify::tests::a_translated_box_classifies_the_same_way_translated_points ... ok [INFO] [stdout] test classify::tests::a_point_inside_a_box_is_inside_it ... ok [INFO] [stdout] test check::tests::an_edge_whose_pcurve_leaves_its_curve_is_caught ... ok [INFO] [stdout] test classify::tests::an_unusable_deflection_is_refused ... ok [INFO] [stdout] test classify::tests::distance_to_a_triangle_is_measured_from_the_nearest_part_of_it ... ok [INFO] [stdout] test classify::tests::the_exact_classifier_refuses_an_open_boundary ... ok [INFO] [stdout] test classify::tests::a_point_outside_a_box_is_outside_it ... ok [INFO] [stdout] test classify::tests::points_beside_a_rim_near_a_sphere_s_pole_are_in_or_out ... ok [INFO] [stdout] test classify::tests::the_answers_invert_the_way_a_complement_does ... ok [INFO] [stdout] test classify::tests::the_exact_classifier_walks_the_general_path_through_a_torus ... ok [INFO] [stdout] test check::tests::every_primitive_is_valid ... ok [INFO] [stdout] test check::tessellation_tests::every_primitive_tessellates_into_a_mesh_that_agrees_with_its_topology ... ok [INFO] [stdout] test classify::tests::the_exact_classifier_respects_a_placed_solid ... ok [INFO] [stdout] test check::tests::spline_sheets_whose_boxes_overlap_are_told_apart_or_measured ... ok [INFO] [stdout] test classify::tests::a_point_on_a_boxs_face_is_on_it_rather_than_forced_to_a_side ... ok [INFO] [stdout] test check::tests::an_edge_both_faces_walk_the_same_way_is_named ... ok [INFO] [stdout] test fit::tests::a_degree_one_interpolant_is_the_polyline_itself ... ok [INFO] [stdout] test fit::tests::an_approximation_uses_the_control_points_it_was_given_and_hits_the_ends ... ok [INFO] [stdout] test convert::tests::a_baked_prism_walks_each_edge_once_each_way ... ok [INFO] [stdout] test fit::tests::an_interpolant_passes_through_every_point ... ok [INFO] [stdout] test fit::tests::an_interpolant_through_collinear_points_is_the_line_they_lie_on ... ok [INFO] [stdout] test fit::tests::asking_for_an_approximation_that_is_an_interpolation_is_refused ... ok [INFO] [stdout] test fit::tests::centripetal_spacing_beats_uniform_on_unevenly_spread_points ... ok [INFO] [stdout] test fit::tests::more_control_points_fit_the_data_more_closely ... ok [INFO] [stdout] test fit::tests::coincident_points_are_refused_rather_than_solved_around ... ok [INFO] [stdout] test fit::tests::too_few_points_for_the_degree_is_refused ... ok [INFO] [stdout] test history::tests::a_consumed_shape_still_reports_what_it_generated ... ok [INFO] [stdout] test history::tests::a_copy_is_a_modification_that_says_so ... ok [INFO] [stdout] test history::tests::a_modification_withdraws_an_earlier_deletion ... ok [INFO] [stdout] test history::tests::a_primitive_reports_a_history_with_nothing_in_it ... ok [INFO] [stdout] test history::tests::a_shape_cannot_be_both_deleted_and_modified ... ok [INFO] [stdout] test history::tests::chaining_a_sequence_matches_folding_it_by_hand ... ok [INFO] [stdout] test history::tests::an_empty_history_reports_everything_as_untouched ... ok [INFO] [stdout] test history::tests::composition_carries_generated_entities_forward ... ok [INFO] [stdout] test history::tests::composition_follows_a_shape_through_two_operations ... ok [INFO] [stdout] test history::tests::composition_is_associative ... ok [INFO] [stdout] test history::tests::composition_keeps_a_deletion_from_the_first_step ... ok [INFO] [stdout] test history::tests::composition_passes_through_shapes_only_the_later_step_knows ... ok [INFO] [stdout] test history::tests::composition_reports_a_shape_deleted_by_the_second_step ... ok [INFO] [stdout] test history::tests::composition_splits_when_the_second_step_splits ... ok [INFO] [stdout] test history::tests::copies_compose_as_copies_and_a_change_breaks_them ... ok [INFO] [stdout] test history::tests::composing_in_place_answers_as_composing_afresh ... ok [INFO] [stdout] test history::tests::generated_modified_and_deleted_are_distinct_claims ... ok [INFO] [stdout] test check::tessellation_tests::a_prism_tessellates_into_an_agreeing_mesh_whichever_face_it_swept ... ok [INFO] [stdout] test convert::tests::a_uniform_scale_is_a_placement_and_leaves_the_surfaces_analytic ... ok [INFO] [stdout] test history::tests::the_empty_history_is_an_identity_for_composition ... ok [INFO] [stdout] test history::tests::history_is_keyed_ignoring_orientation ... ok [INFO] [stdout] test history::tests::inputs_lists_every_shape_the_history_mentions_once ... ok [INFO] [stdout] test length::tests::a_circles_length_is_its_circumference_and_an_arcs_is_the_fraction ... ok [INFO] [stdout] test length::tests::a_lines_length_is_the_distance_between_its_ends ... ok [INFO] [stdout] test length::tests::asking_beyond_the_end_is_refused_rather_than_clamped ... ok [INFO] [stdout] test length::tests::an_unevenly_parameterized_curve_is_still_evenly_divided ... ok [INFO] [stdout] test classify::tests::the_exact_classifier_handles_a_cylinder_wall_and_caps ... ok [INFO] [stdout] test length::tests::distributions_that_describe_nothing_are_refused ... ok [INFO] [stdout] test length::tests::length_is_measured_on_the_curve_not_on_a_polyline_through_it ... ok [INFO] [stdout] test length::tests::lengths_and_points_across_a_kink ... ok [INFO] [stdout] test classify::tests::an_open_or_doubled_boundary_is_not_read_by_its_winding_number ... ok [INFO] [stdout] test length::tests::spacing_always_reaches_the_end_even_when_it_does_not_divide ... ok [INFO] [stdout] test classify::tests::the_exact_classifier_agrees_with_the_tessellated_one_on_a_box ... ok [INFO] [stdout] test length::tests::points_by_count_are_evenly_spaced_along_the_curve ... ok [INFO] [stdout] test mass::tests::a_box_has_the_area_and_edge_length_a_box_has ... ok [INFO] [stdout] test build::band_tests::a_sphere_cap_closes_against_its_pole ... ok [INFO] [stdout] test mass::tests::a_shape_with_nothing_to_measure_says_so_rather_than_dividing_by_zero ... ok [INFO] [stdout] test mass::tests::a_part_a_long_way_from_the_origin_keeps_its_precision ... ok [INFO] [stdout] test mass::tests::an_unusable_deflection_is_refused ... ok [INFO] [stdout] test convert::tests::a_sheared_cylinder_still_encloses_its_volume ... ok [INFO] [stdout] test mass::tests::a_box_has_the_volume_centre_and_inertia_a_box_has ... ok [INFO] [stdout] test mass::tests::an_open_shell_is_refused_rather_than_measured ... ok [INFO] [stdout] test mass_chart::tests::a_dip_of_the_normal_between_nodes_is_graded_to_rounding ... ok [INFO] [stdout] test mass_chart::tests::the_short_rules_are_exact_to_their_degree ... ok [INFO] [stdout] test mass::tests::an_inward_shell_is_refused_rather_than_reported_as_negative ... ok [INFO] [stdout] test mass_chart::tests::the_strip_pair_is_exact_to_its_degrees ... ok [INFO] [stdout] test convert::tests::a_shear_preserves_volume_and_a_stretch_scales_it ... ok [INFO] [stdout] test convert::tests::a_cylinder_converts_seams_poles_and_all ... ok [INFO] [stdout] test mass::tests::a_cubes_principal_moments_are_all_the_same ... ok [INFO] [stdout] test convert::tests::a_box_converts_to_nurbs_and_measures_the_same ... ok [INFO] [stdout] test measure::deflection_tests::a_relative_deflection_follows_the_shape_it_is_for ... ok [INFO] [stdout] test measure::deflection_tests::a_shape_with_no_extent_has_no_fraction_of_itself ... ok [INFO] [stdout] test measure::tests::a_guess_in_the_wrong_basin_reports_its_distance_honestly ... ok [INFO] [stdout] test measure::tests::a_guessed_foot_lands_where_the_grid_lands ... ok [INFO] [stdout] test measure::deflection_tests::a_planar_face_is_bounded_by_its_wires_not_its_carrier ... ok [INFO] [stdout] test measure::tests::a_line_bounds_exactly_to_its_endpoints ... ok [INFO] [stdout] test measure::oriented_bound_tests::a_shape_with_nothing_to_bound_says_so ... ok [INFO] [stdout] test measure::tests::a_patch_widened_to_hold_a_point_is_continued_to_it ... ok [INFO] [stdout] test measure::tests::a_placed_shapes_bound_moves_with_it ... ok [INFO] [stdout] test mass::tests::a_long_box_spins_most_easily_about_its_length ... ok [INFO] [stdout] test measure::tests::a_point_on_a_long_flanks_outer_helix_projects_to_its_own_turn ... ok [INFO] [stdout] test measure::oriented_bound_tests::a_cylinders_oriented_bound_follows_its_axis ... ok [INFO] [stdout] test measure::tests::a_patch_is_bounded_by_the_piece_its_trim_can_reach ... ok [INFO] [stdout] test measure::tests::a_surface_with_no_bounded_direction_comes_back_unchanged ... ok [INFO] [stdout] test measure::tests::a_shapes_bound_contains_every_vertex_it_holds ... ok [INFO] [stdout] test measure::tests::a_point_past_a_bound_lands_on_the_bound_not_on_its_seed ... ok [INFO] [stdout] test mass::tests::analytic_primitives_measure_exactly_on_their_own_surfaces ... ok [INFO] [stdout] test mass::tests::moving_the_inertia_off_the_centre_agrees_with_the_parallel_axis_theorem ... ok [INFO] [stdout] test measure::tests::a_spheres_bound_is_exact ... ok [INFO] [stdout] test measure::tests::a_trimmed_curve_reports_the_bound_of_the_whole ... ok [INFO] [stdout] test measure::tests::an_unbounded_plane_is_refused_rather_than_bounded_wrongly ... ok [INFO] [stdout] test measure::tests::projecting_onto_a_cylinder_is_radial ... ok [INFO] [stdout] test measure::tests::a_window_widened_to_hold_a_point_holds_it_with_room_to_spare ... ok [INFO] [stdout] test measure::tests::a_splines_bound_is_its_control_hull_and_that_is_a_guarantee ... ok [INFO] [stdout] test measure::tests::every_curves_bound_contains_the_curve ... ok [INFO] [stdout] test measure::tests::every_surfaces_bound_contains_the_surface ... ok [INFO] [stdout] test measure::oriented_bound_tests::turning_a_box_turns_its_oriented_bound_with_it_and_not_its_volume ... ok [INFO] [stdout] test measure::tests::projecting_onto_a_line_lands_on_the_foot_of_the_perpendicular ... ok [INFO] [stdout] test measure::tests::an_arc_on_a_tilted_frame_stays_inside_its_bound ... ok [INFO] [stdout] test measure::tests::projecting_onto_a_planar_curve_works_in_parameter_space ... ok [INFO] [stdout] test measure::tests::projecting_onto_a_circle_finds_the_nearest_of_many_minima ... ok [INFO] [stdout] test measure::oriented_bound_tests::an_oriented_box_around_a_box_is_that_box ... ok [INFO] [stdout] test measure::tests::projecting_onto_a_plane_gives_the_perpendicular_foot ... ok [INFO] [stdout] test measure::tests::projecting_past_the_end_of_a_segment_clamps_to_the_end ... ok [INFO] [stdout] test measure::tests::projection_of_a_point_already_on_the_geometry_returns_zero_distance ... ok [INFO] [stdout] test mesh_solid::narrow_tests::a_default_region_split_between_two_wider_ones_comes_back_once ... ok [INFO] [stdout] test mesh_solid::regions::tests::a_ring_out_of_its_plane_is_no_latitude_of_a_small_ball ... ok [INFO] [stdout] test measure::tests::projecting_onto_a_sphere_lands_on_the_radial_line ... ok [INFO] [stdout] test measure::tests::shared_seeds_project_to_the_bit_where_the_per_call_grid_lands ... ok [INFO] [stdout] test measure::tests::the_vertex_bound_of_a_box_is_tight_and_the_full_bound_contains_it ... ok [INFO] [stdout] test medial::tests::a_ring_far_out_in_its_plane_encloses_its_own_area ... ok [INFO] [stdout] test pcurve_fit::tests::a_sample_stalled_at_a_pole_is_retried_from_its_neighbour ... ok [INFO] [stdout] test pcurve_fit::tests::slop_under_a_millimetre_fits_and_is_reported ... ok [INFO] [stdout] test pcurve_fit::tests::a_direction_is_weak_by_what_crossing_it_moves ... ok [INFO] [stdout] test pcurve_gap::tests::a_point_short_of_a_closed_curve_s_end_is_on_it ... ok [INFO] [stdout] test pcurve_fit::tests::a_trace_that_walked_off_its_chart_is_slid_back ... ok [INFO] [stdout] test mass::tests::the_answer_does_not_depend_on_where_the_shape_sits ... ok [INFO] [stdout] test pcurve_gap::tests::a_peak_between_samples_is_measured_at_its_top ... ok [INFO] [stdout] test place::tests::a_copy_names_what_it_came_from ... ok [INFO] [stdout] test place::tests::a_rigid_move_creates_no_topology_at_all ... ok [INFO] [stdout] test place::tests::a_rotation_is_a_placement_and_a_reflection_still_is ... ok [INFO] [stdout] test place::tests::every_sub_shape_traces_to_its_occurrence_in_the_moved_shape ... ok [INFO] [stdout] test pcurve_fit::tests::a_fit_is_held_between_its_samples_where_the_curve_runs_fast ... ok [INFO] [stdout] test place::tests::a_uniform_scale_scales_the_volume_by_its_cube ... ok [INFO] [stdout] test place::tests::placing_or_copying_a_stranger_is_an_error ... ok [INFO] [stdout] test place::tests::a_copy_keeps_shared_edges_shared ... ok [INFO] [stdout] test primitive::half_space_tests::it_reaches_only_as_far_as_its_surface_says ... ok [INFO] [stdout] test primitive::half_space_tests::the_face_is_oriented_away_from_the_side_that_is_solid ... ok [INFO] [stdout] test primitive::half_space_tests::a_point_on_the_face_names_no_side ... ok [INFO] [stdout] test convert::tests::every_sub_shape_traces_to_its_twin_under_an_affine_map ... ok [INFO] [stdout] test primitive::half_space_tests::nothing_can_yet_be_asked_about_the_inside_of_one ... ok [INFO] [stdout] test primitive::more_primitive_tests::a_tapered_wedge_has_the_volume_a_frustum_of_a_pyramid_has ... ok [INFO] [stdout] test mass::tests::a_sphere_converges_on_the_volume_a_sphere_has ... ok [INFO] [stdout] test primitive::half_space_tests::a_half_space_is_bounded_by_a_face_and_nothing_else ... ok [INFO] [stdout] test primitive::more_primitive_tests::a_cone_widening_upward_is_built_the_same_way_round ... ok [INFO] [stdout] test primitive::more_primitive_tests::a_wedge_collapsing_to_a_point_is_a_pyramid ... ok [INFO] [stdout] test primitive::more_primitive_tests::a_true_cone_ends_in_an_apex_and_has_no_top_cap ... ok [INFO] [stdout] test primitive::more_primitive_tests::dimensions_that_describe_no_solid_are_refused ... ok [INFO] [stdout] test primitive::revolution_tests::a_cylinder_has_the_topology_a_cylinder_has ... ok [INFO] [stdout] test place::tests::a_copy_of_a_prism_with_instanced_caps_is_still_a_closed_solid ... ok [INFO] [stdout] test primitive::more_primitive_tests::a_wedge_with_equal_extents_is_a_box ... ok [INFO] [stdout] test primitive::more_primitive_tests::a_truncated_cone_has_the_volume_a_frustum_has ... ok [INFO] [stdout] test primitive::revolution_tests::a_placed_primitive_lands_where_it_was_placed ... ok [INFO] [stdout] test place::tests::a_copy_has_its_own_topology_and_the_same_geometry ... ok [INFO] [stdout] test primitive::more_primitive_tests::a_wedge_collapsing_to_a_ridge_is_five_faces_and_a_prismatoid_volume ... ok [INFO] [stdout] test primitive::more_primitive_tests::a_torus_has_two_seams_one_vertex_and_the_volume_a_torus_has ... ok [INFO] [stdout] test primitive::revolution_tests::a_sphere_has_the_topology_a_sphere_has ... ok [INFO] [stdout] test primitive::revolution_tests::dimensions_that_describe_no_solid_are_refused ... ok [INFO] [stdout] test primitive::revolution_tests::a_sphere_converges_on_the_volume_and_area_a_sphere_has ... ok [INFO] [stdout] test primitive::revolution_tests::a_cylinders_caps_face_outward ... ok [INFO] [stdout] test primitive::tests::a_box_has_the_topology_a_box_should_have ... ok [INFO] [stdout] test primitive::tests::a_boxs_shell_is_closed ... ok [INFO] [stdout] test place::tests::a_copy_of_a_prism_bakes_cleanly ... ok [INFO] [stdout] test primitive::tests::a_primitive_reports_no_history_because_it_consumed_nothing ... ok [INFO] [stdout] test primitive::revolution_tests::a_cylinder_tessellates_into_a_closed_mesh_of_the_right_size ... ok [INFO] [stdout] test primitive::tests::a_parallelepiped_spans_its_triple_product_in_either_handedness ... ok [INFO] [stdout] test primitive::tests::a_box_in_a_tilted_frame_is_still_a_box ... ok [INFO] [stdout] test primitive::tests::every_edge_is_used_by_exactly_two_faces_in_the_tables ... ok [INFO] [stdout] test primitive::tests::every_corner_pair_of_a_face_is_a_real_edge ... ok [INFO] [stdout] test primitive::tests::a_polyhedron_winds_its_rings_outward_and_closes ... ok [INFO] [stdout] test primitive::tests::degenerate_dimensions_are_refused ... ok [INFO] [stdout] test primitive::tests::every_edge_carries_a_pcurve_for_each_face_it_bounds ... ok [INFO] [stdout] test primitive::tests::rebuilding_at_a_different_size_gives_the_faces_the_same_roles ... ok [INFO] [stdout] test primitive::tests::the_six_faces_carry_distinct_roles ... ok [INFO] [stdout] test primitive::tests::every_face_normal_points_out_of_the_box ... ok [INFO] [stdout] test place::tests::a_moved_shape_measures_the_same_and_sits_elsewhere ... ok [INFO] [stdout] test primitive::tests::a_hexahedron_is_a_frustum_when_its_corners_say_so ... ok [INFO] [stdout] test pcurve_fit::tests::a_fit_on_a_patch_states_its_widest_miss_between_the_samples ... ok [INFO] [stdout] test recognize::tests::a_coarse_strip_of_a_narrow_round_is_its_cylinder ... ok [INFO] [stdout] test recognize::tests::a_cylinder_is_recognized_from_rough_normals ... ok [INFO] [stdout] test primitive::tests::a_polyhedron_face_may_start_on_a_straight_run ... ok [INFO] [stdout] test recognize::tests::a_small_patch_of_a_thick_torus_is_that_torus ... ok [INFO] [stdout] test recognize::tests::a_sphere_too_far_off_to_measure_is_no_fit ... ok [INFO] [stdout] test recognize::tests::a_free_form_patch_refuses_every_canonical ... ok [INFO] [stdout] test recognize_patch::tests::a_ring_is_refused_as_no_disk ... ok [INFO] [stdout] test pcurve_fit::tests::a_pcurve_paced_differently_is_measured_at_its_widest_bump ... ok [INFO] [stdout] test mass::tests::a_scaling_placement_scales_the_exact_measures_by_their_powers ... ok [INFO] [stdout] test proximity::tests::parallel_cylinders_meet_wall_to_wall ... ok [INFO] [stdout] test proximity::tests::a_sphere_over_a_box_measures_to_the_top_face ... ok [INFO] [stdout] test classify::tests::the_exact_classifier_resolves_what_the_deflection_band_cannot ... ok [INFO] [stdout] test sew::tests::a_branching_network_is_refused_rather_than_arbitrarily_walked ... ok [INFO] [stdout] test recognize_swept::tests::a_straight_profile_is_left_to_the_canonical_surfaces ... ok [INFO] [stdout] test sew::tests::a_boxs_faces_taken_apart_and_sewn_back_close_again ... ok [INFO] [stdout] test recognize_swept::tests::a_turned_wave_is_read_as_a_revolution ... ok [INFO] [stdout] test sew::tests::a_half_twisted_band_is_kept_and_named ... ok [INFO] [stdout] test recognize_swept::tests::a_wavy_wall_is_read_as_an_extrusion ... ok [INFO] [stdout] test sew::tests::a_long_edge_against_two_short_ones_is_split_and_sewn ... ok [INFO] [stdout] test recognize_patch::tests::a_rippled_cylinder_is_charted_by_the_cylinder ... ok [INFO] [stdout] test sew::tests::a_reversed_face_rebuilt_onto_a_shared_edge_keeps_its_walk ... ok [INFO] [stdout] test sew::tests::a_sheet_turns_the_one_face_walking_against_its_neighbours ... ok [INFO] [stdout] test sew::tests::a_wide_vertex_at_one_end_does_not_join_edges_apart_at_the_other ... ok [INFO] [stdout] test sew::tests::an_edge_found_the_other_way_round_is_reversed_rather_than_dropped ... ok [INFO] [stdout] test sew::tests::edges_in_any_order_come_back_as_a_path ... ok [INFO] [stdout] test sew::tests::edges_that_do_not_form_one_path_are_refused ... ok [INFO] [stdout] test sew::tests::a_closed_shell_whose_faces_disagree_is_turned_to_face_out ... ok [INFO] [stdout] test sew::tests::faces_that_do_not_meet_stay_in_separate_shells ... ok [INFO] [stdout] test sew::tests::flipped_merges_carry_their_pcurves_the_right_way_round ... ok [INFO] [stdout] test sew::tests::sewing_does_not_move_anything ... ok [INFO] [stdout] test sew::tests::one_loose_edge_does_not_widen_every_search ... ok [INFO] [stdout] test sew::tests::sewing_nothing_and_sewing_the_wrong_kind_are_refused ... ok [INFO] [stdout] test sew::tests::twin_edges_join_the_vertices_they_end_on ... ok [INFO] [stdout] test sew::tests::two_arcs_between_the_same_vertices_are_not_the_same_edge ... ok [INFO] [stdout] test sew::tests::two_faces_that_touch_are_sewn_into_one_shell ... ok [INFO] [stdout] test sew::tests::a_prism_s_walls_sew_to_lids_at_both_ends ... ok [INFO] [stdout] test sew::tests::squares_a_little_apart_sew_across_the_gap_asked_for ... ok [INFO] [stdout] test sweep::tests::a_curved_profile_edge_is_refused_by_name ... ok [INFO] [stdout] test sweep::tests::a_face_swept_within_its_own_plane_is_refused ... ok [INFO] [stdout] test build::solid_tests::a_solid_faces_out_and_its_void_faces_in_however_given ... ok [INFO] [stdout] test sew::tests::a_closed_shell_far_from_the_origin_whose_faces_disagree_is_turned_to_face_out ... ok [INFO] [stdout] test sew::tests::a_closed_shell_facing_in_throughout_makes_a_solid_facing_out ... ok [INFO] [stdout] test sew::tests::a_lid_facing_into_the_box_is_turned_over_when_sewn ... ok [INFO] [stdout] test sweep::tests::a_profile_crossing_the_axis_is_refused_rather_than_swept_through_itself ... ok [INFO] [stdout] test sweep::tests::a_full_turn_consumes_the_profile_face_but_not_its_edges ... ok [INFO] [stdout] test sweep::tests::a_profile_grazing_the_axis_between_samples_is_refused_exactly ... ok [INFO] [stdout] test sweep::tests::a_frustum_profile_names_a_cone_on_each_leaning_side ... ok [INFO] [stdout] test proximity::tests::a_box_inside_a_box_measures_boundary_to_boundary ... ok [INFO] [stdout] test sweep::tests::a_profile_placed_with_a_scale_sweeps_at_the_size_it_is_now ... ok [INFO] [stdout] test sweep::tests::a_segment_swept_obliquely_makes_a_plane_with_a_sheared_chart ... ok [INFO] [stdout] test sweep::tests::a_profile_that_has_been_placed_sweeps_where_it_actually_sits ... ok [INFO] [stdout] test proximity::tests::a_rotated_box_measures_edge_to_edge ... ok [INFO] [stdout] test recognize_patch::tests::a_hill_is_charted_by_the_mean_value_map ... ok [INFO] [stdout] test sweep::tests::a_sweep_that_goes_nowhere_is_refused ... ok [INFO] [stdout] test sweep::tests::a_swept_edge_is_reported_as_both_surviving_and_generating ... ok [INFO] [stdout] test sweep::tests::a_taper_that_collapses_a_hole_is_refused_by_name ... ok [INFO] [stdout] test sweep::tests::a_hole_tapers_with_its_profile_into_a_cone ... ok [INFO] [stdout] test sweep::tests::a_rectangle_with_a_side_on_the_axis_revolves_into_a_cylinder_face_for_face ... ok [INFO] [stdout] test sweep::tests::a_square_revolved_part_way_has_two_ends_and_the_volume_of_that_wedge ... ok [INFO] [stdout] test sweep::tests::a_vertex_is_not_something_this_sweeps ... ok [INFO] [stdout] test sweep::tests::a_square_swept_upward_is_a_box ... ok [INFO] [stdout] test sweep::tests::a_turn_that_goes_nowhere_or_too_far_is_refused ... ok [INFO] [stdout] test sweep::tests::a_wire_sweeps_into_an_open_shell ... ok [INFO] [stdout] test sweep::tests::a_disc_revolved_a_full_turn_is_a_torus_seamed_both_ways ... ok [INFO] [stdout] test sweep::tests::a_square_revolved_a_full_turn_is_a_ring_that_agrees_with_itself ... ok [INFO] [stdout] test sweep::tests::an_arc_sweeps_into_a_cylindrical_face_not_a_flat_one ... ok [INFO] [stdout] test sweep::tests::the_far_end_is_the_same_topology_at_a_different_place ... ok [INFO] [stdout] test text::tests::text_engraves_at_its_height_and_refuses_what_it_lacks ... ok [INFO] [stdout] test traced::tests::stations_follow_the_spans ... ok [INFO] [stdout] test winding::tests::a_tetrahedron_winds_once_about_its_inside_and_not_about_its_outside ... ok [INFO] [stdout] test sweep::tests::a_triangle_touching_the_axis_revolves_into_a_cone ... ok [INFO] [stdout] test sweep::tests::a_bare_or_placed_profile_tapers ... ok [INFO] [stdout] test traced::tests::a_traced_fit_holds_between_its_samples ... ok [INFO] [stdout] test primitive::more_primitive_tests::a_torus_seamed_on_any_parallel_is_the_whole_torus ... ok [INFO] [stdout] test sweep::tests::a_profile_facing_away_from_the_sweep_gives_the_same_solid_as_one_facing_along_it ... ok [INFO] [stdout] test sweep::tests::every_sweep_walks_each_edge_once_each_way ... ok [INFO] [stdout] test proximity::tests::touching_boxes_report_zero ... ok [INFO] [stdout] test sweep::tests::a_tapered_square_prism_is_the_frustum_the_closed_form_names ... ok [INFO] [stdout] test sweep::tests::a_hole_wound_either_way_revolves_hollow ... ok [INFO] [stdout] test proximity::tests::diagonal_boxes_meet_corner_to_corner ... ok [INFO] [stdout] test proximity::tests::parallel_box_walls_meet_at_the_gap_between_them ... ok [INFO] [stdout] test sweep::tests::every_face_of_a_box_sweeps_into_a_solid_of_the_right_volume ... ok [INFO] [stdout] test sweep::tests::a_wall_parallel_to_the_axis_names_the_cylinder_it_is ... ok [INFO] [stdout] test primitive::tests::primitives_in_a_mirrored_frame_are_sound ... ok [INFO] [stdout] test classify::tests::a_point_in_a_spherical_void_is_outside_the_material ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 317 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 6.11s [INFO] [stdout] [INFO] [stderr] Running tests/extend_face.rs (/opt/rustwide/target/release/deps/extend_face-e949917fe5f4bd31) [INFO] [stdout] [INFO] [stdout] running 27 tests [INFO] [stdout] test a_curved_edge_of_a_planar_face_is_refused ... ok [INFO] [stdout] test a_face_on_an_unsupported_surface_is_refused ... ok [INFO] [stdout] test a_cone_grown_across_its_rim_runs_up_its_slant ... ok [INFO] [stdout] test a_linear_extension_smooth_to_every_order_is_refused ... ok [INFO] [stdout] test a_seam_edge_is_refused ... ok [INFO] [stdout] test a_patch_closing_across_the_edge_is_refused ... ok [INFO] [stdout] test a_length_that_is_not_positive_is_refused ... ok [INFO] [stdout] test a_patch_edge_inside_the_domain_is_refused ... ok [INFO] [stdout] test a_linear_extension_across_a_curved_analytic_line_is_refused ... ok [INFO] [stdout] test a_clockwise_face_grows_away_from_itself_across_a_slanted_edge ... ok [INFO] [stdout] test a_fitted_saddle_grown_naturally_is_g2_across_the_old_edge ... ok [INFO] [stdout] test an_extension_reaching_a_sphere_pole_is_refused ... ok [INFO] [stdout] test a_shape_that_is_not_a_face_is_refused ... ok [INFO] [stdout] test an_edge_bounding_a_hole_is_refused ... ok [INFO] [stdout] test a_saddle_grown_linearly_at_g1_runs_straight_out ... ok [INFO] [stdout] test a_sphere_band_grown_across_its_parallel_climbs_its_meridians ... ok [INFO] [stdout] test a_saddle_grown_linearly_at_g2_keeps_its_curvature_across ... ok [INFO] [stdout] test an_extension_wrapping_a_periodic_surface_onto_the_face_is_refused ... ok [INFO] [stdout] test a_placed_face_grows_where_it_stands ... ok [INFO] [stdout] test a_square_grown_across_one_edge_by_five_is_ten_by_fifteen ... ok [INFO] [stdout] test an_extension_reaching_a_cone_apex_is_refused ... ok [INFO] [stdout] test a_quarter_cylinder_grown_across_its_ruling_stays_on_the_cylinder ... ok [INFO] [stdout] test a_quarter_cylinder_grown_down_its_rulings_widens_its_surface ... ok [INFO] [stdout] test the_kept_edges_of_a_grown_patch_are_trimmed_on_it ... ok [INFO] [stdout] test an_edge_not_on_the_face_is_refused ... ok [INFO] [stdout] test a_box_face_grown_leaves_its_neighbours_untouched ... ok [INFO] [stdout] test a_strip_far_out_in_its_planes_chart_grows_away_from_itself ... ok [INFO] [stderr] Running tests/history_properties.rs (/opt/rustwide/target/release/deps/history_properties-acee7d0ba39fbd71) [INFO] [stdout] [INFO] [stdout] test result: ok. 27 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 9 tests [INFO] [stdout] test an_untouched_shape_traces_to_itself ... ok [INFO] [stdout] test deletion_and_modification_never_coexist ... ok [INFO] [stdout] test a_deletion_survives_anything_that_follows ... ok [INFO] [stdout] test chaining_matches_repeated_composition ... ok [INFO] [stdout] test inputs_are_complete_and_free_of_duplicates ... ok [INFO] [stdout] test tracing_answers_for_every_shape ... ok [INFO] [stdout] test records_are_reachable_through_either_orientation ... ok [INFO] [stdout] test identity_composes_away ... ok [INFO] [stdout] test composition_is_associative ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/medial.rs (/opt/rustwide/target/release/deps/medial-8919dbb03825a17d) [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test a_placed_faces_axis_moves_with_it ... ok [INFO] [stdout] test a_triangles_axis_meets_at_the_incenter ... ok [INFO] [stdout] test what_the_axis_cannot_yet_hold_is_refused_by_name ... ok [INFO] [stdout] test a_rectangles_axis_is_its_roof_line ... ok [INFO] [stdout] test a_straight_corner_leaves_the_axis_as_it_was ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/medial_graph.rs (/opt/rustwide/target/release/deps/medial_graph-fd73f1df42144cf8) [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stdout] test a_stadiums_axis_joins_its_arc_centres ... ok [INFO] [stdout] test a_plate_with_a_round_hole_bisects_along_parabolas ... ok [INFO] [stdout] test a_rectangles_graph_is_its_roof_line ... ok [INFO] [stdout] test an_l_shapes_reflex_corner_bends_its_axis_along_a_parabola ... ok [INFO] [stdout] test a_square_ring_holds_its_axis_round_the_hole ... ok [INFO] [stdout] test a_washers_axis_is_one_closed_branch_between_its_circles ... ok [INFO] [stdout] test a_half_ellipse_fits_its_branches_to_the_tolerance ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stderr] Running tests/tight.rs (/opt/rustwide/target/release/deps/tight-1beafb8a8006d93e) [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test drums_and_cones_in_tilted_frames_bound_at_their_rims ... ok [INFO] [stdout] test spheres_and_tori_in_tilted_frames_bound_exactly ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.19s [INFO] [stdout] [INFO] [stderr] Doc-tests ogeom_algo [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" "c336154571f4e62c758c31da6b327369d50f5c729416f681dafcc470764c321e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c336154571f4e62c758c31da6b327369d50f5c729416f681dafcc470764c321e", kill_on_drop: false }` [INFO] [stdout] c336154571f4e62c758c31da6b327369d50f5c729416f681dafcc470764c321e