[INFO] fetching crate oxigeo-services 0.2.4... [INFO] testing oxigeo-services-0.2.4 against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2 [INFO] extracting crate oxigeo-services 0.2.4 into /workspace/builds/worker-3-tc2/source [INFO] started tweaking crates.io crate oxigeo-services 0.2.4 [INFO] removed 0 missing examples [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate oxigeo-services 0.2.4 [INFO] tweaked toml for crates.io crate oxigeo-services 0.2.4 written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate oxigeo-services 0.2.4 on toolchain 1.100.0-beta.1 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate oxigeo-services 0.2.4 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: `package.homepage` is redundant with `package.repository` [INFO] [stderr] --> Cargo.toml:146:12 [INFO] [stderr] | [INFO] [stderr] 146 | homepage = "https://github.com/cool-japan/oxigeo" [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 151 | repository = "https://github.com/cool-japan/oxigeo" [INFO] [stderr] | -------------------------------------- [INFO] [stderr] | [INFO] [stderr] = note: `cargo::redundant_homepage` is set to `warn` by default [INFO] [stderr] help: consider removing `package.homepage` [INFO] [stderr] warning: `oxigeo-services` (manifest) generated 1 warning [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] 6e847dea20518a7f070cb37927ffa7dc29fa4cbeff1a9002708a6e5f735ee24c [INFO] running `Command { std: "docker" "start" "6e847dea20518a7f070cb37927ffa7dc29fa4cbeff1a9002708a6e5f735ee24c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "6e847dea20518a7f070cb37927ffa7dc29fa4cbeff1a9002708a6e5f735ee24c", 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" "6e847dea20518a7f070cb37927ffa7dc29fa4cbeff1a9002708a6e5f735ee24c" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "6e847dea20518a7f070cb37927ffa7dc29fa4cbeff1a9002708a6e5f735ee24c", 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" "6e847dea20518a7f070cb37927ffa7dc29fa4cbeff1a9002708a6e5f735ee24c" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }` [INFO] [stderr] warning: `package.homepage` is redundant with `package.repository` [INFO] [stderr] --> Cargo.toml:146:12 [INFO] [stderr] | [INFO] [stderr] 146 | homepage = "https://github.com/cool-japan/oxigeo" [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 151 | repository = "https://github.com/cool-japan/oxigeo" [INFO] [stderr] | -------------------------------------- [INFO] [stderr] | [INFO] [stderr] = note: `cargo::redundant_homepage` is set to `warn` by default [INFO] [stderr] help: consider removing `package.homepage` [INFO] [stderr] warning: `oxigeo-services` (manifest) generated 1 warning [INFO] [stderr] Compiling serde_core v1.0.229 [INFO] [stderr] Compiling serde v1.0.229 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling log v0.4.33 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling simd-adler32 v0.3.10 [INFO] [stderr] Compiling syn v2.0.119 [INFO] [stderr] Compiling thiserror-impl v2.0.20 [INFO] [stderr] Compiling pest v2.9.0 [INFO] [stderr] Compiling time-macros v0.2.32 [INFO] [stderr] Compiling bytemuck v1.25.2 [INFO] [stderr] Compiling heapless v0.8.0 [INFO] [stderr] Compiling memmap2 v0.9.11 [INFO] [stderr] Compiling hash32 v0.3.1 [INFO] [stderr] Compiling regex-syntax v0.8.11 [INFO] [stderr] Compiling crossbeam-utils v0.8.22 [INFO] [stderr] Compiling ieee754 v0.2.6 [INFO] [stderr] Compiling slab v0.4.12 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling fdeflate v0.3.7 [INFO] [stderr] Compiling oxixml-support v0.1.2 [INFO] [stderr] Compiling futures-util v0.3.34 [INFO] [stderr] Compiling pxfm v0.1.30 [INFO] [stderr] Compiling robust v1.2.0 [INFO] [stderr] Compiling zune-core v0.5.3 [INFO] [stderr] Compiling quick-error v2.0.1 [INFO] [stderr] Compiling image-webp v0.2.4 [INFO] [stderr] Compiling delaunator v1.1.0 [INFO] [stderr] Compiling flate2 v1.1.9 [INFO] [stderr] Compiling accurate v0.3.1 [INFO] [stderr] Compiling rstar v0.13.0 [INFO] [stderr] Compiling zune-jpeg v0.5.15 [INFO] [stderr] Compiling oxixml-xml v0.1.2 [INFO] [stderr] Compiling geographiclib-rs v0.2.7 [INFO] [stderr] Compiling thiserror v2.0.20 [INFO] [stderr] Compiling pest_meta v2.9.0 [INFO] [stderr] Compiling oxiarc-core v0.4.1 [INFO] [stderr] Compiling oxiarc-lzw v0.4.1 [INFO] [stderr] Compiling regex-automata v0.4.18 [INFO] [stderr] Compiling png v0.18.1 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling oxiarc-deflate v0.4.1 [INFO] [stderr] Compiling thread_local v1.1.10 [INFO] [stderr] Compiling nu-ansi-term v0.50.3 [INFO] [stderr] Compiling serde_json v1.0.151 [INFO] [stderr] Compiling deranged v0.5.8 [INFO] [stderr] Compiling serde_path_to_error v0.1.20 [INFO] [stderr] Compiling tinyvec v1.12.0 [INFO] [stderr] Compiling dashmap v6.1.0 [INFO] [stderr] Compiling uuid v1.24.1 [INFO] [stderr] Compiling bytes v1.12.1 [INFO] [stderr] Compiling pest_generator v2.9.0 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling moxcms v0.8.1 [INFO] [stderr] Compiling geo-types v0.7.20 [INFO] [stderr] Compiling chrono v0.4.45 [INFO] [stderr] Compiling oxixml-quickxml-compat v0.1.2 [INFO] [stderr] Compiling geojson v1.0.0 [INFO] [stderr] Compiling http v1.5.0 [INFO] [stderr] Compiling tokio v1.53.1 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling time v0.3.55 [INFO] [stderr] Compiling pest_derive v2.9.0 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling http-body v1.1.0 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling http-body-util v0.1.5 [INFO] [stderr] Compiling tracing-subscriber v0.3.23 [INFO] [stderr] Compiling axum-core v0.5.6 [INFO] [stderr] Compiling oxigeo-core v0.2.4 [INFO] [stderr] Compiling image v0.25.10 [INFO] [stderr] Compiling oxigeo-algorithms v0.2.4 [INFO] [stderr] Compiling oxigeo-geotiff v0.2.4 [INFO] [stderr] Compiling hyper v1.11.0 [INFO] [stderr] Compiling tokio-util v0.7.19 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling axum v0.8.9 [INFO] [stderr] Compiling oxigeo-services v0.2.4 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused dependency `tracing-subscriber` [INFO] [stderr] --> Cargo.toml:87:15 [INFO] [stderr] | [INFO] [stderr] 87 | [dependencies.tracing-subscriber] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `cargo::unused_dependencies` is set to `warn` by default [INFO] [stderr] help: consider removing the dependency on `tracing-subscriber` [INFO] [stderr] warning: `oxigeo-services` (manifest) generated 1 warning [INFO] [stderr] Finished `release` profile [optimized] target(s) in 1m 16s [INFO] running `Command { std: "docker" "inspect" "6e847dea20518a7f070cb37927ffa7dc29fa4cbeff1a9002708a6e5f735ee24c", 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" "6e847dea20518a7f070cb37927ffa7dc29fa4cbeff1a9002708a6e5f735ee24c" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }` [INFO] [stderr] warning: `package.homepage` is redundant with `package.repository` [INFO] [stderr] --> Cargo.toml:146:12 [INFO] [stderr] | [INFO] [stderr] 146 | homepage = "https://github.com/cool-japan/oxigeo" [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 151 | repository = "https://github.com/cool-japan/oxigeo" [INFO] [stderr] | -------------------------------------- [INFO] [stderr] | [INFO] [stderr] = note: `cargo::redundant_homepage` is set to `warn` by default [INFO] [stderr] help: consider removing `package.homepage` [INFO] [stderr] warning: `oxigeo-services` (manifest) generated 1 warning [INFO] [stderr] Compiling regex-automata v0.4.18 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling png v0.18.1 [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling rusty-fork v0.3.1 [INFO] [stderr] Compiling proptest v1.11.0 [INFO] [stderr] Compiling image v0.25.10 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling tracing-subscriber v0.3.23 [INFO] [stderr] Compiling oxigeo-services v0.2.4 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused dependency `tracing-subscriber` [INFO] [stderr] --> Cargo.toml:87:15 [INFO] [stderr] | [INFO] [stderr] 87 | [dependencies.tracing-subscriber] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `cargo::unused_dependencies` is set to `warn` by default [INFO] [stderr] help: consider removing the dependency on `tracing-subscriber` [INFO] [stderr] help: to still use for development builds, move to `dev-dependencies` [INFO] [stderr] warning: `oxigeo-services` (manifest) generated 1 warning [INFO] [stderr] Finished `release` profile [optimized] target(s) in 41.30s [INFO] running `Command { std: "docker" "inspect" "6e847dea20518a7f070cb37927ffa7dc29fa4cbeff1a9002708a6e5f735ee24c", 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" "6e847dea20518a7f070cb37927ffa7dc29fa4cbeff1a9002708a6e5f735ee24c" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }` [INFO] [stderr] warning: `package.homepage` is redundant with `package.repository` [INFO] [stderr] --> Cargo.toml:146:12 [INFO] [stderr] | [INFO] [stderr] 146 | homepage = "https://github.com/cool-japan/oxigeo" [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 151 | repository = "https://github.com/cool-japan/oxigeo" [INFO] [stderr] | -------------------------------------- [INFO] [stderr] | [INFO] [stderr] = note: `cargo::redundant_homepage` is set to `warn` by default [INFO] [stderr] help: consider removing `package.homepage` [INFO] [stderr] warning: `oxigeo-services` (manifest) generated 1 warning [INFO] [stderr] warning: unused dependency `tracing-subscriber` [INFO] [stderr] --> Cargo.toml:87:15 [INFO] [stderr] | [INFO] [stderr] 87 | [dependencies.tracing-subscriber] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `cargo::unused_dependencies` is set to `warn` by default [INFO] [stderr] help: consider removing the dependency on `tracing-subscriber` [INFO] [stderr] help: to still use for development builds, move to `dev-dependencies` [INFO] [stderr] warning: `oxigeo-services` (manifest) generated 1 warning [INFO] [stderr] Finished `release` profile [optimized] target(s) in 0.23s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/release/build/oxigeo-services/55782594bb021f8c/out/oxigeo_services-55782594bb021f8c) [INFO] [stdout] [INFO] [stdout] running 291 tests [INFO] [stdout] test mvt::tests::multipolygon_builder_encodes_multiple_exteriors ... ok [INFO] [stdout] test mvt::tests::build_tile_from_geojson_features_encodes_polygon ... ok [INFO] [stdout] test mvt::tests::test_close_path_encoding ... ok [INFO] [stdout] test csw::records::tests::get_records_returns_all_when_unfiltered ... ok [INFO] [stdout] test csw::records::tests::get_records_paginates ... ok [INFO] [stdout] test mvt::tests::polygon_rings_normalize_winding ... ok [INFO] [stdout] test mvt::tests::polygon_with_holes_builder_roundtrips_through_tile ... ok [INFO] [stdout] test csw::records::tests::get_records_anytext_matches_abstract ... ok [INFO] [stdout] test csw::records::tests::get_records_applies_cql_constraint ... ok [INFO] [stdout] test csw::records::tests::get_records_rejects_unparseable_constraint ... ok [INFO] [stdout] test csw::records::tests::get_records_rejects_unsupported_constraint_language ... ok [INFO] [stdout] test error::tests::test_error_display ... ok [INFO] [stdout] test mvt::tests::add_geojson_geometry_rejects_geometry_collection ... ok [INFO] [stdout] test csw::records::tests::get_records_hits_returns_count_only ... ok [INFO] [stdout] test mvt::tests::test_delta_encode_empty ... ok [INFO] [stdout] test mvt::tests::test_encode_varint_127 ... ok [INFO] [stdout] test mvt::tests::test_encode_varint_128 ... ok [INFO] [stdout] test mvt::tests::test_full_roundtrip_tile_encode_non_empty ... ok [INFO] [stdout] test mvt::tests::test_delta_encode_basic ... ok [INFO] [stdout] test mvt::tests::test_encode_varint_300 ... ok [INFO] [stdout] test mvt::tests::test_encode_varint_large ... ok [INFO] [stdout] test mvt::tests::test_encode_varint_max_u32 ... ok [INFO] [stdout] test mvt::tests::test_encode_varint_one ... ok [INFO] [stdout] test mvt::tests::polygon_with_hole_emits_two_move_to ... ok [INFO] [stdout] test mvt::tests::test_encode_varint_zero ... ok [INFO] [stdout] test error::tests::test_error_conversion ... ok [INFO] [stdout] test mvt::tests::test_encode_zigzag_minus_one ... ok [INFO] [stdout] test mvt::tests::test_encode_zigzag_minus_two ... ok [INFO] [stdout] test mvt::tests::test_encode_zigzag_plus_one ... ok [INFO] [stdout] test mvt::tests::test_encode_zigzag_plus_two ... ok [INFO] [stdout] test mvt::tests::test_encode_zigzag_zero ... ok [INFO] [stdout] test mvt::tests::test_layer_builder_add_linestring_empty_error ... ok [INFO] [stdout] test mvt::tests::test_line_to_one_point ... ok [INFO] [stdout] test mvt::tests::test_move_to_origin ... ok [INFO] [stdout] test mvt::tests::test_mvt_feature_encode_has_geometry_type ... ok [INFO] [stdout] test mvt::tests::test_layer_builder_add_point ... ok [INFO] [stdout] test mvt::tests::test_layer_builder_add_polygon ... ok [INFO] [stdout] test mvt::tests::test_line_to_two_points ... ok [INFO] [stdout] test mvt::tests::test_mvt_layer_encode_non_empty ... ok [INFO] [stdout] test mvt::tests::test_mvt_tile_empty_encode ... ok [INFO] [stdout] test mvt::tests::test_mvt_tile_multiple_layers ... ok [INFO] [stdout] test mvt::tests::test_linestring_geometry_starts_with_move_to ... ok [INFO] [stdout] test mvt::tests::test_move_to_encoding ... ok [INFO] [stdout] test mvt::tests::test_mvt_layer_key_index_insert ... ok [INFO] [stdout] test mvt::tests::test_mvt_value_double_encode_length ... ok [INFO] [stdout] test mvt::tests::test_mvt_value_string_encode ... ok [INFO] [stdout] test mvt::tests::test_mvt_feature_encode_with_id ... ok [INFO] [stdout] test mvt::tests::test_mvt_layer_new_defaults ... ok [INFO] [stdout] test mvt::tests::test_mvt_feature_encode_with_tags ... ok [INFO] [stdout] test mvt::tests::test_mvt_layer_value_index_append ... ok [INFO] [stdout] test mvt::tests::test_mvt_layer_key_index_dedup ... ok [INFO] [stdout] test mvt::tests::test_mvt_tile_total_feature_count ... ok [INFO] [stdout] test mvt::tests::test_mvt_value_bool_true_encode ... ok [INFO] [stdout] test mvt::tests::test_scale_to_tile_clamps_negative ... ok [INFO] [stdout] test mvt::tests::test_scale_to_tile_max_corner ... ok [INFO] [stdout] test mvt::tests::test_scale_to_tile_clamps_overflow ... ok [INFO] [stdout] test mvt::tests::test_polygon_ring_geometry_has_close_path ... ok [INFO] [stdout] test mvt::tests::test_scale_to_tile_center ... ok [INFO] [stdout] test ogc_features::cql::tests::combined_and_with_neq ... ok [INFO] [stdout] test ogc_features::cql::tests::neq_operator_angle_brackets ... ok [INFO] [stdout] test ogc_features::tests::test_build_items_collection_not_found ... ok [INFO] [stdout] test ogc_features::tests::test_build_items_no_next_on_last_page ... ok [INFO] [stdout] test ogc_features::tests::test_build_items_no_prev_on_first_page ... ok [INFO] [stdout] test ogc_features::tests::test_build_items_number_matched_from_total ... ok [INFO] [stdout] test ogc_features::tests::test_build_items_number_returned ... ok [INFO] [stdout] test ogc_features::tests::test_build_items_pagination_limit ... ok [INFO] [stdout] test ogc_features::tests::test_build_items_pagination_next_link ... ok [INFO] [stdout] test ogc_features::tests::test_build_items_limit_exceeded ... ok [INFO] [stdout] test mvt::tests::test_scale_to_tile_origin ... ok [INFO] [stdout] test ogc_features::tests::test_build_items_prev_link_on_second_page ... ok [INFO] [stdout] test ogc_features::tests::test_build_items_timestamp_present ... ok [INFO] [stdout] test ogc_features::cql::tests::in_operator_strings ... ok [INFO] [stdout] test ogc_features::cql::tests::in_operator_numbers ... ok [INFO] [stdout] test ogc_features::tests::test_collection_default_item_type ... ok [INFO] [stdout] test ogc_features::cql::tests::in_with_empty_list_is_error ... ok [INFO] [stdout] test ogc_features::cql::tests::is_null_and_is_not_null ... ok [INFO] [stdout] test ogc_features::tests::test_core_has_four_uris ... ok [INFO] [stdout] test ogc_features::tests::test_cql_parse_between ... ok [INFO] [stdout] test ogc_features::cql::tests::neq_operator_bang_equals ... ok [INFO] [stdout] test ogc_features::tests::test_cql_parse_and ... ok [INFO] [stdout] test ogc_features::cql::tests::quoted_property_name_resolves ... ok [INFO] [stdout] test ogc_features::cql::tests::neq_missing_property_is_false ... ok [INFO] [stdout] test ogc_features::tests::test_add_and_get_collection ... ok [INFO] [stdout] test ogc_features::cql::tests::numeric_equality_large_magnitude_relative_epsilon ... ok [INFO] [stdout] test ogc_features::tests::test_collection_with_crs_list ... ok [INFO] [stdout] test ogc_features::tests::test_cql_parse_eq_number ... ok [INFO] [stdout] test ogc_features::tests::test_cql_parse_eq_string ... ok [INFO] [stdout] test ogc_features::tests::test_conformance_includes_crs ... ok [INFO] [stdout] test ogc_features::tests::test_cql_parse_lte ... ok [INFO] [stdout] test ogc_features::tests::test_cql_parse_gt ... ok [INFO] [stdout] test ogc_features::tests::test_cql_parse_not ... ok [INFO] [stdout] test ogc_features::tests::test_cql_parse_or ... ok [INFO] [stdout] test ogc_features::tests::test_crs84_identity ... ok [INFO] [stdout] test ogc_features::tests::test_datetime_closed_interval ... ok [INFO] [stdout] test ogc_features::tests::test_core_contains_expected_uris ... ok [INFO] [stdout] test ogc_features::tests::test_crs_is_supported ... ok [INFO] [stdout] test ogc_features::tests::test_datetime_instant ... ok [INFO] [stdout] test ogc_features::tests::test_collection_storage_crs ... ok [INFO] [stdout] test ogc_features::tests::test_cql_parse_lt ... ok [INFO] [stdout] test ogc_features::tests::test_datetime_empty_is_error ... ok [INFO] [stdout] test ogc_features::tests::test_cql_parse_like ... ok [INFO] [stdout] test ogc_features::tests::test_datetime_open_end ... ok [INFO] [stdout] test ogc_features::tests::test_epsg3857_inverse_known_point ... ok [INFO] [stdout] test ogc_features::tests::test_epsg3857_inverse_origin ... ok [INFO] [stdout] test ogc_features::tests::test_datetime_open_start ... ok [INFO] [stdout] test ogc_features::tests::test_error_limit_exceeded ... ok [INFO] [stdout] test ogc_features::tests::test_error_serde_from ... ok [INFO] [stdout] test ogc_features::tests::test_eval_and_both_true ... ok [INFO] [stdout] test ogc_features::tests::test_eval_between_match ... ok [INFO] [stdout] test ogc_features::tests::test_error_invalid_bbox ... ok [INFO] [stdout] test ogc_features::tests::test_error_invalid_datetime ... ok [INFO] [stdout] test ogc_features::tests::test_eval_like_match ... ok [INFO] [stdout] test ogc_features::tests::test_eval_like_no_match ... ok [INFO] [stdout] test ogc_features::tests::test_eval_lt_match ... ok [INFO] [stdout] test ogc_features::tests::test_eval_gt_match ... ok [INFO] [stdout] test ogc_features::tests::test_eval_between_no_match ... ok [INFO] [stdout] test ogc_features::tests::test_eval_eq_string_no_match ... ok [INFO] [stdout] test ogc_features::tests::test_eval_gt_no_match ... ok [INFO] [stdout] test ogc_features::tests::test_eval_not_active_false ... ok [INFO] [stdout] test ogc_features::tests::test_epsg4258_identity ... ok [INFO] [stdout] test ogc_features::tests::test_eval_not_inverts ... ok [INFO] [stdout] test ogc_features::tests::test_eval_or_both_false ... ok [INFO] [stdout] test ogc_features::tests::test_epsg4326_identity ... ok [INFO] [stdout] test ogc_features::tests::test_error_collection_not_found ... ok [INFO] [stdout] test ogc_features::tests::test_error_invalid_crs ... ok [INFO] [stdout] test ogc_features::tests::test_extent_spatial_and_temporal ... ok [INFO] [stdout] test ogc_features::tests::test_feature_collection_deserialise ... ok [INFO] [stdout] test ogc_features::tests::test_eval_and_one_false ... ok [INFO] [stdout] test ogc_features::tests::test_feature_string_id ... ok [INFO] [stdout] test ogc_features::tests::test_eval_eq_string_match ... ok [INFO] [stdout] test ogc_features::tests::test_feature_collection_type_field ... ok [INFO] [stdout] test ogc_features::tests::test_feature_collection_number_matched ... ok [INFO] [stdout] test ogc_features::tests::test_extent_serialise ... ok [INFO] [stdout] test ogc_features::tests::test_feature_type_field ... ok [INFO] [stdout] test ogc_features::tests::test_feature_integer_id ... ok [INFO] [stdout] test ogc_features::tests::test_get_collection_missing_returns_none ... ok [INFO] [stdout] test ogc_features::tests::test_landing_page_has_conformance_link ... ok [INFO] [stdout] test ogc_features::tests::test_landing_page_has_self_link ... ok [INFO] [stdout] test ogc_features::tests::test_landing_page_title ... ok [INFO] [stdout] test ogc_features::tests::test_eval_or_one_true ... ok [INFO] [stdout] test mvt::tests::test_decode_zigzag_roundtrip ... ok [INFO] [stdout] test mvt::tests::test_mvt_tile_wraps_layer_in_field3 ... ok [INFO] [stdout] test ogc_features::tests::test_with_crs_adds_crs_uri ... ok [INFO] [stdout] test ogc_tiles::tests::test_conformance_declaration_ogc_tiles ... ok [INFO] [stdout] test ogc_tiles::tests::test_conformance_declaration_serialization ... ok [INFO] [stdout] test ogc_tiles::tests::test_corner_of_origin_variants ... ok [INFO] [stdout] test ogc_features::tests::test_query_params_default_offset ... ok [INFO] [stdout] test ogc_features::tests::test_list_collections_has_self_link ... ok [INFO] [stdout] test ogc_features::tests::test_query_params_bbox ... ok [INFO] [stdout] test ogc_features::tests::test_query_params_custom_limit ... ok [INFO] [stdout] test ogc_features::tests::test_supported_crs_uris_count ... ok [INFO] [stdout] test ogc_tiles::tests::test_lonlat_to_tile_bottom_right_zoom1 ... ok [INFO] [stdout] test ogc_tiles::tests::test_lonlat_to_tile_prime_meridian_equator_zoom8 ... ok [INFO] [stdout] test ogc_features::tests::test_link_optional_fields_absent_when_none ... ok [INFO] [stdout] test ogc_features::tests::test_link_type_key_not_type_underscore ... ok [INFO] [stdout] test ogc_features::tests::test_list_collections_count ... ok [INFO] [stdout] test ogc_features::tests::test_query_params_crs ... ok [INFO] [stdout] test ogc_features::tests::test_query_params_default_limit ... ok [INFO] [stdout] test ogc_features::tests::test_unknown_crs_returns_error ... ok [INFO] [stdout] test ogc_tiles::tests::test_geographic_bounding_box ... ok [INFO] [stdout] test ogc_tiles::tests::test_tile_matrix_corner_of_origin ... ok [INFO] [stdout] test ogc_tiles::tests::test_tile_matrix_scale_decreases_with_zoom ... ok [INFO] [stdout] test ogc_tiles::tests::test_tile_matrix_set_id_and_crs ... ok [INFO] [stdout] test ogc_tiles::tests::test_tile_parent_basic ... ok [INFO] [stdout] test ogc_tiles::tests::test_lonlat_to_tile_roundtrip_consistency ... ok [INFO] [stdout] test ogc_tiles::tests::test_lonlat_to_tile_top_left_zoom1 ... ok [INFO] [stdout] test ogc_tiles::tests::test_lonlat_to_tile_zoom0_any_point ... ok [INFO] [stdout] test ogc_tiles::tests::test_tile_children_count ... ok [INFO] [stdout] test ogc_features::tests::test_feature_null_geometry ... ok [INFO] [stdout] test ogc_tiles::tests::test_tile_children_zoom_incremented ... ok [INFO] [stdout] test ogc_tiles::tests::test_tile_data_type_variants ... ok [INFO] [stdout] test ogc_features::tests::test_landing_page_has_four_links ... ok [INFO] [stdout] test ogc_tiles::tests::test_tile_matrix_tile_size ... ok [INFO] [stdout] test ogc_tiles::tests::test_tile_link_serialization ... ok [INFO] [stdout] test ogc_tiles::tests::test_tile_parent_none_at_zoom0 ... ok [INFO] [stdout] test ogc_tiles::tests::test_tile_pixel_bounds ... ok [INFO] [stdout] test ogc_tiles::tests::test_tile_to_bbox_ordering ... ok [INFO] [stdout] test ogc_tiles::tests::test_tile_to_bbox_zoom0_full_world ... ok [INFO] [stdout] test ogc_tiles::tests::test_tiles_in_bbox_zoom0_world ... ok [INFO] [stdout] test ogc_tiles::tests::test_tiles_in_bbox_zoom1_world ... ok [INFO] [stdout] test ogc_tiles::tests::test_tile_to_bbox_zoom1_nw_quadrant ... ok [INFO] [stdout] test ogc_tiles::tests::test_tile_to_bbox_zoom1_se_quadrant ... ok [INFO] [stdout] test ogc_tiles::tests::test_tileset_metadata_serialization_roundtrip ... ok [INFO] [stdout] test ogc_tiles::tests::test_tileset_metadata_vector_web_mercator ... ok [INFO] [stdout] test ogc_tiles::tests::test_tileset_metadata_with_extent ... ok [INFO] [stdout] test ogc_tiles::tests::test_validate_tile_coords_valid ... ok [INFO] [stdout] test ogc_tiles::tests::test_validate_tile_coords_out_of_range ... ok [INFO] [stdout] test ogc_tiles::tests::test_web_mercator_quad_max_zoom ... ok [INFO] [stdout] test ogc_tiles::tests::test_world_crs84_quad_max_zoom ... ok [INFO] [stdout] test ogc_tiles::tests::test_web_mercator_quad_tile_matrix_none_for_25 ... ok [INFO] [stdout] test ogc_tiles::tests::test_web_mercator_quad_zoom_count ... ok [INFO] [stdout] test ogc_tiles::tests::test_world_crs84_quad_zoom0_aspect_ratio ... ok [INFO] [stdout] test ogc_tiles::tests::test_world_crs84_quad_tile_matrix_none_for_18 ... ok [INFO] [stdout] test ogc_tiles::tests::test_web_mercator_quad_zoom0_matrix_size ... ok [INFO] [stdout] test ogc_tiles::tests::test_tileset_metadata_map_web_mercator ... ok [INFO] [stdout] test ogc_tiles::tests::test_web_mercator_quad_zoom24_matrix_size ... ok [INFO] [stdout] test ogc_tiles::tests::test_world_crs84_quad_zoom1_size ... ok [INFO] [stdout] test ogc_tiles::tests::test_web_mercator_quad_min_zoom ... ok [INFO] [stdout] test ogc_tiles::tests::test_web_mercator_quad_zoom1_matrix_size ... ok [INFO] [stdout] test ogc_tiles_server::tests::tile_without_provider_is_not_implemented ... ok [INFO] [stdout] test ogc_tiles_server::tests::unknown_collection_404 ... ok [INFO] [stdout] test ogc_tiles_server::tests::unknown_tile_matrix_set_404 ... ok [INFO] [stdout] test ogc_tiles_server::tests::landing_page_lists_links ... ok [INFO] [stdout] test wcs::capabilities::tests::test_get_capabilities ... ok [INFO] [stdout] test wcs::coverage::tests::test_empty_memory_coverage_errors ... ok [INFO] [stdout] test wcs::coverage::tests::test_coverage_to_u8_samples_rejects_truncated_data ... ok [INFO] [stdout] test ogc_tiles_server::tests::single_tile_matrix_set_returned ... ok [INFO] [stdout] test ogc_tiles_server::tests::tile_matrix_sets_include_web_mercator ... ok [INFO] [stdout] test wcs::coverage::tests::test_encode_as_png_rejects_unsupported_band_count ... ok [INFO] [stdout] test ogc_tiles_server::tests::collection_tileset_metadata ... ok [INFO] [stdout] test wcs::coverage::tests::test_encode_as_jpeg_is_a_real_decodable_jpeg ... ok [INFO] [stdout] test ogc_tiles_server::tests::conformance_lists_core_class ... ok [INFO] [stdout] test wcs::coverage::tests::test_describe_coverage ... ok [INFO] [stdout] test ogc_tiles::tests::test_world_crs84_quad_zoom_count ... ok [INFO] [stdout] test wcs::coverage::tests::test_encode_as_png_is_a_real_decodable_png ... ok [INFO] [stdout] test wcs::coverage::tests::test_encode_as_jpeg_rejects_unsupported_band_count ... ok [INFO] [stdout] test wcs::coverage::tests::test_encode_then_retrieve_memory_roundtrip ... ok [INFO] [stdout] test ogc_tiles_server::tests::tile_out_of_range_is_rejected ... ok [INFO] [stdout] test wcs::coverage::tests::test_fit_payload ... ok [INFO] [stdout] test wcs::coverage::tests::test_issue_14_bytes_source_range_slice_borrows_backing_buffer ... ok [INFO] [stdout] test wcs::coverage::tests::test_issue_14_bytes_source_read_range_into_matches_read_range ... ok [INFO] [stdout] test wcs::coverage::tests::test_issue_14_bytes_source_read_range_into_buffer_sizing ... ok [INFO] [stdout] test wcs::tests::test_add_coverage ... ok [INFO] [stdout] test wcs::coverage::tests::test_issue_14_decode_geotiff_multiband_interleaves_all_bands ... ok [INFO] [stdout] test wcs::coverage::tests::test_issue_14_decode_geotiff_single_band_unchanged ... ok [INFO] [stdout] test wcs::coverage::tests::test_write_geotiff_bytes_is_valid_tiff ... ok [INFO] [stdout] test wcs::tests::test_wcs_state_creation ... ok [INFO] [stdout] test ogc_tiles_server::tests::vector_tile_is_built_from_provider ... ok [INFO] [stdout] test tests::test_version ... ok [INFO] [stdout] test wcs::coverage::tests::test_coverage_to_u8_samples_stretches_float32_per_band ... ok [INFO] [stdout] test wfs::capabilities::tests::test_get_capabilities_200 ... ok [INFO] [stdout] test wfs::capabilities::tests::test_get_capabilities_300 ... ok [INFO] [stdout] test wfs::database::tests::test_bbox_filter_from_string ... ok [INFO] [stdout] test wfs::database::tests::test_build_where_clause_bbox_and_cql ... ok [INFO] [stdout] test wfs::database::tests::test_count_cache_config_default ... ok [INFO] [stdout] test wfs::database::tests::test_build_where_clause_empty ... ok [INFO] [stdout] test wfs::database::tests::test_build_where_clause_bbox_postgis ... ok [INFO] [stdout] test wfs::database::tests::test_cql_filter_mysql_quoting ... ok [INFO] [stdout] test wfs::database::tests::test_cache_stats ... ok [INFO] [stdout] test wfs::database::tests::test_cql_filter_with_and ... ok [INFO] [stdout] test wfs::features::tests::test_describe_feature_type ... ok [INFO] [stdout] test wfs::database::tests::test_qualified_table_name ... ok [INFO] [stdout] test wfs::tests::test_add_feature_type ... ok [INFO] [stdout] test wfs::database::tests::test_cql_filter_simple ... ok [INFO] [stdout] test wfs::database::tests::test_bbox_filter_invalid ... ok [INFO] [stdout] test wfs::database::tests::test_bbox_filter_with_crs ... ok [INFO] [stdout] test wfs::database::tests::test_database_feature_counter_creation ... ok [INFO] [stdout] test wfs::database::tests::test_database_source_creation ... ok [INFO] [stdout] test wfs::transactions::tests::test_build_delete_sql_requires_filter ... ok [INFO] [stdout] test wfs::features::tests::test_bbox_parsing ... ok [INFO] [stdout] test wfs::transactions::tests::test_build_insert_sql ... ok [INFO] [stdout] test wfs::tests::test_wfs_state_creation ... ok [INFO] [stdout] test wfs::transactions::tests::test_build_insert_sql_without_geometry ... ok [INFO] [stdout] test wfs::transactions::tests::test_delete_unparseable_filter_fails_closed ... ok [INFO] [stdout] test wfs::transactions::tests::test_memory_delete_matching_filter ... ok [INFO] [stdout] test wfs::transactions::tests::test_memory_insert_appends_and_assigns_ids ... ok [INFO] [stdout] test wfs::transactions::tests::test_build_replace_sql ... ok [INFO] [stdout] test wfs::transactions::tests::test_delete_neq_filter_only_deletes_matches ... ok [INFO] [stdout] test wfs::database::tests::test_database_source_builder ... ok [INFO] [stdout] test wfs::database::tests::test_get_count_returns_error_without_connection ... ok [INFO] [stdout] test wfs::transactions::tests::test_memory_replace_matching_filter ... ok [INFO] [stdout] test wfs::transactions::tests::test_transaction_without_lock_id_still_executes ... ok [INFO] [stdout] test wfs::transactions::tests::test_build_update_sql ... ok [INFO] [stdout] test wfs::transactions::tests::test_transaction_with_lock_id_is_rejected ... ok [INFO] [stdout] test wfs::transactions::tests::test_memory_update_matching_filter ... ok [INFO] [stdout] test wps::builtin::tests::buffer_process_returns_real_geometry ... ok [INFO] [stdout] test wfs::transactions::tests::test_update_unparseable_filter_fails_closed ... ok [INFO] [stdout] test wfs::transactions::tests::test_transaction_response_generation ... ok [INFO] [stdout] test wps::builtin::tests::union_process_requires_two_inputs ... ok [INFO] [stdout] test wfs::transactions::tests::test_file_delete_unparseable_filter_fails_closed ... ok [INFO] [stdout] test wps::geometry::tests::union_of_two_squares_is_non_empty ... ok [INFO] [stdout] test wps::processes::tests::build_inputs_repeated_kvp_array ... ok [INFO] [stdout] test wps::processes::tests::describe_process_lists_real_io ... ok [INFO] [stdout] test wps::processes::tests::execute_buffer_via_handler ... ok [INFO] [stdout] test wps::geometry::tests::clip_intersection_of_overlapping_squares ... ok [INFO] [stdout] test wfs::transactions::tests::test_file_replace_roundtrip ... ok [INFO] [stdout] test wps::builtin::tests::clip_process_intersects ... ok [INFO] [stdout] test wps::tests::test_wps_state_creation ... ok [INFO] [stdout] test wps::geometry::tests::roundtrip_polygon_geometry ... ok [INFO] [stdout] test wps::builtin::tests::union_process_merges_two_polygons ... ok [INFO] [stdout] test wfs::transactions::tests::test_file_insert_update_delete_roundtrip ... ok [INFO] [stdout] test wps::builtin::tests::buffer_process_bad_distance_errors ... ok [INFO] [stdout] test wps::builtin::tests::buffer_process_missing_geometry_errors ... ok [INFO] [stdout] test wps::geometry::tests::buffer_point_produces_polygon_of_expected_area ... ok [INFO] [stdout] test wps::processes::tests::build_inputs_json_form ... ok [INFO] [stdout] test wps::geometry::tests::buffer_rejects_empty_output ... ok [INFO] [stdout] test wps::geometry::tests::parse_rejects_non_geojson ... ok [INFO] [stdout] test wps::processes::tests::execute_unknown_process_errors ... ok [INFO] [stdout] test mvt::tests::test_layer_builder_add_linestring ... ok [INFO] [stdout] test ogc_features::tests::test_cql_parse_gte ... ok [INFO] [stdout] test wcs::coverage::tests::test_parse_epsg ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 291 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stderr] Running tests/cache_headers_test.rs (/opt/rustwide/target/release/build/oxigeo-services/823377f13028388a/out/cache_headers_test-823377f13028388a) [INFO] [stdout] [INFO] [stdout] running 74 tests [INFO] [stdout] test test_cache_headers_cdn_override_cdn_cache_control ... ok [INFO] [stdout] test test_cache_headers_cdn_override_surrogate_control ... ok [INFO] [stdout] test test_cache_headers_is_not_modified_no_etag_set ... ok [INFO] [stdout] test test_cache_headers_to_header_pairs_all_fields ... ok [INFO] [stdout] test test_api_response_swr ... ok [INFO] [stdout] test test_cache_headers_with_etag_sets_field ... ok [INFO] [stdout] test test_etag_from_bytes_different_inputs_differ ... ok [INFO] [stdout] test test_cache_headers_is_not_modified_match ... ok [INFO] [stdout] test test_api_response_sie ... ok [INFO] [stdout] test test_api_response_max_age ... ok [INFO] [stdout] test test_cache_headers_to_header_pairs_minimal ... ok [INFO] [stdout] test test_cache_headers_is_not_modified_no_match ... ok [INFO] [stdout] test test_cache_headers_is_not_modified_none_client ... ok [INFO] [stdout] test test_etag_parse_invalid_unclosed ... ok [INFO] [stdout] test test_cache_headers_new_sets_cache_control ... ok [INFO] [stdout] test test_etag_to_header_value_strong ... ok [INFO] [stdout] test test_etag_to_header_value_weak ... ok [INFO] [stdout] test test_cache_headers_last_modified_epoch ... ok [INFO] [stdout] test test_etag_from_str_value ... ok [INFO] [stdout] test test_format_http_date_known_2021 ... ok [INFO] [stdout] test test_format_http_date_epoch ... ok [INFO] [stdout] test test_format_http_date_epoch_month_is_jan ... ok [INFO] [stdout] test test_format_http_date_midyear ... ok [INFO] [stdout] test test_format_http_date_one_day ... ok [INFO] [stdout] test test_metadata_default_max_age ... ok [INFO] [stdout] test test_format_http_date_time_component ... ok [INFO] [stdout] test test_metadata_default_sie ... ok [INFO] [stdout] test test_policy_immutable_small ... ok [INFO] [stdout] test test_policy_no_cache ... ok [INFO] [stdout] test test_policy_no_store ... ok [INFO] [stdout] test test_etag_from_bytes_is_strong ... ok [INFO] [stdout] test test_etag_parse_strong ... ok [INFO] [stdout] test test_etag_from_bytes_value_is_hex ... ok [INFO] [stdout] test test_etag_parse_weak ... ok [INFO] [stdout] test test_metadata_default_swr ... ok [INFO] [stdout] test test_etag_parse_invalid_no_quotes ... ok [INFO] [stdout] test test_etag_roundtrip_weak ... ok [INFO] [stdout] test test_policy_immutable ... ok [INFO] [stdout] test test_policy_public_both_stale ... ok [INFO] [stdout] test test_etag_weak_constructor ... ok [INFO] [stdout] test test_format_http_date_ends_with_gmt ... ok [INFO] [stdout] test test_etag_roundtrip_strong ... ok [INFO] [stdout] test test_policy_public_no_stale ... ok [INFO] [stdout] test test_etag_from_bytes_empty_input ... ok [INFO] [stdout] test test_etag_parse_empty_value ... ok [INFO] [stdout] test test_policy_public_with_swr_only ... ok [INFO] [stdout] test test_static_asset_immutable ... ok [INFO] [stdout] test test_tile_default_has_sie ... ok [INFO] [stdout] test test_static_asset_max_age_one_year ... ok [INFO] [stdout] test test_tile_strategy_zoom_13_short_ttl ... ok [INFO] [stdout] test test_tile_strategy_zoom_16_short_ttl ... ok [INFO] [stdout] test test_tile_strategy_zoom_17_no_cache ... ok [INFO] [stdout] test test_tile_strategy_zoom_22_no_cache ... ok [INFO] [stdout] test test_tile_strategy_zoom_25_fallback_no_cache ... ok [INFO] [stdout] test test_tile_strategy_zoom_8_medium_ttl ... ok [INFO] [stdout] test test_tile_strategy_zoom_7_long_ttl ... ok [INFO] [stdout] test test_vary_empty ... ok [INFO] [stdout] test test_vary_origin_and_encoding_has_encoding ... ok [INFO] [stdout] test test_vary_origin_and_encoding_has_origin ... ok [INFO] [stdout] test test_vary_single_field ... ok [INFO] [stdout] test test_tile_default_has_swr ... ok [INFO] [stdout] test test_tile_strategy_zoom_0_long_ttl ... ok [INFO] [stdout] test test_tile_strategy_headers_for_tile_has_vary ... ok [INFO] [stdout] test test_tile_strategy_zoom_12_medium_ttl ... ok [INFO] [stdout] test test_vary_accept_encoding ... ok [INFO] [stdout] test test_vary_add_builder_multiple ... ok [INFO] [stdout] test test_etag_from_bytes_deterministic ... ok [INFO] [stdout] test test_tile_strategy_headers_etag_differs_by_data ... ok [INFO] [stdout] test test_policy_public_with_sie_only ... ok [INFO] [stdout] test test_policy_private_zero ... ok [INFO] [stdout] test test_tile_strategy_headers_for_tile_has_etag ... ok [INFO] [stdout] test test_tile_default_contains_public ... ok [INFO] [stdout] test test_tile_default_has_max_age_3600 ... ok [INFO] [stdout] test test_policy_private ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 74 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/ogc_features_test.rs (/opt/rustwide/target/release/build/oxigeo-services/7a3407f6c4f8fa8b/out/ogc_features_test-7a3407f6c4f8fa8b) [INFO] [stdout] [INFO] [stdout] running 92 tests [INFO] [stdout] test ext_add_and_get_collection ... ok [INFO] [stdout] test ext_collection_crs_list_part2 ... ok [INFO] [stdout] test ext_conformance_core_contains_html ... ok [INFO] [stdout] test ext_cql_and ... ok [INFO] [stdout] test ext_conformance_core_contains_core_uri ... ok [INFO] [stdout] test ext_cql_like ... ok [INFO] [stdout] test ext_cql_lt ... ok [INFO] [stdout] test ext_collection_default_item_type_feature ... ok [INFO] [stdout] test ext_cql_between ... ok [INFO] [stdout] test ext_cql_not ... ok [INFO] [stdout] test ext_conformance_with_crs_has_five_uris ... ok [INFO] [stdout] test ext_cql_eq_string ... ok [INFO] [stdout] test ext_datetime_closed_interval ... ok [INFO] [stdout] test ext_conformance_core_contains_oas30 ... ok [INFO] [stdout] test ext_cql_or ... ok [INFO] [stdout] test ext_collection_storage_crs ... ok [INFO] [stdout] test ext_conformance_core_contains_geojson ... ok [INFO] [stdout] test ext_conformance_core_has_four_uris ... ok [INFO] [stdout] test ext_crs84_bbox_identity ... ok [INFO] [stdout] test ext_epsg3857_inverse_london ... ok [INFO] [stdout] test ext_epsg4258_bbox_identity ... ok [INFO] [stdout] test ext_epsg4326_bbox_identity ... ok [INFO] [stdout] test ext_conformance_with_crs_contains_crs_uri ... ok [INFO] [stdout] test ext_err_invalid_bbox_msg ... ok [INFO] [stdout] test ext_eval_and_both_true ... ok [INFO] [stdout] test ext_err_serde_from_conversion ... ok [INFO] [stdout] test ext_err_collection_not_found_msg ... ok [INFO] [stdout] test ext_cql_gte ... ok [INFO] [stdout] test ext_cql_lte ... ok [INFO] [stdout] test ext_eval_between_boundary_high ... ok [INFO] [stdout] test ext_epsg3857_origin_maps_to_zero ... ok [INFO] [stdout] test ext_datetime_instant ... ok [INFO] [stdout] test ext_datetime_open_end_interval ... ok [INFO] [stdout] test ext_eval_like_wildcard_match ... ok [INFO] [stdout] test ext_eval_between_boundary_low ... ok [INFO] [stdout] test ext_eval_gt_match ... ok [INFO] [stdout] test ext_cql_gt ... ok [INFO] [stdout] test ext_datetime_open_start_interval ... ok [INFO] [stdout] test ext_datetime_empty_string_is_error ... ok [INFO] [stdout] test ext_eval_eq_no_match ... ok [INFO] [stdout] test ext_err_invalid_crs_msg ... ok [INFO] [stdout] test ext_err_limit_exceeded_msg ... ok [INFO] [stdout] test ext_eval_not_false_becomes_true ... ok [INFO] [stdout] test ext_err_invalid_datetime_msg ... ok [INFO] [stdout] test ext_eval_between_match ... ok [INFO] [stdout] test ext_eval_and_second_false ... ok [INFO] [stdout] test ext_eval_between_out_of_range ... ok [INFO] [stdout] test ext_eval_eq_match ... ok [INFO] [stdout] test ext_eval_like_no_match ... ok [INFO] [stdout] test ext_items_limit_exceeded_error ... ok [INFO] [stdout] test ext_get_missing_collection_none ... ok [INFO] [stdout] test ext_items_collection_not_found_error ... ok [INFO] [stdout] test ext_items_limit_slices_features ... ok [INFO] [stdout] test ext_eval_or_both_false ... ok [INFO] [stdout] test ext_extent_with_spatial_and_temporal ... ok [INFO] [stdout] test ext_items_next_link_present_when_more ... ok [INFO] [stdout] test ext_fc_number_matched_camel_case ... ok [INFO] [stdout] test ext_feature_type_key ... ok [INFO] [stdout] test ext_feature_string_id_serialises_as_string ... ok [INFO] [stdout] test ext_eval_lt_match ... ok [INFO] [stdout] test ext_eval_not_true_becomes_false ... ok [INFO] [stdout] test ext_feature_null_geometry ... ok [INFO] [stdout] test ext_items_prev_link_on_page_2 ... ok [INFO] [stdout] test ext_eval_or_first_true ... ok [INFO] [stdout] test ext_fc_type_key_is_type_not_type_underscore ... ok [INFO] [stdout] test ext_items_number_matched_override ... ok [INFO] [stdout] test ext_items_number_returned_exact ... ok [INFO] [stdout] test ext_items_timestamp_is_set ... ok [INFO] [stdout] test ext_landing_page_conformance_link ... ok [INFO] [stdout] test ext_extent_spatial_only_no_temporal_key ... ok [INFO] [stdout] test ext_landing_page_four_links ... ok [INFO] [stdout] test ext_fc_deserialise_geojson ... ok [INFO] [stdout] test ext_feature_integer_id_serialises_as_number ... ok [INFO] [stdout] test ext_landing_page_self_link ... ok [INFO] [stdout] test ext_items_no_next_link_on_last_page ... ok [INFO] [stdout] test ext_landing_page_service_desc_link ... ok [INFO] [stdout] test ext_items_no_prev_on_page_1 ... ok [INFO] [stdout] test ext_landing_page_data_link ... ok [INFO] [stdout] test ext_list_collections_self_link ... ok [INFO] [stdout] test ext_landing_page_title ... ok [INFO] [stdout] test ext_query_custom_limit ... ok [INFO] [stdout] test ext_link_title_present_when_set ... ok [INFO] [stdout] test ext_link_optional_fields_absent_when_none ... ok [INFO] [stdout] test ext_link_type_key_not_type_underscore ... ok [INFO] [stdout] test ext_query_bbox_field ... ok [INFO] [stdout] test ext_list_collections_count ... ok [INFO] [stdout] test ext_query_default_limit_10 ... ok [INFO] [stdout] test ext_unknown_crs_error ... ok [INFO] [stdout] test ext_server_conformance_includes_crs ... ok [INFO] [stdout] test ext_supported_crs_uris_includes_all_six ... ok [INFO] [stdout] test ext_query_default_offset_0 ... ok [INFO] [stdout] test ext_query_filter_lang_cql2text ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 92 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/services_test.rs (/opt/rustwide/target/release/build/oxigeo-services/e2e4fcc8389ce55f/out/services_test-e2e4fcc8389ce55f) [INFO] [stdout] [INFO] [stdout] running 6 tests [INFO] [stdout] test test_error_types ... ok [INFO] [stdout] test test_csw_state_creation ... ok [INFO] [stdout] test test_wcs_state_creation ... ok [INFO] [stdout] test test_wfs_state_creation ... ok [INFO] [stderr] Running tests/style_test.rs (/opt/rustwide/target/release/build/oxigeo-services/e9f31496213e392f/out/style_test-e9f31496213e392f) [INFO] [stdout] test test_wps_state_creation ... ok [INFO] [stdout] test test_version ... 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 82 tests [INFO] [stdout] test test_color_parse_hex3 ... ok [INFO] [stdout] test test_color_parse_rgb_with_spaces ... ok [INFO] [stdout] test test_color_parse_hex6 ... ok [INFO] [stdout] test test_color_parse_hex6_uppercase ... ok [INFO] [stdout] test test_eval_zoom_f64_exponential_interpolation ... ok [INFO] [stdout] test test_eval_zoom_f64_linear_interpolation ... ok [INFO] [stdout] test test_color_parse_rgba ... ok [INFO] [stdout] test test_eval_zoom_f64_linear_clamp_below ... ok [INFO] [stdout] test test_eval_zoom_f64_linear_clamp_above ... ok [INFO] [stdout] test test_eval_zoom_color_literal ... ok [INFO] [stdout] test test_color_parse_rgb ... ok [INFO] [stdout] test test_color_parse_invalid_format ... ok [INFO] [stdout] test test_color_parse_rgba_wrong_component_count ... ok [INFO] [stdout] test test_eval_zoom_f64_literal ... ok [INFO] [stdout] test test_color_to_css_format ... ok [INFO] [stdout] test test_color_parse_rgb_wrong_component_count ... ok [INFO] [stdout] test test_color_to_css_roundtrip_hex ... ok [INFO] [stdout] test test_color_to_css_roundtrip_rgba ... ok [INFO] [stdout] test test_color_parse_invalid_hex ... ok [INFO] [stdout] test test_filter_all_fails_on_one ... ok [INFO] [stdout] test test_eval_zoom_f64_zoom_expression ... ok [INFO] [stdout] test test_filter_in_no_match ... ok [INFO] [stdout] test test_filter_gt ... ok [INFO] [stdout] test test_filter_gte ... ok [INFO] [stdout] test test_filter_lt ... ok [INFO] [stdout] test test_filter_lte ... ok [INFO] [stdout] test test_eval_zoom_f64_step_expression ... ok [INFO] [stdout] test test_filter_geometry_type_passes_by_default ... ok [INFO] [stdout] test test_filter_not_has ... ok [INFO] [stdout] test test_layer_type_serde_background ... ok [INFO] [stdout] test test_layer_type_serde_fill ... ok [INFO] [stdout] test test_filter_ne_match ... ok [INFO] [stdout] test test_filter_ne_no_match ... ok [INFO] [stdout] test test_filter_none_fails_when_one_matches ... ok [INFO] [stdout] test test_filter_none_passes_when_none_match ... ok [INFO] [stdout] test test_layer_type_serde_raster ... ok [INFO] [stdout] test test_light_anchor_serde_map ... ok [INFO] [stdout] test test_line_cap_default ... ok [INFO] [stdout] test test_line_cap_round ... ok [INFO] [stdout] test test_line_cap_square ... ok [INFO] [stdout] test test_line_join_miter ... ok [INFO] [stdout] test test_paint_background_color_absent ... ok [INFO] [stdout] test test_paint_fill_opacity_literal ... ok [INFO] [stdout] test test_paint_line_width_literal ... ok [INFO] [stdout] test test_source_geojson_serde ... ok [INFO] [stdout] test test_source_raster_dem_default_encoding ... ok [INFO] [stdout] test test_layer_type_serde_hillshade ... ok [INFO] [stdout] test test_layer_type_serde_line ... ok [INFO] [stdout] test test_source_raster_dem_terrarium_encoding ... ok [INFO] [stdout] test test_filter_all_passes ... ok [INFO] [stdout] test test_filter_has_present ... ok [INFO] [stdout] test test_color_parse_rgba_fully_opaque ... ok [INFO] [stdout] test test_filter_eq_no_match ... ok [INFO] [stdout] test test_style_spec_json_roundtrip_minimal ... ok [INFO] [stdout] test test_layer_type_serde_symbol ... ok [INFO] [stdout] test test_line_join_default ... ok [INFO] [stdout] test test_source_raster_serde ... ok [INFO] [stdout] test test_light_anchor_default_viewport ... ok [INFO] [stdout] test test_filter_has_absent ... ok [INFO] [stdout] test test_symbol_placement_line_center ... ok [INFO] [stdout] test test_validator_background_no_source_is_valid ... ok [INFO] [stdout] test test_color_parse_rgba_fully_transparent ... ok [INFO] [stdout] test test_validator_background_with_source ... ok [INFO] [stdout] test test_filter_any_none_match ... ok [INFO] [stdout] test test_source_vector_serde ... ok [INFO] [stdout] test test_filter_eq_match ... ok [INFO] [stdout] test test_filter_in_match ... ok [INFO] [stdout] test test_filter_any_at_least_one ... ok [INFO] [stdout] test test_style_spec_json_roundtrip_with_layers ... ok [INFO] [stdout] test test_symbol_placement_default ... ok [INFO] [stdout] test test_symbol_placement_line ... ok [INFO] [stdout] test test_validator_invalid_version ... ok [INFO] [stdout] test test_visibility_none ... ok [INFO] [stdout] test test_validator_circle_without_source ... ok [INFO] [stdout] test test_validator_valid_style ... ok [INFO] [stdout] test test_validator_duplicate_layer_ids ... ok [INFO] [stdout] test test_validator_symbol_without_source ... ok [INFO] [stdout] test test_validator_unknown_source_ref ... ok [INFO] [stdout] test test_validator_line_without_source ... ok [INFO] [stdout] test test_visibility_default ... ok [INFO] [stdout] test test_validator_fill_without_source ... ok [INFO] [stdout] test test_validator_zoom_range_violation ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 82 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Running tests/tile_cache_test.rs (/opt/rustwide/target/release/build/oxigeo-services/fddec4294558e761/out/tile_cache_test-fddec4294558e761) [INFO] [stdout] [INFO] [stdout] running 63 tests [INFO] [stdout] test test_cached_tile_etag_deterministic ... ok [INFO] [stdout] test test_cached_tile_etag_format ... ok [INFO] [stdout] test test_cached_tile_not_stale ... ok [INFO] [stdout] test test_cached_tile_stale ... ok [INFO] [stdout] test test_cached_tile_stale_at_boundary ... ok [INFO] [stdout] test test_cached_tile_new_fields ... ok [INFO] [stdout] test test_etag_check_none_match_wildcard ... ok [INFO] [stdout] test test_prefetcher_neighbors_radius1_count ... ok [INFO] [stdout] test test_prefetcher_ring_at_zoom ... ok [INFO] [stdout] test test_push_hint_nopush_flag ... ok [INFO] [stdout] test test_etag_parse_etag_list_multiple ... ok [INFO] [stdout] test test_etag_is_weak_false ... ok [INFO] [stdout] test test_etag_is_weak_true ... ok [INFO] [stdout] test test_push_hint_to_link_header_preload ... ok [INFO] [stdout] test test_etag_check_match_found ... ok [INFO] [stdout] test test_push_hint_preload_tile_png ... ok [INFO] [stdout] test test_cached_tile_etag_changes ... ok [INFO] [stdout] test test_push_hint_to_link_header_with_as ... ok [INFO] [stdout] test test_etag_check_none_match_match ... ok [INFO] [stdout] test test_push_hint_preload_tile_mvt ... ok [INFO] [stdout] test test_etag_check_none_match_no_match ... ok [INFO] [stdout] test test_push_policy_generate_hints_count ... ok [INFO] [stdout] test test_push_hint_to_link_header_with_type ... ok [INFO] [stdout] test test_etag_parse_etag_list_single ... ok [INFO] [stdout] test test_tile_cache_get_updates_accessed_at ... ok [INFO] [stdout] test test_etag_check_match_wildcard ... ok [INFO] [stdout] test test_push_policy_to_link_header_value ... ok [INFO] [stdout] test test_tile_cache_evict_lru_on_max_entries ... ok [INFO] [stdout] test test_tile_cache_invalidate_existing ... ok [INFO] [stdout] test test_tile_cache_invalidate_layer ... ok [INFO] [stdout] test test_tile_cache_invalidate_missing ... ok [INFO] [stdout] test test_tile_cache_invalidate_reduces_bytes ... ok [INFO] [stdout] test test_tile_cache_evict_on_byte_budget ... ok [INFO] [stdout] test test_tile_cache_get_updates_access ... ok [INFO] [stdout] test test_push_policy_parse_tile_url_roundtrip ... ok [INFO] [stdout] test test_push_policy_parse_tile_url_invalid ... ok [INFO] [stdout] test test_tile_key_content_type_webp ... ok [INFO] [stdout] test test_tile_cache_stats ... ok [INFO] [stdout] test test_tile_key_content_type_json ... ok [INFO] [stdout] test test_tile_key_content_type_png ... ok [INFO] [stdout] test test_tile_cache_invalidate_zoom_range ... ok [INFO] [stdout] test test_tile_cache_miss ... ok [INFO] [stdout] test test_prefetcher_radius2_more_neighbors ... ok [INFO] [stdout] test test_tile_key_content_type_mvt ... ok [INFO] [stdout] test test_tile_key_content_type_jpeg ... ok [INFO] [stdout] test test_tile_server_cache_stats ... ok [INFO] [stdout] test test_tile_server_cache_then_serve_ok ... ok [INFO] [stdout] test test_tile_key_path_string_mvt ... ok [INFO] [stdout] test test_tile_key_equality ... ok [INFO] [stdout] test test_tile_key_hash_in_hashmap ... ok [INFO] [stdout] test test_tile_key_path_string_png ... ok [INFO] [stdout] test test_tile_key_path_string_jpeg ... ok [INFO] [stdout] test test_prefetcher_neighbors_boundary_x0_y0 ... ok [INFO] [stdout] test test_tile_server_serve_headers_present ... ok [INFO] [stdout] test test_tile_server_serve_miss ... ok [INFO] [stdout] test test_prefetcher_neighbors_no_self ... ok [INFO] [stdout] test test_tile_cache_hit_rate_calculation ... ok [INFO] [stdout] test test_tile_server_serve_not_modified ... ok [INFO] [stdout] test test_tile_cache_hit_rate_zero ... ok [INFO] [stdout] test test_tile_cache_insert_then_hit ... ok [INFO] [stdout] test test_tile_server_serve_push_hints ... ok [INFO] [stdout] test test_tile_key_path_string_json ... ok [INFO] [stdout] test test_tile_key_path_string_webp ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 63 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/wfs_extended_test.rs (/opt/rustwide/target/release/build/oxigeo-services/5e222cd5f056d825/out/wfs_extended_test-5e222cd5f056d825) [INFO] [stdout] [INFO] [stdout] running 35 tests [INFO] [stdout] test test_bbox_filter_from_valid_string ... ok [INFO] [stdout] test test_cql_filter_for_sqlite ... ok [INFO] [stdout] test test_bbox_filter_from_valid_string_with_crs ... ok [INFO] [stdout] test test_cql_filter_and_condition ... ok [INFO] [stdout] test test_bbox_filter_global_extent ... ok [INFO] [stdout] test test_bbox_filter_empty_string ... ok [INFO] [stdout] test test_bbox_filter_non_numeric_values ... ok [INFO] [stdout] test test_cql_filter_for_mysql ... ok [INFO] [stdout] test test_bbox_filter_insufficient_parts ... ok [INFO] [stdout] test test_cql_filter_to_sql_greater_than ... ok [INFO] [stdout] test test_cql_filter_to_sql_less_than ... ok [INFO] [stdout] test test_database_source_qualified_table_name_no_schema ... ok [INFO] [stdout] test test_database_source_sqlite_type ... ok [INFO] [stdout] test test_database_source_with_id_column ... ok [INFO] [stdout] test test_database_source_with_schema ... ok [INFO] [stdout] test test_database_source_with_srid ... ok [INFO] [stdout] test test_database_feature_counter_custom_config ... ok [INFO] [stdout] test test_database_source_builder_chain ... ok [INFO] [stdout] test test_database_source_generic_type ... ok [INFO] [stdout] test test_database_source_qualified_name_with_schema_and_table ... ok [INFO] [stdout] test test_database_source_without_count_cache ... ok [INFO] [stdout] test test_wfs_enable_transactions ... ok [INFO] [stdout] test test_wfs_feature_type_not_found ... ok [INFO] [stdout] test test_database_source_with_geometry_column ... ok [INFO] [stdout] test test_cql_filter_to_sql_equality ... ok [INFO] [stdout] test test_database_source_geometry_column_default ... ok [INFO] [stdout] test test_database_source_connection_string ... ok [INFO] [stdout] test test_wfs_transactions_disabled_by_default ... ok [INFO] [stdout] test test_database_feature_counter_cache_clear ... ok [INFO] [stdout] test test_wfs_service_info_with_multiple_versions ... ok [INFO] [stdout] test test_wfs_state_with_geojson_features ... ok [INFO] [stdout] test test_wfs_multiple_feature_types ... ok [INFO] [stdout] test test_database_source_mysql_type ... ok [INFO] [stdout] test test_database_feature_counter_creation ... ok [INFO] [stdout] test test_cql_filter_creation ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 35 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/wms_extended_test.rs (/opt/rustwide/target/release/build/oxigeo-services/b795b9577296182d/out/wms_extended_test-b795b9577296182d) [INFO] [stdout] [INFO] [stdout] running 21 tests [INFO] [stdout] test test_service_error_invalid_crs_message ... ok [INFO] [stdout] test test_service_error_not_found_message ... ok [INFO] [stdout] test test_service_error_unsupported_operation_message ... ok [INFO] [stdout] test test_service_error_variants ... ok [INFO] [stdout] test test_wfs_feature_source_variants ... ok [INFO] [stdout] test test_wfs_feature_type_not_found ... ok [INFO] [stdout] test test_wcs_coverage_info_fields ... ok [INFO] [stdout] test test_wcs_add_multiple_coverages ... ok [INFO] [stdout] test test_wps_builtin_processes_registered ... ok [INFO] [stdout] test test_wfs_multiple_feature_types ... ok [INFO] [stdout] test test_wps_literal_data_type ... ok [INFO] [stdout] test test_wps_process_inputs_outputs_structure ... ok [INFO] [stdout] test test_wps_process_outputs_empty_by_default ... ok [INFO] [stdout] test test_wps_input_description_serialization ... ok [INFO] [stdout] test test_wcs_coverage_not_found ... ok [INFO] [stdout] test test_wps_process_not_found ... ok [INFO] [stdout] test test_wcs_service_info_fields ... ok [INFO] [stdout] test test_wps_process_inputs_empty_by_default ... ok [INFO] [stdout] test test_wfs_transactions_disabled_by_default ... ok [INFO] [stdout] test test_wps_output_description_serialization ... ok [INFO] [stdout] test test_wfs_enable_transactions ... ok [INFO] [stderr] Doc-tests oxigeo_services [INFO] [stdout] [INFO] [stdout] test result: ok. 21 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 src/wfs/mod.rs - wfs (line 16) - compile ... ok [INFO] [stdout] test src/wcs/mod.rs - wcs (line 16) - compile ... ok [INFO] [stdout] test src/wps/mod.rs - wps (line 14) - compile ... 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] all doctests ran in 0.47s; merged doctests compilation took 0.46s [INFO] running `Command { std: "docker" "inspect" "6e847dea20518a7f070cb37927ffa7dc29fa4cbeff1a9002708a6e5f735ee24c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6e847dea20518a7f070cb37927ffa7dc29fa4cbeff1a9002708a6e5f735ee24c", kill_on_drop: false }` [INFO] [stdout] 6e847dea20518a7f070cb37927ffa7dc29fa4cbeff1a9002708a6e5f735ee24c