[INFO] cloning repository https://github.com/v0l/nostr-api
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/v0l/nostr-api" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fv0l%2Fnostr-api", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fv0l%2Fnostr-api'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] cb8eafc838d1e38dad2d68a2d3289d5a8b199c7b
[INFO] testing v0l/nostr-api against 1.97.0-beta.6 for beta-1.98-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fv0l%2Fnostr-api" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/v0l/nostr-api
[INFO] finished tweaking git repo https://github.com/v0l/nostr-api
[INFO] tweaked toml for git repo https://github.com/v0l/nostr-api written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/v0l/nostr-api on toolchain 1.97.0-beta.6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/v0l/nostr-api 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.97.0-beta.6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded selectors v0.33.0
[INFO] [stderr]   Downloaded dtoa v1.0.10
[INFO] [stderr]   Downloaded scraper v0.25.0
[INFO] [stderr]   Downloaded markup5ever v0.36.1
[INFO] [stderr]   Downloaded web_atoms v0.2.3
[INFO] [stderr]   Downloaded derive_more-impl v2.1.0
[INFO] [stderr]   Downloaded html5ever v0.36.1
[INFO] [stderr]   Downloaded derive_more v2.1.0
[INFO] [stderr]   Downloaded nostr-relay-pool v0.44.0
[INFO] [stderr]   Downloaded secp256k1 v0.29.1
[INFO] [stderr]   Downloaded nostr-database v0.44.0
[INFO] [stderr]   Downloaded nostr-sdk v0.44.1
[INFO] [stderr]   Downloaded nostr v0.44.2
[INFO] [stderr]   Downloaded bitcoin-io v0.1.4
[INFO] [stderr]   Downloaded negentropy v0.5.0
[INFO] [stderr]   Downloaded tokio-socks v0.5.2
[INFO] [stderr]   Downloaded async-utility v0.3.1
[INFO] [stderr]   Downloaded tokio-tungstenite v0.26.2
[INFO] [stderr]   Downloaded hex-conservative v0.2.2
[INFO] [stderr]   Downloaded atomic-destructor v0.3.0
[INFO] [stderr]   Downloaded async-wsocket v0.13.1
[INFO] [stderr]   Downloaded bitcoin_hashes v0.14.1
[INFO] [stderr]   Downloaded bech32 v0.11.1
[INFO] [stderr]   Downloaded tungstenite v0.26.2
[INFO] [stderr]   Downloaded nostr-gossip v0.44.0
[INFO] [stderr]   Downloaded bip39 v2.2.2
[INFO] [stderr]   Downloaded jiff-static v0.2.16
[INFO] [stderr]   Downloaded config v0.15.19
[INFO] [stderr]   Downloaded erased-serde v0.4.9
[INFO] [stderr]   Downloaded moka v0.12.11
[INFO] [stderr]   Downloaded ron v0.12.0
[INFO] [stderr]   Downloaded jiff v0.2.16
[INFO] [stderr]   Downloaded secp256k1-sys v0.10.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 23a0ab57ef88c2b07c74bbdef85b5cb0fc15bd2b3a0cd9ead0ac3f7c66145da5
[INFO] running `Command { std: "docker" "start" "23a0ab57ef88c2b07c74bbdef85b5cb0fc15bd2b3a0cd9ead0ac3f7c66145da5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "23a0ab57ef88c2b07c74bbdef85b5cb0fc15bd2b3a0cd9ead0ac3f7c66145da5", 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" "23a0ab57ef88c2b07c74bbdef85b5cb0fc15bd2b3a0cd9ead0ac3f7c66145da5" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "23a0ab57ef88c2b07c74bbdef85b5cb0fc15bd2b3a0cd9ead0ac3f7c66145da5", 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" "23a0ab57ef88c2b07c74bbdef85b5cb0fc15bd2b3a0cd9ead0ac3f7c66145da5" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.103
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling siphasher v1.0.1
[INFO] [stderr]    Compiling zerocopy v0.8.31
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling rustls-pki-types v1.13.2
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling rustls v0.23.35
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling ryu v1.0.21
[INFO] [stderr]    Compiling crunchy v0.2.4
[INFO] [stderr]    Compiling tiny-keccak v2.0.2
[INFO] [stderr]    Compiling new_debug_unreachable v1.0.6
[INFO] [stderr]    Compiling bitcoin-io v0.1.4
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling hex-conservative v0.2.2
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling cc v1.2.50
[INFO] [stderr]    Compiling rand_core v0.9.3
[INFO] [stderr]    Compiling phf_shared v0.13.1
[INFO] [stderr]    Compiling precomputed-hash v0.1.1
[INFO] [stderr]    Compiling ucd-trie v0.1.7
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling webpki-roots v1.0.4
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling bech32 v0.11.1
[INFO] [stderr]    Compiling mac v0.1.1
[INFO] [stderr]    Compiling futf v0.1.5
[INFO] [stderr]    Compiling quote v1.0.42
[INFO] [stderr]    Compiling phf_generator v0.13.1
[INFO] [stderr]    Compiling webpki-roots v0.26.11
[INFO] [stderr]    Compiling string_cache v0.9.0
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling syn v2.0.111
[INFO] [stderr]    Compiling const-random-macro v0.1.16
[INFO] [stderr]    Compiling dtoa v1.0.10
[INFO] [stderr]    Compiling pest v2.8.4
[INFO] [stderr]    Compiling erased-serde v0.4.9
[INFO] [stderr]    Compiling phf_codegen v0.13.1
[INFO] [stderr]    Compiling string_cache_codegen v0.6.1
[INFO] [stderr]    Compiling dtoa-short v0.3.5
[INFO] [stderr]    Compiling event-listener v5.4.1
[INFO] [stderr]    Compiling tendril v0.4.3
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling multer v3.1.0
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling lru v0.16.2
[INFO] [stderr]    Compiling portable-atomic v1.12.0
[INFO] [stderr]    Compiling selectors v0.33.0
[INFO] [stderr]    Compiling toml_parser v1.0.6+spec-1.1.0
[INFO] [stderr]    Compiling const-random v0.1.18
[INFO] [stderr]    Compiling dlv-list v0.5.2
[INFO] [stderr]    Compiling rustls-native-certs v0.8.3
[INFO] [stderr]    Compiling hashlink v0.10.0
[INFO] [stderr]    Compiling servo_arc v0.4.3
[INFO] [stderr]    Compiling event-listener-strategy v0.5.4
[INFO] [stderr]    Compiling web_atoms v0.2.3
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling atomic-destructor v0.3.0
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling moka v0.12.11
[INFO] [stderr]    Compiling negentropy v0.5.0
[INFO] [stderr]    Compiling arraydeque v0.5.1
[INFO] [stderr]    Compiling anstream v0.6.21
[INFO] [stderr]    Compiling convert_case v0.6.0
[INFO] [stderr]    Compiling async-lock v3.4.1
[INFO] [stderr]    Compiling yaml-rust2 v0.10.4
[INFO] [stderr]    Compiling axum-core v0.5.6
[INFO] [stderr]    Compiling cmake v0.1.57
[INFO] [stderr]    Compiling ordered-multimap v0.7.3
[INFO] [stderr]    Compiling getopts v0.2.24
[INFO] [stderr]    Compiling uuid v1.19.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling rust-ini v0.21.3
[INFO] [stderr]    Compiling jiff v0.2.16
[INFO] [stderr]    Compiling tagptr v0.2.0
[INFO] [stderr]    Compiling ego-tree v0.10.0
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling pest_meta v2.8.4
[INFO] [stderr]    Compiling aws-lc-sys v0.38.0
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling secp256k1-sys v0.10.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling bitflags v2.10.0
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling toml_datetime v0.7.5+spec-1.1.0
[INFO] [stderr]    Compiling serde_spanned v1.0.4
[INFO] [stderr]    Compiling regex v1.12.2
[INFO] [stderr]    Compiling serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling toml v0.9.10+spec-1.1.0
[INFO] [stderr]    Compiling env_filter v0.1.4
[INFO] [stderr]    Compiling serde-untagged v0.1.9
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling pest_generator v2.8.4
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling phf_macros v0.13.1
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling derive_more-impl v2.1.0
[INFO] [stderr]    Compiling cssparser-macros v0.6.1
[INFO] [stderr]    Compiling tokio v1.48.0
[INFO] [stderr]    Compiling pest_derive v2.8.4
[INFO] [stderr]    Compiling phf v0.13.1
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling cssparser v0.36.0
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling derive_more v2.1.0
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]    Compiling markup5ever v0.36.1
[INFO] [stderr]    Compiling env_logger v0.11.8
[INFO] [stderr]    Compiling html5ever v0.36.1
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling scraper v0.25.0
[INFO] [stderr]    Compiling secp256k1 v0.29.1
[INFO] [stderr]    Compiling bitcoin_hashes v0.14.1
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling json5 v0.4.1
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling ron v0.12.0
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling config v0.15.19
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.7
[INFO] [stderr]    Compiling nostr v0.44.2
[INFO] [stderr]    Compiling tokio-util v0.7.17
[INFO] [stderr]    Compiling tower v0.5.2
[INFO] [stderr]    Compiling tokio-socks v0.5.2
[INFO] [stderr]    Compiling async-utility v0.3.1
[INFO] [stderr]    Compiling h2 v0.4.12
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling aws-lc-rs v1.16.1
[INFO] [stderr]    Compiling nostr-database v0.44.0
[INFO] [stderr]    Compiling nostr-gossip v0.44.0
[INFO] [stderr]    Compiling rustls-webpki v0.103.8
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling hyper-util v0.1.19
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling tungstenite v0.26.2
[INFO] [stderr]    Compiling rustls-platform-verifier v0.6.2
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling axum v0.8.8
[INFO] [stderr]    Compiling reqwest v0.13.2
[INFO] [stderr]    Compiling tokio-tungstenite v0.26.2
[INFO] [stderr]    Compiling async-wsocket v0.13.1
[INFO] [stderr]    Compiling nostr-relay-pool v0.44.0
[INFO] [stderr]    Compiling nostr-sdk v0.44.1
[INFO] [stderr]    Compiling nostr_services_rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 09s
[INFO] running `Command { std: "docker" "inspect" "23a0ab57ef88c2b07c74bbdef85b5cb0fc15bd2b3a0cd9ead0ac3f7c66145da5", 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" "23a0ab57ef88c2b07c74bbdef85b5cb0fc15bd2b3a0cd9ead0ac3f7c66145da5" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling nostr_services_rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 11.83s
[INFO] running `Command { std: "docker" "inspect" "23a0ab57ef88c2b07c74bbdef85b5cb0fc15bd2b3a0cd9ead0ac3f7c66145da5", 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" "23a0ab57ef88c2b07c74bbdef85b5cb0fc15bd2b3a0cd9ead0ac3f7c66145da5" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.57s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/nostr_services_rs-54efcf678d74b7fa)
[INFO] [stdout] 
[INFO] [stdout] running 94 tests
[INFO] [stdout] test avatar::tests::test_avatar_sets_known_sets_allowlist ... ok
[INFO] [stdout] test avatar::tests::test_avatar_sets_files_for_unknown_set_returns_none ... ok
[INFO] [stdout] test avatar::tests::test_avatar_sets_load_does_not_panic ... ok
[INFO] [stdout] test fetch::tests::test_n19_key_coordinate_returns_formatted_key ... ok
[INFO] [stdout] test fetch::tests::test_n19_key_event_returns_hex ... ok
[INFO] [stdout] test fetch::tests::test_n19_key_event_id_returns_hex ... ok
[INFO] [stdout] test fetch::tests::test_get_profile_uses_profile_cache ... ok
[INFO] [stdout] test fetch::tests::test_n19_key_pubkey_returns_hex ... ok
[INFO] [stdout] test fetch::tests::test_nip19_to_filter_event_id ... ok
[INFO] [stdout] test fetch::tests::test_n19_key_profile_returns_hex ... ok
[INFO] [stdout] test fetch::tests::test_demand_returns_none_with_no_relays ... ok
[INFO] [stdout] test fetch::tests::test_nip19_to_filter_pubkey_returns_metadata_filter ... ok
[INFO] [stdout] test fetch::tests::test_nip19_to_filter_unknown_returns_none ... ok
[INFO] [stdout] test fetch::tests::test_get_profile_returns_none_with_no_relays ... ok
[INFO] [stdout] test link_preview::tests::test_is_private_ip_broadcast_v4 ... ok
[INFO] [stdout] test link_preview::tests::test_is_private_ip_public_v4 ... ok
[INFO] [stdout] test link_preview::tests::test_is_private_ip_loopback_v6 ... ok
[INFO] [stdout] test link_preview::tests::test_is_private_ip_private_v4 ... ok
[INFO] [stdout] test fetch::tests::test_nip19_to_filter_profile_returns_metadata_filter ... ok
[INFO] [stdout] test link_preview::tests::test_is_private_ip_public_v6 ... ok
[INFO] [stdout] test fetch::tests::test_n19_key_secret_returns_none ... ok
[INFO] [stdout] test link_preview::tests::test_is_private_ip_loopback_v4 ... ok
[INFO] [stdout] test link_preview::tests::test_validate_preview_url_rejects_file_scheme ... ok
[INFO] [stdout] test link_preview::tests::test_validate_preview_url_rejects_invalid_url ... ok
[INFO] [stdout] test link_preview::tests::test_is_private_ip_unspecified_v4 ... ok
[INFO] [stdout] test link_preview::tests::test_validate_preview_url_rejects_localhost_name ... ok
[INFO] [stdout] test link_preview::tests::test_validate_preview_url_rejects_loopback_ip ... ok
[INFO] [stdout] test link_preview::tests::test_validate_preview_url_rejects_http ... ok
[INFO] [stdout] test link_preview::tests::test_is_private_ip_unspecified_v6 ... ok
[INFO] [stdout] test link_preview::tests::test_validate_preview_url_rejects_dot_internal ... ok
[INFO] [stdout] test fetch::tests::test_demand_uses_event_cache ... ok
[INFO] [stdout] test link_preview::tests::test_is_private_ip_link_local_v4 ... ok
[INFO] [stdout] test link_preview::tests::test_validate_preview_url_rejects_dot_local ... ok
[INFO] [stdout] test link_preview::tests::test_validate_preview_url_rejects_private_ip ... ok
[INFO] [stdout] test link_preview::tests::test_validate_preview_url_rejects_metadata_ip ... ok
[INFO] [stdout] test opengraph::tests::test_display_escapes_attribute_values ... ok
[INFO] [stdout] test opengraph::tests::test_display_escapes_content ... ok
[INFO] [stdout] test opengraph::tests::test_display_element_with_content ... ok
[INFO] [stdout] test opengraph::tests::test_display_self_closing_meta ... ok
[INFO] [stdout] test link_preview::tests::test_validate_preview_url_valid_https ... ok
[INFO] [stdout] test fetch::tests::test_process_queue_drops_lock_before_fetch ... ok
[INFO] [stdout] test opengraph::tests::test_head_element_meta_content_non_meta_element ... ok
[INFO] [stdout] test opengraph::tests::test_html_escape_all_chars ... ok
[INFO] [stdout] test opengraph::tests::test_head_element_as_title_non_og_title_returns_none ... ok
[INFO] [stdout] test opengraph::tests::test_head_element_as_title_og_title_produces_title_element ... ok
[INFO] [stdout] test opengraph::tests::test_head_element_meta_content_absent ... ok
[INFO] [stdout] test opengraph::tests::test_html_escape_ampersand ... ok
[INFO] [stdout] test opengraph::tests::test_head_element_meta_content_present ... ok
[INFO] [stdout] test opengraph::tests::test_head_element_as_title_non_meta_returns_none ... ok
[INFO] [stdout] test fetch::tests::test_process_queue_renotifies_when_more_items_remain ... ok
[INFO] [stdout] test opengraph::tests::test_inject_tags_empty_head_appends_all_tags ... ok
[INFO] [stdout] test opengraph::tests::test_inject_tags_empty_tags_list ... ok
[INFO] [stdout] test opengraph::tests::test_inject_tags_escapes_injected_values ... ok
[INFO] [stdout] test fetch::tests::test_client_accessor_returns_client ... ok
[INFO] [stdout] test opengraph::tests::test_html_escape_clean_string ... ok
[INFO] [stdout] test opengraph::tests::test_html_escape_double_quote ... ok
[INFO] [stdout] test opengraph::tests::test_html_escape_greater_than ... ok
[INFO] [stdout] test opengraph::tests::test_html_escape_less_than ... ok
[INFO] [stdout] test opengraph::tests::test_inject_tags_appends_new_tags ... ok
[INFO] [stdout] test opengraph::tests::test_inject_tags_body_is_not_modified ... ok
[INFO] [stdout] test opengraph::tests::test_inject_tags_duplicate_input_tags_not_appended_twice ... ok
[INFO] [stdout] test opengraph::tests::test_inject_tags_head_with_attributes_is_handled ... ok
[INFO] [stdout] test opengraph::tests::test_inject_tags_meta_matched_by_name_attribute ... ok
[INFO] [stdout] test opengraph::tests::test_inject_tags_no_head_returns_original ... ok
[INFO] [stdout] test opengraph::tests::test_inject_tags_multiple_replacements_in_one_call ... ok
[INFO] [stdout] test opengraph::tests::test_inject_tags_og_title_appended_when_no_existing_title ... ok
[INFO] [stdout] test opengraph::tests::test_inject_tags_replaces_existing_canonical_not_duplicates ... ok
[INFO] [stdout] test opengraph::tests::test_inject_tags_replaces_existing_og_meta ... ok
[INFO] [stdout] test opengraph::tests::test_inject_tags_replaces_title_via_og_title ... ok
[INFO] [stdout] test opengraph::tests::test_meta_tags_to_elements_count ... ok
[INFO] [stdout] test opengraph::tests::test_parse_nip05_domain_no_dot ... ok
[INFO] [stdout] test opengraph::tests::test_parse_nip05_invalid_name_char ... ok
[INFO] [stdout] test opengraph::tests::test_parse_nip05_lowercase_domain_normalised ... ok
[INFO] [stdout] test opengraph::tests::test_parse_nip05_missing_at ... ok
[INFO] [stdout] test opengraph::tests::test_parse_nip05_rejects_dot_internal ... ok
[INFO] [stdout] test opengraph::tests::test_injected_tags_order_title_canonical_meta_script ... ok
[INFO] [stdout] test opengraph::tests::test_json_ld_to_script_is_not_html_escaped ... ok
[INFO] [stdout] test opengraph::tests::test_parse_nip05_multiple_at_signs ... ok
[INFO] [stdout] test opengraph::tests::test_inject_tags_snort_html_file ... ok
[INFO] [stdout] test opengraph::tests::test_parse_nip05_normalises_to_lowercase ... ok
[INFO] [stdout] test opengraph::tests::test_parse_nip05_allowed_name_chars ... ok
[INFO] [stdout] test opengraph::tests::test_parse_nip05_empty_domain ... ok
[INFO] [stdout] test opengraph::tests::test_inject_tags_preserves_unmatched_existing_children ... ok
[INFO] [stdout] test opengraph::tests::test_meta_tags_to_elements_empty ... ok
[INFO] [stdout] test opengraph::tests::test_parse_nip05_rejects_dot_local ... ok
[INFO] [stdout] test opengraph::tests::test_parse_nip05_rejects_dot_localhost ... ok
[INFO] [stdout] test opengraph::tests::test_parse_nip05_rejects_ipv4_address ... ok
[INFO] [stdout] test opengraph::tests::test_parse_nip05_valid ... ok
[INFO] [stdout] test opengraph::tests::test_replace_with_matching_meta_returns_self ... ok
[INFO] [stdout] test opengraph::tests::test_replace_with_non_matching_meta_returns_none ... ok
[INFO] [stdout] test opengraph::tests::test_replace_with_title_node_and_og_title_tag ... ok
[INFO] [stdout] test opengraph::tests::test_meta_tags_to_elements_structure ... ok
[INFO] [stdout] test opengraph::tests::test_parse_nip05_allows_numeric_labels_that_are_not_full_ipv4 ... ok
[INFO] [stdout] test opengraph::tests::test_tag_page_kieran_snort_social ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- opengraph::tests::test_tag_page_kieran_snort_social stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'opengraph::tests::test_tag_page_kieran_snort_social' (4164) panicked at src/opengraph.rs:1244:9:
[INFO] [stdout] response should contain og:type tag, got:
[INFO] [stdout] <!DOCTYPE html><html><head><title>Snort</title></head><body></body></html>
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5e9d47e7b358 - std[10d71ac2c42b111e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5e9d47e7b358 - std[10d71ac2c42b111e]::backtrace_rs::backtrace::trace_unsynchronized::<std[10d71ac2c42b111e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5e9d47e7b358 - std[10d71ac2c42b111e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5e9d47e7b358 - <<std[10d71ac2c42b111e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[8fb95b77d25ab6c8]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5e9d47e942ca - <core[8fb95b77d25ab6c8]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5e9d47e942ca - core[8fb95b77d25ab6c8]::fmt::write
[INFO] [stdout]    6:     0x5e9d47e80d72 - std[10d71ac2c42b111e]::io::default_write_fmt::<alloc[a7ee25936407c584]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/io/mod.rs:622:11
[INFO] [stdout]    7:     0x5e9d47e80d72 - <alloc[a7ee25936407c584]::vec::Vec<u8> as std[10d71ac2c42b111e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/io/mod.rs:1977:13
[INFO] [stdout]    8:     0x5e9d47e583d6 - <std[10d71ac2c42b111e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5e9d47e583d6 - std[10d71ac2c42b111e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5e9d47e72cb9 - std[10d71ac2c42b111e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5e9d472dd3dc - <alloc[a7ee25936407c584]::boxed::Box<dyn for<'a, 'b> core[8fb95b77d25ab6c8]::ops::function::Fn<(&'a std[10d71ac2c42b111e]::panic::PanicHookInfo<'b>,), Output = ()> + core[8fb95b77d25ab6c8]::marker::Sync + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::Fn<(&std[10d71ac2c42b111e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2289:9
[INFO] [stdout]   12:     0x5e9d472dd3dc - test[213991da798b1c03]::test_main_inner::<test[213991da798b1c03]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x5e9d47e72f32 - <alloc[a7ee25936407c584]::boxed::Box<dyn for<'a, 'b> core[8fb95b77d25ab6c8]::ops::function::Fn<(&'a std[10d71ac2c42b111e]::panic::PanicHookInfo<'b>,), Output = ()> + core[8fb95b77d25ab6c8]::marker::Sync + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::Fn<(&std[10d71ac2c42b111e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2289:9
[INFO] [stdout]   14:     0x5e9d47e72f32 - std[10d71ac2c42b111e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5e9d47e58492 - std[10d71ac2c42b111e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5e9d47e4ce69 - std[10d71ac2c42b111e]::sys::backtrace::__rust_end_short_backtrace::<std[10d71ac2c42b111e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5e9d47e5945d - __rustc[3be9ba60078d4c86]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5e9d47e94abc - core[8fb95b77d25ab6c8]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5e9d46f6df97 - nostr_services_rs[993280bc34a9715d]::opengraph::tests::test_tag_page_kieran_snort_social::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/opengraph.rs:1244:9
[INFO] [stdout]   20:     0x5e9d46f33dc2 - <core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>> as core[8fb95b77d25ab6c8]::future::future::Future>::poll
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/future/future.rs:133:9
[INFO] [stdout]   21:     0x5e9d46f33e3d - <core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>> as core[8fb95b77d25ab6c8]::future::future::Future>::poll
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/future/future.rs:133:9
[INFO] [stdout]   22:     0x5e9d470db2fd - <tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/scheduler/current_thread/mod.rs:742:70
[INFO] [stdout]   23:     0x5e9d470d7cbb - tokio[496d61ab20376f1c]::task::coop::with_budget::<core[8fb95b77d25ab6c8]::task::poll::Poll<()>, <tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/task/coop/mod.rs:167:5
[INFO] [stdout]   24:     0x5e9d470d7cbb - tokio[496d61ab20376f1c]::task::coop::budget::<core[8fb95b77d25ab6c8]::task::poll::Poll<()>, <tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/task/coop/mod.rs:133:5
[INFO] [stdout]   25:     0x5e9d470d7cbb - <tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/scheduler/current_thread/mod.rs:742:25
[INFO] [stdout]   26:     0x5e9d470b1940 - <tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::Context>::enter::<core[8fb95b77d25ab6c8]::task::poll::Poll<()>, <tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/scheduler/current_thread/mod.rs:432:19
[INFO] [stdout]   27:     0x5e9d470d43bd - <tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/scheduler/current_thread/mod.rs:741:44
[INFO] [stdout]   28:     0x5e9d470d36b4 - <tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CoreGuard>::enter::<<tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}, core[8fb95b77d25ab6c8]::option::Option<()>>::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/scheduler/current_thread/mod.rs:829:68
[INFO] [stdout]   29:     0x5e9d46ffad3b - <tokio[496d61ab20376f1c]::runtime::context::scoped::Scoped<tokio[496d61ab20376f1c]::runtime::scheduler::Context>>::set::<<tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}, core[8fb95b77d25ab6c8]::option::Option<()>>::{closure#0}, (alloc[a7ee25936407c584]::boxed::Box<tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::Core>, core[8fb95b77d25ab6c8]::option::Option<()>)>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/context/scoped.rs:40:9
[INFO] [stdout]   30:     0x5e9d4703c5c9 - tokio[496d61ab20376f1c]::runtime::context::set_scheduler::<(alloc[a7ee25936407c584]::boxed::Box<tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::Core>, core[8fb95b77d25ab6c8]::option::Option<()>), <tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}, core[8fb95b77d25ab6c8]::option::Option<()>>::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/context.rs:176:38
[INFO] [stdout]   31:     0x5e9d470b2e92 - <std[10d71ac2c42b111e]::thread::local::LocalKey<tokio[496d61ab20376f1c]::runtime::context::Context>>::try_with::<tokio[496d61ab20376f1c]::runtime::context::set_scheduler<(alloc[a7ee25936407c584]::boxed::Box<tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::Core>, core[8fb95b77d25ab6c8]::option::Option<()>), <tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}, core[8fb95b77d25ab6c8]::option::Option<()>>::{closure#0}>::{closure#0}, (alloc[a7ee25936407c584]::boxed::Box<tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::Core>, core[8fb95b77d25ab6c8]::option::Option<()>)>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/local.rs:462:12
[INFO] [stdout]   32:     0x5e9d470b2a1e - <std[10d71ac2c42b111e]::thread::local::LocalKey<tokio[496d61ab20376f1c]::runtime::context::Context>>::with::<tokio[496d61ab20376f1c]::runtime::context::set_scheduler<(alloc[a7ee25936407c584]::boxed::Box<tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::Core>, core[8fb95b77d25ab6c8]::option::Option<()>), <tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}, core[8fb95b77d25ab6c8]::option::Option<()>>::{closure#0}>::{closure#0}, (alloc[a7ee25936407c584]::boxed::Box<tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::Core>, core[8fb95b77d25ab6c8]::option::Option<()>)>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/local.rs:426:20
[INFO] [stdout]   33:     0x5e9d4703429d - tokio[496d61ab20376f1c]::runtime::context::set_scheduler::<(alloc[a7ee25936407c584]::boxed::Box<tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::Core>, core[8fb95b77d25ab6c8]::option::Option<()>), <tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}, core[8fb95b77d25ab6c8]::option::Option<()>>::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/context.rs:176:17
[INFO] [stdout]   34:     0x5e9d470b8fe0 - <tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CoreGuard>::enter::<<tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}, core[8fb95b77d25ab6c8]::option::Option<()>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/scheduler/current_thread/mod.rs:829:27
[INFO] [stdout]   35:     0x5e9d470b92d6 - <tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/scheduler/current_thread/mod.rs:729:24
[INFO] [stdout]   36:     0x5e9d470c6dc0 - <tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CurrentThread>::block_on::<core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/scheduler/current_thread/mod.rs:200:33
[INFO] [stdout]   37:     0x5e9d46fc5f93 - tokio[496d61ab20376f1c]::runtime::context::runtime::enter_runtime::<<tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CurrentThread>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   38:     0x5e9d470b04e1 - <tokio[496d61ab20376f1c]::runtime::scheduler::current_thread::CurrentThread>::block_on::<core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/scheduler/current_thread/mod.rs:188:9
[INFO] [stdout]   39:     0x5e9d46ffa5e4 - <tokio[496d61ab20376f1c]::runtime::runtime::Runtime>::block_on_inner::<core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/runtime.rs:368:52
[INFO] [stdout]   40:     0x5e9d46ffa7af - <tokio[496d61ab20376f1c]::runtime::runtime::Runtime>::block_on::<core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.48.0/src/runtime/runtime.rs:342:18
[INFO] [stdout]   41:     0x5e9d46f827e6 - nostr_services_rs[993280bc34a9715d]::opengraph::tests::test_tag_page_kieran_snort_social
[INFO] [stdout]                                at /opt/rustwide/workdir/src/opengraph.rs:1260:10
[INFO] [stdout]   42:     0x5e9d46f6c407 - nostr_services_rs[993280bc34a9715d]::opengraph::tests::test_tag_page_kieran_snort_social::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/opengraph.rs:1182:49
[INFO] [stdout]   43:     0x5e9d46e94de6 - <nostr_services_rs[993280bc34a9715d]::opengraph::tests::test_tag_page_kieran_snort_social::{closure#0} as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x5e9d472d04bb - <fn() -> core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x5e9d472d04bb - test[213991da798b1c03]::__rust_begin_short_backtrace::<core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>, fn() -> core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:724:18
[INFO] [stdout]   46:     0x5e9d472ddd35 - test[213991da798b1c03]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:74
[INFO] [stdout]   47:     0x5e9d472ddd35 - <core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   48:     0x5e9d472ddd35 - std[10d71ac2c42b111e]::panicking::catch_unwind::do_call::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>, core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   49:     0x5e9d472ddd35 - std[10d71ac2c42b111e]::panicking::catch_unwind::<core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>, core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   50:     0x5e9d472ddd35 - std[10d71ac2c42b111e]::panic::catch_unwind::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>, core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   51:     0x5e9d472ddd35 - test[213991da798b1c03]::run_test_in_process
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:27
[INFO] [stdout]   52:     0x5e9d472ddd35 - test[213991da798b1c03]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:668:43
[INFO] [stdout]   53:     0x5e9d472d7644 - test[213991da798b1c03]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:698:41
[INFO] [stdout]   54:     0x5e9d472d7644 - std[10d71ac2c42b111e]::sys::backtrace::__rust_begin_short_backtrace::<test[213991da798b1c03]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   55:     0x5e9d472e0db2 - std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked::<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   56:     0x5e9d472e0db2 - <core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   57:     0x5e9d472e0db2 - std[10d71ac2c42b111e]::panicking::catch_unwind::do_call::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   58:     0x5e9d472e0db2 - std[10d71ac2c42b111e]::panicking::catch_unwind::<(), core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   59:     0x5e9d472e0db2 - std[10d71ac2c42b111e]::panic::catch_unwind::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   60:     0x5e9d472e0db2 - std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked::<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   61:     0x5e9d472e0db2 - <std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1} as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   62:     0x5e9d47e7a77f - <alloc[a7ee25936407c584]::boxed::Box<dyn core[8fb95b77d25ab6c8]::ops::function::FnOnce<(), Output = ()> + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2275:9
[INFO] [stdout]   63:     0x5e9d47e7a77f - <std[10d71ac2c42b111e]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   64:     0x706b648e5aa4 - <unknown>
[INFO] [stdout]   65:     0x706b64972a64 - clone
[INFO] [stdout]   66:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     opengraph::tests::test_tag_page_kieran_snort_social
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 93 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.41s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--bin nostr_services_rs`
[INFO] running `Command { std: "docker" "inspect" "23a0ab57ef88c2b07c74bbdef85b5cb0fc15bd2b3a0cd9ead0ac3f7c66145da5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "23a0ab57ef88c2b07c74bbdef85b5cb0fc15bd2b3a0cd9ead0ac3f7c66145da5", kill_on_drop: false }`
[INFO] [stdout] 23a0ab57ef88c2b07c74bbdef85b5cb0fc15bd2b3a0cd9ead0ac3f7c66145da5
