[INFO] fetching crate soulseek-rs-lib 19.1.0...
[INFO] testing soulseek-rs-lib-19.1.0 against 1.99.0-beta.8 for beta-1.100-2
[INFO] extracting crate soulseek-rs-lib 19.1.0 into /workspace/builds/worker-4-tc1/source
[INFO] started tweaking crates.io crate soulseek-rs-lib 19.1.0
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate soulseek-rs-lib 19.1.0
[INFO] tweaked toml for crates.io crate soulseek-rs-lib 19.1.0 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate soulseek-rs-lib 19.1.0 on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate soulseek-rs-lib 19.1.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 0be936031bfb49f7f197c21f98506eb00b6ed9ee245635f1340796b896c4f498
[INFO] running `Command { std: "docker" "start" "0be936031bfb49f7f197c21f98506eb00b6ed9ee245635f1340796b896c4f498", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0be936031bfb49f7f197c21f98506eb00b6ed9ee245635f1340796b896c4f498", 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" "0be936031bfb49f7f197c21f98506eb00b6ed9ee245635f1340796b896c4f498" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0be936031bfb49f7f197c21f98506eb00b6ed9ee245635f1340796b896c4f498", 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" "0be936031bfb49f7f197c21f98506eb00b6ed9ee245635f1340796b896c4f498" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling soulseek-rs-lib v19.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.63s
[INFO] running `Command { std: "docker" "inspect" "0be936031bfb49f7f197c21f98506eb00b6ed9ee245635f1340796b896c4f498", 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" "0be936031bfb49f7f197c21f98506eb00b6ed9ee245635f1340796b896c4f498" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling soulseek-rs-lib v19.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 7.03s
[INFO] running `Command { std: "docker" "inspect" "0be936031bfb49f7f197c21f98506eb00b6ed9ee245635f1340796b896c4f498", 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" "0be936031bfb49f7f197c21f98506eb00b6ed9ee245635f1340796b896c4f498" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/soulseek_rs-9a2a1e366f73b317)
[INFO] [stdout] 
[INFO] [stdout] running 326 tests
[INFO] [stdout] test actor::peer_actor::tests::retiring_a_connecting_actor_closes_it_at_once ... ok
[INFO] [stdout] test actor::peer_actor::tests::a_retired_actor_reporting_an_error_reports_a_clean_close ... ok
[INFO] [stdout] test actor::peer_actor::tests::an_upload_failed_message_reaches_the_client_as_this_peer ... ok
[INFO] [stdout] test actor::peer_actor::tests::tick_reaps_a_peer_idle_past_the_deadline ... ok
[INFO] [stdout] test actor::server_actor::tests::a_login_with_nobody_listening_is_refused_at_once ... ok
[INFO] [stdout] test actor::peer_registry::tests::a_returning_username_is_replaced_not_refused_at_capacity ... ok
[INFO] [stdout] test actor::server_actor::tests::a_login_on_a_parked_actor_dials_again_and_queues_the_login ... ok
[INFO] [stdout] test actor::server_actor::tests::a_successful_login_resets_the_distributed_leaf ... ok
[INFO] [stdout] test actor::server_actor::tests::a_parked_actor_handles_login_rather_than_queueing_it ... ok
[INFO] [stdout] test actor::peer_registry::tests::capacity_evicts_the_oldest_idle_peer ... ok
[INFO] [stdout] test actor::server_actor::tests::a_successful_login_marks_the_session_live_again ... ok
[INFO] [stdout] test actor::peer_actor::tests::a_timed_out_connect_parks_the_actor_in_disconnected ... ok
[INFO] [stdout] test actor::server_actor::tests::a_timed_out_connect_parks_the_actor_in_disconnected ... ok
[INFO] [stdout] test actor::server_actor::tests::disconnect_clears_a_partial_frame_so_the_next_session_reframes_clean ... ok
[INFO] [stdout] test actor::server_actor::tests::post_login_messages_carry_counts_and_conditional_wait_port ... ok
[INFO] [stdout] test actor::server_actor::tests::the_server_socket_keeps_itself_alive ... ok
[INFO] [stdout] test client::children::tests::a_client_nothing_feeds_takes_no_children ... ok
[INFO] [stdout] test client::children::tests::a_client_that_does_not_accept_children_takes_none ... ok
[INFO] [stdout] test actor::peer_registry::tests::capacity_refuses_when_every_peer_is_protected ... ok
[INFO] [stdout] test actor::peer_registry::tests::remove_peer_if_respects_actor_identity ... ok
[INFO] [stdout] test client::children::tests::a_child_that_hung_up_loses_its_slot ... ok
[INFO] [stdout] test client::children::tests::children_are_let_go_when_the_stream_dries_up ... ok
[INFO] [stdout] test actor::peer_registry::tests::refused_dial_does_not_leave_a_zombie_entry ... ok
[INFO] [stdout] test client::children::tests::a_child_is_told_where_our_branch_sits ... ok
[INFO] [stdout] test client::children::tests::the_child_limit_follows_the_servers_figures ... ok
[INFO] [stdout] test actor::server_actor::tests::a_cancelled_actor_never_writes_the_login_it_queued ... ok
[INFO] [stdout] test actor::server_actor::tests::dropping_the_connection_forgets_the_dispatcher_and_the_verdict ... ok
[INFO] [stdout] test client::distributed::tests::a_hostile_branch_level_neither_panics_nor_adopts ... ok
[INFO] [stdout] test client::distributed::tests::a_parent_that_becomes_a_root_is_the_root_from_then_on ... ok
[INFO] [stdout] test client::children::tests::a_speed_the_server_has_not_reported_leaves_the_cap_alone ... ok
[INFO] [stdout] test client::distributed::tests::candidates_are_dialled_only_while_there_is_no_parent ... ok
[INFO] [stdout] test client::distributed::tests::searches_beyond_the_budget_are_dropped_until_the_next_second ... ok
[INFO] [stdout] test client::distributed::tests::the_first_search_from_a_candidate_with_branch_info_adopts_it ... ok
[INFO] [stdout] test client::distributed::tests::announcing_tells_the_server_the_root_the_level_and_that_we_have_a_parent ... ok
[INFO] [stdout] test client::distributed::tests::a_stale_link_cannot_speak_for_a_newer_one ... ok
[INFO] [stdout] test client::distributed::tests::losing_the_parent_or_a_reset_returns_to_parentless ... ok
[INFO] [stdout] test client::distributed::tests::a_later_batch_keeps_the_candidates_in_flight_and_stays_under_the_cap ... ok
[INFO] [stdout] test client::distributed::tests::the_parents_later_moves_move_us_too_but_are_told_once_a_second ... ok
[INFO] [stdout] test client::distributed::tests::a_leaf_without_a_parent_is_its_own_root_at_level_zero ... ok
[INFO] [stdout] test client::children::tests::a_search_reaches_every_child ... ok
[INFO] [stdout] test client::children::tests::children_are_taken_up_to_the_cap ... ok
[INFO] [stdout] test client::children::tests::a_second_link_from_a_child_we_carry_is_refused ... ok
[INFO] [stdout] test client::distributed::tests::a_level_zero_candidate_is_its_own_root ... ok
[INFO] [stdout] test client::tests::rooms::a_new_ticker_replaces_that_users_previous_one ... ok
[INFO] [stdout] test client::tests::rooms::a_removed_ticker_leaves_the_rest_of_the_board ... ok
[INFO] [stdout] test client::tests::rooms::leaving_a_room_drops_its_ticker_board ... ok
[INFO] [stdout] test client::tests::rooms::losing_operatorship_keeps_the_roster_we_can_still_see ... ok
[INFO] [stdout] test client::tests::peers::a_pending_connect_expires_after_the_broker_timeout ... ok
[INFO] [stdout] test client::tests::peers::protected_peers_covers_downloads_uploads_and_pending_serves ... ok
[INFO] [stdout] test client::tests::peers::the_server_is_told_our_child_capacity_only_when_it_changes ... ok
[INFO] [stdout] test client::tests::rooms::a_private_room_roster_tracks_who_is_added_and_removed ... ok
[INFO] [stdout] test client::tests::rooms::a_join_announced_before_the_member_list_does_not_start_a_roster ... ok
[INFO] [stdout] test client::downloads::tests::download_tokens_are_unique_and_below_the_upload_range ... ok
[INFO] [stdout] test client::tests::peers::upload_speed_is_reported_only_while_running ... ok
[INFO] [stdout] test client::tests::rooms::a_global_message_is_queued_without_touching_room_membership ... ok
[INFO] [stdout] test client::tests::rooms::a_user_joining_twice_is_listed_once ... ok
[INFO] [stdout] test client::tests::rooms::room_member_stats_are_returned_sorted_and_scoped_to_their_room ... ok
[INFO] [stdout] test client::tests::search::a_file_the_server_excludes_is_left_out_of_a_reply ... ok
[INFO] [stdout] test client::tests::search::search_file_counts_cover_every_search_without_the_results ... ok
[INFO] [stdout] test client::tests::rooms::rejoining_replaces_the_previous_member_stats ... ok
[INFO] [stdout] test client::tests::transfers::download_without_a_connection_resolves_failed ... ok
[INFO] [stdout] test client::tests::transfers::fail_queued_downloads_notifies_receiver_and_store ... ok
[INFO] [stdout] test client::tests::transfers::test_client_context_downloads ... ok
[INFO] [stdout] test client::tests::search::a_search_stops_collecting_once_it_has_enough_responses ... ok
[INFO] [stdout] test client::tests::transfers::test_client_pause_and_resume_download ... ok
[INFO] [stdout] test client::tests::transfers::test_client_removes_only_queued_downloads ... ok
[INFO] [stdout] test client::tests::users::a_watch_reply_fills_both_halves_of_the_snapshot ... ok
[INFO] [stdout] test client::tests::users::a_watch_reply_keeps_a_privileged_flag_it_cannot_carry ... ok
[INFO] [stdout] test client::tests::users::asking_again_about_a_users_interests_drops_the_previous_answer ... ok
[INFO] [stdout] test client::tests::users::each_reply_fills_only_its_own_half ... ok
[INFO] [stdout] test client::tests::users::our_own_interests_are_kept_lowercased_and_deduplicated ... ok
[INFO] [stdout] test client::tests::users::own_and_global_recommendations_are_kept_apart ... ok
[INFO] [stdout] test client::tests::users::unwatching_forgets_the_users_snapshot ... ok
[INFO] [stdout] test client::tests::users::watched_users_are_listed_in_a_stable_order ... ok
[INFO] [stdout] test client::tests::users::watching_an_unknown_user_drops_them_from_the_list ... ok
[INFO] [stdout] test client::upload_queue::context_tests::a_finished_transfer_frees_its_slot_for_the_next_in_line ... ok
[INFO] [stdout] test client::tests::peers::a_clean_disconnect_keeps_queued_uploads_an_error_drops_them ... ok
[INFO] [stdout] test client::tests::rooms::revoked_membership_drops_the_room_we_can_no_longer_see ... ok
[INFO] [stdout] test client::tests::transfers::cancel_download_marks_the_store_and_answers_whether_it_matched ... ok
[INFO] [stdout] test client::upload_queue::context_tests::a_fresh_context_starts_with_the_default_cap ... ok
[INFO] [stdout] test client::tests::peers::a_peer_message_nobody_could_deliver_expires ... ok
[INFO] [stdout] test client::tests::users::a_fresh_request_discards_the_previous_answer ... ok
[INFO] [stdout] test client::upload_queue::context_tests::a_privileged_list_arriving_late_re_ranks_who_is_waiting ... ok
[INFO] [stdout] test client::upload_queue::context_tests::a_queued_upload_is_recorded_even_after_it_leaves_the_queue ... ok
[INFO] [stdout] test client::upload_queue::context_tests::an_accepted_offer_waiting_on_an_address_does_not_expire ... ok
[INFO] [stdout] test client::tests::rooms::the_room_roster_follows_the_joins_and_leaves_the_server_reports ... ok
[INFO] [stdout] test client::tests::search::build_search_response_matches_shares_and_echoes_token ... ok
[INFO] [stdout] test client::upload_queue::context_tests::an_offer_nobody_answers_frees_its_slot_after_the_timeout ... ok
[INFO] [stdout] test client::upload_queue::context_tests::the_privileged_peer_is_the_one_served_next ... ok
[INFO] [stdout] test client::upload_queue::tests::a_privileged_peer_is_served_before_one_that_asked_first ... ok
[INFO] [stdout] test client::upload_queue::tests::equals_are_served_in_the_order_they_asked ... ok
[INFO] [stdout] test client::upload_queue::tests::the_reported_place_reflects_being_overtaken ... ok
[INFO] [stdout] test client::upload_queue::tests::privileged_peers_keep_first_come_order_among_themselves ... ok
[INFO] [stdout] test client::upload_queue::tests::the_reported_place_counts_from_one ... ok
[INFO] [stdout] test dispatcher::tests::a_code_above_255_is_not_confused_with_its_low_byte ... ok
[INFO] [stdout] test client::upload_queue::context_tests::completed_transfers_do_not_keep_occupying_slots ... ok
[INFO] [stdout] test client::upload_queue::context_tests::queued_uploads_are_reported_in_the_order_they_will_be_served ... ok
[INFO] [stdout] test client::upload_queue::context_tests::the_pump_fills_the_slots_and_leaves_the_rest_queued ... ok
[INFO] [stdout] test client::upload_queue::tests::a_file_nobody_queued_has_no_place ... ok
[INFO] [stdout] test download_store::tests::a_cancelled_download_stays_cancelled ... ok
[INFO] [stdout] test client::upload_queue::tests::an_empty_queue_serves_nobody ... ok
[INFO] [stdout] test download_store::tests::a_download_can_only_be_claimed_once_and_by_its_peer ... ok
[INFO] [stdout] test download_store::tests::add_evicts_a_finished_entry_for_the_same_file ... ok
[INFO] [stdout] test download_store::tests::add_get_remove_roundtrip ... ok
[INFO] [stdout] test download_store::tests::collect_failed_tokens_collects_only_queued_downloads ... ok
[INFO] [stdout] test download_store::tests::cancel_by_file_flips_an_unfinished_download_and_tells_its_channel ... ok
[INFO] [stdout] test download_store::tests::collect_failed_tokens_notifies_and_lists_matching ... ok
[INFO] [stdout] test download_store::tests::pause_then_resume_in_progress_download ... ok
[INFO] [stdout] test download_store::tests::remove_queued_skips_active_downloads ... ok
[INFO] [stdout] test download_store::tests::update_queue_position_sets_field_when_match ... ok
[INFO] [stdout] test message::an_init_frame_reads_its_one_byte_code ... ok
[INFO] [stdout] test message::distributed::tests::a_distributed_search_carries_who_asked_and_what_for ... ok
[INFO] [stdout] test message::distributed::tests::a_nested_envelope_is_not_unwrapped_twice ... ok
[INFO] [stdout] test message::distributed::tests::a_search_frame_matches_the_documented_layout ... ok
[INFO] [stdout] test message::distributed::tests::a_search_with_the_wrong_identifier_is_dropped ... ok
[INFO] [stdout] test message::distributed::tests::an_embedded_search_unwraps_to_the_search_itself ... ok
[INFO] [stdout] test message::distributed::tests::branch_level_and_root_frames_parse ... ok
[INFO] [stdout] test message::distributed::tests::unknown_or_truncated_frames_parse_to_nothing ... ok
[INFO] [stdout] test message::get_message_code_on_short_message_does_not_panic ... ok
[INFO] [stdout] test message::message_reader::tests::a_closed_connection_reads_as_an_error_not_as_success ... ok
[INFO] [stdout] test message::message_reader::tests::test_extract_message ... ok
[INFO] [stdout] test message::message_reader::tests::test_extract_message_incomplete_message ... ok
[INFO] [stdout] test message::peer::file_search_response::test_new_from_message ... ok
[INFO] [stdout] test message::peer::file_search_response::build_file_search_response_roundtrips_through_the_decoder ... ok
[INFO] [stdout] test message::peer::folder_contents::a_folder_listing_round_trips ... ok
[INFO] [stdout] test message::peer::place_in_queue_request::tests::the_asked_about_filename_is_forwarded ... ok
[INFO] [stdout] test message::peer::shared_file_list::hostile_dir_count_does_not_hang ... ok
[INFO] [stdout] test message::peer::shared_file_list::shared_file_list_roundtrips ... ok
[INFO] [stdout] test message::peer::shared_file_list::a_listing_carries_each_files_attributes ... ok
[INFO] [stdout] test message::peer::upload_denied::tests::a_queued_reason_is_not_a_failure ... ok
[INFO] [stdout] test message::peer::upload_denied::tests::the_denied_filename_is_forwarded ... ok
[INFO] [stdout] test message::peer::upload_failed::tests::the_failed_filename_is_forwarded ... ok
[INFO] [stdout] test message::peer::user_info::tests::a_message_that_stops_early_still_parses ... ok
[INFO] [stdout] test message::peer::user_info::tests::a_peers_answer_carries_its_slots_and_queue ... ok
[INFO] [stdout] test message::peer::user_info::tests::a_picture_is_skipped_over_rather_than_kept ... ok
[INFO] [stdout] test message::peer::user_info::tests::a_picture_longer_than_the_message_does_not_run_off_the_end ... ok
[INFO] [stdout] test message::read_int_primitives_are_bounds_checked ... ok
[INFO] [stdout] test message::read_string_with_missing_length_prefix_does_not_panic ... ok
[INFO] [stdout] test message::read_string_with_oversized_length_does_not_panic ... ok
[INFO] [stdout] test message::read_string_with_truncated_payload_does_not_panic ... ok
[INFO] [stdout] test message::server::cant_connect_to_peer::tests::the_token_of_the_failed_attempt_is_reported ... ok
[INFO] [stdout] test message::server::distributed::tests::a_reset_and_an_embedded_search_become_client_events ... ok
[INFO] [stdout] test message::server::distributed::tests::a_truncated_or_absurd_entry_is_not_a_candidate ... ok
[INFO] [stdout] test message::server::distributed::tests::possible_parents_carry_each_candidates_address ... ok
[INFO] [stdout] test message::server::excluded_search_phrases::tests::hostile_item_count_does_not_hang ... ok
[INFO] [stdout] test message::server::excluded_search_phrases::tests::the_phrases_are_reported_not_only_logged ... ok
[INFO] [stdout] test message::server::global_room::tests::a_global_message_names_the_room_it_was_said_in ... ok
[INFO] [stdout] test message::server::interests::tests::a_user_with_no_interests_parses_to_empty_lists ... ok
[INFO] [stdout] test message::server::interests::tests::a_users_likes_and_hates_arrive_as_two_lists ... ok
[INFO] [stdout] test message::server::interests::tests::global_recommendations_parse_the_same_shape ... ok
[INFO] [stdout] test message::server::interests::tests::item_recommendations_report_their_item ... ok
[INFO] [stdout] test message::server::interests::tests::item_similar_users_report_the_item_they_answer_for ... ok
[INFO] [stdout] test message::server::interests::tests::recommendations_split_into_recommended_and_not ... ok
[INFO] [stdout] test message::server::interests::tests::similar_users_carry_their_weight ... ok
[INFO] [stdout] test message::server::join_room::tests::a_server_that_omits_the_stat_vectors_still_yields_a_roster ... ok
[INFO] [stdout] test message::server::join_room::tests::hostile_user_count_does_not_hang ... ok
[INFO] [stdout] test message::server::join_room::tests::member_stats_are_parsed_alongside_the_roster ... ok
[INFO] [stdout] test message::server::join_room::tests::short_stat_vectors_do_not_shift_the_roster ... ok
[INFO] [stdout] test message::server::leave_room::tests::forwards_left_room ... ok
[INFO] [stdout] test message::server::message_factory::a_multi_user_message_counts_its_recipients_first ... ok
[INFO] [stdout] test message::server::message_factory::a_password_change_carries_the_new_password ... ok
[INFO] [stdout] test message::server::message_factory::a_ping_is_just_its_code ... ok
[INFO] [stdout] test message::server::message_factory::a_place_in_queue_request_names_the_file ... ok
[INFO] [stdout] test message::server::message_factory::a_private_join_sets_the_private_flag ... ok
[INFO] [stdout] test message::server::message_factory::a_privilege_gift_carries_the_recipient_and_days ... ok
[INFO] [stdout] test message::server::message_factory::a_room_search_names_the_room_before_its_token ... ok
[INFO] [stdout] test message::server::message_factory::a_room_ticker_carries_its_room_and_text ... ok
[INFO] [stdout] test message::server::message_factory::a_transfer_denial_carries_the_token_and_the_reason ... ok
[INFO] [stdout] test message::server::join_room::tests::forwards_room_and_member_list ... ok
[INFO] [stdout] test message::server::message_factory::a_user_search_names_the_user_before_its_token ... ok
[INFO] [stdout] test message::server::join_room::tests::hostile_stat_counts_do_not_hang_or_overallocate ... ok
[INFO] [stdout] test message::server::message_factory::a_cant_connect_carries_the_token_then_the_user ... ok
[INFO] [stdout] test message::server::message_factory::each_interest_message_uses_its_own_code ... ok
[INFO] [stdout] test message::server::message_factory::giving_up_a_room_standing_names_only_the_room ... ok
[INFO] [stdout] test message::server::message_factory::test_build_file_search_message ... ok
[INFO] [stdout] test message::server::message_factory::test_build_get_user_stats ... ok
[INFO] [stdout] test download_store::tests::progress_cannot_implicitly_resume_a_paused_download ... ok
[INFO] [stdout] test download_store::tests::remove_by_file_removes_regardless_of_status ... ok
[INFO] [stdout] test message::server::message_factory::test_build_leave_room ... ok
[INFO] [stdout] test message::server::message_factory::test_build_login_message ... ok
[INFO] [stdout] test message::server::message_factory::test_build_message_acked ... ok
[INFO] [stdout] test message::server::message_factory::test_build_message_user ... ok
[INFO] [stdout] test message::server::message_factory::test_build_peer_init_message ... ok
[INFO] [stdout] test message::server::message_factory::test_build_place_in_queue_response ... ok
[INFO] [stdout] test message::server::message_factory::room_invitations_are_toggled_by_a_single_byte ... ok
[INFO] [stdout] test message::server::message_factory::test_build_check_privileges ... ok
[INFO] [stdout] test message::server::message_factory::test_build_room_list_request ... ok
[INFO] [stdout] test message::server::message_factory::test_build_join_room ... ok
[INFO] [stdout] test message::server::message_factory::test_build_say_chatroom ... ok
[INFO] [stdout] test message::server::message_factory::test_build_unwatch_user ... ok
[INFO] [stdout] test message::server::message_factory::test_build_upload_transfer_request ... ok
[INFO] [stdout] test message::server::message_factory::test_build_watch_user ... ok
[INFO] [stdout] test message::server::message_factory::test_build_wishlist_search ... ok
[INFO] [stdout] test message::server::message_factory::the_bodyless_queries_are_just_their_codes ... ok
[INFO] [stdout] test message::server::message_factory::the_global_room_is_joined_and_left_by_code_alone ... ok
[INFO] [stdout] test message::server::message_factory::the_private_room_roster_messages_carry_room_then_user ... ok
[INFO] [stdout] test message::server::message_user::tests::a_freshly_delivered_message_is_acknowledged ... ok
[INFO] [stdout] test message::server::message_user::tests::a_message_stored_while_we_were_offline_is_acknowledged_too ... ok
[INFO] [stdout] test message::server::message_user::tests::the_message_itself_is_surfaced_to_the_client ... ok
[INFO] [stdout] test message::server::parent_min_speed::tests::the_minimum_speed_is_reported_not_discarded ... ok
[INFO] [stdout] test message::server::parent_speed_ratio::tests::the_ratio_is_reported_not_discarded ... ok
[INFO] [stdout] test message::server::private_rooms::tests::a_member_roster_lists_the_rooms_members ... ok
[INFO] [stdout] test message::server::privileged_users::tests::a_hostile_count_does_not_hang ... ok
[INFO] [stdout] test message::server::privileged_users::tests::an_empty_list_is_still_an_answer ... ok
[INFO] [stdout] test message::server::private_rooms::tests::a_refused_room_names_itself ... ok
[INFO] [stdout] test message::server::private_rooms::tests::a_roster_count_beyond_the_payload_stops_at_the_data ... ok
[INFO] [stdout] test message::server::private_rooms::tests::each_roster_change_reports_which_roster_and_which_way ... ok
[INFO] [stdout] test message::server::private_rooms::tests::our_own_standing_reports_the_room_and_the_change ... ok
[INFO] [stdout] test message::server::privileged_users::tests::our_own_remaining_privilege_time_is_reported ... ok
[INFO] [stdout] test message::server::room_list::tests::parses_names_zipped_with_counts ... ok
[INFO] [stdout] test message::server::privileged_users::tests::the_user_list_is_kept_not_just_counted ... ok
[INFO] [stdout] test message::server::room_list::tests::empty_room_list_parses_to_empty ... ok
[INFO] [stdout] test message::server::room_list::tests::handler_forwards_parsed_rooms ... ok
[INFO] [stdout] test message::server::room_list::tests::hostile_counts_do_not_hang_or_overallocate ... ok
[INFO] [stdout] test message::server::room_tickers::tests::a_count_larger_than_the_payload_stops_at_the_data ... ok
[INFO] [stdout] test message::server::room_tickers::tests::a_removed_ticker_reports_its_room_and_user ... ok
[INFO] [stdout] test message::server::room_tickers::tests::a_ticker_board_carries_every_entry_in_order ... ok
[INFO] [stdout] test message::server::say_chatroom::tests::forwards_room_message ... ok
[INFO] [stdout] test message::server::user_info::tests::user_stats_skip_the_two_obsolete_fields ... ok
[INFO] [stdout] test message::server::user_info::tests::user_status_is_parsed_with_its_privileged_flag ... ok
[INFO] [stdout] test message::server::user_joined_room::tests::forwards_user_joined ... ok
[INFO] [stdout] test message::server::user_left_room::tests::forwards_user_left ... ok
[INFO] [stdout] test message::server::watch_user::tests::existing_user_carries_status_and_stats ... ok
[INFO] [stdout] test message::server::watch_user::tests::truncated_payload_does_not_panic ... ok
[INFO] [stdout] test message::server::watch_user::tests::unknown_user_reports_absence_without_stats ... ok
[INFO] [stdout] test message::server::wish_list_interval::tests::the_announced_interval_is_reported_not_discarded ... ok
[INFO] [stdout] test message::test_get_buffer ... ok
[INFO] [stdout] test message::test_read_string ... ok
[INFO] [stdout] test message::test_read_string_2 ... ok
[INFO] [stdout] test message::test_read_string_invalid_utf82 ... ok
[INFO] [stdout] test message::peer::file_search_response::the_trailer_carries_slots_speed_and_queue_length ... ok
[INFO] [stdout] test message::server::message_factory::an_upload_speed_report_carries_the_rate ... ok
[INFO] [stdout] test message::server::message_factory::test_build_get_user_status ... ok
[INFO] [stdout] test peer::download_peer::tests::a_pierced_token_cannot_claim_another_peers_download ... ok
[INFO] [stdout] test peer::download_peer::tests::a_status_after_cancel_is_not_relayed_on_the_channel ... ok
[INFO] [stdout] test peer::download_peer::tests::a_truncated_transfer_fails_and_keeps_the_partial_file ... ok
[INFO] [stdout] test message::server::room_tickers::tests::an_added_ticker_reports_its_room_user_and_text ... ok
[INFO] [stdout] test peer::download_peer::tests::a_partial_file_sets_the_resume_offset ... ok
[INFO] [stdout] test peer::download_peer::tests::an_oversized_partial_file_restarts_from_zero ... ok
[INFO] [stdout] test peer::download_peer::tests::a_pierced_short_transfer_reports_failure ... ok
[INFO] [stdout] test peer::download_peer::tests::overshoot_past_the_expected_size_is_dropped ... ok
[INFO] [stdout] test peer::download_peer::tests::supplied_streams_get_transfer_deadlines ... ok
[INFO] [stdout] test peer::download_peer::tests::start_transfer_refuses_a_cancelled_download ... ok
[INFO] [stdout] test actor::peer_actor::tests::a_retired_actor_delivers_what_is_on_the_wire_then_stops_itself ... ok
[INFO] [stdout] test peer::download_peer::tests::test_extract_filename_from_path ... ok
[INFO] [stdout] test peer::download_peer::tests::test_establish_connection_invalid_address ... ok
[INFO] [stdout] test peer::download_peer::tests::an_unidentified_exact_size_partial_restarts_from_zero ... ok
[INFO] [stdout] test client::tests::search::a_flood_of_files_fills_a_search_before_the_response_cap ... ok
[INFO] [stdout] test actor::tests::test_actor_system ... ok
[INFO] [stdout] test peer::download_peer::tests::a_discarded_part_file_is_removed_from_disk ... ok
[INFO] [stdout] test peer::download_peer::tests::a_directory_that_does_not_exist_yet_is_created_not_dodged ... ok
[INFO] [stdout] test peer::download_peer::tests::a_cancelled_download_stops_the_transfer_loop ... ok
[INFO] [stdout] test actor::tests::far_more_actors_than_cores_all_run ... ok
[INFO] [stdout] test actor::peer_actor::tests::a_reply_sent_right_before_the_peer_hangs_up_is_still_delivered ... ok
[INFO] [stdout] test peer::new_accepts_a_full_range_obfuscated_port ... ok
[INFO] [stdout] test peer::new_from_message_returns_none_on_invalid_connection_type ... ok
[INFO] [stdout] test peer::test_new_from_message2 ... ok
[INFO] [stdout] test peer::test_new_from_message ... ok
[INFO] [stdout] test peer::upload_peer::tests::serve_file_accepts_valid_resume_offsets ... ok
[INFO] [stdout] test peer::upload_peer::tests::a_downloader_that_never_closes_still_leaves_the_upload_delivered ... ok
[INFO] [stdout] test peer::upload_peer::tests::serve_file_rejects_an_offset_past_end_of_file ... ok
[INFO] [stdout] test peer::upload_peer::tests::serve_file_stops_when_cancelled ... ok
[INFO] [stdout] test shares::audio::tests::a_constant_bitrate_mp3_reports_bitrate_duration_and_no_vbr ... ok
[INFO] [stdout] test shares::audio::tests::a_crc_protected_frame_still_finds_its_xing_header ... ok
[INFO] [stdout] test shares::audio::tests::a_flac_reports_duration_sample_rate_and_bit_depth ... ok
[INFO] [stdout] test shares::audio::tests::a_tag_larger_than_the_first_read_is_skipped_too ... ok
[INFO] [stdout] test peer::upload_peer::tests::serve_file_streams_the_file_over_an_f_connection ... ok
[INFO] [stdout] test shares::audio::tests::a_variable_bitrate_mp3_uses_its_xing_header ... ok
[INFO] [stdout] test shares::audio::tests::a_xing_header_without_a_frame_count_falls_back_to_the_frame_header ... ok
[INFO] [stdout] test shares::audio::tests::anything_else_or_a_truncated_file_has_no_attributes ... ok
[INFO] [stdout] test shares::audio::tests::an_id3v2_tag_in_front_of_the_frames_is_skipped ... ok
[INFO] [stdout] test shares::tests::a_mixed_case_path_matches_a_lowercase_query ... ok
[INFO] [stdout] test shares::tests::a_scanned_mp3_carries_its_bitrate ... ok
[INFO] [stdout] test shares::tests::in_progress_downloads_are_not_shared ... ok
[INFO] [stdout] test shares::tests::empty_shares_have_no_files_or_folders ... ok
[INFO] [stdout] test shares::tests::nested_files_use_backslash_virtual_paths ... ok
[INFO] [stdout] test shares::tests::scan_counts_files_and_folders ... ok
[INFO] [stdout] test shares::tests::scan_many_merges_roots ... ok
[INFO] [stdout] test shares::tests::scan_many_disambiguates_equal_root_names ... ok
[INFO] [stdout] test shares::tests::search_is_case_insensitive_and_multi_term_and ... ok
[INFO] [stdout] test shares::tests::scan_many_skips_unreadable_roots ... ok
[INFO] [stdout] test types::tests::search_result_hostile_file_count_does_not_hang ... ok
[INFO] [stdout] test types::tests::transfer_new_from_truncated_message_does_not_panic ... ok
[INFO] [stdout] test utils::keepalive::keepalive_is_off_until_asked_for ... ok
[INFO] [stdout] test utils::logger::tests::a_configured_file_bypasses_buffering_so_lines_are_not_duplicated ... ok
[INFO] [stdout] test utils::logger::tests::without_a_file_buffering_routes_to_the_buffer_else_stderr ... ok
[INFO] [stdout] test utils::md5::a_correct_hash ... ok
[INFO] [stdout] test utils::logger::tests::the_level_can_be_changed_while_running ... ok
[INFO] [stdout] test utils::md5::all_alphanumeric_correct_hash ... ok
[INFO] [stdout] test utils::md5::empty_string_correct_hash ... ok
[INFO] [stdout] test utils::md5::lowercase_alphabet_correct_hash ... ok
[INFO] [stdout] test utils::md5::message_digest_correct_hash ... ok
[INFO] [stdout] test utils::md5::repeated_numbers_correct_hash ... ok
[INFO] [stdout] test utils::path::tests::no_tilde_returned_as_is ... ok
[INFO] [stdout] test utils::path::tests::tilde_expanded_when_home_set ... ok
[INFO] [stdout] test utils::md5::abc_correct_hash ... ok
[INFO] [stdout] test peer::listen::tests::a_download_registered_during_the_wait_is_found ... ok
[INFO] [stdout] test peer::download_peer::tests::cancellation_while_a_complete_transfer_is_paused_discards_its_part ... ok
[INFO] [stdout] test utils::rate_limit::tests::no_limit_grants_everything_at_once ... ok
[INFO] [stdout] test utils::rate_limit::tests::unused_allowance_goes_back_to_the_budget ... ok
[INFO] [stdout] test peer::listen::tests::a_download_for_another_peer_is_not_claimed ... ok
[INFO] [stdout] test peer::listen::tests::a_cancelled_download_is_not_claimable ... ok
[INFO] [stdout] test utils::zlib::tests::a_corrupt_adler32_trailer_is_rejected ... ok
[INFO] [stdout] test utils::zlib::tests::a_dynamic_huffman_stream_from_a_real_peer_inflates ... ok
[INFO] [stdout] test utils::zlib::tests::a_reference_stream_inflates ... ok
[INFO] [stdout] test peer::listen::tests::an_already_claimed_download_is_not_reclaimed ... ok
[INFO] [stdout] test utils::zlib::tests::decode_symbol_on_degenerate_tree_errors_instead_of_panicking ... ok
[INFO] [stdout] test peer::listen::tests::an_unregistered_token_gives_up_at_the_deadline ... ok
[INFO] [stdout] test utils::zlib::tests::test_bitreader_read_bits ... ok
[INFO] [stdout] test utils::zlib::tests::test_bitreader_read_bytes ... ok
[INFO] [stdout] test utils::rate_limit::tests::lifting_a_limit_frees_a_take_that_is_waiting ... ok
[INFO] [stdout] test utils::zlib::tests::a_repetitive_listing_shrinks ... ok
[INFO] [stdout] test utils::zlib::tests::test_extract_header_fail_to_short ... ok
[INFO] [stdout] test utils::semaphore::tests::permits_bound_concurrent_holders ... ok
[INFO] [stdout] test utils::rate_limit::tests::a_limit_paces_what_is_taken ... ok
[INFO] [stdout] test utils::rate_limit::tests::concurrent_takers_share_one_budget ... ok
[INFO] [stdout] test peer::listen::tests::the_transfer_token_is_waited_for_across_segments ... ok
[INFO] [stdout] test peer::download_peer::tests::a_pause_is_reported_so_the_stall_budget_restarts ... ok
[INFO] [stdout] test client::tests::transfers::a_cancelled_download_is_not_started_when_the_peer_allows_it ... ok
[INFO] [stdout] test client::tests::transfers::a_replayed_transfer_response_does_not_start_a_second_transfer ... ok
[INFO] [stdout] test utils::zlib::tests::a_payload_that_expands_past_its_ceiling_is_refused ... ok
[INFO] [stdout] test utils::zlib::tests::every_shape_round_trips ... ok
[INFO] [stdout] test peer::listen::tests::an_oversized_handshake_is_rejected ... ok
[INFO] [stdout] test peer::listen::tests::waiting_for_a_transfer_token_stops_at_the_deadline ... ok
[INFO] [stdout] test client::tests::transfers::an_expired_broker_connect_fails_the_queued_downloads ... ok
[INFO] [stdout] test peer::listen::tests::a_dribbling_handshake_hits_the_total_deadline ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 326 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.26s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/e2e.rs (/opt/rustwide/target/debug/deps/e2e-ed99f98dae26fdde)
[INFO] [stdout] 
[INFO] [stdout] running 86 tests
[INFO] [stdout] test a_brokered_dial_we_cannot_complete_tells_the_waiting_peer ... ok
[INFO] [stdout] test a_browse_listing_carries_the_files_attributes ... ok
[INFO] [stdout] test a_cancelled_client_never_binds_its_port ... ok
[INFO] [stdout] test a_cancelled_queued_download_declines_the_peers_offer ... ok
[INFO] [stdout] test a_chat_room_message_is_delivered_between_users ... ok
[INFO] [stdout] test a_client_that_does_not_serve_children_turns_one_away ... ok
[INFO] [stdout] test a_download_speed_limit_paces_a_transfer_until_it_is_lifted ... ok
[INFO] [stdout] test a_changed_password_is_what_the_next_login_needs ... ok
[INFO] [stdout] test a_file_downloads_from_a_firewalled_peer_via_server_broker ... ok
[INFO] [stdout] test a_finished_upload_teaches_us_our_own_recorded_speed ... ok
[INFO] [stdout] test a_cancelled_stalled_download_is_released_promptly ... ok
[INFO] [stdout] test a_cancelled_download_stops_and_drops_its_partial_file ... ok
[INFO] [stdout] test a_file_downloads_from_a_peer_via_direct_connection ... ok
[INFO] [stdout] test a_cancel_ends_a_login_waiting_for_its_verdict_and_nothing_follows_it ... ok
[INFO] [stdout] test a_dropped_client_has_released_its_listener_port_when_drop_returns ... ok
[INFO] [stdout] test a_leaf_adopts_a_parent_and_answers_the_searches_it_passes_down ... ok
[INFO] [stdout] test a_large_listing_travels_compressed ... ok
[INFO] [stdout] test a_private_room_is_owned_granted_and_revoked ... ok
[INFO] [stdout] test a_private_room_someone_else_owns_cannot_be_taken ... ok
[INFO] [stdout] test a_listening_client_reports_the_port_it_bound ... ok
[INFO] [stdout] test a_queued_download_can_ask_where_it_sits ... ok
[INFO] [stdout] test a_member_can_give_up_a_private_room_and_an_owner_can_disband_it ... ok
[INFO] [stdout] test a_parent_tells_a_child_where_it_sits_and_passes_searches_down ... ok
[INFO] [stdout] test a_peer_tells_us_about_itself_when_asked ... ok
[INFO] [stdout] test a_peer_asking_where_it_sits_is_answered_with_its_place ... ok
[INFO] [stdout] test a_peer_that_hangs_up_its_control_connection_still_delivers_the_file ... ok
[INFO] [stdout] test a_ping_leaves_the_session_usable ... ok
[INFO] [stdout] test a_runtime_share_update_is_visible_to_browsers ... ok
[INFO] [stdout] test a_room_search_is_answered_by_the_rooms_members ... ok
[INFO] [stdout] test a_client_joining_later_receives_the_whole_ticker_board ... ok
[INFO] [stdout] test a_search_reply_reports_no_free_slot_while_the_only_slot_is_taken ... ok
[INFO] [stdout] test a_joined_room_reports_its_members_statistics ... ok
[INFO] [stdout] test a_download_completes_when_the_f_connection_beats_token_registration ... ok
[INFO] [stdout] test a_taken_listen_port_does_not_cost_us_the_listener ... ok
[INFO] [stdout] test a_file_downloads_from_a_peer_over_p_and_f_connections ... ok
[INFO] [stdout] test a_shared_mp3_advertises_its_bitrate_and_duration ... ok
[INFO] [stdout] test a_search_reply_carries_at_most_the_file_cap ... ok
[INFO] [stdout] test a_third_party_client_browses_a_large_share ... ok
[INFO] [stdout] test a_second_login_under_one_name_reports_the_first_session_as_lost ... ok
[INFO] [stdout] test a_second_request_waits_when_the_only_upload_slot_is_taken ... ok
[INFO] [stdout] test a_private_message_is_delivered_between_users ... ok
[INFO] [stdout] test a_room_reports_members_arriving_and_leaving ... ok
[INFO] [stdout] test a_third_party_client_browses_our_shares_directly ... ok
[INFO] [stdout] test a_file_downloads_when_the_transfer_token_arrives_late ... ok
[INFO] [stdout] test a_ticker_set_in_a_room_reaches_the_other_members ... ok
[INFO] [stdout] test a_third_party_client_reads_our_user_info ... ok
[INFO] [stdout] test a_user_search_is_answered_by_the_user_it_names ... ok
[INFO] [stdout] test a_user_who_never_logged_in_reads_as_offline ... ok
[INFO] [stdout] test a_third_party_client_fetches_one_folder_of_our_shares ... ok
[INFO] [stdout] test a_wishlist_search_is_answered_like_any_other ... ok
[INFO] [stdout] test an_acknowledged_offline_message_is_not_delivered_twice ... ok
[INFO] [stdout] test an_interrupted_download_resumes_from_its_partial_file ... ok
[INFO] [stdout] test an_unanswered_upload_offer_frees_its_slot ... ok
[INFO] [stdout] test a_search_is_forwarded_to_a_connected_peer ... ok
[INFO] [stdout] test a_third_party_client_browses_our_shares_via_the_server_broker ... ok
[INFO] [stdout] test a_server_announcement_arrives_as_a_message_from_the_server ... ok
[INFO] [stdout] test a_stalled_peer_connection_does_not_wedge_the_listener ... ok
[INFO] [stdout] test an_upload_denied_reply_fails_the_download_quickly ... ok
[INFO] [stdout] test clients_with_distinct_names_search_the_same_sharer_at_once ... ok
[INFO] [stdout] test connect_and_login_succeed ... ok
[INFO] [stdout] test login_succeeds_with_listener_enabled ... ok
[INFO] [stdout] test privileges_can_be_handed_to_another_user ... ok
[INFO] [stdout] test our_interests_are_sent_again_after_a_new_login ... ok
[INFO] [stdout] test registered_username_can_relogin_with_same_password ... ok
[INFO] [stdout] test recommendations_are_returned_for_our_interests ... ok
[INFO] [stdout] test shared_interests_make_two_users_similar ... ok
[INFO] [stdout] test one_message_reaches_several_users_at_once ... ok
[INFO] [stdout] test an_upload_failed_reply_fails_the_download_quickly ... ok
[INFO] [stdout] test going_away_is_visible_to_another_user ... ok
[INFO] [stdout] test the_global_room_feed_carries_a_room_we_never_joined ... ok
[INFO] [stdout] test soulfind_brokers_connect_to_peer_between_users ... ok
[INFO] [stdout] test the_room_list_includes_a_joined_room ... ok
[INFO] [stdout] test the_server_reports_another_users_status_and_share_counts ... ok
[INFO] [stdout] test the_server_answers_how_much_privilege_time_we_have ... ok
[INFO] [stdout] test download_progress_reports_the_rate_actually_received ... ok
[INFO] [stdout] test search_round_trips_without_error ... ok
[INFO] [stdout] test browse_a_firewalled_peer_via_broker ... ok
[INFO] [stdout] test browse_a_peers_shared_files ... ok
[INFO] [stdout] test phrases_the_server_excludes_are_kept_for_our_replies ... ok
[INFO] [stdout] test two_live_searches_never_share_a_token ... ok
[INFO] [stdout] test two_real_clients_search_and_download ... ok
[INFO] [stdout] test watching_a_user_returns_their_status_and_share_counts ... ok
[INFO] [stdout] test one_folder_of_a_peers_shares_can_be_asked_for_by_itself ... ok
[INFO] [stdout] test watching_a_user_the_server_does_not_know_reports_their_absence ... ok
[INFO] [stdout] test a_privileged_peer_overtakes_one_already_waiting_for_a_slot ... ok
[INFO] [stdout] test wrong_password_is_rejected ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 86 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 10.56s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/resume_e2e.rs (/opt/rustwide/target/debug/deps/resume_e2e-1505ac731cac9467)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test an_actual_short_transfer_resumes_opaque_bytes ... ok
[INFO] [stdout] test a_live_download_pauses_and_resumes_on_the_same_connection ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.86s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests examples/stress.rs (/opt/rustwide/target/debug/examples/stress-7d4c959e54fcc97e)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test tests::lost_work_fails_the_gate_but_slow_transfers_do_not ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests soulseek_rs
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test src/../README.md - (line 24) - compile ... ok
[INFO] [stdout] test src/../README.md - (line 61) - compile ... ok
[INFO] [stdout] test src/../README.md - (line 87) - 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.57s; merged doctests compilation took 0.56s
[INFO] running `Command { std: "docker" "inspect" "0be936031bfb49f7f197c21f98506eb00b6ed9ee245635f1340796b896c4f498", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0be936031bfb49f7f197c21f98506eb00b6ed9ee245635f1340796b896c4f498", kill_on_drop: false }`
[INFO] [stdout] 0be936031bfb49f7f197c21f98506eb00b6ed9ee245635f1340796b896c4f498
