[INFO] fetching crate restate-sdk-shared-core 0.9.0... [INFO] testing restate-sdk-shared-core-0.9.0 against master#562dee4820c458d823175268e41601d4c060588a for pr-154210-2 [INFO] extracting crate restate-sdk-shared-core 0.9.0 into /workspace/builds/worker-1-tc1/source [INFO] started tweaking crates.io crate restate-sdk-shared-core 0.9.0 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate restate-sdk-shared-core 0.9.0 [INFO] tweaked toml for crates.io crate restate-sdk-shared-core 0.9.0 written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate restate-sdk-shared-core 0.9.0 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 restate-sdk-shared-core 0.9.0 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded test-log v0.2.19 [INFO] [stderr] Downloaded hybrid-array v0.4.7 [INFO] [stderr] Downloaded crypto-common v0.2.0 [INFO] [stderr] Downloaded digest v0.11.0 [INFO] [stderr] Downloaded googletest_macro v0.11.0 [INFO] [stderr] Downloaded assert2-macros v0.4.0 [INFO] [stderr] Downloaded block-buffer v0.11.0 [INFO] [stderr] Downloaded test-log-macros v0.2.19 [INFO] [stderr] Downloaded sha2 v0.11.0-rc.5 [INFO] [stderr] Downloaded googletest v0.11.0 [INFO] [stderr] Downloaded assert2 v0.4.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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] 74bab8b20f0364a6a20b0332b7b51c030ba599fbacb15a7e018bd5564ded1053 [INFO] running `Command { std: "docker" "start" "-a" "74bab8b20f0364a6a20b0332b7b51c030ba599fbacb15a7e018bd5564ded1053", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "74bab8b20f0364a6a20b0332b7b51c030ba599fbacb15a7e018bd5564ded1053", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "74bab8b20f0364a6a20b0332b7b51c030ba599fbacb15a7e018bd5564ded1053", kill_on_drop: false }` [INFO] [stdout] 74bab8b20f0364a6a20b0332b7b51c030ba599fbacb15a7e018bd5564ded1053 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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] a88ba2a1fbeeba8240a23bdb0cf1a97fafd1ee48719aecc34213e6ae71ec4079 [INFO] running `Command { std: "docker" "start" "-a" "a88ba2a1fbeeba8240a23bdb0cf1a97fafd1ee48719aecc34213e6ae71ec4079", kill_on_drop: false }` [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling anyhow v1.0.101 [INFO] [stderr] Compiling syn v2.0.116 [INFO] [stderr] Compiling pastey v0.2.1 [INFO] [stderr] Compiling bytes-utils v0.1.4 [INFO] [stderr] Compiling itertools v0.14.0 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling prost-derive v0.14.3 [INFO] [stderr] Compiling strum_macros v0.27.2 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling prost v0.14.3 [INFO] [stderr] Compiling strum v0.27.2 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling restate-sdk-shared-core v0.9.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 26.28s [INFO] running `Command { std: "docker" "inspect" "a88ba2a1fbeeba8240a23bdb0cf1a97fafd1ee48719aecc34213e6ae71ec4079", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a88ba2a1fbeeba8240a23bdb0cf1a97fafd1ee48719aecc34213e6ae71ec4079", kill_on_drop: false }` [INFO] [stdout] a88ba2a1fbeeba8240a23bdb0cf1a97fafd1ee48719aecc34213e6ae71ec4079 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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] 89b247a3035132c9e5f73228396b346a6c99ac69503fbcac662687f174d5df85 [INFO] running `Command { std: "docker" "start" "-a" "89b247a3035132c9e5f73228396b346a6c99ac69503fbcac662687f174d5df85", kill_on_drop: false }` [INFO] [stderr] Compiling semver v1.0.27 [INFO] [stderr] Compiling libc v0.2.182 [INFO] [stderr] Compiling generic-array v0.14.9 [INFO] [stderr] Compiling quote v1.0.44 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Compiling rustix v1.1.3 [INFO] [stderr] Compiling syn v2.0.116 [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Compiling winnow v0.7.14 [INFO] [stderr] Compiling der v0.7.10 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling indexmap v2.13.0 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Compiling toml_datetime v0.7.5+spec-1.1.0 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling spki v0.7.3 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling rstest_macros v0.26.1 [INFO] [stderr] Compiling assert2-macros v0.4.0 [INFO] [stderr] Compiling curve25519-dalek v4.1.3 [INFO] [stderr] Compiling prettyplease v0.2.37 [INFO] [stderr] Compiling hashbrown v0.15.5 [INFO] [stderr] Compiling pkcs8 v0.10.2 [INFO] [stderr] Compiling getrandom v0.4.1 [INFO] [stderr] Compiling toml_parser v1.0.9+spec-1.1.0 [INFO] [stderr] Compiling futures-core v0.3.32 [INFO] [stderr] Compiling signature v2.2.0 [INFO] [stderr] Compiling toml_edit v0.23.10+spec-1.0.0 [INFO] [stderr] Compiling glob v0.3.3 [INFO] [stderr] Compiling proc-macro-crate v3.4.0 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling relative-path v1.9.3 [INFO] [stderr] Compiling petgraph v0.8.3 [INFO] [stderr] Compiling ed25519 v2.2.3 [INFO] [stderr] Compiling tempfile v3.25.0 [INFO] [stderr] Compiling terminal_size v0.4.3 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling itertools v0.14.0 [INFO] [stderr] Compiling multimap v0.10.1 [INFO] [stderr] Compiling unicode-width v0.2.2 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling prost-derive v0.14.3 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling curve25519-dalek-derive v0.1.1 [INFO] [stderr] Compiling strum_macros v0.27.2 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling futures-macro v0.3.32 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling test-log-macros v0.2.19 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling googletest_macro v0.11.0 [INFO] [stderr] Compiling tracing-subscriber v0.3.22 [INFO] [stderr] Compiling prost v0.14.3 [INFO] [stderr] Compiling assert2 v0.4.0 [INFO] [stderr] Compiling prost-types v0.14.3 [INFO] [stderr] Compiling ed25519-dalek v2.2.0 [INFO] [stderr] Compiling strum v0.27.2 [INFO] [stderr] Compiling googletest v0.11.0 [INFO] [stderr] Compiling prost-build v0.14.3 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling test-log v0.2.19 [INFO] [stderr] Compiling restate-sdk-shared-core v0.9.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling rstest v0.26.1 [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 35s [INFO] running `Command { std: "docker" "inspect" "89b247a3035132c9e5f73228396b346a6c99ac69503fbcac662687f174d5df85", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "89b247a3035132c9e5f73228396b346a6c99ac69503fbcac662687f174d5df85", kill_on_drop: false }` [INFO] [stdout] 89b247a3035132c9e5f73228396b346a6c99ac69503fbcac662687f174d5df85 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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] 0d80f361c19fc7f4a8ad5fdbd65db63a6ec70f6675097cea05c479921377fcb8 [INFO] running `Command { std: "docker" "start" "-a" "0d80f361c19fc7f4a8ad5fdbd65db63a6ec70f6675097cea05c479921377fcb8", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.24s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/restate_sdk_shared_core-e469160a9804d24e) [INFO] [stdout] [INFO] [stdout] running 114 tests [INFO] [stdout] test error::tests::test_message_type_to_command_type_conversion ... ok [INFO] [stdout] test retries::tests::test_exponential_policy ... ok [INFO] [stdout] test service_protocol::header::tests::custom_entry ... ok [INFO] [stdout] test service_protocol::encoding::tests::fill_decoder_with_several_messages ... ok [INFO] [stdout] test tests::async_result::dont_await_call ... ok [INFO] [stdout] test tests::async_result::combinators::replay_with_combinator_and_entry_afterwards ... ok [INFO] [stdout] test tests::async_result::do_progress::await_twice_the_same_handle ... ok [INFO] [stdout] test tests::async_result::reverse_await_order::a1_and_a2_completed_later ... ok [INFO] [stdout] test tests::async_result::reverse_await_order::a2_and_a1_completed_later ... ok [INFO] [stdout] test service_protocol::header::tests::get_state_empty ... ok [INFO] [stdout] test service_protocol::header::tests::get_state_with_length ... ok [INFO] [stdout] test tests::async_result::reverse_await_order::none_completed ... ok [INFO] [stdout] test tests::calls::send_then_get_invocation_id_then_cancel_invocation ... ok [INFO] [stdout] test tests::async_result::reverse_await_order::only_a2_completed ... ok [INFO] [stdout] test tests::calls::call_then_get_invocation_id_then_cancel_invocation ... ok [INFO] [stdout] test tests::failures::explicit_error_notification ... ok [INFO] [stdout] test tests::async_result::dont_await_call_dont_notify_input_closed ... ok [INFO] [stdout] test tests::failures::got_closed_stream_before_end_of_replay ... ok [INFO] [stdout] test tests::failures::journal_mismatch::add_await_awakeable_after_progress_was_made ... ok [INFO] [stdout] test service_protocol::encoding::tests::fill_decoder_with_partial_body ... ok [INFO] [stdout] test tests::failures::journal_mismatch::call_with_unstable_payload ... ok [INFO] [stdout] test tests::failures::journal_mismatch::add_await_sleep_after_progress_was_made ... ok [INFO] [stdout] test tests::failures::journal_mismatch::add_await_run_after_progress_was_made ... ok [INFO] [stdout] test tests::failures::journal_mismatch::complete_awakeable_with_unstable_payload ... ok [INFO] [stdout] test tests::failures::journal_mismatch::complete_promise_with_unstable_payload ... ok [INFO] [stdout] test tests::async_result::reverse_await_order::only_a1_completed ... ok [INFO] [stdout] test service_protocol::encoding::tests::fill_decoder_with_partial_header ... ok [INFO] [stdout] test tests::failures::journal_mismatch::disable_non_deterministic_payload_checks_on_vm ... ok [INFO] [stdout] test tests::failures::journal_mismatch::get_eager_state_with_unstable_payload ... ok [INFO] [stdout] test tests::failures::journal_mismatch::write_output_with_unstable_payload ... ok [INFO] [stdout] test tests::failures::journal_mismatch::get_lazy_state_mismatch ... ok [INFO] [stdout] test tests::failures::journal_mismatch::one_way_call_mismatch ... ok [INFO] [stdout] test tests::failures::journal_mismatch::set_state_mismatch ... ok [INFO] [stdout] test tests::failures::journal_mismatch::one_way_call_with_unstable_payload ... ok [INFO] [stdout] test tests::failures::journal_mismatch::set_state_with_unstable_payload ... ok [INFO] [stdout] test tests::implicit_cancellation::call_then_cancel ... ok [INFO] [stdout] test tests::implicit_cancellation::call_then_cancel_without_invocation_id ... ok [INFO] [stdout] test tests::implicit_cancellation::disabled_implicit_cancellation ... ok [INFO] [stdout] test tests::implicit_cancellation::call_then_get_invocation_id_then_cancel ... ok [INFO] [stdout] test tests::implicit_cancellation::replay_while_cancelling ... ok [INFO] [stdout] test tests::implicit_cancellation::call_then_then_cancel_disabling_children_cancellation ... ok [INFO] [stdout] test tests::input_output::echo ... ok [INFO] [stdout] test tests::input_output::replay_output_too ... ok [INFO] [stdout] test tests::instantiate_core_vm_minimum_supported_version ... ok [INFO] [stdout] test tests::promise::complete_promise::reject_promise_succeeds ... ok [INFO] [stdout] test tests::promise::complete_promise::reject_promise_fails ... ok [INFO] [stdout] test tests::promise::complete_promise::resolve_promise_fails ... ok [INFO] [stdout] test tests::run::enter_then_notify_error ... ok [INFO] [stdout] test tests::run::enter_then_notify_input_closed_then_propose_completion ... ok [INFO] [stdout] test tests::promise::get_promise::completed_with_success ... ok [INFO] [stdout] test tests::promise::complete_promise::resolve_promise_succeeds ... ok [INFO] [stdout] test tests::input_output::headers ... ok [INFO] [stdout] test tests::promise::peek_promise::completed_with_failure ... ok [INFO] [stdout] test tests::promise::get_promise::completed_with_failure ... ok [INFO] [stdout] test tests::promise::peek_promise::completed_with_null ... ok [INFO] [stdout] test tests::promise::peek_promise::completed_with_success ... ok [INFO] [stdout] test tests::run::enter_then_propose_completion_then_complete ... ok [INFO] [stdout] test tests::run::enter_then_propose_completion_then_complete_with_failure ... ok [INFO] [stdout] test tests::run::retry_policy::exit_with_retryable_error_retry_policy_exhausted_max_attempts ... ok [INFO] [stdout] test tests::run::enter_then_propose_completion_then_suspend ... ok [INFO] [stdout] test tests::run::retry_policy::exit_with_retryable_error_no_retry_policy ... ok [INFO] [stdout] test tests::run::replay_with_completion ... ok [INFO] [stdout] test tests::run::replay_without_completion ... ok [INFO] [stdout] test tests::run::replay_without_completion_with_any ... ok [INFO] [stdout] test tests::run::retry_policy::exit_with_retryable_error_retry_policy_duration ... ok [INFO] [stdout] test tests::run::retry_policy::exit_with_retryable_error_retry_policy_fixed ... ok [INFO] [stdout] test tests::run::retry_policy::retry_info_is_zero_when_entry_is_the_one_after_the_first_new_entry ... ok [INFO] [stdout] test tests::run::retry_policy::should_continue_retrying_with_retry_count_and_max_attempts::case_2 ... ok [INFO] [stdout] test tests::run::retry_policy::exit_with_retryable_error_retry_policy_exhausted_max_duration ... ok [INFO] [stdout] test tests::run::retry_policy::exit_with_retryable_error_retry_policy_exhausted_max_attempts_0 ... ok [INFO] [stdout] test tests::run::retry_policy::exit_with_retryable_error_retry_policy_none ... ok [INFO] [stdout] test tests::run::retry_policy::should_stop_retrying_with_retry_count_and_max_attempts::case_1 ... ok [INFO] [stdout] test tests::run::retry_policy::should_continue_retrying_with_retry_count_and_max_attempts::case_3 ... ok [INFO] [stdout] test tests::run::retry_policy::should_continue_retrying_with_retry_count_and_max_attempts::case_1 ... ok [INFO] [stdout] test tests::run::retry_policy::should_stop_retrying_with_retry_count_and_max_attempts::case_2 ... ok [INFO] [stdout] test tests::run::retry_policy::should_stop_retrying_with_retry_count_and_max_attempts::case_3 ... ok [INFO] [stdout] test tests::run::retry_policy::should_stop_retrying_with_retry_count_and_max_attempts::case_4 ... ok [INFO] [stdout] test tests::run::retry_policy::should_stop_retrying_with_retry_count_and_max_attempts::case_7 ... ok [INFO] [stdout] test tests::run::retry_policy::should_stop_retrying_with_retry_count_and_max_attempts::case_5 ... ok [INFO] [stdout] test tests::sleep::sleep_completed ... ok [INFO] [stdout] test tests::run::retry_policy::should_stop_retrying_with_retry_count_and_max_attempts::case_6 ... ok [INFO] [stdout] test tests::sleep::sleep_still_sleeping ... ok [INFO] [stdout] test tests::state::eager::consecutive_get_with_empty_run_with_replay_of_the_first_get ... ok [INFO] [stdout] test tests::sleep::sleep_suspends ... ok [INFO] [stdout] test tests::state::eager::consecutive_get_with_empty ... ok [INFO] [stdout] test tests::state::eager::get_and_clear_state_with_partial_state_on_the_first_get ... ok [INFO] [stdout] test tests::state::eager::get_and_clear_state_with_state_in_the_state_map ... ok [INFO] [stdout] test tests::state::eager::get_clear_all_with_partial_state_on_the_first_get ... ok [INFO] [stdout] test tests::state::eager::append_with_state_in_the_state_map ... ok [INFO] [stdout] test tests::state::eager::get_clear_all_with_state_in_the_state_map ... ok [INFO] [stdout] test tests::state::eager::get_empty_resume_with_partial_state ... ok [INFO] [stdout] test tests::state::eager::get_empty_with_complete_state ... ok [INFO] [stdout] test tests::state::eager::get_empty_with_partial_state ... ok [INFO] [stdout] test tests::state::eager::get_with_partial_state_without_the_state_entry ... ok [INFO] [stdout] test tests::state::eager::get_with_partial_state ... ok [INFO] [stdout] test tests::state::only_lazy_state::entry_already_completed ... ok [INFO] [stdout] test tests::state::only_lazy_state::entry_not_completed_on_replay ... ok [INFO] [stdout] test tests::state::only_lazy_state::entry_on_replay_completed_later ... ok [INFO] [stdout] test tests::run::retry_policy::exit_with_retryable_error_retry_policy_exhausted_max_attempts_1 ... ok [INFO] [stdout] test tests::state::eager::append_with_partial_state_on_the_first_get ... ok [INFO] [stdout] test tests::state::only_lazy_state::new_entry_completed_later ... ok [INFO] [stdout] test tests::state::eager::get_with_complete_state ... ok [INFO] [stdout] test tests::state::state_keys::entry_already_completed ... ok [INFO] [stdout] test tests::state::state_keys::new_entry_completed_later ... ok [INFO] [stdout] test tests::state::only_lazy_state::entry_already_completed_empty ... ok [INFO] [stdout] test tests::state::state_keys::new_entry_completed_with_eager_state ... ok [INFO] [stdout] test tests::state::only_lazy_state::new_entry ... ok [INFO] [stdout] test tests::suspensions::await_many_notifications ... ok [INFO] [stdout] test tests::suspensions::trigger_suspension_with_correct_awakeable ... ok [INFO] [stdout] test tests::take_output_on_newly_initialized_vm ... ok [INFO] [stdout] test tests::suspensions::when_notify_completion_then_notify_await_point_then_notify_input_closed_then_no_suspension ... ok [INFO] [stdout] test tests::suspensions::trigger_suspension_with_get_state ... ok [INFO] [stdout] test tests::state::state_keys::entry_on_replay_completed_later ... ok [INFO] [stdout] test tests::state::state_keys::new_entry ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 114 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stderr] Running tests/bootstrap.rs (/opt/rustwide/target/debug/deps/bootstrap-b32a917cf74cb0cc) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stderr] warning: Not a git repository. Use --no-index to compare two paths outside a working tree [INFO] [stderr] usage: git diff --no-index [] [INFO] [stderr] [INFO] [stderr] Diff output format options [INFO] [stderr] -p, --patch generate patch [INFO] [stderr] -s, --no-patch suppress diff output [INFO] [stderr] -u generate patch [INFO] [stderr] -U, --unified[=] generate diffs with lines context [INFO] [stderr] -W, --[no-]function-context [INFO] [stderr] generate diffs with lines context [INFO] [stderr] --raw generate the diff in raw format [INFO] [stderr] --patch-with-raw synonym for '-p --raw' [INFO] [stderr] --patch-with-stat synonym for '-p --stat' [INFO] [stderr] --numstat machine friendly --stat [INFO] [stderr] --shortstat output only the last line of --stat [INFO] [stderr] -X, --dirstat[=...] [INFO] [stderr] output the distribution of relative amount of changes for each sub-directory [INFO] [stderr] --cumulative synonym for --dirstat=cumulative [INFO] [stderr] --dirstat-by-file[=...] [INFO] [stderr] synonym for --dirstat=files,param1,param2... [INFO] [stderr] --check warn if changes introduce conflict markers or whitespace errors [INFO] [stderr] --summary condensed summary such as creations, renames and mode changes [INFO] [stderr] --name-only show only names of changed files [INFO] [stderr] --name-status show only names and status of changed files [INFO] [stderr] --stat[=[,[,]]] [INFO] [stderr] generate diffstat [INFO] [stderr] --stat-width generate diffstat with a given width [INFO] [stderr] --stat-name-width [INFO] [stderr] generate diffstat with a given name width [INFO] [stderr] --stat-graph-width [INFO] [stderr] generate diffstat with a given graph width [INFO] [stderr] --stat-count generate diffstat with limited lines [INFO] [stderr] --[no-]compact-summary [INFO] [stderr] generate compact summary in diffstat [INFO] [stderr] --binary output a binary diff that can be applied [INFO] [stderr] --[no-]full-index show full pre- and post-image object names on the "index" lines [INFO] [stderr] --[no-]color[=] show colored diff [INFO] [stderr] --ws-error-highlight [INFO] [stderr] highlight whitespace errors in the 'context', 'old' or 'new' lines in the diff [INFO] [stderr] -z do not munge pathnames and use NULs as output field terminators in --raw or --numstat [INFO] [stderr] --[no-]abbrev[=] use digits to display object names [INFO] [stderr] --src-prefix show the given source prefix instead of "a/" [INFO] [stderr] --dst-prefix show the given destination prefix instead of "b/" [INFO] [stderr] --line-prefix [INFO] [stderr] prepend an additional prefix to every line of output [INFO] [stderr] --no-prefix do not show any source or destination prefix [INFO] [stderr] --default-prefix use default prefixes a/ and b/ [INFO] [stderr] --inter-hunk-context [INFO] [stderr] show context between diff hunks up to the specified number of lines [INFO] [stderr] --output-indicator-new [INFO] [stderr] specify the character to indicate a new line instead of '+' [INFO] [stderr] --output-indicator-old [INFO] [stderr] specify the character to indicate an old line instead of '-' [INFO] [stderr] --output-indicator-context [INFO] [stderr] specify the character to indicate a context instead of ' ' [INFO] [stderr] [INFO] [stderr] Diff rename options [INFO] [stderr] -B, --break-rewrites[=[/]] [INFO] [stderr] break complete rewrite changes into pairs of delete and create [INFO] [stderr] -M, --find-renames[=] [INFO] [stderr] detect renames [INFO] [stderr] -D, --irreversible-delete [INFO] [stderr] omit the preimage for deletes [INFO] [stderr] -C, --find-copies[=] [INFO] [stderr] detect copies [INFO] [stderr] --[no-]find-copies-harder [INFO] [stderr] use unmodified files as source to find copies [INFO] [stderr] --no-renames disable rename detection [INFO] [stderr] --[no-]rename-empty use empty blobs as rename source [INFO] [stderr] --[no-]follow continue listing the history of a file beyond renames [INFO] [stderr] -l prevent rename/copy detection if the number of rename/copy targets exceeds given limit [INFO] [stderr] [INFO] [stderr] Diff algorithm options [INFO] [stderr] --minimal produce the smallest possible diff [INFO] [stderr] -w, --ignore-all-space [INFO] [stderr] ignore whitespace when comparing lines [INFO] [stderr] -b, --ignore-space-change [INFO] [stderr] ignore changes in amount of whitespace [INFO] [stderr] --ignore-space-at-eol ignore changes in whitespace at EOL [INFO] [stderr] --ignore-cr-at-eol ignore carrier-return at the end of line [INFO] [stderr] --ignore-blank-lines ignore changes whose lines are all blank [INFO] [stderr] -I, --[no-]ignore-matching-lines [INFO] [stderr] ignore changes whose all lines match [INFO] [stderr] --[no-]indent-heuristic [INFO] [stderr] heuristic to shift diff hunk boundaries for easy reading [INFO] [stderr] --patience generate diff using the "patience diff" algorithm [INFO] [stderr] --histogram generate diff using the "histogram diff" algorithm [INFO] [stderr] --diff-algorithm [INFO] [stderr] choose a diff algorithm [INFO] [stderr] --anchored generate diff using the "anchored diff" algorithm [INFO] [stderr] --word-diff[=] show word diff, using to delimit changed words [INFO] [stderr] --word-diff-regex [INFO] [stderr] use to decide what a word is [INFO] [stderr] --color-words[=] [INFO] [stderr] equivalent to --word-diff=color --word-diff-regex= [INFO] [stderr] --[no-]color-moved[=] [INFO] [stderr] moved lines of code are colored differently [INFO] [stderr] --[no-]color-moved-ws [INFO] [stderr] how white spaces are ignored in --color-moved [INFO] [stderr] [INFO] [stderr] Other diff options [INFO] [stderr] --[no-]relative[=] [INFO] [stderr] when run from subdir, exclude changes outside and show relative paths [INFO] [stderr] -a, --[no-]text treat all files as text [INFO] [stderr] -R swap two inputs, reverse the diff [INFO] [stderr] --[no-]exit-code exit with 1 if there were differences, 0 otherwise [INFO] [stderr] --[no-]quiet disable all output of the program [INFO] [stderr] --[no-]ext-diff allow an external diff helper to be executed [INFO] [stderr] --[no-]textconv run external text conversion filters when comparing binary files [INFO] [stderr] --ignore-submodules[=] [INFO] [stderr] ignore changes to submodules in the diff generation [INFO] [stderr] --submodule[=] [INFO] [stderr] specify how differences in submodules are shown [INFO] [stderr] --ita-invisible-in-index [INFO] [stderr] hide 'git add -N' entries from the index [INFO] [stderr] --ita-visible-in-index [INFO] [stderr] treat 'git add -N' entries as real in the index [INFO] [stderr] -S look for differences that change the number of occurrences of the specified string [INFO] [stderr] -G look for differences that change the number of occurrences of the specified regex [INFO] [stderr] --pickaxe-all show all changes in the changeset with -S or -G [INFO] [stderr] --pickaxe-regex treat in -S as extended POSIX regular expression [INFO] [stderr] -O control the order in which files appear in the output [INFO] [stderr] --rotate-to show the change in the specified path first [INFO] [stderr] --skip-to skip the output to the specified path [INFO] [stderr] --find-object [INFO] [stderr] look for differences that change the number of occurrences of the specified object [INFO] [stderr] --diff-filter [(A|C|D|M|R|T|U|X|B)...[*]] [INFO] [stderr] select files by diff type [INFO] [stderr] --output output to a specific file [INFO] [stderr] [INFO] [stdout] test bootstrap ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- bootstrap stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'bootstrap' (131) panicked at tests/bootstrap.rs:32:44: [INFO] [stdout] You should commit the protobuf files [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x623db3f108da - std[31e582c13f4e914f]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x623db3f108da - std[31e582c13f4e914f]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x623db3f108da - std[31e582c13f4e914f]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x623db3f108da - <::print::DisplayBacktrace as core[fa0eadad68403074]::fmt::Display>::fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x623db3f270ca - ::fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x623db3f270ca - core[fa0eadad68403074]::fmt::write [INFO] [stdout] 6: 0x623db3f165b2 - std[31e582c13f4e914f]::io::default_write_fmt::> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x623db3f165b2 - as std[31e582c13f4e914f]::io::Write>::write_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x623db3eedd8f - ::print [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x623db3eedd8f - std[31e582c13f4e914f]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x623db3f081d9 - std[31e582c13f4e914f]::panicking::default_hook [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x623db3ea39bc - core[fa0eadad68403074]::ops::function::Fn<(&'a std[31e582c13f4e914f]::panic::PanicHookInfo<'b>,), Output = ()> + core[fa0eadad68403074]::marker::Sync + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::Fn<(&std[31e582c13f4e914f]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 12: 0x623db3ea39bc - test[7530e63dc052480e]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x623db3f08452 - core[fa0eadad68403074]::ops::function::Fn<(&'a std[31e582c13f4e914f]::panic::PanicHookInfo<'b>,), Output = ()> + core[fa0eadad68403074]::marker::Sync + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::Fn<(&std[31e582c13f4e914f]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 14: 0x623db3f08452 - std[31e582c13f4e914f]::panicking::panic_with_hook [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x623db3eede7a - std[31e582c13f4e914f]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:691:13 [INFO] [stdout] 16: 0x623db3ee2e29 - std[31e582c13f4e914f]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x623db3eeeb5d - __rustc[fc8e3a9f23f26cb]::rust_begin_unwind [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x623db3f2790c - core[fa0eadad68403074]::panicking::panic_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x623db399df3b - bootstrap[d2c56c5b64cf1803]::bootstrap [INFO] [stdout] at /opt/rustwide/workdir/tests/bootstrap.rs:32:44 [INFO] [stdout] 20: 0x623db399d727 - bootstrap[d2c56c5b64cf1803]::bootstrap::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/tests/bootstrap.rs:7:15 [INFO] [stdout] 21: 0x623db39845c6 - >::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 22: 0x623db3e97a9b - core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x623db3e97a9b - test[7530e63dc052480e]::__rust_begin_short_backtrace::, fn() -> core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:663:18 [INFO] [stdout] 24: 0x623db3ea448b - test[7530e63dc052480e]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:686:74 [INFO] [stdout] 25: 0x623db3ea448b - as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 26: 0x623db3ea448b - std[31e582c13f4e914f]::panicking::catch_unwind::do_call::, core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:581:40 [INFO] [stdout] 27: 0x623db3ea448b - std[31e582c13f4e914f]::panicking::catch_unwind::, core[fa0eadad68403074]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:544:19 [INFO] [stdout] 28: 0x623db3ea448b - std[31e582c13f4e914f]::panic::catch_unwind::, core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panic.rs:359:14 [INFO] [stdout] 29: 0x623db3ea448b - test[7530e63dc052480e]::run_test_in_process [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:686:27 [INFO] [stdout] 30: 0x623db3ea448b - test[7530e63dc052480e]::run_test::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:607:43 [INFO] [stdout] 31: 0x623db3e9e8e4 - test[7530e63dc052480e]::run_test::{closure#1} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:637:41 [INFO] [stdout] 32: 0x623db3e9e8e4 - std[31e582c13f4e914f]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 33: 0x623db3ea7092 - std[31e582c13f4e914f]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 34: 0x623db3ea7092 - ::{closure#1}::{closure#0}> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 35: 0x623db3ea7092 - std[31e582c13f4e914f]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:581:40 [INFO] [stdout] 36: 0x623db3ea7092 - std[31e582c13f4e914f]::panicking::catch_unwind::<(), core[fa0eadad68403074]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:544:19 [INFO] [stdout] 37: 0x623db3ea7092 - std[31e582c13f4e914f]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panic.rs:359:14 [INFO] [stdout] 38: 0x623db3ea7092 - std[31e582c13f4e914f]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 39: 0x623db3ea7092 - ::{closure#1} as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 40: 0x623db3f0fc8f - + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2240:9 [INFO] [stdout] 41: 0x623db3f0fc8f - ::new::thread_start [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/thread/unix.rs:118:17 [INFO] [stdout] 42: 0x7cbd421a5aa4 - [INFO] [stdout] 43: 0x7cbd42232a64 - clone [INFO] [stdout] 44: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] bootstrap [INFO] [stdout] [INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.21s [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass `--test bootstrap` [INFO] running `Command { std: "docker" "inspect" "0d80f361c19fc7f4a8ad5fdbd65db63a6ec70f6675097cea05c479921377fcb8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0d80f361c19fc7f4a8ad5fdbd65db63a6ec70f6675097cea05c479921377fcb8", kill_on_drop: false }` [INFO] [stdout] 0d80f361c19fc7f4a8ad5fdbd65db63a6ec70f6675097cea05c479921377fcb8