[INFO] cloning repository https://github.com/Sir-Henry-Curtis/sharepoint_rest_api-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Sir-Henry-Curtis/sharepoint_rest_api-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSir-Henry-Curtis%2Fsharepoint_rest_api-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSir-Henry-Curtis%2Fsharepoint_rest_api-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 750ccb4d66cd36c53a22231bb669ca3e44d8474b
[INFO] testing Sir-Henry-Curtis/sharepoint_rest_api-rs against 1.98.0-beta.1 for beta-1.98-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSir-Henry-Curtis%2Fsharepoint_rest_api-rs" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Sir-Henry-Curtis/sharepoint_rest_api-rs
[INFO] removed 0 missing tests
[INFO] finished tweaking git repo https://github.com/Sir-Henry-Curtis/sharepoint_rest_api-rs
[INFO] tweaked toml for git repo https://github.com/Sir-Henry-Curtis/sharepoint_rest_api-rs written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Sir-Henry-Curtis/sharepoint_rest_api-rs on toolchain 1.98.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Sir-Henry-Curtis/sharepoint_rest_api-rs 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.98.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 4c59b836fb0294465ee4f85658e2e7678ef9fd9b6b9c5749c9be6f0642c55acd
[INFO] running `Command { std: "docker" "start" "4c59b836fb0294465ee4f85658e2e7678ef9fd9b6b9c5749c9be6f0642c55acd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4c59b836fb0294465ee4f85658e2e7678ef9fd9b6b9c5749c9be6f0642c55acd", 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" "4c59b836fb0294465ee4f85658e2e7678ef9fd9b6b9c5749c9be6f0642c55acd" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4c59b836fb0294465ee4f85658e2e7678ef9fd9b6b9c5749c9be6f0642c55acd", 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" "4c59b836fb0294465ee4f85658e2e7678ef9fd9b6b9c5749c9be6f0642c55acd" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling cc v1.2.62
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling pkg-config v0.3.33
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling http v1.4.0
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling yoke v0.8.2
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling openssl-sys v0.9.116
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]    Compiling deranged v0.5.8
[INFO] [stderr]    Compiling rustls-pki-types v1.14.1
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling openssl v0.10.80
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling rustls v0.23.40
[INFO] [stderr]    Compiling native-tls v0.2.18
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling cookie v0.18.1
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling unicase v2.9.0
[INFO] [stderr]    Compiling compression-core v0.4.32
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling ref-cast v1.0.25
[INFO] [stderr]    Compiling compression-codecs v0.4.38
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling rustls-webpki v0.103.13
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling ref-cast-impl v1.0.25
[INFO] [stderr]    Compiling h2 v0.4.14
[INFO] [stderr]    Compiling serde_derive_internals v0.29.1
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]    Compiling psl-types v2.0.11
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling litrs v1.0.0
[INFO] [stderr]    Compiling publicsuffix v2.3.0
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling schemars_derive v1.2.1
[INFO] [stderr]    Compiling document-features v0.2.12
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling async-compression v0.4.42
[INFO] [stderr]    Compiling webpki-roots v1.0.7
[INFO] [stderr]    Compiling dyn-clone v1.0.20
[INFO] [stderr]    Compiling rmcp v1.7.0
[INFO] [stderr]    Compiling schemars v1.2.1
[INFO] [stderr]    Compiling rmcp-macros v1.7.0
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling simple_asn1 v0.6.4
[INFO] [stderr]    Compiling cookie_store v0.22.1
[INFO] [stderr]    Compiling tower-http v0.6.11
[INFO] [stderr]    Compiling hyper v1.9.0
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling pem v3.0.6
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling pastey v0.2.3
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling jsonwebtoken v9.3.1
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling hyper-rustls v0.27.9
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling sharepoint-mcp v3.3.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 45s
[INFO] running `Command { std: "docker" "inspect" "4c59b836fb0294465ee4f85658e2e7678ef9fd9b6b9c5749c9be6f0642c55acd", 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" "4c59b836fb0294465ee4f85658e2e7678ef9fd9b6b9c5749c9be6f0642c55acd" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling deadpool-runtime v0.1.4
[INFO] [stderr]    Compiling assert-json-diff v2.0.2
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling async-compression v0.4.42
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling deadpool v0.12.3
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling tokio-test v0.4.5
[INFO] [stderr]    Compiling h2 v0.4.14
[INFO] [stderr]    Compiling tower-http v0.6.11
[INFO] [stderr]    Compiling rmcp v1.7.0
[INFO] [stderr]    Compiling hyper v1.9.0
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling hyper-rustls v0.27.9
[INFO] [stderr]    Compiling wiremock v0.6.5
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling sharepoint-mcp v3.3.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2m 08s
[INFO] running `Command { std: "docker" "inspect" "4c59b836fb0294465ee4f85658e2e7678ef9fd9b6b9c5749c9be6f0642c55acd", 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" "4c59b836fb0294465ee4f85658e2e7678ef9fd9b6b9c5749c9be6f0642c55acd" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.48s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/sharepoint_mcp-a8f5b57d4cb96f9b)
[INFO] [stdout] 
[INFO] [stdout] running 180 tests
[INFO] [stdout] test client::admin::tests::admin_api_derives_admin_url_for_spo ... ok
[INFO] [stdout] test client::admin::tests::admin_api_falls_back_for_on_prem ... ok
[INFO] [stdout] test client::batch::tests::batch_builder_accumulates_ops ... ok
[INFO] [stdout] test client::batch::tests::extract_boundary_parses_quoted ... ok
[INFO] [stdout] test client::batch::tests::extract_boundary_parses_unquoted ... ok
[INFO] [stdout] test client::batch::tests::parse_batch_response_mixed_status ... ok
[INFO] [stdout] test client::batch::tests::parse_batch_response_single_ok ... ok
[INFO] [stdout] test client::admin::tests::list_tenant_apps_returns_vec ... ok
[INFO] [stdout] test client::admin::tests::get_tenant_theme_options_returns_value ... ok
[INFO] [stdout] test client::analytics::tests::get_item_record_status_returns_value ... ok
[INFO] [stdout] test client::analytics::tests::get_audit_settings_returns_value ... ok
[INFO] [stdout] test client::cards::tests::is_text_extractable_known_types ... ok
[INFO] [stdout] test client::admin::tests::get_tenant_app_returns_item ... ok
[INFO] [stdout] test client::cards::tests::moderation_label_values ... ok
[INFO] [stdout] test client::cards::tests::parse_sp_timestamp_invalid ... ok
[INFO] [stdout] test client::cards::tests::parse_sp_timestamp_without_z ... ok
[INFO] [stdout] test client::cards::tests::parse_sp_timestamp_valid ... ok
[INFO] [stdout] test client::cards::tests::strip_html_empty_and_plain ... ok
[INFO] [stdout] test client::cards::tests::strip_html_removes_tags ... ok
[INFO] [stdout] test client::admin::tests::get_site_storage_metrics_returns_value ... ok
[INFO] [stdout] test client::analytics::tests::get_site_usage_returns_value ... ok
[INFO] [stdout] test client::cards::tests::extract_text_reads_plain_text ... ok
[INFO] [stdout] test client::cards::tests::extract_text_truncates_at_max_chars ... ok
[INFO] [stdout] test client::cards::tests::search_cards_shapes_results ... ok
[INFO] [stdout] test client::cards::tests::extract_text_unsupported_skips_network ... ok
[INFO] [stdout] test client::cards::tests::search_cards_empty_results ... ok
[INFO] [stdout] test client::cards::tests::text_chunks_first_and_second_chunk ... ok
[INFO] [stdout] test client::cards::tests::text_chunks_last_chunk_smaller ... ok
[INFO] [stdout] test client::cards::tests::text_chunks_out_of_range_errors ... ok
[INFO] [stdout] test client::cards::tests::text_chunks_unsupported_type_errors ... ok
[INFO] [stdout] test client::changes::tests::get_list_items_since_token_returns_xml_string ... ok
[INFO] [stdout] test client::changes::tests::get_list_changes_returns_vec ... ok
[INFO] [stdout] test client::customactions::tests::add_web_custom_action_posts_body ... ok
[INFO] [stdout] test client::customactions::tests::get_site_custom_actions_returns_vec ... ok
[INFO] [stdout] test client::files::tests::get_file_by_resource_path_uses_decoded_url_endpoint ... ok
[INFO] [stdout] test client::files::tests::new_guid_looks_like_uuid ... ok
[INFO] [stdout] test client::customactions::tests::get_web_custom_actions_returns_vec ... ok
[INFO] [stdout] test client::files::tests::get_file_content_returns_base64 ... ok
[INFO] [stdout] test client::files::tests::get_file_content_by_absolute_url_returns_base64 ... ok
[INFO] [stdout] test client::files::tests::get_file_versions_returns_vec ... ok
[INFO] [stdout] test client::files::tests::get_file_returns_metadata ... ok
[INFO] [stdout] test client::files::tests::get_folder_files_recursive_traverses_subfolders ... ok
[INFO] [stdout] test client::files::tests::get_folder_files_returns_vec ... ok
[INFO] [stdout] test client::files::tests::recycle_file_calls_recycle_endpoint ... ok
[INFO] [stdout] test client::files::tests::wopi_frame_url_view ... ok
[INFO] [stdout] test client::flows::tests::trigger_flow_posts_and_returns_202 ... ok
[INFO] [stdout] test client::flows::tests::trigger_flow_returns_err_on_403 ... ok
[INFO] [stdout] test client::flows::tests::trigger_flow_returns_json_body_on_200 ... ok
[INFO] [stdout] test client::items::tests::create_item_auto_fetches_entity_type ... ok
[INFO] [stdout] test client::items::tests::get_item_by_id ... ok
[INFO] [stdout] test client::items::tests::delete_item_etag_sends_specific_etag ... ok
[INFO] [stdout] test client::items::tests::get_item_attachments_returns_vec ... ok
[INFO] [stdout] test client::items::tests::get_item_versions_returns_vec ... ok
[INFO] [stdout] test client::items::tests::get_items_by_caml_returns_vec ... ok
[INFO] [stdout] test client::items::tests::get_items_returns_vec ... ok
[INFO] [stdout] test client::items::tests::update_item_merge_sends_x_http_method_merge ... ok
[INFO] [stdout] test client::lists::tests::get_list_fields_returns_vec ... ok
[INFO] [stdout] test client::lists::tests::get_list_by_id_unwraps_d ... ok
[INFO] [stdout] test client::lists::tests::get_list_unwraps_d ... ok
[INFO] [stdout] test client::lists::tests::create_list_sends_post_with_digest ... ok
[INFO] [stdout] test client::planner::tests::decode_base_permissions_empty_mask ... ok
[INFO] [stdout] test client::planner::tests::decode_base_permissions_read_only ... ok
[INFO] [stdout] test client::planner::tests::decode_base_permissions_full_mask ... ok
[INFO] [stdout] test client::planner::tests::field_hint_choice ... ok
[INFO] [stdout] test client::planner::tests::field_hint_lookup ... ok
[INFO] [stdout] test client::planner::tests::field_type_name_known_values ... ok
[INFO] [stdout] test client::planner::tests::permission_summary_note_levels ... ok
[INFO] [stdout] test client::lists::tests::get_lists_returns_vec ... ok
[INFO] [stdout] test client::pages::tests::get_content_approval_report_returns_counts ... ok
[INFO] [stdout] test client::resolver::tests::extracts_path_from_absolute_url ... ok
[INFO] [stdout] test client::resolver::tests::handle_with_special_chars_round_trips ... ok
[INFO] [stdout] test client::pages::tests::get_page_comments_returns_list ... ok
[INFO] [stdout] test client::pages::tests::get_page_returns_item ... ok
[INFO] [stdout] test client::resolver::tests::make_and_parse_single_value_handle ... ok
[INFO] [stdout] test client::resolver::tests::make_and_parse_two_value_handle ... ok
[INFO] [stdout] test client::resolver::tests::parse_handle_invalid_prefix_returns_none ... ok
[INFO] [stdout] test client::resolver::tests::passthrough_when_already_relative ... ok
[INFO] [stdout] test client::pages::tests::list_page_web_parts_parses_canvas ... ok
[INFO] [stdout] test client::pages::tests::promote_page_as_news_patches_field ... ok
[INFO] [stdout] test client::resolver::tests::returns_none_for_bare_hostname ... ok
[INFO] [stdout] test client::resolver::tests::similarity_all_words ... ok
[INFO] [stdout] test client::resolver::tests::similarity_exact_is_one ... ok
[INFO] [stdout] test client::profiles::tests::get_my_profile_returns_d ... ok
[INFO] [stdout] test client::resolver::tests::similarity_no_match_is_zero ... ok
[INFO] [stdout] test client::resolver::tests::similarity_partial_words ... ok
[INFO] [stdout] test client::resolver::tests::similarity_substring_match ... ok
[INFO] [stdout] test client::planner::tests::describe_list_shapes_fields ... ok
[INFO] [stdout] test client::resolver::tests::similarity_prefix_match ... ok
[INFO] [stdout] test client::planner::tests::validate_item_fields_catches_bad_choice ... ok
[INFO] [stdout] test client::resolver::tests::resolve_lists_returns_ranked_candidates ... ok
[INFO] [stdout] test client::resolver::tests::inspect_handle_rejects_invalid_handle ... ok
[INFO] [stdout] test client::resolver::tests::inspect_handle_for_list ... ok
[INFO] [stdout] test client::resolver::tests::resolve_lists_truncates_to_max ... ok
[INFO] [stdout] test client::search::tests::search_returns_empty_on_no_results ... ok
[INFO] [stdout] test client::search::tests::search_returns_rows ... ok
[INFO] [stdout] test client::sites::tests::get_site_properties_unwraps_d ... ok
[INFO] [stdout] test client::sites::tests::get_web_returns_title ... ok
[INFO] [stdout] test client::tests::digest_cache_not_expired_immediately ... ok
[INFO] [stdout] test client::sites::tests::get_webs_returns_array ... ok
[INFO] [stdout] test client::taxonomy::tests::create_term_group_posts_display_name ... ok
[INFO] [stdout] test client::taxonomy::tests::get_term_children_returns_vec ... ok
[INFO] [stdout] test client::taxonomy::tests::get_term_set_returns_value ... ok
[INFO] [stdout] test client::taxonomy::tests::get_terms_returns_vec ... ok
[INFO] [stdout] test client::taxonomy::tests::get_term_store_groups_returns_vec ... ok
[INFO] [stdout] test client::taxonomy::tests::search_terms_posts_label ... ok
[INFO] [stdout] test client::tests::get_204_returns_null ... ok
[INFO] [stdout] test client::tests::get_returns_http_error_on_4xx ... ok
[INFO] [stdout] test client::tests::get_returns_json ... ok
[INFO] [stdout] test client::tests::unwrap_d_null_passthrough ... ok
[INFO] [stdout] test client::tests::unwrap_d_odata_object ... ok
[INFO] [stdout] test client::tests::unwrap_d_odata_results_array ... ok
[INFO] [stdout] test client::tests::unwrap_d_plain_object ... ok
[INFO] [stdout] test client::tests::unwrap_results_empty_on_null ... ok
[INFO] [stdout] test client::tests::unwrap_results_empty_on_object ... ok
[INFO] [stdout] test client::tests::unwrap_results_from_odata ... ok
[INFO] [stdout] test client::tests::get_403_invalidates_digest ... ok
[INFO] [stdout] test client::tests::invalidate_digest_clears_cache ... ok
[INFO] [stdout] test client::tests::post_sends_x_request_digest_header ... ok
[INFO] [stdout] test config::tests::api_url_appends_api ... ok
[INFO] [stdout] test config::tests::from_env_azure_ad_auth ... ok
[INFO] [stdout] test config::tests::from_env_azure_ad_missing_client_id_errors ... ok
[INFO] [stdout] test config::tests::from_env_azure_ad_missing_secret_errors_with_hint ... ok
[INFO] [stdout] test config::tests::from_env_azure_ad_with_authority_and_scope ... ok
[INFO] [stdout] test config::tests::from_env_basic_auth ... ok
[INFO] [stdout] test config::tests::from_env_basic_url ... ok
[INFO] [stdout] test config::tests::from_env_bearer_auth ... ok
[INFO] [stdout] test config::tests::from_env_bearer_takes_priority_over_azure_ad ... ok
[INFO] [stdout] test config::tests::from_env_certificate_auth ... ok
[INFO] [stdout] test config::tests::from_env_certificate_missing_thumbprint_errors ... ok
[INFO] [stdout] test config::tests::from_env_certificate_takes_priority_over_secret ... ok
[INFO] [stdout] test config::tests::from_env_cookie_auth ... ok
[INFO] [stdout] test config::tests::from_env_pool_defaults ... ok
[INFO] [stdout] test config::tests::from_env_pool_tuning ... ok
[INFO] [stdout] test config::tests::from_env_read_only_false_by_default ... ok
[INFO] [stdout] test client::tests::request_digest_is_cached ... ok
[INFO] [stdout] test config::tests::from_env_read_only_true_string ... ok
[INFO] [stdout] test client::tests::request_digest_parses_value ... ok
[INFO] [stdout] test config::tests::from_env_requires_url ... ok
[INFO] [stdout] test config::tests::from_env_strips_trailing_slash ... ok
[INFO] [stdout] test device_code::tests::aad_error_hint_classifies_known_codes ... ok
[INFO] [stdout] test config::tests::from_env_read_only_true_one ... ok
[INFO] [stdout] test client::tests::no_retry_when_max_retries_zero ... ok
[INFO] [stdout] test client::workflows::tests::get_list_item_workflow_instances_returns_vec ... ok
[INFO] [stdout] test error::tests::extract_odata_error_flat_message ... ok
[INFO] [stdout] test error::tests::extract_odata_error_non_error_body ... ok
[INFO] [stdout] test client::workflows::tests::get_list_workflow_associations_returns_vec ... ok
[INFO] [stdout] test error::tests::extract_odata_error_standard_format ... ok
[INFO] [stdout] test error::tests::http_error_display ... ok
[INFO] [stdout] test error::tests::is_precondition_failed_http ... ok
[INFO] [stdout] test client::workflows::tests::get_workflow_templates_returns_vec ... ok
[INFO] [stdout] test error::tests::is_throttled ... ok
[INFO] [stdout] test error::tests::json_error_from ... ok
[INFO] [stdout] test error::tests::odata_code_accessor ... ok
[INFO] [stdout] test error::tests::odata_error_display ... ok
[INFO] [stdout] test error::tests::sharepoint_error_display ... ok
[INFO] [stdout] test error::tests::sp_constructor ... ok
[INFO] [stdout] test model::tests::deserialise_sp_file ... ok
[INFO] [stdout] test model::tests::deserialise_sp_list_item_id ... ok
[INFO] [stdout] test model::tests::deserialise_sp_user ... ok
[INFO] [stdout] test model::tests::deserialise_sp_web ... ok
[INFO] [stdout] test odata_validator::tests::expand_valid ... ok
[INFO] [stdout] test odata_validator::tests::filter_blank_errors ... ok
[INFO] [stdout] test odata_validator::tests::filter_escaped_quote_is_ok ... ok
[INFO] [stdout] test odata_validator::tests::filter_unbalanced_quote_errors ... ok
[INFO] [stdout] test error::tests::is_not_found ... ok
[INFO] [stdout] test odata_validator::tests::orderby_empty_field_errors ... ok
[INFO] [stdout] test odata_validator::tests::filter_valid ... ok
[INFO] [stdout] test error::tests::is_precondition_failed_odata ... ok
[INFO] [stdout] test odata_validator::tests::orderby_invalid_direction_errors ... ok
[INFO] [stdout] test odata_validator::tests::select_blank_errors ... ok
[INFO] [stdout] test odata_validator::tests::select_trailing_comma_errors ... ok
[INFO] [stdout] test odata_validator::tests::select_valid ... ok
[INFO] [stdout] test odata_validator::tests::validate_odata_params_all_none_ok ... ok
[INFO] [stdout] test odata_validator::tests::validate_odata_params_stops_at_first_error ... ok
[INFO] [stdout] test odata_validator::tests::orderby_valid ... ok
[INFO] [stdout] test device_code::tests::begin_device_code_flow_parses_response ... ok
[INFO] [stdout] test device_code::tests::poll_device_code_token_returns_none_when_pending ... ok
[INFO] [stdout] test device_code::tests::poll_device_code_token_errors_on_declined ... ok
[INFO] [stdout] test device_code::tests::poll_device_code_token_returns_token_when_authorized ... ok
[INFO] [stdout] test client::tests::retries_on_503_then_succeeds ... ok
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/sharepoint_mcp-a242382ca09cdc03)
[INFO] [stdout] 
[INFO] [stderr]      Running tests/mcp_server_cli.rs (/opt/rustwide/target/debug/deps/mcp_server_cli-2a04d15a54a06fbf)
[INFO] [stdout] test result: ok. 180 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 6.44s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] starting MCP server: /opt/rustwide/target/debug/sharepoint-mcp
[INFO] [stderr] Error: SharePoint error: SHAREPOINT_URL environment variable is required
[INFO] [stderr] 
[INFO] [stderr] Stack backtrace:
[INFO] [stderr]    0: <anyhow::Error as core::convert::From<sharepoint_mcp::error::SpError>>::from
[INFO] [stderr]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/backtrace.rs:10:14
[INFO] [stderr]    1: <core::result::Result<(), anyhow::Error> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible, sharepoint_mcp::error::SpError>>>::from_residual
[INFO] [stderr]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:2192:27
[INFO] [stderr]    2: sharepoint_mcp::main::{closure#0}
[INFO] [stderr]              at ./src/main.rs:18:18
[INFO] [stderr]    3: <core::pin::Pin<alloc::boxed::Box<sharepoint_mcp::main::{closure#0}>> as core::future::future::Future>::poll
[INFO] [stderr]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/future/future.rs:133:9
[INFO] [stderr]    4: <tokio::runtime::park::CachedParkThread>::block_on::<core::pin::Pin<alloc::boxed::Box<sharepoint_mcp::main::{closure#0}>>>::{closure#0}
[INFO] [stderr]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/park.rs:284:71
[INFO] [stderr]    5: tokio::task::coop::with_budget::<core::task::poll::Poll<core::result::Result<(), anyhow::Error>>, <tokio::runtime::park::CachedParkThread>::block_on<core::pin::Pin<alloc::boxed::Box<sharepoint_mcp::main::{closure#0}>>>::{closure#0}>
[INFO] [stderr]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/task/coop/mod.rs:167:5
[INFO] [stderr]    6: tokio::task::coop::budget::<core::task::poll::Poll<core::result::Result<(), anyhow::Error>>, <tokio::runtime::park::CachedParkThread>::block_on<core::pin::Pin<alloc::boxed::Box<sharepoint_mcp::main::{closure#0}>>>::{closure#0}>
[INFO] [stderr]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/task/coop/mod.rs:133:5
[INFO] [stderr]    7: <tokio::runtime::park::CachedParkThread>::block_on::<core::pin::Pin<alloc::boxed::Box<sharepoint_mcp::main::{closure#0}>>>
[INFO] [stderr]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/park.rs:284:31
[INFO] [stderr]    8: <tokio::runtime::context::blocking::BlockingRegionGuard>::block_on::<core::pin::Pin<alloc::boxed::Box<sharepoint_mcp::main::{closure#0}>>>
[INFO] [stderr]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/context/blocking.rs:66:14
[INFO] [stderr]    9: <tokio::runtime::scheduler::multi_thread::MultiThread>::block_on::<core::pin::Pin<alloc::boxed::Box<sharepoint_mcp::main::{closure#0}>>>::{closure#0}
[INFO] [stderr]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/scheduler/multi_thread/mod.rs:92:22
[INFO] [stderr]   10: tokio::runtime::context::runtime::enter_runtime::<<tokio::runtime::scheduler::multi_thread::MultiThread>::block_on<core::pin::Pin<alloc::boxed::Box<sharepoint_mcp::main::{closure#0}>>>::{closure#0}, core::result::Result<(), anyhow::Error>>
[INFO] [stderr]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/context/runtime.rs:65:16
[INFO] [stderr]   11: <tokio::runtime::scheduler::multi_thread::MultiThread>::block_on::<core::pin::Pin<alloc::boxed::Box<sharepoint_mcp::main::{closure#0}>>>
[INFO] [stderr]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/scheduler/multi_thread/mod.rs:91:9
[INFO] [stderr]   12: <tokio::runtime::runtime::Runtime>::block_on_inner::<core::pin::Pin<alloc::boxed::Box<sharepoint_mcp::main::{closure#0}>>>
[INFO] [stderr]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/runtime.rs:373:50
[INFO] [stderr]   13: <tokio::runtime::runtime::Runtime>::block_on::<sharepoint_mcp::main::{closure#0}>
[INFO] [stderr]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/runtime.rs:343:18
[INFO] [stderr]   14: sharepoint_mcp::main
[INFO] [stderr]              at ./src/main.rs:42:7
[INFO] [stderr]   15: <fn() -> core::result::Result<(), anyhow::Error> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stderr]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stderr]   16: std::sys::backtrace::__rust_begin_short_backtrace::<fn() -> core::result::Result<(), anyhow::Error>, core::result::Result<(), anyhow::Error>>
[INFO] [stderr]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stderr]   17: std::rt::lang_start::<core::result::Result<(), anyhow::Error>>::{closure#0}
[INFO] [stderr]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/rt.rs:206:18
[INFO] [stderr]   18: <&dyn core::ops::function::Fn<(), Output = i32> + core::panic::unwind_safe::RefUnwindSafe + core::marker::Sync as core::ops::function::FnOnce<()>>::call_once
[INFO] [stderr]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:287:21
[INFO] [stderr]   19: std::panicking::catch_unwind::do_call::<&dyn core::ops::function::Fn<(), Output = i32> + core::panic::unwind_safe::RefUnwindSafe + core::marker::Sync, i32>
[INFO] [stderr]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stderr]   20: std::panicking::catch_unwind::<i32, &dyn core::ops::function::Fn<(), Output = i32> + core::panic::unwind_safe::RefUnwindSafe + core::marker::Sync>
[INFO] [stderr]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stderr]   21: std::panic::catch_unwind::<&dyn core::ops::function::Fn<(), Output = i32> + core::panic::unwind_safe::RefUnwindSafe + core::marker::Sync, i32>
[INFO] [stderr]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stderr]   22: std::rt::lang_start_internal::{closure#0}
[INFO] [stderr]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/rt.rs:175:24
[INFO] [stderr]   23: std::panicking::catch_unwind::do_call::<std::rt::lang_start_internal::{closure#0}, isize>
[INFO] [stderr]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stderr]   24: std::panicking::catch_unwind::<isize, std::rt::lang_start_internal::{closure#0}>
[INFO] [stderr]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stderr]   25: std::panic::catch_unwind::<std::rt::lang_start_internal::{closure#0}, isize>
[INFO] [stderr]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stderr]   26: std::rt::lang_start_internal
[INFO] [stderr]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/rt.rs:171:5
[INFO] [stderr]   27: std::rt::lang_start::<core::result::Result<(), anyhow::Error>>
[INFO] [stderr]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/rt.rs:205:5
[INFO] [stderr]   28: main
[INFO] [stderr]   29: <unknown>
[INFO] [stderr]   30: __libc_start_main
[INFO] [stderr]   31: _start
[INFO] [stderr] mcp server cli failed: MCP server stdout closed
[INFO] [stderr] error: test failed, to rerun pass `--test mcp_server_cli`
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/target/debug/deps/mcp_server_cli-2a04d15a54a06fbf` (exit status: 1)
[INFO] running `Command { std: "docker" "inspect" "4c59b836fb0294465ee4f85658e2e7678ef9fd9b6b9c5749c9be6f0642c55acd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4c59b836fb0294465ee4f85658e2e7678ef9fd9b6b9c5749c9be6f0642c55acd", kill_on_drop: false }`
[INFO] [stdout] 4c59b836fb0294465ee4f85658e2e7678ef9fd9b6b9c5749c9be6f0642c55acd
