[INFO] fetching crate metar-taf-parser 0.4.9... [INFO] testing metar-taf-parser-0.4.9 against master#562dee4820c458d823175268e41601d4c060588a for pr-154210-1 [INFO] extracting crate metar-taf-parser 0.4.9 into /workspace/builds/worker-2-tc1/source [INFO] started tweaking crates.io crate metar-taf-parser 0.4.9 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate metar-taf-parser 0.4.9 [INFO] tweaked toml for crates.io crate metar-taf-parser 0.4.9 written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate metar-taf-parser 0.4.9 on toolchain 562dee4820c458d823175268e41601d4c060588a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate metar-taf-parser 0.4.9 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" "+562dee4820c458d823175268e41601d4c060588a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 3712ac8f3adf3733865b583472ef729447df68c5157e9794e04c70edae05c73c [INFO] running `Command { std: "docker" "start" "-a" "3712ac8f3adf3733865b583472ef729447df68c5157e9794e04c70edae05c73c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3712ac8f3adf3733865b583472ef729447df68c5157e9794e04c70edae05c73c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3712ac8f3adf3733865b583472ef729447df68c5157e9794e04c70edae05c73c", kill_on_drop: false }` [INFO] [stdout] 3712ac8f3adf3733865b583472ef729447df68c5157e9794e04c70edae05c73c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 572fdcc8a321829a4434617a17caa5ae40b933ba1d44a4e804d222547286a014 [INFO] running `Command { std: "docker" "start" "-a" "572fdcc8a321829a4434617a17caa5ae40b933ba1d44a4e804d222547286a014", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.103 [INFO] [stderr] Compiling quote v1.0.42 [INFO] [stderr] Compiling syn v2.0.111 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling metar-taf-parser v0.4.9 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 10.87s [INFO] running `Command { std: "docker" "inspect" "572fdcc8a321829a4434617a17caa5ae40b933ba1d44a4e804d222547286a014", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "572fdcc8a321829a4434617a17caa5ae40b933ba1d44a4e804d222547286a014", kill_on_drop: false }` [INFO] [stdout] 572fdcc8a321829a4434617a17caa5ae40b933ba1d44a4e804d222547286a014 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a9f6627a42e0e8764cb232776bb97179a0aa25805c14324a265bf6db9614dbc6 [INFO] running `Command { std: "docker" "start" "-a" "a9f6627a42e0e8764cb232776bb97179a0aa25805c14324a265bf6db9614dbc6", kill_on_drop: false }` [INFO] [stderr] Compiling metar-taf-parser v0.4.9 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 9.87s [INFO] running `Command { std: "docker" "inspect" "a9f6627a42e0e8764cb232776bb97179a0aa25805c14324a265bf6db9614dbc6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a9f6627a42e0e8764cb232776bb97179a0aa25805c14324a265bf6db9614dbc6", kill_on_drop: false }` [INFO] [stdout] a9f6627a42e0e8764cb232776bb97179a0aa25805c14324a265bf6db9614dbc6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 30ed5ff3a8f16e2729bfdc40fff23817422a5cd9348c3c25d07f296b333bec62 [INFO] running `Command { std: "docker" "start" "-a" "30ed5ff3a8f16e2729bfdc40fff23817422a5cd9348c3c25d07f296b333bec62", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.08s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/metar_taf_parser-e162690ca8721360) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test airports::db::tests::lookup_known_airport ... ok [INFO] [stderr] Running tests/describe_metar.rs (/opt/rustwide/target/debug/deps/describe_metar-6a710f5c9cf32368) [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.17s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 25 tests [INFO] [stdout] test describe_metar_clouds_with_cb ... ok [INFO] [stdout] test describe_metar_modifier_cor ... ok [INFO] [stdout] test describe_metar_clouds_few ... ok [INFO] [stdout] test describe_metar_no_modifier_for_normal ... ok [INFO] [stdout] test describe_metar_no_runway_state_when_absent ... ok [INFO] [stdout] test describe_metar_pressure_inhg ... ok [INFO] [stdout] test describe_metar_clouds_nsc ... ok [INFO] [stdout] test describe_metar_pressure_qnh ... ok [INFO] [stderr] Running tests/describe_runway_state.rs (/opt/rustwide/target/debug/deps/describe_runway_state-47cbb6946d7eaa2d) [INFO] [stdout] test describe_metar_modifier_auto ... ok [INFO] [stdout] test describe_metar_remarks_preserved ... ok [INFO] [stdout] test describe_metar_station_and_time ... ok [INFO] [stdout] test describe_metar_runway_state_included ... ok [INFO] [stdout] test describe_metar_runway_state_in_display ... ok [INFO] [stdout] test describe_metar_visibility_greater_than_10km ... ok [INFO] [stdout] test describe_metar_trend_nosig ... ok [INFO] [stdout] test describe_metar_temperature ... ok [INFO] [stdout] test describe_metar_visibility_metres ... ok [INFO] [stdout] test describe_metar_visibility_cavok ... ok [INFO] [stdout] test describe_metar_trend_tempo_with_time ... ok [INFO] [stdout] test describe_metar_temperature_negative ... ok [INFO] [stdout] test describe_metar_weather_heavy_thunderstorm_rain ... ok [INFO] [stdout] test describe_metar_wind_variable ... ok [INFO] [stdout] test describe_metar_wind_with_gust ... ok [INFO] [stdout] test describe_metar_wind_directional ... ok [INFO] [stdout] test describe_metar_weather_light_rain ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 25 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 15 tests [INFO] [stdout] test describe_runway_state_all_fields_missing ... ok [INFO] [stdout] test describe_runway_state_braking_as_friction_coefficient ... ok [INFO] [stdout] test describe_runway_state_braking_code_91_poor ... ok [INFO] [stdout] test describe_runway_state_braking_code_93_medium ... ok [INFO] [stdout] test describe_runway_state_braking_code_95_good ... ok [INFO] [stdout] test describe_runway_state_coverage_10_percent_or_less ... ok [INFO] [stdout] test describe_runway_state_designator_with_suffix ... ok [INFO] [stdout] test describe_runway_state_coverage_11_25_percent ... ok [INFO] [stdout] test describe_runway_state_snoclo ... ok [INFO] [stdout] test describe_runway_state_thickness_special_10cm ... ok [INFO] [stdout] test describe_runway_state_thickness_less_than_1mm ... ok [INFO] [stdout] test describe_runway_state_braking_code_99_unreliable ... ok [INFO] [stdout] test describe_runway_state_thickness_special_40cm_or_more ... ok [INFO] [stderr] Running tests/describe_taf.rs (/opt/rustwide/target/debug/deps/describe_taf-b874017d559ffca1) [INFO] [stdout] test describe_runway_state_thickness_99_closed ... ok [INFO] [stdout] test describe_runway_state_deposit_clear_and_dry ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 11 tests [INFO] [stdout] test describe_taf_becmg_block ... ok [INFO] [stdout] test describe_taf_cavok_base ... ok [INFO] [stdout] test describe_taf_tempo_block ... ok [INFO] [stdout] test describe_taf_temperatures ... ok [INFO] [stdout] test describe_taf_wind_shear ... ok [INFO] [stdout] test describe_taf_base_forecast_wind_and_visibility ... ok [INFO] [stdout] test describe_taf_fm_block ... ok [INFO] [stdout] test describe_taf_prob30_tempo_block ... ok [INFO] [stdout] test describe_taf_base_forecast_clouds ... ok [INFO] [stdout] test describe_taf_modifier_amd ... ok [INFO] [stdout] test describe_taf_station_and_times ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/format_describe.rs (/opt/rustwide/target/debug/deps/format_describe-cec7bfc2d37646d0) [INFO] [stdout] [INFO] [stdout] running 17 tests [INFO] [stdout] test format_metar_cavok_no_cloud_lines ... ok [INFO] [stdout] test format_metar_contains_header_and_all_present_fields ... ok [INFO] [stdout] test format_metar_includes_remarks_when_present ... ok [INFO] [stdout] test format_metar_multiple_cloud_layers ... ok [INFO] [stdout] test format_metar_multiple_weather_groups ... ok [INFO] [stdout] test format_taf_amended_shows_status ... ok [INFO] [stdout] test format_metar_omits_absent_fields ... ok [INFO] [stdout] test format_taf_prob_block_shows_probability ... ok [INFO] [stdout] test format_taf_contains_header_and_base_forecast ... ok [INFO] [stdout] test format_metar_includes_status_for_auto ... ok [INFO] [stdout] test format_taf_shows_wind_shear ... ok [INFO] [stdout] test format_taf_shows_fm_block ... ok [INFO] [stdout] test format_taf_shows_temperatures ... ok [INFO] [stdout] test metar_description_display_via_to_string ... ok [INFO] [stdout] test taf_description_display_via_to_string ... ok [INFO] [stdout] test format_taf_shows_tempo_block ... ok [INFO] [stdout] test format_taf_shows_becmg_block ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 17 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/metar_basic.rs (/opt/rustwide/target/debug/deps/metar_basic-31f74fed04972195) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stderr] Running tests/metar_cavok.rs (/opt/rustwide/target/debug/deps/metar_cavok-61e8eaab89d64c6d) [INFO] [stdout] test metar_basic_parsing ... 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] [INFO] [stdout] running 1 test [INFO] [stdout] test parse_metar_with_cavok ... ok [INFO] [stderr] Running tests/metar_clouds.rs (/opt/rustwide/target/debug/deps/metar_clouds-cc33ce904e61c577) [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] [INFO] [stdout] running 17 tests [INFO] [stdout] test describe_cloud_few_with_altitude ... ok [INFO] [stdout] test describe_cloud_clr ... ok [INFO] [stdout] test describe_cloud_ovc_unknown_height ... ok [INFO] [stdout] test describe_cloud_vv ... ok [INFO] [stdout] test metar_cloud_known_height_unmeasurable_type ... ok [INFO] [stdout] test metar_clr ... ok [INFO] [stdout] test describe_cloud_bkn_cb ... ok [INFO] [stdout] test metar_multiple_cloud_layers ... ok [INFO] [stdout] test metar_ncd ... ok [INFO] [stdout] test metar_sct_with_tcu ... ok [INFO] [stdout] test metar_ovc_unknown_height ... ok [INFO] [stdout] test metar_nsc ... ok [INFO] [stdout] test metar_skc ... ok [INFO] [stdout] test metar_vertical_visibility ... ok [INFO] [stdout] test describe_cloud_ncd ... ok [INFO] [stdout] test reject_invalid_cloud_suffix ... ok [INFO] [stdout] test metar_vertical_visibility_unknown_height ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 17 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stderr] Running tests/metar_color_code.rs (/opt/rustwide/target/debug/deps/metar_color_code-01a7cf6258e09533) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 15 tests [INFO] [stdout] test describe_black_color_code ... ok [INFO] [stdout] test describe_color_code_forecast ... ok [INFO] [stdout] test describe_color_code_grn ... ok [INFO] [stdout] test describe_color_code_in_tempo_trend ... ok [INFO] [stdout] test no_color_code_in_ordinary_metar ... ok [INFO] [stdout] test parse_black_color_code_in_tempo_trend ... ok [INFO] [stdout] test parse_all_plain_color_codes ... ok [INFO] [stdout] test parse_color_code_in_becmg_trend ... ok [INFO] [stdout] test parse_black_amb_color_code ... ok [INFO] [stdout] test parse_black_color_code ... ok [INFO] [stdout] test parse_color_code_in_tempo_trend ... ok [INFO] [stdout] test parse_single_color_code_grn ... ok [INFO] [stdout] test parse_current_and_forecast_with_tempo ... ok [INFO] [stdout] test parse_two_color_codes_current_and_forecast ... ok [INFO] [stdout] test format_metar_includes_color_code_line ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/metar_minimal.rs (/opt/rustwide/target/debug/deps/metar_minimal-295694071120d14a) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test metar_minimal_valid ... 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] [stderr] Running tests/metar_modifier.rs (/opt/rustwide/target/debug/deps/metar_modifier-b1f2efb9d02fb155) [INFO] [stdout] [INFO] [stdout] running 19 tests [INFO] [stdout] test describe_modifier_auto ... ok [INFO] [stdout] test describe_modifier_cor ... ok [INFO] [stdout] test describe_report_type_metar ... ok [INFO] [stdout] test parse_metar_auto ... ok [INFO] [stdout] test describe_report_type_speci ... ok [INFO] [stdout] test describe_modifier_normal_is_absent ... ok [INFO] [stdout] test parse_metar_auto_before_time ... ok [INFO] [stdout] test parse_metar_cor_nil ... ok [INFO] [stdout] test parse_metar_cor ... ok [INFO] [stdout] test parse_metar_nil ... ok [INFO] [stdout] test parse_metar_nil_inline ... ok [INFO] [stdout] test parse_metar_normal_has_no_modifier ... ok [INFO] [stdout] test describe_modifier_nil ... ok [INFO] [stdout] test parse_no_prefix_defaults_to_metar_report_type ... ok [INFO] [stdout] test parse_speci_nil ... ok [INFO] [stdout] test parse_speci_prefix_sets_report_type ... ok [INFO] [stdout] test parse_metar_prefix_sets_report_type_metar ... ok [INFO] [stdout] test parse_speci_with_cor_modifier ... ok [INFO] [stdout] test describe_report_type_default_is_metar ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 19 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Running tests/metar_pressure.rs (/opt/rustwide/target/debug/deps/metar_pressure-040e69b59358afb7) [INFO] [stdout] running 9 tests [INFO] [stdout] test describe_pressure_qnh ... ok [INFO] [stdout] test describe_pressure_inhg ... ok [INFO] [stdout] test metar_with_malformed_pressure_keeps_pressure_empty ... ok [INFO] [stdout] test parse_altimeter_inhg_group ... ok [INFO] [stdout] test parse_manual_example_qnh ... ok [INFO] [stdout] test parse_qnh_hpa_group ... ok [INFO] [stdout] test reject_malformed_pressure_groups ... ok [INFO] [stdout] test parse_manual_example_inhg ... ok [INFO] [stderr] Running tests/metar_remark_parser.rs (/opt/rustwide/target/debug/deps/metar_remark_parser-d13fb65a4de49fa2) [INFO] [stdout] test parse_low_and_high_qnh ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 33 tests [INFO] [stdout] test describe_cloud_augmentation ... ok [INFO] [stdout] test no_rmk_section_gives_empty_remarks ... ok [INFO] [stdout] test remark_ao1_parsed ... ok [INFO] [stdout] test remark_bkn_cloud_augmentation_parsed ... ok [INFO] [stdout] test remark_cloud_augmentation_not_confused_with_normal_cloud ... ok [INFO] [stdout] test remark_ao2_parsed ... ok [INFO] [stdout] test remark_cloud_augmentation_not_parsed_without_triple_slash ... ok [INFO] [stdout] test describe_wind_at_sensor ... ok [INFO] [stdout] test remark_few_cloud_augmentation_parsed ... ok [INFO] [stdout] test remark_hourly_temperature_negative ... ok [INFO] [stdout] test remark_lightning_cg ... ok [INFO] [stdout] test remark_maintenance_indicator ... ok [INFO] [stdout] test remark_max_min_temperature ... ok [INFO] [stdout] test remark_lightning_multiple_types ... ok [INFO] [stdout] test remark_peak_wind_parsed ... ok [INFO] [stdout] test remark_presrr ... ok [INFO] [stdout] test remark_precipitation_amount ... ok [INFO] [stdout] test remark_presfr ... ok [INFO] [stdout] test remark_multiple_parsed ... ok [INFO] [stdout] test remark_pressure_tendency ... ok [INFO] [stdout] test remark_rvrno ... ok [INFO] [stdout] test remark_unknown_token_goes_to_unparsed ... ok [INFO] [stdout] test remark_virga ... ok [INFO] [stdout] test remark_wind_at_sensor_invalid_wind_falls_to_unparsed ... ok [INFO] [stdout] test remark_wind_at_sensor_with_gust_fixed_direction ... ok [INFO] [stdout] test remark_wind_at_sensor_vrb_parsed ... ok [INFO] [stdout] test remark_wind_shift_with_fropa ... ok [INFO] [stdout] test remark_wind_shift_without_fropa ... ok [INFO] [stdout] test remark_wind_at_sensor_fixed_direction ... ok [INFO] [stdout] test remark_slp_high_value ... ok [INFO] [stdout] test remark_slp_low_value ... ok [INFO] [stdout] test remark_hourly_temperature_positive ... ok [INFO] [stdout] test remark_ovc_cloud_augmentation_parsed ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 33 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/metar_rmk.rs (/opt/rustwide/target/debug/deps/metar_rmk-2f5bc009334eda9c) [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test parse_rmk_multiple_tokens ... ok [INFO] [stdout] test parse_rmk_basic ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 14 tests [INFO] [stderr] Running tests/metar_runway_state.rs (/opt/rustwide/target/debug/deps/metar_runway_state-35f98e82f7a42456) [INFO] [stdout] test parse_multiple_runway_states ... ok [INFO] [stdout] test parse_runway_state_braking_action_missing ... ok [INFO] [stdout] test parse_runway_state_all_data_missing ... ok [INFO] [stdout] test parse_runway_state_full_icao ... ok [INFO] [stdout] test parse_runway_state_preserve_codes ... ok [INFO] [stdout] test parse_runway_state_with_left_suffix ... ok [INFO] [stdout] test parse_runway_state_with_centre_suffix ... ok [INFO] [stdout] test parse_runway_state_with_missing_fields ... ok [INFO] [stdout] test parse_runway_state_snoclo ... ok [INFO] [stdout] test reject_invalid_runway_state_data_characters ... ok [INFO] [stdout] test parse_runway_state_with_right_suffix ... ok [INFO] [stdout] test reject_designator_with_invalid_suffix ... ok [INFO] [stdout] test parse_runway_state_thickness_missing ... ok [INFO] [stderr] Running tests/metar_rvr.rs (/opt/rustwide/target/debug/deps/metar_rvr-29aa05858da63938) [INFO] [stdout] test reject_non_numeric_runway_designator ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stdout] test describe_rvr_basic ... ok [INFO] [stdout] test parse_variable_qualified_rvr_with_tendency ... ok [INFO] [stdout] test malformed_rvr_is_not_parsed_as_rvr ... ok [INFO] [stdout] test parse_basic_rvr_group ... ok [INFO] [stdout] test parse_feet_rvr_and_keep_runway_state_separate ... ok [INFO] [stdout] test describe_rvr_with_tendency_and_qualifier ... ok [INFO] [stdout] test describe_rvr_decreasing ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/metar_sea_state.rs (/opt/rustwide/target/debug/deps/metar_sea_state-08f271dca2828505) [INFO] [stdout] [INFO] [stdout] running 10 tests [INFO] [stderr] Running tests/metar_strict_mode.rs (/opt/rustwide/target/debug/deps/metar_strict_mode-c19b5fda2bbf599b) [INFO] [stdout] test describe_sea_state_not_available ... ok [INFO] [stderr] Running tests/metar_temperature_edge.rs (/opt/rustwide/target/debug/deps/metar_temperature_edge-92f8afde5c72c8c6) [INFO] [stdout] test describe_sea_state_standard ... ok [INFO] [stderr] Running tests/metar_terminator.rs (/opt/rustwide/target/debug/deps/metar_terminator-9f7270f995fe46bf) [INFO] [stdout] test describe_sea_state_negative_temperature ... ok [INFO] [stderr] Running tests/metar_time.rs (/opt/rustwide/target/debug/deps/metar_time-bf7cbe0260ec7b53) [INFO] [stdout] test format_metar_includes_sea_state_line ... ok [INFO] [stderr] Running tests/metar_trend.rs (/opt/rustwide/target/debug/deps/metar_trend-6a644cacd5fd1879) [INFO] [stdout] test parse_sea_state_height_dm ... ok [INFO] [stdout] test no_sea_state_in_land_metar ... ok [INFO] [stdout] test parse_sea_state_negative_temperature ... ok [INFO] [stdout] test parse_sea_state_zero ... ok [INFO] [stdout] test parse_sea_state_not_available ... ok [INFO] [stdout] test parse_sea_state_standard ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test strict_metar_parsing_rejects_unknown_groups ... ok [INFO] [stdout] test strict_metar_parsing_accepts_supported_message ... ok [INFO] [stdout] test strict_metar_parsing_rejects_unknown_trend_payload_tokens ... ok [INFO] [stdout] test tolerant_metar_parsing_keeps_unknown_groups ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 10 tests [INFO] [stdout] test parse_manual_example_temperature ... ok [INFO] [stdout] test describe_temperature_positive ... ok [INFO] [stdout] test parse_temperature_equals_dew_point ... ok [INFO] [stdout] test parse_negative_temperature ... ok [INFO] [stdout] test parse_positive_temperature ... ok [INFO] [stdout] test describe_temperature_negative ... ok [INFO] [stdout] test parse_zero_temperature_and_dew_point ... ok [INFO] [stdout] test parse_negative_m00_dew_point ... ok [INFO] [stdout] test reject_malformed_temperature_token ... ok [INFO] [stdout] test reject_out_of_range_temperature_token ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test metar_trailing_equals_keeps_last_group_parseable ... 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] [INFO] [stdout] running 7 tests [INFO] [stdout] test parse_time_boundary_values ... ok [INFO] [stdout] test describe_time_zero_padded_hour_and_minute ... ok [INFO] [stdout] test parse_time_hour_and_minute_zero_padded ... ok [INFO] [stdout] test parse_valid_metar_time_group ... ok [INFO] [stdout] test reject_non_numeric_metar_time ... ok [INFO] [stdout] test reject_day_zero ... ok [INFO] [stdout] test reject_invalid_metar_time_ranges ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 24 tests [INFO] [stdout] test describe_becmg_with_time_and_visibility ... ok [INFO] [stdout] test describe_becmg_with_tl_time ... ok [INFO] [stdout] test describe_nosig_trend ... ok [INFO] [stdout] test describe_becmg_with_wind ... ok [INFO] [stdout] test describe_tempo_with_cloud ... ok [INFO] [stdout] test describe_tempo_with_weather ... ok [INFO] [stdout] test nosig_flag_set_for_nosig_trend ... ok [INFO] [stdout] test parse_becmg_tl_only_time ... ok [INFO] [stdout] test parse_becmg_fm_visibility_manual_example ... ok [INFO] [stdout] test parse_nosig_trend ... ok [INFO] [stdout] test invalid_trend_time_not_parsed_as_time ... ok [INFO] [stdout] test parse_tempo_at_time ... ok [INFO] [stdout] test nosig_flag_false_without_nosig ... ok [INFO] [stdout] test parse_tempo_cloud_manual_example ... ok [INFO] [stdout] test parse_tempo_trend_marker ... ok [INFO] [stdout] test parse_tempo_trend_payload_keeps_unknown_tokens ... ok [INFO] [stdout] test parse_tempo_with_wind ... ok [INFO] [stdout] test prob30_not_a_metar_trend_keyword ... ok [INFO] [stdout] test parse_tempo_with_weather ... ok [INFO] [stdout] test prob40_not_a_metar_trend_keyword ... ok [INFO] [stdout] test trend_raw_tokens_populated ... ok [INFO] [stdout] test trend_stops_at_rmk ... ok [INFO] [stdout] test parse_becmg_trend_marker ... ok [INFO] [stdout] test parse_becmg_trend_payload_details ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 24 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/metar_unparsed_groups.rs (/opt/rustwide/target/debug/deps/metar_unparsed_groups-b4bb0d15e9f693ee) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stderr] Running tests/metar_vertical_visibility.rs (/opt/rustwide/target/debug/deps/metar_vertical_visibility-4e0df94063712015) [INFO] [stdout] test stores_unknown_metar_groups_in_unparsed_list ... 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] [INFO] [stdout] running 1 test [INFO] [stdout] test metar_vertical_visibility ... 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] [stderr] Running tests/metar_visibility.rs (/opt/rustwide/target/debug/deps/metar_visibility-6ac78d6e91a7ff99) [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stderr] Running tests/metar_visibility_cavok.rs (/opt/rustwide/target/debug/deps/metar_visibility_cavok-036d4e1a67897264) [INFO] [stdout] test metar_visibility_9999 ... ok [INFO] [stdout] test metar_visibility_metric_no_fields ... ok [INFO] [stdout] test metar_visibility_low_zero_padded ... ok [INFO] [stdout] test metar_visibility_ndv ... ok [INFO] [stdout] test metar_visibility_sm_below_qualifier ... ok [INFO] [stdout] test metar_visibility_sm_above_qualifier ... ok [INFO] [stdout] test metar_visibility_with_direction ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 8 tests [INFO] [stdout] test cavok_clears_weather ... ok [INFO] [stdout] test cavok_clears_clouds ... ok [INFO] [stdout] test cavok_temperature_parsing ... ok [INFO] [stdout] test cavok_pressure_parsing ... ok [INFO] [stdout] test cavok_full_example_from_manual ... ok [INFO] [stdout] test metar_visibility_cavok ... ok [INFO] [stdout] test describe_cavok_full_example ... ok [INFO] [stdout] test describe_cavok_visibility ... ok [INFO] [stderr] Running tests/metar_visibility_statute_miles.rs (/opt/rustwide/target/debug/deps/metar_visibility_statute_miles-5348d73c41a631e2) [INFO] [stdout] [INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test metar_visibility_statute_miles_prefixed_token ... ok [INFO] [stderr] Running tests/metar_weather.rs (/opt/rustwide/target/debug/deps/metar_weather-d2e482190f0a6077) [INFO] [stdout] test metar_visibility_statute_miles_single_token ... ok [INFO] [stdout] test metar_visibility_statute_miles_split_token ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 32 tests [INFO] [stdout] test parse_dust ... ok [INFO] [stdout] test parse_dust_storm ... ok [INFO] [stdout] test parse_blowing_snow ... ok [INFO] [stdout] test parse_heavy_showers_hail ... ok [INFO] [stdout] test parse_heavy_showers_rain ... ok [INFO] [stdout] test parse_haze ... ok [INFO] [stderr] Running tests/metar_weather_complex.rs (/opt/rustwide/target/debug/deps/metar_weather_complex-3c74b65ace32d3b2) [INFO] [stdout] test parse_funnel_cloud ... ok [INFO] [stdout] test parse_ice_crystals ... ok [INFO] [stdout] test parse_ice_pellets_pe_legacy ... ok [INFO] [stdout] test parse_ice_pellets_pl ... ok [INFO] [stdout] test parse_light_rain ... ok [INFO] [stdout] test parse_mist ... ok [INFO] [stdout] test parse_low_drifting_sand ... ok [INFO] [stdout] test parse_moderate_rain_no_prefix ... ok [INFO] [stdout] test parse_recent_rain ... ok [INFO] [stdout] test parse_freezing_fog ... ok [INFO] [stdout] test parse_recent_thunderstorm ... ok [INFO] [stdout] test parse_sand_storm ... ok [INFO] [stdout] test parse_mixed_rain_snow ... ok [INFO] [stdout] test parse_sand_whirls ... ok [INFO] [stdout] test parse_smoke ... ok [INFO] [stdout] test parse_heavy_snow ... ok [INFO] [stdout] test parse_spray ... ok [INFO] [stdout] test parse_squalls ... ok [INFO] [stdout] test parse_sand ... ok [INFO] [stdout] test parse_thunderstorm_rain ... ok [INFO] [stdout] test parse_unknown_phenomena_pair ... ok [INFO] [stdout] test parse_unknown_precipitation ... ok [INFO] [stdout] test parse_vicinity_showers ... ok [INFO] [stdout] test parse_vicinity_mist ... ok [INFO] [stdout] test reject_malformed_odd_weather_token ... ok [INFO] [stdout] test parse_volcanic_ash ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 32 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test parse_heavy_showers_hail ... ok [INFO] [stdout] test parse_thunderstorm_rain ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/metar_wind.rs (/opt/rustwide/target/debug/deps/metar_wind-787ebceaedcce31a) [INFO] [stdout] [INFO] [stdout] running 15 tests [INFO] [stdout] test describe_calm_wind ... ok [INFO] [stdout] test describe_indeterminate_wind ... ok [INFO] [stdout] test describe_vrb_wind ... ok [INFO] [stdout] test describe_wind_directional_with_gust ... ok [INFO] [stdout] test parse_calm_wind ... ok [INFO] [stdout] test parse_indeterminate_wind ... ok [INFO] [stdout] test describe_wind_mph ... ok [INFO] [stdout] test metar_variable_wind_with_gust ... ok [INFO] [stdout] test parse_wind_in_mph ... ok [INFO] [stdout] test parse_wind_direction_360 ... ok [INFO] [stdout] test parse_indeterminate_wind_mps ... ok [INFO] [stdout] test parse_wind_in_mps ... ok [INFO] [stdout] test reject_invalid_non_numeric_wind_speed ... ok [INFO] [stdout] test parse_wind_with_gust ... ok [INFO] [stdout] test reject_invalid_direction_above_360 ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/metar_wind_shear_runway.rs (/opt/rustwide/target/debug/deps/metar_wind_shear_runway-94b00021c21fbd8b) [INFO] [stdout] [INFO] [stdout] running 8 tests [INFO] [stderr] Running tests/metar_wind_variation.rs (/opt/rustwide/target/debug/deps/metar_wind_variation-b466aca91b714b39) [INFO] [stdout] test describe_wind_shear_single_runway ... ok [INFO] [stdout] test describe_wind_shear_all_runways ... ok [INFO] [stdout] test format_metar_includes_wind_shear_line ... ok [INFO] [stdout] test no_wind_shear_in_ordinary_metar ... ok [INFO] [stdout] test parse_wind_shear_all_runways ... ok [INFO] [stdout] test parse_multiple_wind_shear_groups ... ok [INFO] [stdout] test parse_wind_shear_runway_with_suffix ... ok [INFO] [stdout] test parse_wind_shear_single_runway ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 6 tests [INFO] [stderr] Running tests/parse_unified.rs (/opt/rustwide/target/debug/deps/parse_unified-144493ae2eb8aff5) [INFO] [stdout] test wind_variation_unit_struct ... ok [INFO] [stdout] test invalid_wind_variation_not_parsed ... ok [INFO] [stdout] test wind_variation_absent_when_not_present ... ok [INFO] [stdout] test wind_variation_parsed ... ok [INFO] [stdout] test wind_variation_with_gust ... ok [INFO] [stdout] test wind_variation_with_vrb ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 13 tests [INFO] [stdout] test parse_metar_prefix_returns_metar_variant ... ok [INFO] [stdout] test parse_no_prefix_defaults_to_metar ... ok [INFO] [stdout] test parse_speci_prefix_returns_metar_variant_with_speci_type ... ok [INFO] [stdout] test parse_strict_metar_prefix_ok ... ok [INFO] [stdout] test parse_metar_station_is_correct ... ok [INFO] [stdout] test parse_strict_no_prefix_returns_unknown_report_type ... ok [INFO] [stdout] test parse_strict_rejects_unknown_taf_group ... ok [INFO] [stdout] test parse_strict_speci_prefix_ok ... ok [INFO] [stdout] test parse_strict_taf_prefix_ok ... ok [INFO] [stdout] test parse_taf_prefix_returns_taf_variant ... ok [INFO] [stdout] test parse_strict_rejects_unknown_metar_group ... ok [INFO] [stdout] test parse_tolerates_unknown_groups_in_metar ... ok [INFO] [stdout] test parse_taf_station_is_correct ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/taf_basic.rs (/opt/rustwide/target/debug/deps/taf_basic-6d5ab3a1ea1ff103) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test taf_basic_header_and_times ... 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] [stderr] Running tests/taf_becmg.rs (/opt/rustwide/target/debug/deps/taf_becmg-cc59b2b6d47ef0bb) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test taf_becmg_parses_nsw_weather_payload ... ok [INFO] [stdout] test taf_with_becmg_group ... ok [INFO] [stdout] test taf_with_invalid_becmg_period_does_not_consume_following_tokens ... ok [INFO] [stderr] Running tests/taf_change_groups.rs (/opt/rustwide/target/debug/deps/taf_change_groups-b888eb65c5e6dcd9) [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 23 tests [INFO] [stdout] test becmg_crosses_midnight ... ok [INFO] [stdout] test becmg_manual_example_wind_change ... ok [INFO] [stdout] test becmg_unmodified_elements_are_absent ... ok [INFO] [stdout] test becmg_period_within_4_hours ... ok [INFO] [stdout] test complete_taf_all_change_groups ... ok [INFO] [stdout] test change_groups_preserve_independent_content ... ok [INFO] [stdout] test becmg_multiple_groups ... ok [INFO] [stdout] test describe_tempo_kind_label ... ok [INFO] [stdout] test fm_invalid_time_ignored ... ok [INFO] [stdout] test describe_becmg_kind_label ... ok [INFO] [stdout] test describe_tempo_period ... ok [INFO] [stdout] test fm_fields_correct ... ok [INFO] [stdout] test fm_multiple_groups ... ok [INFO] [stdout] test fm_creates_new_forecast_block ... ok [INFO] [stdout] test fm_replaces_all_previous_conditions ... ok [INFO] [stdout] test tempo_multiple_groups ... ok [INFO] [stdout] test tempo_crosses_midnight ... ok [INFO] [stdout] test tempo_period_correct ... ok [INFO] [stdout] test fm_with_non_zero_minutes ... ok [INFO] [stdout] test describe_becmg_period ... ok [INFO] [stdout] test tempo_after_fm ... ok [INFO] [stdout] test describe_fm_kind_label ... ok [INFO] [stderr] Running tests/taf_clouds.rs (/opt/rustwide/target/debug/deps/taf_clouds-c49a22d3a6b985a4) [INFO] [stdout] test tempo_manual_example_tsra ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 23 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 25 tests [INFO] [stdout] test cloud_altitude_10000ft ... ok [INFO] [stdout] test cloud_few_coverage ... ok [INFO] [stdout] test cloud_absent_when_not_reported ... ok [INFO] [stdout] test cloud_in_becmg_group ... ok [INFO] [stdout] test cloud_bkn_coverage_and_altitude ... ok [INFO] [stdout] test cloud_in_fm_group ... ok [INFO] [stdout] test cavok_produces_no_clouds ... ok [INFO] [stdout] test cloud_altitude_100ft ... ok [INFO] [stdout] test cloud_altitude_unknown ... ok [INFO] [stdout] test cloud_in_tempo_group ... ok [INFO] [stdout] test cloud_nsc_in_fm_group ... ok [INFO] [stdout] test cloud_sct_coverage_and_altitude ... ok [INFO] [stdout] test cloud_type_tcu_towering_cumulus ... ok [INFO] [stdout] test cloud_type_cb_cumulonimbus ... ok [INFO] [stdout] test cloud_multiple_layers ... ok [INFO] [stdout] test cloud_vv_higher_value ... ok [INFO] [stdout] test cloud_nsc_no_significant_clouds ... ok [INFO] [stdout] test cloud_no_type_when_absent ... ok [INFO] [stdout] test describe_cloud_cb ... ok [INFO] [stdout] test cloud_ovc_coverage ... ok [INFO] [stdout] test cloud_vv_unknown_altitude ... ok [INFO] [stdout] test cloud_vv_vertical_visibility ... ok [INFO] [stdout] test describe_cloud_bkn040 ... ok [INFO] [stdout] test describe_cloud_nsc ... ok [INFO] [stdout] test describe_cloud_sct020 ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 25 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/taf_fm.rs (/opt/rustwide/target/debug/deps/taf_fm-2b3817fac7472371) [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test taf_with_fm_groups ... ok [INFO] [stderr] Running tests/taf_forecast_base.rs (/opt/rustwide/target/debug/deps/taf_forecast_base-4eaba301e4e0900a) [INFO] [stdout] test taf_with_invalid_fm_time_does_not_start_new_forecast ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test taf_base_forecast_parses_weather_groups ... ok [INFO] [stderr] Running tests/taf_icing_turbulence.rs (/opt/rustwide/target/debug/deps/taf_icing_turbulence-44fffd684bc6f4b1) [INFO] [stdout] test taf_base_forecast_parsing ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 13 tests [INFO] [stdout] test icing_model_fields ... ok [INFO] [stdout] test taf_icing_and_turbulence_together ... ok [INFO] [stdout] test taf_icing_none_intensity ... ok [INFO] [stdout] test taf_no_icing_by_default ... ok [INFO] [stdout] test taf_multiple_icing_layers ... ok [INFO] [stdout] test taf_icing_severe_parsed ... ok [INFO] [stdout] test taf_icing_in_tempo_block ... ok [INFO] [stdout] test taf_icing_light_parsed ... ok [INFO] [stdout] test taf_no_turbulence_by_default ... ok [INFO] [stdout] test turbulence_model_fields ... ok [INFO] [stdout] test taf_turbulence_extreme ... ok [INFO] [stdout] test taf_turbulence_light_parsed ... ok [INFO] [stdout] test taf_turbulence_moderate_in_cloud ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/taf_modifier.rs (/opt/rustwide/target/debug/deps/taf_modifier-201c77ae702a059a) [INFO] [stdout] [INFO] [stdout] running 11 tests [INFO] [stdout] test describe_taf_modifier_nil ... ok [INFO] [stdout] test describe_taf_modifier_amd ... ok [INFO] [stdout] test parse_taf_amd_nil ... ok [INFO] [stdout] test parse_taf_amd ... ok [INFO] [stdout] test parse_taf_cor ... ok [INFO] [stdout] test parse_taf_nil ... ok [INFO] [stdout] test parse_taf_cor_nil ... ok [INFO] [stdout] test parse_taf_without_prefix_normal ... ok [INFO] [stdout] test parse_taf_without_taf_prefix_with_cor ... ok [INFO] [stdout] test describe_taf_modifier_cor ... ok [INFO] [stdout] test describe_taf_modifier_normal_is_absent ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/taf_prob.rs (/opt/rustwide/target/debug/deps/taf_prob-88c5d8ea175c8661) [INFO] [stdout] [INFO] [stdout] running 14 tests [INFO] [stdout] test describe_prob_kind_label ... ok [INFO] [stdout] test describe_prob_probability_field ... ok [INFO] [stdout] test describe_prob_period_field ... ok [INFO] [stdout] test prob30_is_recognized ... ok [INFO] [stdout] test prob40_is_recognized ... ok [INFO] [stdout] test prob50_is_not_recognized ... ok [INFO] [stdout] test prob_combined_with_other_change_groups ... ok [INFO] [stdout] test prob_unmodified_elements_are_absent ... ok [INFO] [stdout] test taf_prob_with_invalid_period_does_not_consume_following_tokens ... ok [INFO] [stdout] test taf_prob_parses_nsw_weather_payload ... ok [INFO] [stdout] test taf_with_prob40_without_tempo ... ok [INFO] [stdout] test taf_with_prob30_tempo ... ok [INFO] [stdout] test prob30_crosses_midnight ... ok [INFO] [stdout] test prob40_manual_example_period ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/taf_station.rs (/opt/rustwide/target/debug/deps/taf_station-f8fa1f75a1fe1a36) [INFO] [stdout] [INFO] [stdout] running 16 tests [INFO] [stdout] test station_extracted_after_amd ... ok [INFO] [stdout] test station_extracted_from_plain_taf ... ok [INFO] [stdout] test station_region_iceland ... ok [INFO] [stdout] test station_region_russia ... ok [INFO] [stdout] test station_extracted_after_cor ... ok [INFO] [stdout] test station_region_germany ... ok [INFO] [stdout] test station_region_italy ... ok [INFO] [stdout] test station_extracted_without_taf_prefix ... ok [INFO] [stdout] test station_region_uk ... ok [INFO] [stdout] test station_region_usa ... ok [INFO] [stdout] test strict_accepts_valid_icao_station ... ok [INFO] [stdout] test strict_rejects_station_with_digits ... ok [INFO] [stdout] test strict_rejects_station_with_lowercase ... ok [INFO] [stdout] test tolerant_accepts_non_icao_station ... ok [INFO] [stdout] test strict_rejects_station_too_long ... ok [INFO] [stdout] test strict_rejects_station_too_short ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/taf_strict_mode.rs (/opt/rustwide/target/debug/deps/taf_strict_mode-138180611e0d290b) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test strict_taf_parsing_accepts_fully_supported_message ... ok [INFO] [stdout] test tolerant_taf_parsing_keeps_unknown_groups ... ok [INFO] [stdout] test strict_taf_parsing_rejects_unknown_groups ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/taf_temperature_groups.rs (/opt/rustwide/target/debug/deps/taf_temperature_groups-f29d9d379a766c25) [INFO] [stdout] [INFO] [stdout] running 16 tests [INFO] [stdout] test describe_tn_min_temperature_field ... ok [INFO] [stdout] test describe_tx_format_contains_celsius_and_day ... ok [INFO] [stdout] test malformed_taf_temperature_group_is_unparsed ... ok [INFO] [stdout] test malformed_tx_missing_z_suffix ... ok [INFO] [stdout] test describe_tx_max_temperature_field ... ok [INFO] [stdout] test tnm01_manual_example ... ok [INFO] [stdout] test tx22_manual_example ... ok [INFO] [stdout] test tx_in_fm_block ... ok [INFO] [stdout] test tx_crosses_midnight_into_next_day ... ok [INFO] [stdout] test tx_only_no_tn ... ok [INFO] [stdout] test tx_zero_degrees ... ok [INFO] [stdout] test tn_only_no_tx ... ok [INFO] [stdout] test parse_taf_tx_tn_groups_in_base_forecast ... ok [INFO] [stdout] test parse_taf_negative_tn_group ... ok [INFO] [stdout] test malformed_tx_non_numeric_when ... ok [INFO] [stdout] test tx_and_tn_manual_example_combined ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/taf_tempo.rs (/opt/rustwide/target/debug/deps/taf_tempo-32fd50c29ede7fa7) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test taf_tempo_parses_nsw_weather_payload ... ok [INFO] [stdout] test taf_with_tempo_group ... ok [INFO] [stdout] test taf_with_invalid_tempo_period_does_not_consume_following_tokens ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/taf_terminator.rs (/opt/rustwide/target/debug/deps/taf_terminator-3b8f9acd68d90f20) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test taf_trailing_equals_keeps_last_group_parseable ... 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] [stderr] Running tests/taf_time.rs (/opt/rustwide/target/debug/deps/taf_time-130839971e4b0e68) [INFO] [stdout] [INFO] [stdout] running 28 tests [INFO] [stdout] test issued_at_midnight ... ok [INFO] [stdout] test issued_at_fields_correct ... ok [INFO] [stdout] test issued_at_end_of_day ... ok [INFO] [stdout] test describe_validity_format ... ok [INFO] [stdout] test describe_issued_at_format ... ok [INFO] [stdout] test issued_at_rejects_day_zero ... ok [INFO] [stdout] test issued_at_rejects_hour_24 ... ok [INFO] [stdout] test issued_at_rejects_minute_60 ... ok [INFO] [stdout] test issued_at_rejects_missing_z_suffix ... ok [INFO] [stdout] test issued_at_non_zero_minutes ... ok [INFO] [stdout] test issued_at_rejects_wrong_length ... ok [INFO] [stdout] test strict_accepts_valid_time_groups ... ok [INFO] [stdout] test validity_cross_day ... ok [INFO] [stdout] test validity_crosses_midnight ... ok [INFO] [stdout] test strict_rejects_invalid_issued_at ... ok [INFO] [stdout] test validity_from_hour_zero ... ok [INFO] [stdout] test validity_crosses_month_boundary ... ok [INFO] [stdout] test validity_rejects_from_hour_30 ... ok [INFO] [stdout] test validity_rejects_short_from_part ... ok [INFO] [stdout] test validity_rejects_from_hour_24 ... ok [INFO] [stdout] test strict_rejects_invalid_validity ... ok [INFO] [stdout] test validity_rejects_from_day_zero ... ok [INFO] [stdout] test issued_at_last_day_of_month ... ok [INFO] [stdout] test validity_rejects_to_day_zero ... ok [INFO] [stdout] test validity_rejects_to_hour_25 ... ok [INFO] [stdout] test validity_to_hour_24_accepted ... ok [INFO] [stdout] test validity_same_day_start_end ... ok [INFO] [stdout] test validity_rejects_wrong_format_missing_slash ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 28 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/taf_time_validation.rs (/opt/rustwide/target/debug/deps/taf_time_validation-6f7c794dd58ce87c) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test parses_valid_taf_header_time_and_validity ... ok [INFO] [stdout] test rejects_invalid_taf_validity_format_and_ranges ... ok [INFO] [stdout] test rejects_invalid_taf_issue_time_ranges ... ok [INFO] [stdout] [INFO] [stderr] Running tests/taf_unparsed_groups.rs (/opt/rustwide/target/debug/deps/taf_unparsed_groups-5eb4f477482bb3da) [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test keeps_collecting_unknown_groups_across_change_sections ... ok [INFO] [stdout] test stores_unknown_taf_groups_in_unparsed_list ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/taf_visibility.rs (/opt/rustwide/target/debug/deps/taf_visibility-6e7eb03a4750dba1) [INFO] [stdout] [INFO] [stdout] running 16 tests [INFO] [stdout] test cavok_implies_no_clouds ... ok [INFO] [stdout] test cavok_clears_clouds_parsed_before_it ... ok [INFO] [stdout] test cavok_clears_weather_parsed_before_it ... ok [INFO] [stdout] test cavok_implies_no_weather ... ok [INFO] [stdout] test cavok_in_fm_group ... ok [INFO] [stdout] test cavok_in_tempo_group ... ok [INFO] [stdout] test cavok_sets_visibility_variant ... ok [INFO] [stdout] test describe_visibility_cavok ... ok [INFO] [stdout] test describe_visibility_9999 ... ok [INFO] [stdout] test visibility_9999_means_10km_or_more ... ok [INFO] [stdout] test describe_visibility_metres ... ok [INFO] [stdout] test visibility_5000m ... ok [INFO] [stdout] test cavok_in_becmg_group ... ok [INFO] [stdout] test visibility_absent_is_none ... ok [INFO] [stdout] test visibility_8000m ... ok [INFO] [stdout] test visibility_minimum_0000m ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/taf_visibility_statute_miles.rs (/opt/rustwide/target/debug/deps/taf_visibility_statute_miles-675018db376a66db) [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stderr] Running tests/taf_weather.rs (/opt/rustwide/target/debug/deps/taf_weather-c8cab0db5271e982) [INFO] [stdout] test taf_visibility_statute_miles_single_token ... ok [INFO] [stdout] test taf_visibility_statute_miles_split_token ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 22 tests [INFO] [stdout] test describe_weather_heavy_rain ... ok [INFO] [stdout] test weather_absent_when_not_reported ... ok [INFO] [stdout] test describe_weather_nsw ... ok [INFO] [stdout] test weather_all_obscuration_codes ... ok [INFO] [stdout] test weather_all_other_phenomena_codes ... ok [INFO] [stdout] test weather_all_precipitation_codes ... ok [INFO] [stdout] test describe_weather_tsra ... ok [INFO] [stdout] test describe_weather_light_rain ... ok [INFO] [stdout] test weather_descriptor_fz_freezing_fog ... ok [INFO] [stdout] test weather_descriptor_ts_thunderstorm ... ok [INFO] [stdout] test weather_light_rain ... ok [INFO] [stdout] test weather_moderate_rain_no_prefix ... ok [INFO] [stdout] test weather_multiple_phenomena_rasn ... ok [INFO] [stdout] test weather_descriptor_bl_blowing_snow ... ok [INFO] [stdout] test weather_nsw_in_becmg ... ok [INFO] [stderr] Running tests/taf_wind.rs (/opt/rustwide/target/debug/deps/taf_wind-39076e5ef6a7d343) [INFO] [stdout] test weather_heavy_rain ... ok [INFO] [stdout] test weather_nsw_in_fm ... ok [INFO] [stdout] test weather_nsw_in_tempo ... ok [INFO] [stdout] test weather_descriptor_sh_showers ... ok [INFO] [stdout] test weather_multiple_phenomena_with_intensity ... ok [INFO] [stdout] test weather_standalone_ts_is_thunder ... ok [INFO] [stdout] test weather_nsw_no_significant_weather ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 22 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 17 tests [INFO] [stdout] test describe_wind_variable ... ok [INFO] [stdout] test describe_wind_with_gust ... ok [INFO] [stdout] test wind_calm ... ok [INFO] [stdout] test wind_absent_is_none ... ok [INFO] [stdout] test wind_direction_360 ... ok [INFO] [stdout] test wind_direction_and_speed ... ok [INFO] [stdout] test wind_in_becmg_group ... ok [INFO] [stdout] test describe_wind_directional ... ok [INFO] [stdout] test describe_wind_calm ... ok [INFO] [stdout] test wind_high_speed ... ok [INFO] [stdout] test wind_in_fm_group ... ok [INFO] [stdout] test wind_in_tempo_group ... ok [INFO] [stdout] test wind_unit_mps ... ok [INFO] [stdout] test wind_variable_with_gust ... ok [INFO] [stdout] test wind_indeterminate ... ok [INFO] [stdout] test wind_variable_direction ... ok [INFO] [stdout] test wind_with_gust ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 17 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/taf_wind_shear.rs (/opt/rustwide/target/debug/deps/taf_wind_shear-b58089dc3108f00a) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test parse_taf_wind_shear_group ... ok [INFO] [stdout] test malformed_wind_shear_group_is_unparsed ... ok [INFO] [stdout] test strict_mode_rejects_malformed_wind_shear_group ... ok [INFO] [stderr] Doc-tests metar_taf_parser [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 13 tests [INFO] [stdout] test src/common/describe/mod.rs - common::describe (line 12) ... ok [INFO] [stdout] test src/common/describe/mod.rs - common::describe::format_metar (line 304) ... ok [INFO] [stdout] test src/common/describe/mod.rs - common::describe::MetarDescription (line 151) ... ok [INFO] [stdout] test src/common/describe/mod.rs - common::describe::TafDescription (line 263) ... ok [INFO] [stdout] test src/common/describe/mod.rs - common::describe::describe_metar (line 351) ... ok [INFO] [stdout] test src/common/parse.rs - common::parse::ParsedReport (line 28) ... ok [INFO] [stdout] test src/common/describe/mod.rs - common::describe::format_taf (line 329) ... ok [INFO] [stdout] test src/common/parse.rs - common::parse::parse_strict (line 132) ... ok [INFO] [stdout] test src/metar/parser/sea_state.rs - metar::parser::sea_state::parse_sea_state (line 16) ... ok [INFO] [stdout] test src/common/describe/mod.rs - common::describe::describe_taf (line 373) ... ok [INFO] [stdout] test src/metar/parser/wind.rs - metar::parser::wind::parse_wind_variation (line 103) ... ok [INFO] [stdout] test src/common/parse.rs - common::parse::parse (line 97) ... ok [INFO] [stdout] test src/metar/parser/color_code.rs - metar::parser::color_code::parse_color_code (line 17) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] all doctests ran in 0.60s; merged doctests compilation took 0.58s [INFO] running `Command { std: "docker" "inspect" "30ed5ff3a8f16e2729bfdc40fff23817422a5cd9348c3c25d07f296b333bec62", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "30ed5ff3a8f16e2729bfdc40fff23817422a5cd9348c3c25d07f296b333bec62", kill_on_drop: false }` [INFO] [stdout] 30ed5ff3a8f16e2729bfdc40fff23817422a5cd9348c3c25d07f296b333bec62