[INFO] fetching crate p2p-foundation 0.1.8... [INFO] checking p2p-foundation-0.1.8 against try#a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d for pr-145342-1 [INFO] extracting crate p2p-foundation 0.1.8 into /workspace/builds/worker-7-tc2/source [INFO] started tweaking crates.io crate p2p-foundation 0.1.8 [INFO] removed 0 missing examples [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate p2p-foundation 0.1.8 [INFO] tweaked toml for crates.io crate p2p-foundation 0.1.8 written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate p2p-foundation 0.1.8 on toolchain a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate p2p-foundation 0.1.8 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" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "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/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e16d2dd2af449589d24465a7c5ec7743277c64f85d7d273dfa41a962128ac243 [INFO] running `Command { std: "docker" "start" "-a" "e16d2dd2af449589d24465a7c5ec7743277c64f85d7d273dfa41a962128ac243", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e16d2dd2af449589d24465a7c5ec7743277c64f85d7d273dfa41a962128ac243", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e16d2dd2af449589d24465a7c5ec7743277c64f85d7d273dfa41a962128ac243", kill_on_drop: false }` [INFO] [stdout] e16d2dd2af449589d24465a7c5ec7743277c64f85d7d273dfa41a962128ac243 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 0986f674ee68241b85324b8f5d0868dc025e385fdd4a8f46d232c6efbe0c60db [INFO] running `Command { std: "docker" "start" "-a" "0986f674ee68241b85324b8f5d0868dc025e385fdd4a8f46d232c6efbe0c60db", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.95 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Compiling libc v0.2.174 [INFO] [stderr] Checking cfg-if v1.0.1 [INFO] [stderr] Compiling autocfg v1.5.0 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Checking itoa v1.0.15 [INFO] [stderr] Checking pin-project-lite v0.2.16 [INFO] [stderr] Compiling version_check v0.9.5 [INFO] [stderr] Checking once_cell v1.21.3 [INFO] [stderr] Checking log v0.4.27 [INFO] [stderr] Checking smallvec v1.15.1 [INFO] [stderr] Checking bytes v1.10.1 [INFO] [stderr] Compiling typenum v1.18.0 [INFO] [stderr] Checking stable_deref_trait v1.2.0 [INFO] [stderr] Compiling zerocopy v0.8.26 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Checking memchr v2.7.5 [INFO] [stderr] Compiling lock_api v0.4.13 [INFO] [stderr] Compiling parking_lot_core v0.9.11 [INFO] [stderr] Checking futures-core v0.3.31 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Checking fnv v1.0.7 [INFO] [stderr] Checking slab v0.4.10 [INFO] [stderr] Checking futures-sink v0.3.31 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling syn v2.0.104 [INFO] [stderr] Checking futures-channel v0.3.31 [INFO] [stderr] Checking tracing-core v0.1.34 [INFO] [stderr] Compiling dunce v1.0.5 [INFO] [stderr] Checking writeable v0.6.1 [INFO] [stderr] Compiling fs_extra v1.3.0 [INFO] [stderr] Checking getrandom v0.2.16 [INFO] [stderr] Compiling jobserver v0.1.33 [INFO] [stderr] Checking socket2 v0.5.10 [INFO] [stderr] Checking futures-task v0.3.31 [INFO] [stderr] Compiling cc v1.2.27 [INFO] [stderr] Checking parking_lot v0.12.4 [INFO] [stderr] Checking pin-utils v0.1.0 [INFO] [stderr] Checking litemap v0.8.0 [INFO] [stderr] Checking futures-io v0.3.31 [INFO] [stderr] Checking signal-hook-registry v1.4.5 [INFO] [stderr] Checking mio v1.0.4 [INFO] [stderr] Compiling icu_properties_data v2.0.1 [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Compiling pkg-config v0.3.32 [INFO] [stderr] Compiling icu_normalizer_data v2.0.0 [INFO] [stderr] Compiling vcpkg v0.2.15 [INFO] [stderr] Checking http v0.2.12 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling httparse v1.10.1 [INFO] [stderr] Checking openssl-probe v0.1.6 [INFO] [stderr] Compiling aws-lc-rs v1.13.1 [INFO] [stderr] Checking untrusted v0.9.0 [INFO] [stderr] Checking cpufeatures v0.2.17 [INFO] [stderr] Checking crypto-common v0.1.6 [INFO] [stderr] Checking block-buffer v0.10.4 [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Checking percent-encoding v2.3.1 [INFO] [stderr] Checking bitflags v2.9.1 [INFO] [stderr] Checking ryu v1.0.20 [INFO] [stderr] Compiling getrandom v0.1.16 [INFO] [stderr] Checking form_urlencoded v1.2.1 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Checking subtle v2.6.1 [INFO] [stderr] Compiling cmake v0.1.54 [INFO] [stderr] Checking equivalent v1.0.2 [INFO] [stderr] Compiling cfg_aliases v0.2.1 [INFO] [stderr] Checking foreign-types-shared v0.1.1 [INFO] [stderr] Compiling thiserror v2.0.12 [INFO] [stderr] Checking powerfmt v0.2.0 [INFO] [stderr] Compiling serde_json v1.0.140 [INFO] [stderr] Checking utf8_iter v1.0.4 [INFO] [stderr] Compiling time-core v0.1.4 [INFO] [stderr] Checking hashbrown v0.15.4 [INFO] [stderr] Compiling openssl v0.10.73 [INFO] [stderr] Compiling num-conv v0.1.0 [INFO] [stderr] Checking foreign-types v0.3.2 [INFO] [stderr] Checking deranged v0.4.0 [INFO] [stderr] Checking rand_core v0.9.3 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking mime v0.3.17 [INFO] [stderr] Compiling time-macros v0.2.22 [INFO] [stderr] Checking httpdate v1.0.3 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Checking bytemuck v1.23.1 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Checking indexmap v2.9.0 [INFO] [stderr] Compiling native-tls v0.2.14 [INFO] [stderr] Compiling rustls v0.23.28 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling aws-lc-sys v0.29.0 [INFO] [stderr] Compiling openssl-sys v0.9.109 [INFO] [stderr] Checking try-lock v0.2.5 [INFO] [stderr] Checking safe_arch v0.7.4 [INFO] [stderr] Checking want v0.3.1 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand_chacha v0.9.0 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking sha1 v0.10.6 [INFO] [stderr] Checking http-body v0.4.6 [INFO] [stderr] Checking regex-syntax v0.8.5 [INFO] [stderr] Checking tower-service v0.3.3 [INFO] [stderr] Checking utf8parse v0.2.2 [INFO] [stderr] Compiling unicase v2.8.1 [INFO] [stderr] Checking base64 v0.21.7 [INFO] [stderr] Compiling mime_guess v2.0.5 [INFO] [stderr] Checking time v0.3.41 [INFO] [stderr] Checking anstyle-parse v0.2.7 [INFO] [stderr] Checking rand v0.9.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Checking wide v0.7.33 [INFO] [stderr] Checking regex-automata v0.4.9 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Compiling quinn-udp v0.5.13 [INFO] [stderr] Checking digest v0.9.0 [INFO] [stderr] Checking http v1.3.1 [INFO] [stderr] Compiling multer v2.1.0 [INFO] [stderr] Checking encoding_rs v0.8.35 [INFO] [stderr] Checking anstyle-query v1.1.3 [INFO] [stderr] Checking lazy_static v1.5.0 [INFO] [stderr] Checking data-encoding v2.9.0 [INFO] [stderr] Checking is_terminal_polyfill v1.70.1 [INFO] [stderr] Checking colorchoice v1.0.4 [INFO] [stderr] Checking siphasher v1.0.1 [INFO] [stderr] Checking anstyle v1.0.11 [INFO] [stderr] Checking regex-syntax v0.6.29 [INFO] [stderr] Checking base64 v0.22.1 [INFO] [stderr] Checking tinyvec_macros v0.1.1 [INFO] [stderr] Checking utf-8 v0.7.6 [INFO] [stderr] Checking tinyvec v1.9.0 [INFO] [stderr] Checking fastbloom v0.9.0 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.0 [INFO] [stderr] Compiling zerovec-derive v0.11.1 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling zeroize_derive v1.4.2 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling tracing-attributes v0.1.30 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Checking zeroize v1.8.1 [INFO] [stderr] Compiling thiserror-impl v2.0.12 [INFO] [stderr] Checking zerofrom v0.1.6 [INFO] [stderr] Checking yoke v0.8.0 [INFO] [stderr] Checking rustls-pki-types v1.12.0 [INFO] [stderr] Checking zerovec v0.11.2 [INFO] [stderr] Checking zerotrie v0.2.2 [INFO] [stderr] Checking tokio v1.45.1 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Checking tinystr v0.8.1 [INFO] [stderr] Checking potential_utf v0.1.2 [INFO] [stderr] Checking icu_collections v2.0.0 [INFO] [stderr] Checking icu_locale_core v2.0.0 [INFO] [stderr] Checking tracing v0.1.41 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Checking rustls-native-certs v0.8.1 [INFO] [stderr] Checking regex-automata v0.1.10 [INFO] [stderr] Checking icu_provider v2.0.0 [INFO] [stderr] Checking icu_properties v2.0.1 [INFO] [stderr] Checking icu_normalizer v2.0.0 [INFO] [stderr] Checking pem v3.0.5 [INFO] [stderr] Compiling pin-project-internal v1.1.10 [INFO] [stderr] Checking anstream v0.6.19 [INFO] [stderr] Checking regex v1.11.1 [INFO] [stderr] Checking futures-executor v0.3.31 [INFO] [stderr] Checking num-bigint v0.4.6 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Checking idna_adapter v1.2.1 [INFO] [stderr] Checking idna v1.0.3 [INFO] [stderr] Checking rand_chacha v0.2.2 [INFO] [stderr] Compiling quinn v0.11.8 [INFO] [stderr] Checking headers-core v0.2.0 [INFO] [stderr] Checking block-buffer v0.9.0 [INFO] [stderr] Checking url v2.5.4 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Checking lru-slab v0.1.2 [INFO] [stderr] Compiling anyhow v1.0.98 [INFO] [stderr] Checking overload v0.1.1 [INFO] [stderr] Checking clap_lex v0.7.5 [INFO] [stderr] Checking rustc-hash v2.1.1 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Checking signature v1.6.4 [INFO] [stderr] Checking spin v0.9.8 [INFO] [stderr] Checking either v1.15.0 [INFO] [stderr] Checking strsim v0.11.1 [INFO] [stderr] Checking opaque-debug v0.3.1 [INFO] [stderr] Checking option-ext v0.2.0 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Checking dirs-sys v0.4.1 [INFO] [stderr] Checking tungstenite v0.21.0 [INFO] [stderr] Checking sha2 v0.9.9 [INFO] [stderr] Checking clap_builder v4.5.40 [INFO] [stderr] Compiling clap_derive v4.5.40 [INFO] [stderr] Checking simple_asn1 v0.6.3 [INFO] [stderr] Checking ed25519 v1.5.3 [INFO] [stderr] Checking pin-project v1.1.10 [INFO] [stderr] Checking nu-ansi-term v0.46.0 [INFO] [stderr] Checking headers v0.3.9 [INFO] [stderr] Checking rand v0.7.3 [INFO] [stderr] Checking crossbeam-deque v0.8.6 [INFO] [stderr] Checking futures v0.3.31 [INFO] [stderr] Checking matchers v0.1.0 [INFO] [stderr] Checking curve25519-dalek v3.2.0 [INFO] [stderr] Checking tokio-util v0.7.15 [INFO] [stderr] Checking tokio-native-tls v0.3.1 [INFO] [stderr] Checking tokio-tungstenite v0.21.0 [INFO] [stderr] Checking sharded-slab v0.1.7 [INFO] [stderr] Checking yasna v0.5.2 [INFO] [stderr] Checking h2 v0.3.26 [INFO] [stderr] Checking rustls-pemfile v1.0.4 [INFO] [stderr] Checking tracing-log v0.2.0 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Compiling include_dir_macros v0.7.4 [INFO] [stderr] Checking thread_local v1.1.9 [INFO] [stderr] Checking half v2.6.0 [INFO] [stderr] Compiling p2p-foundation v0.1.8 (/opt/rustwide/workdir) [INFO] [stderr] Checking iana-time-zone v0.1.63 [INFO] [stderr] Checking ciborium-io v0.2.2 [INFO] [stderr] Compiling rustix v1.0.7 [INFO] [stderr] Checking plotters-backend v0.3.7 [INFO] [stderr] Checking os_str_bytes v6.6.1 [INFO] [stderr] Checking fastrand v2.3.0 [INFO] [stderr] Checking scoped-tls v1.0.1 [INFO] [stderr] Checking ipnet v2.11.0 [INFO] [stderr] Checking hashbrown v0.12.3 [INFO] [stderr] Checking sync_wrapper v0.1.2 [INFO] [stderr] Checking plotters-svg v0.3.7 [INFO] [stderr] Checking clap v4.5.40 [INFO] [stderr] Checking include_dir v0.7.4 [INFO] [stderr] Checking ciborium-ll v0.2.2 [INFO] [stderr] Checking clap_lex v0.2.4 [INFO] [stderr] Checking chrono v0.4.41 [INFO] [stderr] Checking tracing-subscriber v0.3.19 [INFO] [stderr] warning: p2p-foundation@0.1.8: Flutter not available, skipping web build [INFO] [stderr] Checking rcgen v0.13.2 [INFO] [stderr] Checking ed25519-dalek v1.0.1 [INFO] [stderr] Checking jsonwebtoken v9.3.1 [INFO] [stderr] Checking dirs v5.0.1 [INFO] [stderr] Checking itertools v0.10.5 [INFO] [stderr] Compiling async-trait v0.1.88 [INFO] [stderr] Checking sha2 v0.10.9 [INFO] [stderr] Checking uuid v1.17.0 [INFO] [stderr] Checking sdd v3.0.8 [INFO] [stderr] Checking linux-raw-sys v0.9.4 [INFO] [stderr] Checking hex v0.4.3 [INFO] [stderr] Checking same-file v1.0.6 [INFO] [stderr] Checking bitflags v1.3.2 [INFO] [stderr] Checking cast v0.3.0 [INFO] [stderr] Checking textwrap v0.16.2 [INFO] [stderr] Checking clap v3.2.25 [INFO] [stderr] Checking walkdir v2.5.0 [INFO] [stderr] Checking scc v2.3.4 [INFO] [stderr] Checking rayon v1.10.0 [INFO] [stderr] Checking tinytemplate v1.2.1 [INFO] [stderr] Checking ciborium v0.2.2 [INFO] [stderr] Checking criterion-plot v0.5.0 [INFO] [stderr] Checking plotters v0.3.7 [INFO] [stderr] Compiling serial_test_derive v3.2.0 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking diff v0.1.13 [INFO] [stderr] Checking oorandom v11.1.5 [INFO] [stderr] Checking anes v0.1.6 [INFO] [stderr] Checking yansi v1.0.1 [INFO] [stderr] Checking serial_test v3.2.0 [INFO] [stderr] Checking hyper v0.14.32 [INFO] [stderr] Checking pretty_assertions v1.4.1 [INFO] [stderr] Checking criterion v0.4.0 [INFO] [stderr] Checking tempfile v3.20.0 [INFO] [stderr] Checking hyper-tls v0.5.0 [INFO] [stderr] Checking warp v0.3.7 [INFO] [stderr] Checking reqwest v0.11.27 [INFO] [stderr] Checking rustls-webpki v0.103.3 [INFO] [stderr] Checking rustls-platform-verifier v0.5.3 [INFO] [stderr] Checking quinn-proto v0.11.12 [INFO] [stdout] warning: unused import: `TransportType` [INFO] [stdout] --> src/network.rs:578:32 [INFO] [stdout] | [INFO] [stdout] 578 | use crate::transport::{TransportType, Transport}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TransportType` [INFO] [stdout] --> src/network.rs:578:32 [INFO] [stdout] | [INFO] [stdout] 578 | use crate::transport::{TransportType, Transport}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `transport_manager` [INFO] [stdout] --> src/network.rs:538:13 [INFO] [stdout] | [INFO] [stdout] 538 | let transport_manager = &self.transport_manager; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transport_manager` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `peer_id` [INFO] [stdout] --> src/network.rs:653:13 [INFO] [stdout] | [INFO] [stdout] 653 | let peer_id = self.peer_id.clone(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_peer_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `transport_manager` [INFO] [stdout] --> src/network.rs:655:13 [INFO] [stdout] | [INFO] [stdout] 655 | let transport_manager = Arc::clone(&self.transport_manager); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transport_manager` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `transport_manager` [INFO] [stdout] --> src/network.rs:538:13 [INFO] [stdout] | [INFO] [stdout] 538 | let transport_manager = &self.transport_manager; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transport_manager` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `peer_id` [INFO] [stdout] --> src/network.rs:653:13 [INFO] [stdout] | [INFO] [stdout] 653 | let peer_id = self.peer_id.clone(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_peer_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `transport_manager` [INFO] [stdout] --> src/network.rs:655:13 [INFO] [stdout] | [INFO] [stdout] 655 | let transport_manager = Arc::clone(&self.transport_manager); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transport_manager` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `words` [INFO] [stdout] --> src/bootstrap/words.rs:300:39 [INFO] [stdout] | [INFO] [stdout] 300 | pub fn decode_to_multiaddr(&self, words: &ThreeWordAddress) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_words` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/bootstrap/mod.rs:174:20 [INFO] [stdout] | [INFO] [stdout] 174 | if let Ok(multiaddr) = addr_str.parse() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `quality_calculator` is never read [INFO] [stdout] --> src/bootstrap/cache.rs:86:5 [INFO] [stdout] | [INFO] [stdout] 78 | pub struct BootstrapCache { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 86 | quality_calculator: QualityCalculator, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BootstrapCache` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `cache_dir` is never read [INFO] [stdout] --> src/bootstrap/merge.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct MergeCoordinator { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 17 | /// Main cache directory path [INFO] [stdout] 18 | cache_dir: PathBuf, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MergeCoordinator` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ConflictInfo` is never constructed [INFO] [stdout] --> src/bootstrap/merge.rs:67:8 [INFO] [stdout] | [INFO] [stdout] 67 | struct ConflictInfo { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOTAL_COMBINATIONS` is never used [INFO] [stdout] --> src/bootstrap/words.rs:18:7 [INFO] [stdout] | [INFO] [stdout] 18 | const TOTAL_COMBINATIONS: u64 = (WORDS_PER_POSITION as u64).pow(3); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/network.rs:256:5 [INFO] [stdout] | [INFO] [stdout] 256 | Message { topic: String, source: PeerId, data: Vec }, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | #![warn(missing_docs)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/network.rs:256:15 [INFO] [stdout] | [INFO] [stdout] 256 | Message { topic: String, source: PeerId, data: Vec }, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/network.rs:256:30 [INFO] [stdout] | [INFO] [stdout] 256 | Message { topic: String, source: PeerId, data: Vec }, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/network.rs:256:46 [INFO] [stdout] | [INFO] [stdout] 256 | Message { topic: String, source: PeerId, data: Vec }, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/network.rs:257:5 [INFO] [stdout] | [INFO] [stdout] 257 | PeerConnected(PeerId), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/network.rs:258:5 [INFO] [stdout] | [INFO] [stdout] 258 | PeerDisconnected(PeerId), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/network.rs:431:5 [INFO] [stdout] | [INFO] [stdout] 431 | pub fn local_addr(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/network.rs:435:5 [INFO] [stdout] | [INFO] [stdout] 435 | pub async fn subscribe(&self, topic: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/network.rs:442:5 [INFO] [stdout] | [INFO] [stdout] 442 | pub async fn publish(&self, topic: &str, data: &[u8]) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2044:5 [INFO] [stdout] | [INFO] [stdout] 2044 | pub inbox_id: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2045:5 [INFO] [stdout] | [INFO] [stdout] 2045 | pub owner: PeerId, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2046:5 [INFO] [stdout] | [INFO] [stdout] 2046 | pub created_at: SystemTime, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2047:5 [INFO] [stdout] | [INFO] [stdout] 2047 | pub message_count: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2048:5 [INFO] [stdout] | [INFO] [stdout] 2048 | pub max_messages: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2049:5 [INFO] [stdout] | [INFO] [stdout] 2049 | pub is_public: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2050:5 [INFO] [stdout] | [INFO] [stdout] 2050 | pub access_keys: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2056:5 [INFO] [stdout] | [INFO] [stdout] 2056 | pub id: String, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2057:5 [INFO] [stdout] | [INFO] [stdout] 2057 | pub sender: PeerId, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2058:5 [INFO] [stdout] | [INFO] [stdout] 2058 | pub recipient_inbox: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2059:5 [INFO] [stdout] | [INFO] [stdout] 2059 | pub content: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2060:5 [INFO] [stdout] | [INFO] [stdout] 2060 | pub message_type: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2061:5 [INFO] [stdout] | [INFO] [stdout] 2061 | pub timestamp: SystemTime, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2062:5 [INFO] [stdout] | [INFO] [stdout] 2062 | pub attachments: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2068:5 [INFO] [stdout] | [INFO] [stdout] 2068 | pub filename: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2069:5 [INFO] [stdout] | [INFO] [stdout] 2069 | pub content_type: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2070:5 [INFO] [stdout] | [INFO] [stdout] 2070 | pub size: u64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2071:5 [INFO] [stdout] | [INFO] [stdout] 2071 | pub hash: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2077:5 [INFO] [stdout] | [INFO] [stdout] 2077 | pub inbox_id: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2078:5 [INFO] [stdout] | [INFO] [stdout] 2078 | pub messages: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2079:5 [INFO] [stdout] | [INFO] [stdout] 2079 | pub last_updated: SystemTime, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2085:5 [INFO] [stdout] | [INFO] [stdout] 2085 | pub message_id: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2086:5 [INFO] [stdout] | [INFO] [stdout] 2086 | pub sender: PeerId, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2087:5 [INFO] [stdout] | [INFO] [stdout] 2087 | pub timestamp: SystemTime, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2088:5 [INFO] [stdout] | [INFO] [stdout] 2088 | pub message_type: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2094:5 [INFO] [stdout] | [INFO] [stdout] 2094 | pub inbox_id: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2095:5 [INFO] [stdout] | [INFO] [stdout] 2095 | pub three_word_address: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2096:5 [INFO] [stdout] | [INFO] [stdout] 2096 | pub owner: PeerId, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2097:5 [INFO] [stdout] | [INFO] [stdout] 2097 | pub created_at: SystemTime, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2098:5 [INFO] [stdout] | [INFO] [stdout] 2098 | pub message_count: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2099:5 [INFO] [stdout] | [INFO] [stdout] 2099 | pub is_accessible: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an enum [INFO] [stdout] --> src/bootstrap/discovery.rs:181:1 [INFO] [stdout] | [INFO] [stdout] 181 | pub enum FallbackBehavior { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/bootstrap/words.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | pub first: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/bootstrap/words.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | pub second: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/bootstrap/words.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | pub third: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: proc macro panicked [INFO] [stdout] --> src/bin/ant-connect.rs:29:34 [INFO] [stdout] | [INFO] [stdout] 29 | static FLUTTER_ASSETS: Dir<'_> = include_dir!("$CARGO_MANIFEST_DIR/apps/ant-connect/build/web"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: message: "/opt/rustwide/workdir/apps/ant-connect/build/web" is not a directory [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PeerId` [INFO] [stdout] --> tests/bootstrap_tests.rs:9:26 [INFO] [stdout] | [INFO] [stdout] 9 | P2PNode, NodeConfig, PeerId [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `QualityMetrics` [INFO] [stdout] --> tests/bootstrap_tests.rs:11:33 [INFO] [stdout] | [INFO] [stdout] 11 | use p2p_foundation::bootstrap::{QualityMetrics, MergeCoordinator}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `p2p_foundation::bootstrap::merge::MergeStrategy` [INFO] [stdout] --> tests/bootstrap_tests.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use p2p_foundation::bootstrap::merge::MergeStrategy; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> tests/bootstrap_tests.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::time::sleep` [INFO] [stdout] --> tests/bootstrap_tests.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use tokio::time::sleep; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `wrong_keypair` [INFO] [stdout] --> benches/security_benchmark.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | let wrong_keypair = Keypair::generate(&mut csprng); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wrong_keypair` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `arc` [INFO] [stdout] --> tests/bootstrap_tests.rs:486:25 [INFO] [stdout] | [INFO] [stdout] 486 | Err(arc) => return Err(format!("Failed to unwrap Arc")), [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_arc` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `temp_dir` [INFO] [stdout] --> tests/bootstrap_tests.rs:527:13 [INFO] [stdout] | [INFO] [stdout] 527 | let temp_dir = TempDir::new().unwrap(); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_temp_dir` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ThreeWordAddress` [INFO] [stdout] --> examples/chat.rs:3:51 [INFO] [stdout] | [INFO] [stdout] 3 | use p2p_foundation::bootstrap::{BootstrapManager, ThreeWordAddress, BootstrapDiscovery}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> examples/chat.rs:118:12 [INFO] [stdout] | [INFO] [stdout] 118 | if let Ok(multiaddr) = addr.parse() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `debug` [INFO] [stdout] --> tests/bootstrap_comprehensive_tests.rs:16:21 [INFO] [stdout] | [INFO] [stdout] 16 | use tracing::{info, debug}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SystemTime` and `UNIX_EPOCH` [INFO] [stdout] --> tests/bootstrap_comprehensive_tests.rs:226:21 [INFO] [stdout] | [INFO] [stdout] 226 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0422]: cannot find struct, variant or union type `TestNetworkConfig` in this scope [INFO] [stdout] --> tests/integration/network/mod.rs:370:18 [INFO] [stdout] | [INFO] [stdout] 370 | let config = TestNetworkConfig { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNetworkConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/dht/mod.rs:31:15 [INFO] [stdout] | [INFO] [stdout] 31 | let key = TestDataGen::dht_key("test_key"); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/dht/mod.rs:54:15 [INFO] [stdout] | [INFO] [stdout] 54 | let key = TestDataGen::dht_key("large_key"); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/dht/mod.rs:55:23 [INFO] [stdout] | [INFO] [stdout] 55 | let large_value = TestDataGen::random_bytes(1024 * 1024); // 1MB [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/dht/mod.rs:90:15 [INFO] [stdout] | [INFO] [stdout] 90 | let key = TestDataGen::dht_key("routing_test"); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/dht/mod.rs:140:15 [INFO] [stdout] | [INFO] [stdout] 140 | let key = TestDataGen::dht_key("replication_test"); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/dht/mod.rs:180:16 [INFO] [stdout] | [INFO] [stdout] 180 | let key1 = TestDataGen::dht_key("partition_test_1"); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/dht/mod.rs:181:16 [INFO] [stdout] | [INFO] [stdout] 181 | let key2 = TestDataGen::dht_key("partition_test_2"); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/dht/mod.rs:223:15 [INFO] [stdout] | [INFO] [stdout] 223 | let key = TestDataGen::dht_key("expiration_test"); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Record` [INFO] [stdout] --> tests/integration/dht/mod.rs:227:18 [INFO] [stdout] | [INFO] [stdout] 227 | let record = Record::new(key.clone(), value.clone()) [INFO] [stdout] | ^^^^^^ use of undeclared type `Record` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these structs [INFO] [stdout] | [INFO] [stdout] 10 + use p2p_foundation::Record; [INFO] [stdout] | [INFO] [stdout] 10 + use tracing::span::Record; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/dht/mod.rs:254:15 [INFO] [stdout] | [INFO] [stdout] 254 | let key = TestDataGen::dht_key("versioning_test"); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Record` [INFO] [stdout] --> tests/integration/dht/mod.rs:259:19 [INFO] [stdout] | [INFO] [stdout] 259 | let record1 = Record::new(key.clone(), value1.clone()) [INFO] [stdout] | ^^^^^^ use of undeclared type `Record` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these structs [INFO] [stdout] | [INFO] [stdout] 10 + use p2p_foundation::Record; [INFO] [stdout] | [INFO] [stdout] 10 + use tracing::span::Record; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Record` [INFO] [stdout] --> tests/integration/dht/mod.rs:267:19 [INFO] [stdout] | [INFO] [stdout] 267 | let record2 = Record::new(key.clone(), value2.clone()) [INFO] [stdout] | ^^^^^^ use of undeclared type `Record` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these structs [INFO] [stdout] | [INFO] [stdout] 10 + use p2p_foundation::Record; [INFO] [stdout] | [INFO] [stdout] 10 + use tracing::span::Record; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Record` [INFO] [stdout] --> tests/integration/dht/mod.rs:284:22 [INFO] [stdout] | [INFO] [stdout] 284 | let old_record = Record::new(key.clone(), b"old_version".to_vec()) [INFO] [stdout] | ^^^^^^ use of undeclared type `Record` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these structs [INFO] [stdout] | [INFO] [stdout] 10 + use p2p_foundation::Record; [INFO] [stdout] | [INFO] [stdout] 10 + use tracing::span::Record; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/dht/mod.rs:308:19 [INFO] [stdout] | [INFO] [stdout] 308 | let key = TestDataGen::dht_key(&format!("concurrent_key_{}", i)); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/dht/mod.rs:344:19 [INFO] [stdout] | [INFO] [stdout] 344 | let key = TestDataGen::dht_key(&format!("concurrent_key_{}", i)); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/dht/mod.rs:373:15 [INFO] [stdout] | [INFO] [stdout] 373 | let key = TestDataGen::dht_key("perf_test_single"); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/dht/mod.rs:374:17 [INFO] [stdout] | [INFO] [stdout] 374 | let value = TestDataGen::random_bytes(1024); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/dht/mod.rs:391:23 [INFO] [stdout] | [INFO] [stdout] 391 | let key = TestDataGen::dht_key(&format!("batch_key_{}", i)); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/dht/mod.rs:392:25 [INFO] [stdout] | [INFO] [stdout] 392 | let value = TestDataGen::random_bytes(512); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/dht/mod.rs:445:15 [INFO] [stdout] | [INFO] [stdout] 445 | let key = TestDataGen::dht_key("persistence_test"); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/dht/mod.rs:491:19 [INFO] [stdout] | [INFO] [stdout] 491 | let key = TestDataGen::dht_key(&format!("distribution_key_{}", i)); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/transport/mod.rs:27:19 [INFO] [stdout] | [INFO] [stdout] 27 | let config1 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/transport/mod.rs:33:19 [INFO] [stdout] | [INFO] [stdout] 33 | let config2 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/transport/mod.rs:61:21 [INFO] [stdout] | [INFO] [stdout] 61 | let test_data = TestDataGen::random_bytes(1024); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/transport/mod.rs:87:19 [INFO] [stdout] | [INFO] [stdout] 87 | let config1 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/transport/mod.rs:93:19 [INFO] [stdout] | [INFO] [stdout] 93 | let config2 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/transport/mod.rs:117:21 [INFO] [stdout] | [INFO] [stdout] 117 | let test_data = TestDataGen::random_bytes(2048); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/transport/mod.rs:138:19 [INFO] [stdout] | [INFO] [stdout] 138 | let config1 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/transport/mod.rs:145:19 [INFO] [stdout] | [INFO] [stdout] 145 | let config2 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/transport/mod.rs:197:19 [INFO] [stdout] | [INFO] [stdout] 197 | let config1 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/transport/mod.rs:203:19 [INFO] [stdout] | [INFO] [stdout] 203 | let config2 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/transport/mod.rs:243:19 [INFO] [stdout] | [INFO] [stdout] 243 | let config1 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/transport/mod.rs:249:19 [INFO] [stdout] | [INFO] [stdout] 249 | let config2 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/transport/mod.rs:302:19 [INFO] [stdout] | [INFO] [stdout] 302 | let config1 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/transport/mod.rs:307:19 [INFO] [stdout] | [INFO] [stdout] 307 | let config2 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/transport/mod.rs:334:21 [INFO] [stdout] | [INFO] [stdout] 334 | let test_data = TestDataGen::random_bytes(1024); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/transport/mod.rs:356:25 [INFO] [stdout] | [INFO] [stdout] 356 | let large_message = TestDataGen::random_bytes(10 * 1024 * 1024); // 10MB [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/transport/mod.rs:386:19 [INFO] [stdout] | [INFO] [stdout] 386 | let config1 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/transport/mod.rs:392:19 [INFO] [stdout] | [INFO] [stdout] 392 | let config2 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/transport/mod.rs:415:27 [INFO] [stdout] | [INFO] [stdout] 415 | let insecure_config = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/transport/mod.rs:451:23 [INFO] [stdout] | [INFO] [stdout] 451 | let config1 = TestNodeConfig::builder().port(9170).build(); [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/transport/mod.rs:455:23 [INFO] [stdout] | [INFO] [stdout] 455 | let config2 = TestNodeConfig::builder().port(9171).build(); [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/transport/mod.rs:466:25 [INFO] [stdout] | [INFO] [stdout] 466 | let test_data = TestDataGen::random_bytes(1024 * 1024); // 1MB [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/transport/mod.rs:486:23 [INFO] [stdout] | [INFO] [stdout] 486 | let config1 = TestNodeConfig::builder().port(9172).build(); [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/transport/mod.rs:490:23 [INFO] [stdout] | [INFO] [stdout] 490 | let config2 = TestNodeConfig::builder().port(9173).build(); [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/transport/mod.rs:501:25 [INFO] [stdout] | [INFO] [stdout] 501 | let test_data = TestDataGen::random_bytes(1024 * 1024); // 1MB [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/transport/mod.rs:534:19 [INFO] [stdout] | [INFO] [stdout] 534 | let config1 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/transport/mod.rs:541:19 [INFO] [stdout] | [INFO] [stdout] 541 | let config2 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:28:19 [INFO] [stdout] | [INFO] [stdout] 28 | let config1 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:37:19 [INFO] [stdout] | [INFO] [stdout] 37 | let config2 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:99:19 [INFO] [stdout] | [INFO] [stdout] 99 | let config1 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:109:19 [INFO] [stdout] | [INFO] [stdout] 109 | let config2 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:184:19 [INFO] [stdout] | [INFO] [stdout] 184 | let config1 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:192:19 [INFO] [stdout] | [INFO] [stdout] 192 | let config2 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0422]: cannot find struct, variant or union type `ManualTunnelConfig` in this scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:204:25 [INFO] [stdout] | [INFO] [stdout] 204 | let tunnel_config = ManualTunnelConfig { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: a struct with a similar name exists: `TunnelConfig` [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/workdir/src/tunneling.rs:54:1 [INFO] [stdout] | [INFO] [stdout] 54 | pub struct TunnelConfig { [INFO] [stdout] | ----------------------- similarly named struct `TunnelConfig` defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:228:21 [INFO] [stdout] | [INFO] [stdout] 228 | let test_data = TestDataGen::random_bytes(1024); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:250:19 [INFO] [stdout] | [INFO] [stdout] 250 | let config1 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:259:19 [INFO] [stdout] | [INFO] [stdout] 259 | let config2 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:320:19 [INFO] [stdout] | [INFO] [stdout] 320 | let config1 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:333:19 [INFO] [stdout] | [INFO] [stdout] 333 | let config2 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:402:25 [INFO] [stdout] | [INFO] [stdout] 402 | let test_data = TestDataGen::random_bytes(1024 * 1024); // 1MB [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:420:23 [INFO] [stdout] | [INFO] [stdout] 420 | let config1 = TestNodeConfig::builder().port(9250).enable_ipv6(false).build(); [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:425:23 [INFO] [stdout] | [INFO] [stdout] 425 | let config2 = TestNodeConfig::builder().port(9251).enable_ipv6(true).build(); [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:436:25 [INFO] [stdout] | [INFO] [stdout] 436 | let test_data = TestDataGen::random_bytes(1024 * 1024); // 1MB [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:481:19 [INFO] [stdout] | [INFO] [stdout] 481 | let config1 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:491:19 [INFO] [stdout] | [INFO] [stdout] 491 | let config2 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:562:25 [INFO] [stdout] | [INFO] [stdout] 562 | let config_server = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:577:22 [INFO] [stdout] | [INFO] [stdout] 577 | let config = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/mcp/mod.rs:29:18 [INFO] [stdout] | [INFO] [stdout] 29 | let config = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/mcp/mod.rs:456:19 [INFO] [stdout] | [INFO] [stdout] 456 | let config1 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/mcp/mod.rs:464:19 [INFO] [stdout] | [INFO] [stdout] 464 | let config2 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `NodeConfig` [INFO] [stdout] --> tests/integration/security/mod.rs:27:29 [INFO] [stdout] | [INFO] [stdout] 27 | let node = P2PNode::new(NodeConfig::default()).await?; [INFO] [stdout] | ^^^^^^^^^^ use of undeclared type `NodeConfig` [INFO] [stdout] | [INFO] [stdout] = note: struct `crate::common::tests::NodeConfig` exists but is inaccessible [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use p2p_foundation::NodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `NodeConfig` [INFO] [stdout] --> tests/integration/security/mod.rs:70:29 [INFO] [stdout] | [INFO] [stdout] 70 | let node = P2PNode::new(NodeConfig::default()).await?; [INFO] [stdout] | ^^^^^^^^^^ use of undeclared type `NodeConfig` [INFO] [stdout] | [INFO] [stdout] = note: struct `crate::common::tests::NodeConfig` exists but is inaccessible [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use p2p_foundation::NodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/security/mod.rs:235:21 [INFO] [stdout] | [INFO] [stdout] 235 | let ca_config = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/security/mod.rs:245:19 [INFO] [stdout] | [INFO] [stdout] 245 | let config1 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/security/mod.rs:252:19 [INFO] [stdout] | [INFO] [stdout] 252 | let config2 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/security/mod.rs:282:25 [INFO] [stdout] | [INFO] [stdout] 282 | let unauth_config = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/security/mod.rs:381:19 [INFO] [stdout] | [INFO] [stdout] 381 | let config1 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/security/mod.rs:389:19 [INFO] [stdout] | [INFO] [stdout] 389 | let config2 = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/security/mod.rs:437:28 [INFO] [stdout] | [INFO] [stdout] 437 | let extra_config = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `NodeConfig` [INFO] [stdout] --> tests/integration/security/mod.rs:522:29 [INFO] [stdout] | [INFO] [stdout] 522 | let node = P2PNode::new(NodeConfig::default()).await?; [INFO] [stdout] | ^^^^^^^^^^ use of undeclared type `NodeConfig` [INFO] [stdout] | [INFO] [stdout] = note: struct `crate::common::tests::NodeConfig` exists but is inaccessible [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use p2p_foundation::NodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/scenarios/mod.rs:99:23 [INFO] [stdout] | [INFO] [stdout] 99 | let results_key = TestDataGen::dht_key(&format!("collaboration_results_{}", task_id)); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/scenarios/mod.rs:133:24 [INFO] [stdout] | [INFO] [stdout] 133 | let file_content = TestDataGen::random_bytes(1024 * 1024); // 1MB file [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/scenarios/mod.rs:147:25 [INFO] [stdout] | [INFO] [stdout] 147 | let chunk_key = TestDataGen::dht_key(&format!("{}_{}", file_name, chunk_idx)); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/scenarios/mod.rs:172:29 [INFO] [stdout] | [INFO] [stdout] 172 | let chunk_key = TestDataGen::dht_key(&format!("{}_{}", file_name, chunk_idx)); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/scenarios/mod.rs:206:25 [INFO] [stdout] | [INFO] [stdout] 206 | let chunk_key = TestDataGen::dht_key(&format!("{}_{}", file_name, chunk_idx)); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/scenarios/mod.rs:236:19 [INFO] [stdout] | [INFO] [stdout] 236 | let key = TestDataGen::dht_key(&format!("important_data_{}", i)); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/scenarios/mod.rs:273:27 [INFO] [stdout] | [INFO] [stdout] 273 | let partition_a_key = TestDataGen::dht_key("partition_a_data"); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/scenarios/mod.rs:303:22 [INFO] [stdout] | [INFO] [stdout] 303 | let config = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/scenarios/mod.rs:494:26 [INFO] [stdout] | [INFO] [stdout] 494 | let persistent_key = TestDataGen::dht_key("persistent_data"); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestNodeConfig` [INFO] [stdout] --> tests/integration/scenarios/mod.rs:507:26 [INFO] [stdout] | [INFO] [stdout] 507 | let config = TestNodeConfig::builder() [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `TestNodeConfig` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestNodeConfig; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TestDataGen` [INFO] [stdout] --> tests/integration/scenarios/mod.rs:585:27 [INFO] [stdout] | [INFO] [stdout] 585 | let key = TestDataGen::dht_key(&format!("load_test_key_{}", i)); [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `TestDataGen` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 10 + use crate::common::TestDataGen; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `PeerId` [INFO] [stdout] --> tests/advanced_integration_tests.rs:750:21 [INFO] [stdout] | [INFO] [stdout] 750 | let test_peer = PeerId::from("test_peer_reputation"); [INFO] [stdout] | ^^^^^^ use of undeclared type `PeerId` [INFO] [stdout] | [INFO] [stdout] help: consider importing this type alias [INFO] [stdout] | [INFO] [stdout] 12 + use p2p_foundation::PeerId; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `MCPServerConfig` has no field named `max_concurrent_calls` [INFO] [stdout] --> tests/advanced_integration_tests.rs:69:21 [INFO] [stdout] | [INFO] [stdout] 69 | max_concurrent_calls: 20, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ `MCPServerConfig` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `server_version`, `enable_dht_discovery`, `max_concurrent_requests`, `request_timeout`, `rate_limit_rpm` ... and 3 others [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `MCPServerConfig` has no field named `call_timeout` [INFO] [stdout] --> tests/advanced_integration_tests.rs:70:21 [INFO] [stdout] | [INFO] [stdout] 70 | call_timeout: Duration::from_secs(30), [INFO] [stdout] | ^^^^^^^^^^^^ `MCPServerConfig` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `server_version`, `enable_dht_discovery`, `max_concurrent_requests`, `request_timeout`, `rate_limit_rpm` ... and 3 others [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `std::ops::Range: SampleBorrow>` is not satisfied [INFO] [stdout] --> tests/advanced_integration_tests.rs:129:48 [INFO] [stdout] | [INFO] [stdout] 129 | let target_idx = rng.gen_range(0..self.nodes.len()); [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^^^^ the trait `SampleUniform` is not implemented for `std::ops::Range` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: there are multiple different versions of crate `rand` in the dependency graph [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rand-0.7.3/src/distributions/uniform.rs:199:1 [INFO] [stdout] | [INFO] [stdout] 199 | pub trait SampleUniform: Sized { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the required trait [INFO] [stdout] | [INFO] [stdout] ::: tests/advanced_integration_tests.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use p2p_foundation::{P2PNode, NodeConfig, Result, P2PError}; [INFO] [stdout] | -------------- one version of crate `rand` used here, as a dependency of crate `quinn_proto` [INFO] [stdout] ... [INFO] [stdout] 23 | use rand::Rng; [INFO] [stdout] | ---- one version of crate `rand` used here, as a direct dependency of the current crate [INFO] [stdout] --> /rustc/a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d/library/core/src/ops/range.rs:80:1 [INFO] [stdout] | [INFO] [stdout] = note: this type doesn't implement the required trait [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rand-0.9.1/src/distr/distribution.rs:35:1 [INFO] [stdout] | [INFO] [stdout] 35 | pub trait Distribution { [INFO] [stdout] | ------------------------- this is the found trait [INFO] [stdout] = help: you can use `cargo tree` to explore your dependency tree [INFO] [stdout] = note: required for `std::ops::Range` to implement `SampleBorrow>` [INFO] [stdout] note: required by a bound in `gen_range` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rand-0.7.3/src/lib.rs:214:13 [INFO] [stdout] | [INFO] [stdout] 212 | fn gen_range(&mut self, low: B1, high: B2) -> T [INFO] [stdout] | --------- required by a bound in this associated function [INFO] [stdout] 213 | where [INFO] [stdout] 214 | B1: SampleBorrow + Sized, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `Rng::gen_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> tests/integration/common/mod.rs:299:30 [INFO] [stdout] | [INFO] [stdout] 299 | node.dht_get(key) [INFO] [stdout] | ------- ^^^ expected `Key`, found `&Key` [INFO] [stdout] | | [INFO] [stdout] | arguments to this method are incorrect [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:1268:18 [INFO] [stdout] | [INFO] [stdout] 1268 | pub async fn dht_get(&self, key: crate::dht::Key) -> Result>> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] help: consider using clone here [INFO] [stdout] | [INFO] [stdout] 299 | node.dht_get(key.clone()) [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `words` [INFO] [stdout] --> src/bootstrap/words.rs:300:39 [INFO] [stdout] | [INFO] [stdout] 300 | pub fn decode_to_multiaddr(&self, words: &ThreeWordAddress) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_words` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/bootstrap/mod.rs:174:20 [INFO] [stdout] | [INFO] [stdout] 174 | if let Ok(multiaddr) = addr_str.parse() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_list_services` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/common/mod.rs:320:33 [INFO] [stdout] | [INFO] [stdout] 320 | let services = node.mcp_list_services().await [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `mcp_server` with a similar name [INFO] [stdout] | [INFO] [stdout] 320 - let services = node.mcp_list_services().await [INFO] [stdout] 320 + let services = node.mcp_server().await [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> tests/advanced_integration_tests.rs:129:38 [INFO] [stdout] | [INFO] [stdout] 129 | let target_idx = rng.gen_range(0..self.nodes.len()); [INFO] [stdout] | ^^^^^^^^^--------------------- argument #2 is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rand-0.7.3/src/lib.rs:212:8 [INFO] [stdout] | [INFO] [stdout] 212 | fn gen_range(&mut self, low: B1, high: B2) -> T [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 129 | let target_idx = rng.gen_range(0..self.nodes.len(), /* high */); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: can't compare `std::ops::Range` with `usize` [INFO] [stdout] --> tests/advanced_integration_tests.rs:131:31 [INFO] [stdout] | [INFO] [stdout] 131 | if target_idx != i { [INFO] [stdout] | ^^ no implementation for `std::ops::Range == usize` [INFO] [stdout] | [INFO] [stdout] = help: the trait `PartialEq` is not implemented for `std::ops::Range` [INFO] [stdout] but trait `PartialEq` is implemented for it [INFO] [stdout] = help: for that trait implementation, expected `regex_automata::Span`, found `usize` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> tests/integration/scenarios/mod.rs:678:16 [INFO] [stdout] | [INFO] [stdout] 678 | let tool = p2p_foundation::Tool::new("analyze_data") [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^---------------- two arguments of type `&str` and `serde_json::Value` are missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the arguments [INFO] [stdout] | [INFO] [stdout] 678 | let tool = p2p_foundation::Tool::new("analyze_data", /* &str */, /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `listen_addrs` on type `[NodeConfig]` [INFO] [stdout] --> tests/advanced_integration_tests.rs:132:65 [INFO] [stdout] | [INFO] [stdout] 132 | let listen_addr = &self.configs[target_idx].listen_addrs[0]; [INFO] [stdout] | ^^^^^^^^^^^^ unknown field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `std::ops::Range` doesn't implement `std::fmt::Display` [INFO] [stdout] --> tests/advanced_integration_tests.rs:141:71 [INFO] [stdout] | [INFO] [stdout] 141 | ... debug!("Node {} connected to node {}", i, target_idx); [INFO] [stdout] | -- ^^^^^^^^^^ `std::ops::Range` cannot be formatted with the default formatter [INFO] [stdout] | | [INFO] [stdout] | required by this formatting parameter [INFO] [stdout] | [INFO] [stdout] = help: the trait `std::fmt::Display` is not implemented for `std::ops::Range` [INFO] [stdout] = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead [INFO] [stdout] = note: this error originates in the macro `$crate::__macro_support::format_args` which comes from the expansion of the macro `debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `std::ops::Range` doesn't implement `std::fmt::Display` [INFO] [stdout] --> tests/advanced_integration_tests.rs:141:71 [INFO] [stdout] | [INFO] [stdout] 141 | ... debug!("Node {} connected to node {}", i, target_idx); [INFO] [stdout] | -- ^^^^^^^^^^ `std::ops::Range` cannot be formatted with the default formatter [INFO] [stdout] | | [INFO] [stdout] | required by this formatting parameter [INFO] [stdout] | [INFO] [stdout] = help: the trait `std::fmt::Display` is not implemented for `std::ops::Range` [INFO] [stdout] = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead [INFO] [stdout] = note: this error originates in the macro `$crate::__macro_support::format_args` which comes from the expansion of the macro `debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `std::ops::Range` doesn't implement `std::fmt::Display` [INFO] [stdout] --> tests/advanced_integration_tests.rs:143:88 [INFO] [stdout] | [INFO] [stdout] 143 | Ok(Err(e)) => debug!("Connection failed from {} to {}: {}", i, target_idx, e), [INFO] [stdout] | -- ^^^^^^^^^^ `std::ops::Range` cannot be formatted with the default formatter [INFO] [stdout] | | [INFO] [stdout] | required by this formatting parameter [INFO] [stdout] | [INFO] [stdout] = help: the trait `std::fmt::Display` is not implemented for `std::ops::Range` [INFO] [stdout] = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead [INFO] [stdout] = note: this error originates in the macro `$crate::__macro_support::format_args` which comes from the expansion of the macro `debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `std::ops::Range` doesn't implement `std::fmt::Display` [INFO] [stdout] --> tests/advanced_integration_tests.rs:143:88 [INFO] [stdout] | [INFO] [stdout] 143 | Ok(Err(e)) => debug!("Connection failed from {} to {}: {}", i, target_idx, e), [INFO] [stdout] | -- ^^^^^^^^^^ `std::ops::Range` cannot be formatted with the default formatter [INFO] [stdout] | | [INFO] [stdout] | required by this formatting parameter [INFO] [stdout] | [INFO] [stdout] = help: the trait `std::fmt::Display` is not implemented for `std::ops::Range` [INFO] [stdout] = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead [INFO] [stdout] = note: this error originates in the macro `$crate::__macro_support::format_args` which comes from the expansion of the macro `debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `std::ops::Range` doesn't implement `std::fmt::Display` [INFO] [stdout] --> tests/advanced_integration_tests.rs:144:81 [INFO] [stdout] | [INFO] [stdout] 144 | Err(_) => debug!("Connection timeout from {} to {}", i, target_idx), [INFO] [stdout] | -- ^^^^^^^^^^ `std::ops::Range` cannot be formatted with the default formatter [INFO] [stdout] | | [INFO] [stdout] | required by this formatting parameter [INFO] [stdout] | [INFO] [stdout] = help: the trait `std::fmt::Display` is not implemented for `std::ops::Range` [INFO] [stdout] = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead [INFO] [stdout] = note: this error originates in the macro `$crate::__macro_support::format_args` which comes from the expansion of the macro `debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `std::ops::Range` doesn't implement `std::fmt::Display` [INFO] [stdout] --> tests/advanced_integration_tests.rs:144:81 [INFO] [stdout] | [INFO] [stdout] 144 | Err(_) => debug!("Connection timeout from {} to {}", i, target_idx), [INFO] [stdout] | -- ^^^^^^^^^^ `std::ops::Range` cannot be formatted with the default formatter [INFO] [stdout] | | [INFO] [stdout] | required by this formatting parameter [INFO] [stdout] | [INFO] [stdout] = help: the trait `std::fmt::Display` is not implemented for `std::ops::Range` [INFO] [stdout] = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead [INFO] [stdout] = note: this error originates in the macro `$crate::__macro_support::format_args` which comes from the expansion of the macro `debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `description` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/integration/scenarios/mod.rs:679:10 [INFO] [stdout] | [INFO] [stdout] 678 | let tool = p2p_foundation::Tool::new("analyze_data") [INFO] [stdout] | ________________- [INFO] [stdout] 679 | | .description("Data analysis service") [INFO] [stdout] | | -^^^^^^^^^^^ private field, not a method [INFO] [stdout] | |_________| [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Option<&Arc>` is not a future [INFO] [stdout] --> tests/integration/scenarios/mod.rs:701:23 [INFO] [stdout] | [INFO] [stdout] 701 | node.mcp_server().await?.register_tool(tool).await?; [INFO] [stdout] | ^^^^^ `Option<&Arc>` is not a future [INFO] [stdout] | [INFO] [stdout] = help: the trait `Future` is not implemented for `Option<&Arc>` [INFO] [stdout] = note: Option<&Arc> must be a future or must implement `IntoFuture` to be awaited [INFO] [stdout] = note: required for `Option<&Arc>` to implement `IntoFuture` [INFO] [stdout] help: remove the `.await` [INFO] [stdout] | [INFO] [stdout] 701 - node.mcp_server().await?.register_tool(tool).await?; [INFO] [stdout] 701 + node.mcp_server()?.register_tool(tool).await?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> tests/integration/scenarios/mod.rs:706:16 [INFO] [stdout] | [INFO] [stdout] 706 | let tool = p2p_foundation::Tool::new("train_model") [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^--------------- two arguments of type `&str` and `serde_json::Value` are missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the arguments [INFO] [stdout] | [INFO] [stdout] 706 | let tool = p2p_foundation::Tool::new("train_model", /* &str */, /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_test_dht` is never used [INFO] [stdout] --> src/mcp.rs:2008:14 [INFO] [stdout] | [INFO] [stdout] 2008 | async fn create_test_dht() -> DHT { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `quality_calculator` is never read [INFO] [stdout] --> src/bootstrap/cache.rs:86:5 [INFO] [stdout] | [INFO] [stdout] 78 | pub struct BootstrapCache { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 86 | quality_calculator: QualityCalculator, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BootstrapCache` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `cache_dir` is never read [INFO] [stdout] --> src/bootstrap/merge.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct MergeCoordinator { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 17 | /// Main cache directory path [INFO] [stdout] 18 | cache_dir: PathBuf, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MergeCoordinator` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ConflictInfo` is never constructed [INFO] [stdout] --> src/bootstrap/merge.rs:67:8 [INFO] [stdout] | [INFO] [stdout] 67 | struct ConflictInfo { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TOTAL_COMBINATIONS` is never used [INFO] [stdout] --> src/bootstrap/words.rs:18:7 [INFO] [stdout] | [INFO] [stdout] 18 | const TOTAL_COMBINATIONS: u64 = (WORDS_PER_POSITION as u64).pow(3); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/network.rs:256:5 [INFO] [stdout] | [INFO] [stdout] 256 | Message { topic: String, source: PeerId, data: Vec }, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | #![warn(missing_docs)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/network.rs:256:15 [INFO] [stdout] | [INFO] [stdout] 256 | Message { topic: String, source: PeerId, data: Vec }, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/network.rs:256:30 [INFO] [stdout] | [INFO] [stdout] 256 | Message { topic: String, source: PeerId, data: Vec }, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/network.rs:256:46 [INFO] [stdout] | [INFO] [stdout] 256 | Message { topic: String, source: PeerId, data: Vec }, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/network.rs:257:5 [INFO] [stdout] | [INFO] [stdout] 257 | PeerConnected(PeerId), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a variant [INFO] [stdout] --> src/network.rs:258:5 [INFO] [stdout] | [INFO] [stdout] 258 | PeerDisconnected(PeerId), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/network.rs:431:5 [INFO] [stdout] | [INFO] [stdout] 431 | pub fn local_addr(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/network.rs:435:5 [INFO] [stdout] | [INFO] [stdout] 435 | pub async fn subscribe(&self, topic: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/network.rs:442:5 [INFO] [stdout] | [INFO] [stdout] 442 | pub async fn publish(&self, topic: &str, data: &[u8]) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/advanced_integration_tests.rs:479:20 [INFO] [stdout] | [INFO] [stdout] 479 | let tool = Tool::new(service_name, description) [INFO] [stdout] | ^^^^^^^^^--------------------------- argument #3 of type `serde_json::Value` is missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 479 | let tool = Tool::new(service_name, description, /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2044:5 [INFO] [stdout] | [INFO] [stdout] 2044 | pub inbox_id: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2045:5 [INFO] [stdout] | [INFO] [stdout] 2045 | pub owner: PeerId, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2046:5 [INFO] [stdout] | [INFO] [stdout] 2046 | pub created_at: SystemTime, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2047:5 [INFO] [stdout] | [INFO] [stdout] 2047 | pub message_count: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2048:5 [INFO] [stdout] | [INFO] [stdout] 2048 | pub max_messages: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2049:5 [INFO] [stdout] | [INFO] [stdout] 2049 | pub is_public: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2050:5 [INFO] [stdout] | [INFO] [stdout] 2050 | pub access_keys: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2056:5 [INFO] [stdout] | [INFO] [stdout] 2056 | pub id: String, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2057:5 [INFO] [stdout] | [INFO] [stdout] 2057 | pub sender: PeerId, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2058:5 [INFO] [stdout] | [INFO] [stdout] 2058 | pub recipient_inbox: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2059:5 [INFO] [stdout] | [INFO] [stdout] 2059 | pub content: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2060:5 [INFO] [stdout] | [INFO] [stdout] 2060 | pub message_type: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2061:5 [INFO] [stdout] | [INFO] [stdout] 2061 | pub timestamp: SystemTime, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2062:5 [INFO] [stdout] | [INFO] [stdout] 2062 | pub attachments: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2068:5 [INFO] [stdout] | [INFO] [stdout] 2068 | pub filename: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2069:5 [INFO] [stdout] | [INFO] [stdout] 2069 | pub content_type: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2070:5 [INFO] [stdout] | [INFO] [stdout] 2070 | pub size: u64, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2071:5 [INFO] [stdout] | [INFO] [stdout] 2071 | pub hash: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2077:5 [INFO] [stdout] | [INFO] [stdout] 2077 | pub inbox_id: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2078:5 [INFO] [stdout] | [INFO] [stdout] 2078 | pub messages: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2079:5 [INFO] [stdout] | [INFO] [stdout] 2079 | pub last_updated: SystemTime, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2085:5 [INFO] [stdout] | [INFO] [stdout] 2085 | pub message_id: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2086:5 [INFO] [stdout] | [INFO] [stdout] 2086 | pub sender: PeerId, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2087:5 [INFO] [stdout] | [INFO] [stdout] 2087 | pub timestamp: SystemTime, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2088:5 [INFO] [stdout] | [INFO] [stdout] 2088 | pub message_type: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2094:5 [INFO] [stdout] | [INFO] [stdout] 2094 | pub inbox_id: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2095:5 [INFO] [stdout] | [INFO] [stdout] 2095 | pub three_word_address: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2096:5 [INFO] [stdout] | [INFO] [stdout] 2096 | pub owner: PeerId, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2097:5 [INFO] [stdout] | [INFO] [stdout] 2097 | pub created_at: SystemTime, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2098:5 [INFO] [stdout] | [INFO] [stdout] 2098 | pub message_count: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/dht.rs:2099:5 [INFO] [stdout] | [INFO] [stdout] 2099 | pub is_accessible: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `description` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/integration/scenarios/mod.rs:707:10 [INFO] [stdout] | [INFO] [stdout] 706 | let tool = p2p_foundation::Tool::new("train_model") [INFO] [stdout] | ________________- [INFO] [stdout] 707 | | .description("ML model training service") [INFO] [stdout] | | -^^^^^^^^^^^ private field, not a method [INFO] [stdout] | |_________| [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Option<&Arc>` is not a future [INFO] [stdout] --> tests/integration/scenarios/mod.rs:728:23 [INFO] [stdout] | [INFO] [stdout] 728 | node.mcp_server().await?.register_tool(tool).await?; [INFO] [stdout] | ^^^^^ `Option<&Arc>` is not a future [INFO] [stdout] | [INFO] [stdout] = help: the trait `Future` is not implemented for `Option<&Arc>` [INFO] [stdout] = note: Option<&Arc> must be a future or must implement `IntoFuture` to be awaited [INFO] [stdout] = note: required for `Option<&Arc>` to implement `IntoFuture` [INFO] [stdout] help: remove the `.await` [INFO] [stdout] | [INFO] [stdout] 728 - node.mcp_server().await?.register_tool(tool).await?; [INFO] [stdout] 728 + node.mcp_server()?.register_tool(tool).await?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> tests/integration/scenarios/mod.rs:733:16 [INFO] [stdout] | [INFO] [stdout] 733 | let tool = p2p_foundation::Tool::new("create_visualization") [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^------------------------ two arguments of type `&str` and `serde_json::Value` are missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the arguments [INFO] [stdout] | [INFO] [stdout] 733 | let tool = p2p_foundation::Tool::new("create_visualization", /* &str */, /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `with_handler` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/advanced_integration_tests.rs:480:14 [INFO] [stdout] | [INFO] [stdout] 479 | let tool = Tool::new(service_name, description) [INFO] [stdout] | ____________________- [INFO] [stdout] 480 | | .with_handler(handler); [INFO] [stdout] | |_____________-^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `handler` with a similar name [INFO] [stdout] | [INFO] [stdout] 480 - .with_handler(handler); [INFO] [stdout] 480 + .handler(handler); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Option<&Arc>` is not a future [INFO] [stdout] --> tests/advanced_integration_tests.rs:482:53 [INFO] [stdout] | [INFO] [stdout] 482 | if let Some(mcp_server) = node.mcp_server().await { [INFO] [stdout] | ^^^^^ `Option<&Arc>` is not a future [INFO] [stdout] | [INFO] [stdout] = help: the trait `Future` is not implemented for `Option<&Arc>` [INFO] [stdout] = note: Option<&Arc> must be a future or must implement `IntoFuture` to be awaited [INFO] [stdout] = note: required for `Option<&Arc>` to implement `IntoFuture` [INFO] [stdout] help: remove the `.await` [INFO] [stdout] | [INFO] [stdout] 482 - if let Some(mcp_server) = node.mcp_server().await { [INFO] [stdout] 482 + if let Some(mcp_server) = node.mcp_server() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `description` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/integration/scenarios/mod.rs:734:10 [INFO] [stdout] | [INFO] [stdout] 733 | let tool = p2p_foundation::Tool::new("create_visualization") [INFO] [stdout] | ________________- [INFO] [stdout] 734 | | .description("Data visualization service") [INFO] [stdout] | | -^^^^^^^^^^^ private field, not a method [INFO] [stdout] | |_________| [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Option<&Arc>` is not a future [INFO] [stdout] --> tests/integration/scenarios/mod.rs:754:23 [INFO] [stdout] | [INFO] [stdout] 754 | node.mcp_server().await?.register_tool(tool).await?; [INFO] [stdout] | ^^^^^ `Option<&Arc>` is not a future [INFO] [stdout] | [INFO] [stdout] = help: the trait `Future` is not implemented for `Option<&Arc>` [INFO] [stdout] = note: Option<&Arc> must be a future or must implement `IntoFuture` to be awaited [INFO] [stdout] = note: required for `Option<&Arc>` to implement `IntoFuture` [INFO] [stdout] help: remove the `.await` [INFO] [stdout] | [INFO] [stdout] 754 - node.mcp_server().await?.register_tool(tool).await?; [INFO] [stdout] 754 + node.mcp_server()?.register_tool(tool).await?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Option<&Arc>` is not a future [INFO] [stdout] --> tests/advanced_integration_tests.rs:495:74 [INFO] [stdout] | [INFO] [stdout] 495 | let data_result = if let Some(mcp_server) = coordinator.mcp_server().await { [INFO] [stdout] | ^^^^^ `Option<&Arc>` is not a future [INFO] [stdout] | [INFO] [stdout] = help: the trait `Future` is not implemented for `Option<&Arc>` [INFO] [stdout] = note: Option<&Arc> must be a future or must implement `IntoFuture` to be awaited [INFO] [stdout] = note: required for `Option<&Arc>` to implement `IntoFuture` [INFO] [stdout] help: remove the `.await` [INFO] [stdout] | [INFO] [stdout] 495 - let data_result = if let Some(mcp_server) = coordinator.mcp_server().await { [INFO] [stdout] 495 + let data_result = if let Some(mcp_server) = coordinator.mcp_server() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> tests/integration/scenarios/mod.rs:759:16 [INFO] [stdout] | [INFO] [stdout] 759 | let tool = p2p_foundation::Tool::new("coordinate_task") [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^------------------- two arguments of type `&str` and `serde_json::Value` are missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the arguments [INFO] [stdout] | [INFO] [stdout] 759 | let tool = p2p_foundation::Tool::new("coordinate_task", /* &str */, /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an enum [INFO] [stdout] --> src/bootstrap/discovery.rs:181:1 [INFO] [stdout] | [INFO] [stdout] 181 | pub enum FallbackBehavior { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/bootstrap/words.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | pub first: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/bootstrap/words.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | pub second: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/bootstrap/words.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | pub third: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Option<&Arc>` is not a future [INFO] [stdout] --> tests/advanced_integration_tests.rs:510:75 [INFO] [stdout] | [INFO] [stdout] 510 | let model_result = if let Some(mcp_server) = coordinator.mcp_server().await { [INFO] [stdout] | ^^^^^ `Option<&Arc>` is not a future [INFO] [stdout] | [INFO] [stdout] = help: the trait `Future` is not implemented for `Option<&Arc>` [INFO] [stdout] = note: Option<&Arc> must be a future or must implement `IntoFuture` to be awaited [INFO] [stdout] = note: required for `Option<&Arc>` to implement `IntoFuture` [INFO] [stdout] help: remove the `.await` [INFO] [stdout] | [INFO] [stdout] 510 - let model_result = if let Some(mcp_server) = coordinator.mcp_server().await { [INFO] [stdout] 510 + let model_result = if let Some(mcp_server) = coordinator.mcp_server() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function depends on never type fallback being `()` [INFO] [stdout] --> tests/advanced_integration_tests.rs:490:1 [INFO] [stdout] | [INFO] [stdout] 490 | async fn execute_collaborative_workflow(test_suite: &AdvancedTestSuite) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = help: specify the types explicitly [INFO] [stdout] note: in edition 2024, the requirement `!: serde::ser::Serialize` will fail [INFO] [stdout] --> tests/advanced_integration_tests.rs:519:47 [INFO] [stdout] | [INFO] [stdout] 519 | mcp_server.call_tool("model_trainer", json!({"features": data_result}), context).await? [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(dependency_on_unit_never_type_fallback)]` on by default [INFO] [stdout] = note: this warning originates in the macro `$crate::json_internal` which comes from the expansion of the macro `json` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `()` annotations to avoid fallback changes [INFO] [stdout] | [INFO] [stdout] 495 ~ let data_result: () = if let Some(mcp_server) = coordinator.mcp_server().await { [INFO] [stdout] 496 | let context = p2p_foundation::mcp::MCPCallContext { [INFO] [stdout] ... [INFO] [stdout] 509 | // Step 2: Model training [INFO] [stdout] 510 ~ let model_result: () = if let Some(mcp_server) = coordinator.mcp_server().await { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `description` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/integration/scenarios/mod.rs:760:10 [INFO] [stdout] | [INFO] [stdout] 759 | let tool = p2p_foundation::Tool::new("coordinate_task") [INFO] [stdout] | ________________- [INFO] [stdout] 760 | | .description("Task coordination service") [INFO] [stdout] | | -^^^^^^^^^^^ private field, not a method [INFO] [stdout] | |_________| [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Option<&Arc>` is not a future [INFO] [stdout] --> tests/integration/scenarios/mod.rs:779:23 [INFO] [stdout] | [INFO] [stdout] 779 | node.mcp_server().await?.register_tool(tool).await?; [INFO] [stdout] | ^^^^^ `Option<&Arc>` is not a future [INFO] [stdout] | [INFO] [stdout] = help: the trait `Future` is not implemented for `Option<&Arc>` [INFO] [stdout] = note: Option<&Arc> must be a future or must implement `IntoFuture` to be awaited [INFO] [stdout] = note: required for `Option<&Arc>` to implement `IntoFuture` [INFO] [stdout] help: remove the `.await` [INFO] [stdout] | [INFO] [stdout] 779 - node.mcp_server().await?.register_tool(tool).await?; [INFO] [stdout] 779 + node.mcp_server()?.register_tool(tool).await?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> tests/integration/scenarios/mod.rs:785:23 [INFO] [stdout] | [INFO] [stdout] 785 | let create_tool = p2p_foundation::Tool::new("create_document") [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^------------------- two arguments of type `&str` and `serde_json::Value` are missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the arguments [INFO] [stdout] | [INFO] [stdout] 785 | let create_tool = p2p_foundation::Tool::new("create_document", /* &str */, /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `description` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/integration/scenarios/mod.rs:786:10 [INFO] [stdout] | [INFO] [stdout] 785 | let create_tool = p2p_foundation::Tool::new("create_document") [INFO] [stdout] | _______________________- [INFO] [stdout] 786 | | .description("Create a collaborative document") [INFO] [stdout] | | -^^^^^^^^^^^ private field, not a method [INFO] [stdout] | |_________| [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> tests/integration/scenarios/mod.rs:793:20 [INFO] [stdout] | [INFO] [stdout] 793 | let get_tool = p2p_foundation::Tool::new("get_document") [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^---------------- two arguments of type `&str` and `serde_json::Value` are missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the arguments [INFO] [stdout] | [INFO] [stdout] 793 | let get_tool = p2p_foundation::Tool::new("get_document", /* &str */, /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `description` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/integration/scenarios/mod.rs:794:10 [INFO] [stdout] | [INFO] [stdout] 793 | let get_tool = p2p_foundation::Tool::new("get_document") [INFO] [stdout] | ____________________- [INFO] [stdout] 794 | | .description("Get document content") [INFO] [stdout] | | -^^^^^^^^^^^ private field, not a method [INFO] [stdout] | |_________| [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> tests/integration/scenarios/mod.rs:804:21 [INFO] [stdout] | [INFO] [stdout] 804 | let edit_tool = p2p_foundation::Tool::new("edit_document") [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^----------------- two arguments of type `&str` and `serde_json::Value` are missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the arguments [INFO] [stdout] | [INFO] [stdout] 804 | let edit_tool = p2p_foundation::Tool::new("edit_document", /* &str */, /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `description` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/integration/scenarios/mod.rs:805:10 [INFO] [stdout] | [INFO] [stdout] 804 | let edit_tool = p2p_foundation::Tool::new("edit_document") [INFO] [stdout] | _____________________- [INFO] [stdout] 805 | | .description("Edit document") [INFO] [stdout] | | -^^^^^^^^^^^ private field, not a method [INFO] [stdout] | |_________| [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Option<&Arc>` is not a future [INFO] [stdout] --> tests/integration/scenarios/mod.rs:812:40 [INFO] [stdout] | [INFO] [stdout] 812 | let mcp_server = node.mcp_server().await?; [INFO] [stdout] | ^^^^^ `Option<&Arc>` is not a future [INFO] [stdout] | [INFO] [stdout] = help: the trait `Future` is not implemented for `Option<&Arc>` [INFO] [stdout] = note: Option<&Arc> must be a future or must implement `IntoFuture` to be awaited [INFO] [stdout] = note: required for `Option<&Arc>` to implement `IntoFuture` [INFO] [stdout] help: remove the `.await` [INFO] [stdout] | [INFO] [stdout] 812 - let mcp_server = node.mcp_server().await?; [INFO] [stdout] 812 + let mcp_server = node.mcp_server()?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `P2PNode` doesn't implement `std::fmt::Debug` [INFO] [stdout] --> tests/integration/common/mod.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Debug)] [INFO] [stdout] | ----- in this derive macro expansion [INFO] [stdout] 38 | pub struct TestNetwork { [INFO] [stdout] 39 | pub nodes: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ the trait `std::fmt::Debug` is not implemented for `P2PNode` [INFO] [stdout] | [INFO] [stdout] = help: the trait `std::fmt::Debug` is implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `NodeConfig` has no field named `enable_metrics` [INFO] [stdout] --> tests/integration/common/mod.rs:224:13 [INFO] [stdout] | [INFO] [stdout] 224 | enable_metrics: self.enable_metrics, [INFO] [stdout] | ^^^^^^^^^^^^^^ `NodeConfig` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `peer_id`, `listen_addr`, `bootstrap_peers_str`, `mcp_server_config`, `max_connections` ... and 5 others [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `NodeConfig` has no field named `keypair` [INFO] [stdout] --> tests/integration/common/mod.rs:226:13 [INFO] [stdout] | [INFO] [stdout] 226 | keypair: self.custom_keypair, [INFO] [stdout] | ^^^^^^^ `NodeConfig` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `peer_id`, `listen_addr`, `bootstrap_peers_str`, `mcp_server_config`, `max_connections` ... and 5 others [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0560]: struct `NodeConfig` has no field named `max_peers` [INFO] [stdout] --> tests/integration/common/mod.rs:230:13 [INFO] [stdout] | [INFO] [stdout] 230 | max_peers: 50, [INFO] [stdout] | ^^^^^^^^^ `NodeConfig` does not have this field [INFO] [stdout] | [INFO] [stdout] = note: available fields are: `peer_id`, `listen_addr`, `bootstrap_peers_str`, `mcp_server_config`, `max_connections` ... and 5 others [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `from_bytes` found for struct `Key` in the current scope [INFO] [stdout] --> tests/integration/common/mod.rs:254:30 [INFO] [stdout] | [INFO] [stdout] 254 | p2p_foundation::Key::from_bytes(&hash[..]) [INFO] [stdout] | ^^^^^^^^^^ function or associated item not found in `Key` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `Key` consider using one of the following associated functions: [INFO] [stdout] Key::new [INFO] [stdout] Key::from_hash [INFO] [stdout] Key::random [INFO] [stdout] Key::from_inbox_id [INFO] [stdout] and 2 others [INFO] [stdout] --> /opt/rustwide/workdir/src/dht.rs:267:5 [INFO] [stdout] | [INFO] [stdout] 267 | pub fn new(data: &[u8]) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 275 | pub fn from_hash(hash: [u8; 32]) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 280 | pub fn random() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 2108 | pub fn from_inbox_id(inbox_id: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: there is a method `as_bytes` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/dht.rs:288:5 [INFO] [stdout] | [INFO] [stdout] 288 | pub fn as_bytes(&self) -> &[u8] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/network/mod.rs:34:17 [INFO] [stdout] | [INFO] [stdout] 34 | let addrs = node.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `builder` found for struct `NodeConfig` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:44:30 [INFO] [stdout] | [INFO] [stdout] 44 | let config = NodeConfig::builder() [INFO] [stdout] | ^^^^^^^ function or associated item not found in `NodeConfig` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/network/mod.rs:54:17 [INFO] [stdout] | [INFO] [stdout] 54 | let addrs = node.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `test_suite` [INFO] [stdout] --> tests/advanced_integration_tests.rs:644:33 [INFO] [stdout] | [INFO] [stdout] 644 | async fn heal_network_partition(test_suite: &AdvancedTestSuite, partition_nodes: &[usize]) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_test_suite` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_metrics` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:61:24 [INFO] [stdout] | [INFO] [stdout] 61 | let metrics = node.get_metrics().await?; [INFO] [stdout] | ^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `worker_id` in this scope [INFO] [stdout] --> tests/stress_tests.rs:391:64 [INFO] [stdout] | [INFO] [stdout] 383 | for _worker_id in 0..5 { // Reduced worker count to avoid too much concurrency [INFO] [stdout] | ---------- `_worker_id` defined here [INFO] [stdout] ... [INFO] [stdout] 391 | let _key = Key::new(format!("load_test_{}_{}", worker_id, operation_count).as_bytes()); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: the leading underscore in `_worker_id` marks it as unused, consider renaming it to `worker_id` [INFO] [stdout] | [INFO] [stdout] 383 - for _worker_id in 0..5 { // Reduced worker count to avoid too much concurrency [INFO] [stdout] 383 + for worker_id in 0..5 { // Reduced worker count to avoid too much concurrency [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `worker_id` in this scope [INFO] [stdout] --> tests/stress_tests.rs:392:52 [INFO] [stdout] | [INFO] [stdout] 383 | for _worker_id in 0..5 { // Reduced worker count to avoid too much concurrency [INFO] [stdout] | ---------- `_worker_id` defined here [INFO] [stdout] ... [INFO] [stdout] 392 | let _value = format!("data_{}_{}", worker_id, operation_count).into_bytes(); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: the leading underscore in `_worker_id` marks it as unused, consider renaming it to `worker_id` [INFO] [stdout] | [INFO] [stdout] 383 - for _worker_id in 0..5 { // Reduced worker count to avoid too much concurrency [INFO] [stdout] 383 + for worker_id in 0..5 { // Reduced worker count to avoid too much concurrency [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `_worker_id` in this scope [INFO] [stdout] --> tests/stress_tests.rs:452:74 [INFO] [stdout] | [INFO] [stdout] 452 | let _peer_id = PeerId::from(format!("stress_peer_{}_{}", _worker_id, operation_count)); [INFO] [stdout] | ^^^^^^^^^^ help: a local variable with a similar name exists: `worker_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/advanced_integration_tests.rs:668:20 [INFO] [stdout] | [INFO] [stdout] 668 | let tool = Tool::new("process_task", "Distributed processing service") [INFO] [stdout] | ^^^^^^^^^-------------------------------------------------- argument #3 of type `serde_json::Value` is missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 668 | let tool = Tool::new("process_task", "Distributed processing service", /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_list_services` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:65:29 [INFO] [stdout] | [INFO] [stdout] 65 | let mcp_services = node.mcp_list_services().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `mcp_server` with a similar name [INFO] [stdout] | [INFO] [stdout] 65 - let mcp_services = node.mcp_list_services().await?; [INFO] [stdout] 65 + let mcp_services = node.mcp_server().await?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MergeCoordinator` [INFO] [stdout] --> tests/bootstrap_integration_tests.rs:9:60 [INFO] [stdout] | [INFO] [stdout] 9 | bootstrap::{BootstrapCache, CacheConfig, ContactEntry, MergeCoordinator}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `is_connected` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:88:30 [INFO] [stdout] | [INFO] [stdout] 88 | assert!(network.node(0)?.is_connected(&node1_id).await?); [INFO] [stdout] | ^^^^^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `is_connected` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:89:30 [INFO] [stdout] | [INFO] [stdout] 89 | assert!(network.node(1)?.is_connected(&node2_id).await?); [INFO] [stdout] | ^^^^^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: p2p-foundation@0.1.8: Flutter not available, skipping web build [INFO] [stderr] error: could not compile `p2p-foundation` (bin "ant-connect") due to 1 previous error [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0599]: no method named `is_connected` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:148:30 [INFO] [stdout] | [INFO] [stdout] 148 | assert!(network.node(0)?.is_connected(&node1_id).await?); [INFO] [stdout] | ^^^^^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `avg_peers_per_node` is never read [INFO] [stdout] --> tests/e2e_simple_tests.rs:123:5 [INFO] [stdout] | [INFO] [stdout] 118 | struct NetworkStats { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 123 | avg_peers_per_node: f64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NetworkStats` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `with_handler` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/advanced_integration_tests.rs:669:14 [INFO] [stdout] | [INFO] [stdout] 668 | let tool = Tool::new("process_task", "Distributed processing service") [INFO] [stdout] | ____________________- [INFO] [stdout] 669 | | .with_handler(handler); [INFO] [stdout] | |_____________-^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `handler` with a similar name [INFO] [stdout] | [INFO] [stdout] 669 - .with_handler(handler); [INFO] [stdout] 669 + .handler(handler); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Option<&Arc>` is not a future [INFO] [stdout] --> tests/advanced_integration_tests.rs:671:53 [INFO] [stdout] | [INFO] [stdout] 671 | if let Some(mcp_server) = node.mcp_server().await { [INFO] [stdout] | ^^^^^ `Option<&Arc>` is not a future [INFO] [stdout] | [INFO] [stdout] = help: the trait `Future` is not implemented for `Option<&Arc>` [INFO] [stdout] = note: Option<&Arc> must be a future or must implement `IntoFuture` to be awaited [INFO] [stdout] = note: required for `Option<&Arc>` to implement `IntoFuture` [INFO] [stdout] help: remove the `.await` [INFO] [stdout] | [INFO] [stdout] 671 - if let Some(mcp_server) = node.mcp_server().await { [INFO] [stdout] 671 + if let Some(mcp_server) = node.mcp_server() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `disconnect` found for mutable reference `&mut P2PNode` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:151:26 [INFO] [stdout] | [INFO] [stdout] 151 | network.node_mut(0)?.disconnect(&node1_id).await?; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `disconnect_peer` with a similar name [INFO] [stdout] | [INFO] [stdout] 151 | network.node_mut(0)?.disconnect_peer(&node1_id).await?; [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Option<&Arc>` is not a future [INFO] [stdout] --> tests/advanced_integration_tests.rs:680:49 [INFO] [stdout] | [INFO] [stdout] 680 | if let Some(mcp_server) = node.mcp_server().await { [INFO] [stdout] | ^^^^^ `Option<&Arc>` is not a future [INFO] [stdout] | [INFO] [stdout] = help: the trait `Future` is not implemented for `Option<&Arc>` [INFO] [stdout] = note: Option<&Arc> must be a future or must implement `IntoFuture` to be awaited [INFO] [stdout] = note: required for `Option<&Arc>` to implement `IntoFuture` [INFO] [stdout] help: remove the `.await` [INFO] [stdout] | [INFO] [stdout] 680 - if let Some(mcp_server) = node.mcp_server().await { [INFO] [stdout] 680 + if let Some(mcp_server) = node.mcp_server() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `is_connected` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:155:31 [INFO] [stdout] | [INFO] [stdout] 155 | assert!(!network.node(0)?.is_connected(&node1_id).await?); [INFO] [stdout] | ^^^^^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `is_connected` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:163:30 [INFO] [stdout] | [INFO] [stdout] 163 | assert!(network.node(0)?.is_connected(&node1_id).await?); [INFO] [stdout] | ^^^^^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `can_reach_peer` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:189:34 [INFO] [stdout] | [INFO] [stdout] 189 | network.nodes[i].can_reach_peer(peer_id).await?, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name [INFO] [stdout] | [INFO] [stdout] 189 - network.nodes[i].can_reach_peer(peer_id).await?, [INFO] [stdout] 189 + network.nodes[i].connect_peer(peer_id).await?, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `builder` found for struct `NodeConfig` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:203:30 [INFO] [stdout] | [INFO] [stdout] 203 | let config = NodeConfig::builder() [INFO] [stdout] | ^^^^^^^ function or associated item not found in `NodeConfig` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `builder` found for struct `NodeConfig` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:215:40 [INFO] [stdout] | [INFO] [stdout] 215 | let other_config = NodeConfig::builder() [INFO] [stdout] | ^^^^^^^ function or associated item not found in `NodeConfig` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/network/mod.rs:221:21 [INFO] [stdout] | [INFO] [stdout] 221 | let node_addr = node.listen_addrs().await?[0].clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_network_topology` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:258:29 [INFO] [stdout] | [INFO] [stdout] 258 | let topology = node.get_network_topology().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/network/mod.rs:285:67: 285:72}` [INFO] [stdout] --> tests/integration/network/mod.rs:285:67 [INFO] [stdout] | [INFO] [stdout] 285 | let connection_time = perf.measure_async("single_connection", async { [INFO] [stdout] | ________________________________-------------______________________^ [INFO] [stdout] | | | [INFO] [stdout] | | required by a bound introduced by this call [INFO] [stdout] 286 | | let network = TestNetwork::simple(2).await?; [INFO] [stdout] 287 | | network.stop().await?; [INFO] [stdout] 288 | | Ok::<(), anyhow::Error>(()) [INFO] [stdout] 289 | | }).await?; [INFO] [stdout] | |_____^ expected an `FnOnce()` closure, found `{async block@tests/integration/network/mod.rs:285:67: 285:72}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/network/mod.rs:285:67: 285:72}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/network/mod.rs:285:67: 285:72}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/network/mod.rs:285:67: 285:72}` [INFO] [stdout] --> tests/integration/network/mod.rs:285:27 [INFO] [stdout] | [INFO] [stdout] 285 | let connection_time = perf.measure_async("single_connection", async { [INFO] [stdout] | ___________________________^ [INFO] [stdout] 286 | | let network = TestNetwork::simple(2).await?; [INFO] [stdout] 287 | | network.stop().await?; [INFO] [stdout] 288 | | Ok::<(), anyhow::Error>(()) [INFO] [stdout] 289 | | }).await?; [INFO] [stdout] | |______^ expected an `FnOnce()` closure, found `{async block@tests/integration/network/mod.rs:285:67: 285:72}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/network/mod.rs:285:67: 285:72}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/network/mod.rs:285:67: 285:72}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/network/mod.rs:285:67: 285:72}` [INFO] [stdout] --> tests/integration/network/mod.rs:289:8 [INFO] [stdout] | [INFO] [stdout] 289 | }).await?; [INFO] [stdout] | ^^^^^ expected an `FnOnce()` closure, found `{async block@tests/integration/network/mod.rs:285:67: 285:72}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/network/mod.rs:285:67: 285:72}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/network/mod.rs:285:67: 285:72}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/network/mod.rs:292:72: 292:77}` [INFO] [stdout] --> tests/integration/network/mod.rs:292:72 [INFO] [stdout] | [INFO] [stdout] 292 | let multi_connection_time = perf.measure_async("multi_connection", async { [INFO] [stdout] | ______________________________________-------------_____________________^ [INFO] [stdout] | | | [INFO] [stdout] | | required by a bound introduced by this call [INFO] [stdout] 293 | | let network = TestNetwork::simple(10).await?; [INFO] [stdout] 294 | | network.wait_for_discovery().await?; [INFO] [stdout] 295 | | network.stop().await?; [INFO] [stdout] 296 | | Ok::<(), anyhow::Error>(()) [INFO] [stdout] 297 | | }).await?; [INFO] [stdout] | |_____^ expected an `FnOnce()` closure, found `{async block@tests/integration/network/mod.rs:292:72: 292:77}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/network/mod.rs:292:72: 292:77}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/network/mod.rs:292:72: 292:77}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/network/mod.rs:292:72: 292:77}` [INFO] [stdout] --> tests/integration/network/mod.rs:292:33 [INFO] [stdout] | [INFO] [stdout] 292 | let multi_connection_time = perf.measure_async("multi_connection", async { [INFO] [stdout] | _________________________________^ [INFO] [stdout] 293 | | let network = TestNetwork::simple(10).await?; [INFO] [stdout] 294 | | network.wait_for_discovery().await?; [INFO] [stdout] 295 | | network.stop().await?; [INFO] [stdout] 296 | | Ok::<(), anyhow::Error>(()) [INFO] [stdout] 297 | | }).await?; [INFO] [stdout] | |______^ expected an `FnOnce()` closure, found `{async block@tests/integration/network/mod.rs:292:72: 292:77}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/network/mod.rs:292:72: 292:77}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/network/mod.rs:292:72: 292:77}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/network/mod.rs:292:72: 292:77}` [INFO] [stdout] --> tests/integration/network/mod.rs:297:8 [INFO] [stdout] | [INFO] [stdout] 297 | }).await?; [INFO] [stdout] | ^^^^^ expected an `FnOnce()` closure, found `{async block@tests/integration/network/mod.rs:292:72: 292:77}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/network/mod.rs:292:72: 292:77}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/network/mod.rs:292:72: 292:77}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `builder` found for struct `NodeConfig` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:320:35 [INFO] [stdout] | [INFO] [stdout] 320 | let ipv4_config = NodeConfig::builder() [INFO] [stdout] | ^^^^^^^ function or associated item not found in `NodeConfig` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `builder` found for struct `NodeConfig` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:327:35 [INFO] [stdout] | [INFO] [stdout] 327 | let ipv6_config = NodeConfig::builder() [INFO] [stdout] | ^^^^^^^ function or associated item not found in `NodeConfig` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/network/mod.rs:335:22 [INFO] [stdout] | [INFO] [stdout] 335 | let ipv4_addrs = ipv4_node.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/network/mod.rs:336:22 [INFO] [stdout] | [INFO] [stdout] 336 | let ipv6_addrs = ipv6_node.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `is_connected` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:350:35 [INFO] [stdout] | [INFO] [stdout] 350 | assert!(ipv6_node.is_connected(&ipv4_peer_id).await?); [INFO] [stdout] | ^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `is_connected` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:380:30 [INFO] [stdout] | [INFO] [stdout] 380 | assert!(network.node(0)?.is_connected(&node1_id).await?); [INFO] [stdout] | ^^^^^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `is_connected` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:387:26 [INFO] [stdout] | [INFO] [stdout] 387 | network.node(0)?.is_connected(&node1_id).await?, [INFO] [stdout] | ^^^^^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/network/mod.rs:393:22 [INFO] [stdout] | [INFO] [stdout] 393 | network.node(0)?.send_message(&node1_id, test_data.to_vec()).await?; [INFO] [stdout] | ^^^^^^^^^^^^ ------------------ argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 393 | network.node(0)?.send_message(&node1_id, /* &str */, test_data.to_vec()).await?; [INFO] [stdout] | +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `builder` found for struct `NodeConfig` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:402:42 [INFO] [stdout] | [INFO] [stdout] 402 | let node1 = P2PNode::new(NodeConfig::builder().port(9030).build()).await?; [INFO] [stdout] | ^^^^^^^ function or associated item not found in `NodeConfig` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `builder` found for struct `NodeConfig` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:403:42 [INFO] [stdout] | [INFO] [stdout] 403 | let node2 = P2PNode::new(NodeConfig::builder().port(9031).build()).await?; [INFO] [stdout] | ^^^^^^^ function or associated item not found in `NodeConfig` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/network/mod.rs:405:22 [INFO] [stdout] | [INFO] [stdout] 405 | let node1_addr = node1.listen_addrs().await?[0].clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `is_connected` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:414:23 [INFO] [stdout] | [INFO] [stdout] 414 | assert!(node1.is_connected(&node2_id).await?); [INFO] [stdout] | ^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `disconnect` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:417:15 [INFO] [stdout] | [INFO] [stdout] 417 | node1.disconnect(&node2_id).await?; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `disconnect_peer` with a similar name [INFO] [stdout] | [INFO] [stdout] 417 | node1.disconnect_peer(&node2_id).await?; [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `is_connected` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/network/mod.rs:422:24 [INFO] [stdout] | [INFO] [stdout] 422 | assert!(!node1.is_connected(&node2_id).await?); [INFO] [stdout] | ^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `dht_key_distance` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/dht/mod.rs:95:29 [INFO] [stdout] | [INFO] [stdout] 95 | let distance = node.dht_key_distance(&key).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `dht_get_local` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/dht/mod.rs:152:31 [INFO] [stdout] | [INFO] [stdout] 152 | if let Some(_) = node.dht_get_local(&key).await? { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `dht_get` with a similar name [INFO] [stdout] | [INFO] [stdout] 152 - if let Some(_) = node.dht_get_local(&key).await? { [INFO] [stdout] 152 + if let Some(_) = node.dht_get(&key).await? { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `dht_put_record` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/dht/mod.rs:231:22 [INFO] [stdout] | [INFO] [stdout] 231 | network.node(0)?.dht_put_record(record).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `dht_put` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:1255:5 [INFO] [stdout] | [INFO] [stdout] 1255 | pub async fn dht_put(&self, key: crate::dht::Key, value: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `dht_put_record` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/dht/mod.rs:263:22 [INFO] [stdout] | [INFO] [stdout] 263 | network.node(0)?.dht_put_record(record1).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `dht_put` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:1255:5 [INFO] [stdout] | [INFO] [stdout] 1255 | pub async fn dht_put(&self, key: crate::dht::Key, value: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `dht_put_record` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/dht/mod.rs:271:22 [INFO] [stdout] | [INFO] [stdout] 271 | network.node(1)?.dht_put_record(record2).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `dht_put` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:1255:5 [INFO] [stdout] | [INFO] [stdout] 1255 | pub async fn dht_put(&self, key: crate::dht::Key, value: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `dht_put_record` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/dht/mod.rs:288:35 [INFO] [stdout] | [INFO] [stdout] 288 | let result = network.node(2)?.dht_put_record(old_record).await; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `dht_put` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:1255:5 [INFO] [stdout] | [INFO] [stdout] 1255 | pub async fn dht_put(&self, key: crate::dht::Key, value: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:376:38: 376:43}` [INFO] [stdout] --> tests/integration/dht/mod.rs:376:38 [INFO] [stdout] | [INFO] [stdout] 376 | perf.measure_async("single_put", async { [INFO] [stdout] | __________-------------_______________^ [INFO] [stdout] | | | [INFO] [stdout] | | required by a bound introduced by this call [INFO] [stdout] 377 | | network.node(0)?.dht_put(key.clone(), value.clone()).await [INFO] [stdout] 378 | | }).await?; [INFO] [stdout] | |_____^ expected an `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:376:38: 376:43}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/dht/mod.rs:376:38: 376:43}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/dht/mod.rs:376:38: 376:43}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:376:38: 376:43}` [INFO] [stdout] --> tests/integration/dht/mod.rs:376:5 [INFO] [stdout] | [INFO] [stdout] 376 | / perf.measure_async("single_put", async { [INFO] [stdout] 377 | | network.node(0)?.dht_put(key.clone(), value.clone()).await [INFO] [stdout] 378 | | }).await?; [INFO] [stdout] | |______^ expected an `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:376:38: 376:43}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/dht/mod.rs:376:38: 376:43}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/dht/mod.rs:376:38: 376:43}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:376:38: 376:43}` [INFO] [stdout] --> tests/integration/dht/mod.rs:378:8 [INFO] [stdout] | [INFO] [stdout] 378 | }).await?; [INFO] [stdout] | ^^^^^ expected an `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:376:38: 376:43}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/dht/mod.rs:376:38: 376:43}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/dht/mod.rs:376:38: 376:43}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:381:38: 381:43}` [INFO] [stdout] --> tests/integration/dht/mod.rs:381:38 [INFO] [stdout] | [INFO] [stdout] 381 | perf.measure_async("single_get", async { [INFO] [stdout] | __________-------------_______________^ [INFO] [stdout] | | | [INFO] [stdout] | | required by a bound introduced by this call [INFO] [stdout] 382 | | network.node(1)?.dht_get(&key).await [INFO] [stdout] 383 | | }).await?; [INFO] [stdout] | |_____^ expected an `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:381:38: 381:43}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/dht/mod.rs:381:38: 381:43}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/dht/mod.rs:381:38: 381:43}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:381:38: 381:43}` [INFO] [stdout] --> tests/integration/dht/mod.rs:381:5 [INFO] [stdout] | [INFO] [stdout] 381 | / perf.measure_async("single_get", async { [INFO] [stdout] 382 | | network.node(1)?.dht_get(&key).await [INFO] [stdout] 383 | | }).await?; [INFO] [stdout] | |______^ expected an `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:381:38: 381:43}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/dht/mod.rs:381:38: 381:43}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/dht/mod.rs:381:38: 381:43}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:381:38: 381:43}` [INFO] [stdout] --> tests/integration/dht/mod.rs:383:8 [INFO] [stdout] | [INFO] [stdout] 383 | }).await?; [INFO] [stdout] | ^^^^^ expected an `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:381:38: 381:43}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/dht/mod.rs:381:38: 381:43}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/dht/mod.rs:381:38: 381:43}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:389:58: 389:63}` [INFO] [stdout] --> tests/integration/dht/mod.rs:389:58 [INFO] [stdout] | [INFO] [stdout] 389 | let batch_put_time = perf.measure_async("batch_put", async { [INFO] [stdout] | _______________________________-------------______________^ [INFO] [stdout] | | | [INFO] [stdout] | | required by a bound introduced by this call [INFO] [stdout] 390 | | for i in 0..batch_size { [INFO] [stdout] 391 | | let key = TestDataGen::dht_key(&format!("batch_key_{}", i)); [INFO] [stdout] 392 | | let value = TestDataGen::random_bytes(512); [INFO] [stdout] ... | [INFO] [stdout] 396 | | Ok::<(), anyhow::Error>(()) [INFO] [stdout] 397 | | }).await?; [INFO] [stdout] | |_____^ expected an `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:389:58: 389:63}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/dht/mod.rs:389:58: 389:63}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/dht/mod.rs:389:58: 389:63}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:389:58: 389:63}` [INFO] [stdout] --> tests/integration/dht/mod.rs:389:26 [INFO] [stdout] | [INFO] [stdout] 389 | let batch_put_time = perf.measure_async("batch_put", async { [INFO] [stdout] | __________________________^ [INFO] [stdout] 390 | | for i in 0..batch_size { [INFO] [stdout] 391 | | let key = TestDataGen::dht_key(&format!("batch_key_{}", i)); [INFO] [stdout] 392 | | let value = TestDataGen::random_bytes(512); [INFO] [stdout] ... | [INFO] [stdout] 396 | | Ok::<(), anyhow::Error>(()) [INFO] [stdout] 397 | | }).await?; [INFO] [stdout] | |______^ expected an `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:389:58: 389:63}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/dht/mod.rs:389:58: 389:63}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/dht/mod.rs:389:58: 389:63}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:389:58: 389:63}` [INFO] [stdout] --> tests/integration/dht/mod.rs:397:8 [INFO] [stdout] | [INFO] [stdout] 397 | }).await?; [INFO] [stdout] | ^^^^^ expected an `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:389:58: 389:63}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/dht/mod.rs:389:58: 389:63}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/dht/mod.rs:389:58: 389:63}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:402:58: 402:63}` [INFO] [stdout] --> tests/integration/dht/mod.rs:402:58 [INFO] [stdout] | [INFO] [stdout] 402 | let batch_get_time = perf.measure_async("batch_get", async { [INFO] [stdout] | _______________________________-------------______________^ [INFO] [stdout] | | | [INFO] [stdout] | | required by a bound introduced by this call [INFO] [stdout] 403 | | for key in &batch_keys { [INFO] [stdout] 404 | | network.node(0)?.dht_get(key).await?; [INFO] [stdout] ... | [INFO] [stdout] 407 | | }).await?; [INFO] [stdout] | |_____^ expected an `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:402:58: 402:63}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/dht/mod.rs:402:58: 402:63}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/dht/mod.rs:402:58: 402:63}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:402:58: 402:63}` [INFO] [stdout] --> tests/integration/dht/mod.rs:402:26 [INFO] [stdout] | [INFO] [stdout] 402 | let batch_get_time = perf.measure_async("batch_get", async { [INFO] [stdout] | __________________________^ [INFO] [stdout] 403 | | for key in &batch_keys { [INFO] [stdout] 404 | | network.node(0)?.dht_get(key).await?; [INFO] [stdout] ... | [INFO] [stdout] 407 | | }).await?; [INFO] [stdout] | |______^ expected an `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:402:58: 402:63}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/dht/mod.rs:402:58: 402:63}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/dht/mod.rs:402:58: 402:63}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:402:58: 402:63}` [INFO] [stdout] --> tests/integration/dht/mod.rs:407:8 [INFO] [stdout] | [INFO] [stdout] 407 | }).await?; [INFO] [stdout] | ^^^^^ expected an `FnOnce()` closure, found `{async block@tests/integration/dht/mod.rs:402:58: 402:63}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/dht/mod.rs:402:58: 402:63}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/dht/mod.rs:402:58: 402:63}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/dht/mod.rs:465:20 [INFO] [stdout] | [INFO] [stdout] 465 | restarted_node.connect(bootstrap_addr).await?; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name [INFO] [stdout] | [INFO] [stdout] 465 | restarted_node.connect_peer(bootstrap_addr).await?; [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `failed_tasks` is assigned to, but never used [INFO] [stdout] --> tests/advanced_integration_tests.rs:378:13 [INFO] [stdout] | [INFO] [stdout] 378 | let mut failed_tasks = 0; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_failed_tasks` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `dht_get_local` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/dht/mod.rs:498:35 [INFO] [stdout] | [INFO] [stdout] 498 | if let Some(_) = node.dht_get_local(&key).await? { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `dht_get` with a similar name [INFO] [stdout] | [INFO] [stdout] 498 - if let Some(_) = node.dht_get_local(&key).await? { [INFO] [stdout] 498 + if let Some(_) = node.dht_get(&key).await? { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/transport/mod.rs:43:23 [INFO] [stdout] | [INFO] [stdout] 43 | let node1_addrs = node1.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `cache_dirs` is never read [INFO] [stdout] --> tests/bootstrap_integration_tests.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 25 | struct BootstrapTestNetwork { [INFO] [stdout] | -------------------- field in this struct [INFO] [stdout] 26 | nodes: Vec, [INFO] [stdout] 27 | cache_dirs: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_connection_info` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:57:33 [INFO] [stdout] | [INFO] [stdout] 57 | let connection_info = node2.get_connection_info(&node1_id).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/transport/mod.rs:63:11 [INFO] [stdout] | [INFO] [stdout] 63 | node2.send_message(&node1_id, test_data.clone()).await?; [INFO] [stdout] | ^^^^^^^^^^^^------------------------------ argument #3 of type `Vec` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 63 | node2.send_message(&node1_id, test_data.clone(), /* Vec */).await?; [INFO] [stdout] | +++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0061, E0277, E0433, E0560, E0599, E0609. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0061`. [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `wait_for_message` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:68:15 [INFO] [stdout] | [INFO] [stdout] 68 | node1.wait_for_message() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: p2p-foundation@0.1.8: Flutter not available, skipping web build [INFO] [stderr] error: could not compile `p2p-foundation` (test "advanced_integration_tests") due to 22 previous errors; 4 warnings emitted [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/transport/mod.rs:103:23 [INFO] [stdout] | [INFO] [stdout] 103 | let node1_addrs = node1.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:109:11 [INFO] [stdout] | [INFO] [stdout] 109 | node2.connect(tcp_addr.clone()).await?; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name [INFO] [stdout] | [INFO] [stdout] 109 | node2.connect_peer(tcp_addr.clone()).await?; [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_connection_info` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:113:33 [INFO] [stdout] | [INFO] [stdout] 113 | let connection_info = node2.get_connection_info(&node1_id).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/transport/mod.rs:118:11 [INFO] [stdout] | [INFO] [stdout] 118 | node2.send_message(&node1_id, test_data.clone()).await?; [INFO] [stdout] | ^^^^^^^^^^^^------------------------------ argument #3 of type `Vec` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 118 | node2.send_message(&node1_id, test_data.clone(), /* Vec */).await?; [INFO] [stdout] | +++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `wait_for_message` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:123:15 [INFO] [stdout] | [INFO] [stdout] 123 | node1.wait_for_message() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/transport/mod.rs:155:23 [INFO] [stdout] | [INFO] [stdout] 155 | let node1_addrs = node1.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0425`. [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect_with_transport` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:159:11 [INFO] [stdout] | [INFO] [stdout] 159 | node2.connect_with_transport( [INFO] [stdout] | ------^^^^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: p2p-foundation@0.1.8: Flutter not available, skipping web build [INFO] [stderr] error: could not compile `p2p-foundation` (test "stress_tests") due to 3 previous errors [INFO] [stdout] error[E0599]: no method named `get_connection_info` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:164:30 [INFO] [stdout] | [INFO] [stdout] 164 | let initial_info = node2.get_connection_info(&node1_id).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `switch_transport` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:168:11 [INFO] [stdout] | [INFO] [stdout] 168 | node2.switch_transport(&node1_id, TransportType::TCP).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_connection_info` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:173:31 [INFO] [stdout] | [INFO] [stdout] 173 | let switched_info = node2.get_connection_info(&node1_id).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/transport/mod.rs:178:11 [INFO] [stdout] | [INFO] [stdout] 178 | node2.send_message(&node1_id, test_data.clone()).await?; [INFO] [stdout] | ^^^^^^^^^^^^ ----------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 178 | node2.send_message(&node1_id, /* &str */, test_data.clone()).await?; [INFO] [stdout] | +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `wait_for_message` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:182:15 [INFO] [stdout] | [INFO] [stdout] 182 | node1.wait_for_message() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/transport/mod.rs:212:23 [INFO] [stdout] | [INFO] [stdout] 212 | let node1_addrs = node1.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:216:11 [INFO] [stdout] | [INFO] [stdout] 216 | node2.connect(node1_addrs[0].clone()).await?; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name [INFO] [stdout] | [INFO] [stdout] 216 | node2.connect_peer(node1_addrs[0].clone()).await?; [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_connection_info` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:219:33 [INFO] [stdout] | [INFO] [stdout] 219 | let connection_info = node2.get_connection_info(&node1_id).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `measure_connection_quality` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:229:25 [INFO] [stdout] | [INFO] [stdout] 229 | let quality = node2.measure_connection_quality(&node1_id).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/transport/mod.rs:258:23 [INFO] [stdout] | [INFO] [stdout] 258 | let node1_addrs = node1.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/transport/mod.rs:268:11 [INFO] [stdout] | [INFO] [stdout] 268 | node2.send_message(&node1_id, b"session_establishment".to_vec()).await?; [INFO] [stdout] | ^^^^^^^^^^^^ --------------------------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 268 | node2.send_message(&node1_id, /* &str */, b"session_establishment".to_vec()).await?; [INFO] [stdout] | +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `wait_for_message` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:269:19 [INFO] [stdout] | [INFO] [stdout] 269 | let _ = node1.wait_for_message().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `disconnect` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:272:11 [INFO] [stdout] | [INFO] [stdout] 272 | node2.disconnect(&node1_id).await?; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `disconnect_peer` with a similar name [INFO] [stdout] | [INFO] [stdout] 272 | node2.disconnect_peer(&node1_id).await?; [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect_with_0rtt` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:277:11 [INFO] [stdout] | [INFO] [stdout] 277 | node2.connect_with_0rtt(quic_addr.clone()).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_connection_info` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:289:33 [INFO] [stdout] | [INFO] [stdout] 289 | let connection_info = node2.get_connection_info(&node1_id).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/transport/mod.rs:316:23 [INFO] [stdout] | [INFO] [stdout] 316 | let node1_addrs = node1.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:324:11 [INFO] [stdout] | [INFO] [stdout] 324 | node2.connect(ipv6_addr.clone()).await?; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name [INFO] [stdout] | [INFO] [stdout] 324 | node2.connect_peer(ipv6_addr.clone()).await?; [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_connection_info` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:327:33 [INFO] [stdout] | [INFO] [stdout] 327 | let connection_info = node2.get_connection_info(&node1_id).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/transport/mod.rs:335:11 [INFO] [stdout] | [INFO] [stdout] 335 | node2.send_message(&node1_id, test_data.clone()).await?; [INFO] [stdout] | ^^^^^^^^^^^^------------------------------ argument #3 of type `Vec` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 335 | node2.send_message(&node1_id, test_data.clone(), /* Vec */).await?; [INFO] [stdout] | +++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `wait_for_message` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:339:15 [INFO] [stdout] | [INFO] [stdout] 339 | node1.wait_for_message() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/transport/mod.rs:360:22 [INFO] [stdout] | [INFO] [stdout] 360 | network.node(0)?.send_message(&node1_id, large_message.clone()).await?; [INFO] [stdout] | ^^^^^^^^^^^^---------------------------------- argument #3 of type `Vec` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 360 | network.node(0)?.send_message(&node1_id, large_message.clone(), /* Vec */).await?; [INFO] [stdout] | +++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `wait_for_message` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:364:26 [INFO] [stdout] | [INFO] [stdout] 364 | network.node(1)?.wait_for_message() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/transport/mod.rs:402:23 [INFO] [stdout] | [INFO] [stdout] 402 | let node1_addrs = node1.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:403:11 [INFO] [stdout] | [INFO] [stdout] 403 | node2.connect(node1_addrs[0].clone()).await?; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name [INFO] [stdout] | [INFO] [stdout] 403 | node2.connect_peer(node1_addrs[0].clone()).await?; [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_connection_info` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:406:33 [INFO] [stdout] | [INFO] [stdout] 406 | let connection_info = node2.get_connection_info(&node1_id).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/transport/mod.rs:425:26 [INFO] [stdout] | [INFO] [stdout] 425 | let insecure_addrs = insecure_node.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:428:15 [INFO] [stdout] | [INFO] [stdout] 428 | node2.connect(insecure_addrs[0].clone()) [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name [INFO] [stdout] | [INFO] [stdout] 428 | node2.connect_peer(insecure_addrs[0].clone()) [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/transport/mod.rs:462:27 [INFO] [stdout] | [INFO] [stdout] 462 | let node1_addrs = node1.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:463:15 [INFO] [stdout] | [INFO] [stdout] 463 | node2.connect(node1_addrs[0].clone()).await?; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name [INFO] [stdout] | [INFO] [stdout] 463 | node2.connect_peer(node1_addrs[0].clone()).await?; [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/transport/mod.rs:470:19 [INFO] [stdout] | [INFO] [stdout] 470 | node2.send_message(&node1_id, test_data.clone()).await?; [INFO] [stdout] | ^^^^^^^^^^^^------------------------------ argument #3 of type `Vec` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 470 | node2.send_message(&node1_id, test_data.clone(), /* Vec */).await?; [INFO] [stdout] | +++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `wait_for_message` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:471:27 [INFO] [stdout] | [INFO] [stdout] 471 | let _ = node1.wait_for_message().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/transport/mod.rs:450:66: 450:71}` [INFO] [stdout] --> tests/integration/transport/mod.rs:450:66 [INFO] [stdout] | [INFO] [stdout] 450 | let quic_throughput = perf.measure_async("quic_performance", async { [INFO] [stdout] | ________________________________-------------_____________________^ [INFO] [stdout] | | | [INFO] [stdout] | | required by a bound introduced by this call [INFO] [stdout] 451 | | let config1 = TestNodeConfig::builder().port(9170).build(); [INFO] [stdout] 452 | | let mut quic_config1 = config1; [INFO] [stdout] 453 | | quic_config1.preferred_transport = TransportType::QUIC; [INFO] [stdout] ... | [INFO] [stdout] 481 | | Ok::(throughput) [INFO] [stdout] 482 | | }).await?; [INFO] [stdout] | |_____^ expected an `FnOnce()` closure, found `{async block@tests/integration/transport/mod.rs:450:66: 450:71}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/transport/mod.rs:450:66: 450:71}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/transport/mod.rs:450:66: 450:71}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/transport/mod.rs:450:66: 450:71}` [INFO] [stdout] --> tests/integration/transport/mod.rs:450:27 [INFO] [stdout] | [INFO] [stdout] 450 | let quic_throughput = perf.measure_async("quic_performance", async { [INFO] [stdout] | ___________________________^ [INFO] [stdout] 451 | | let config1 = TestNodeConfig::builder().port(9170).build(); [INFO] [stdout] 452 | | let mut quic_config1 = config1; [INFO] [stdout] 453 | | quic_config1.preferred_transport = TransportType::QUIC; [INFO] [stdout] ... | [INFO] [stdout] 481 | | Ok::(throughput) [INFO] [stdout] 482 | | }).await?; [INFO] [stdout] | |______^ expected an `FnOnce()` closure, found `{async block@tests/integration/transport/mod.rs:450:66: 450:71}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/transport/mod.rs:450:66: 450:71}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/transport/mod.rs:450:66: 450:71}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/transport/mod.rs:450:66: 450:71}` [INFO] [stdout] --> tests/integration/transport/mod.rs:482:8 [INFO] [stdout] | [INFO] [stdout] 482 | }).await?; [INFO] [stdout] | ^^^^^ expected an `FnOnce()` closure, found `{async block@tests/integration/transport/mod.rs:450:66: 450:71}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/transport/mod.rs:450:66: 450:71}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/transport/mod.rs:450:66: 450:71}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/transport/mod.rs:497:27 [INFO] [stdout] | [INFO] [stdout] 497 | let node1_addrs = node1.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:498:15 [INFO] [stdout] | [INFO] [stdout] 498 | node2.connect(node1_addrs[0].clone()).await?; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name [INFO] [stdout] | [INFO] [stdout] 498 | node2.connect_peer(node1_addrs[0].clone()).await?; [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/transport/mod.rs:505:19 [INFO] [stdout] | [INFO] [stdout] 505 | node2.send_message(&node1_id, test_data.clone()).await?; [INFO] [stdout] | ^^^^^^^^^^^^------------------------------ argument #3 of type `Vec` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 505 | node2.send_message(&node1_id, test_data.clone(), /* Vec */).await?; [INFO] [stdout] | +++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `wait_for_message` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:506:27 [INFO] [stdout] | [INFO] [stdout] 506 | let _ = node1.wait_for_message().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/transport/mod.rs:485:64: 485:69}` [INFO] [stdout] --> tests/integration/transport/mod.rs:485:64 [INFO] [stdout] | [INFO] [stdout] 485 | let tcp_throughput = perf.measure_async("tcp_performance", async { [INFO] [stdout] | _______________________________-------------____________________^ [INFO] [stdout] | | | [INFO] [stdout] | | required by a bound introduced by this call [INFO] [stdout] 486 | | let config1 = TestNodeConfig::builder().port(9172).build(); [INFO] [stdout] 487 | | let mut tcp_config1 = config1; [INFO] [stdout] 488 | | tcp_config1.preferred_transport = TransportType::TCP; [INFO] [stdout] ... | [INFO] [stdout] 516 | | Ok::(throughput) [INFO] [stdout] 517 | | }).await?; [INFO] [stdout] | |_____^ expected an `FnOnce()` closure, found `{async block@tests/integration/transport/mod.rs:485:64: 485:69}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/transport/mod.rs:485:64: 485:69}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/transport/mod.rs:485:64: 485:69}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/transport/mod.rs:485:64: 485:69}` [INFO] [stdout] --> tests/integration/transport/mod.rs:485:26 [INFO] [stdout] | [INFO] [stdout] 485 | let tcp_throughput = perf.measure_async("tcp_performance", async { [INFO] [stdout] | __________________________^ [INFO] [stdout] 486 | | let config1 = TestNodeConfig::builder().port(9172).build(); [INFO] [stdout] 487 | | let mut tcp_config1 = config1; [INFO] [stdout] 488 | | tcp_config1.preferred_transport = TransportType::TCP; [INFO] [stdout] ... | [INFO] [stdout] 516 | | Ok::(throughput) [INFO] [stdout] 517 | | }).await?; [INFO] [stdout] | |______^ expected an `FnOnce()` closure, found `{async block@tests/integration/transport/mod.rs:485:64: 485:69}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/transport/mod.rs:485:64: 485:69}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/transport/mod.rs:485:64: 485:69}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/transport/mod.rs:485:64: 485:69}` [INFO] [stdout] --> tests/integration/transport/mod.rs:517:8 [INFO] [stdout] | [INFO] [stdout] 517 | }).await?; [INFO] [stdout] | ^^^^^ expected an `FnOnce()` closure, found `{async block@tests/integration/transport/mod.rs:485:64: 485:69}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/transport/mod.rs:485:64: 485:69}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/transport/mod.rs:485:64: 485:69}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/transport/mod.rs:551:23 [INFO] [stdout] | [INFO] [stdout] 551 | let node1_addrs = node1.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:556:15 [INFO] [stdout] | [INFO] [stdout] 556 | node2.connect(node1_addrs[0].clone()).await?; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name [INFO] [stdout] | [INFO] [stdout] 556 | node2.connect_peer(node1_addrs[0].clone()).await?; [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_connection_pool_info` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:561:27 [INFO] [stdout] | [INFO] [stdout] 561 | let pool_info = node2.get_connection_pool_info(&node1_id).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/transport/mod.rs:568:15 [INFO] [stdout] | [INFO] [stdout] 568 | node2.send_message(&node1_id, format!("message_{}", i).into_bytes()).await?; [INFO] [stdout] | ^^^^^^^^^^^^ ------------------------------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 568 | node2.send_message(&node1_id, /* &str */, format!("message_{}", i).into_bytes()).await?; [INFO] [stdout] | +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_connection_pool_stats` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/transport/mod.rs:572:28 [INFO] [stdout] | [INFO] [stdout] 572 | let pool_stats = node2.get_connection_pool_stats(&node1_id).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_tunnel_endpoint` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:49:38 [INFO] [stdout] | [INFO] [stdout] 49 | let ipv4_tunnel_addr = ipv4_node.get_tunnel_endpoint(TunnelProtocol::SixToFour).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_tunnel_endpoint` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:50:38 [INFO] [stdout] | [INFO] [stdout] 50 | let ipv6_tunnel_addr = ipv6_node.get_tunnel_endpoint(TunnelProtocol::SixToFour).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect_via_tunnel` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:56:33 [INFO] [stdout] | [INFO] [stdout] 56 | let tunnel_info = ipv4_node.connect_via_tunnel( [INFO] [stdout] | ----------^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:920:5 [INFO] [stdout] | [INFO] [stdout] 920 | pub async fn connect_peer(&self, address: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/tunneling/mod.rs:69:15 [INFO] [stdout] | [INFO] [stdout] 69 | ipv4_node.send_message(&ipv6_peer_id, test_data.clone()).await?; [INFO] [stdout] | ^^^^^^^^^^^^ ----------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 69 | ipv4_node.send_message(&ipv6_peer_id, /* &str */, test_data.clone()).await?; [INFO] [stdout] | +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `wait_for_message` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:73:19 [INFO] [stdout] | [INFO] [stdout] 73 | ipv6_node.wait_for_message() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_tunnel_stats` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:83:34 [INFO] [stdout] | [INFO] [stdout] 83 | let tunnel_stats = ipv4_node.get_tunnel_stats(TunnelProtocol::SixToFour).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_teredo_address` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:126:35 [INFO] [stdout] | [INFO] [stdout] 126 | let node1_teredo_addr = node1.get_teredo_address().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_teredo_address` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:127:35 [INFO] [stdout] | [INFO] [stdout] 127 | let node2_teredo_addr = node2.get_teredo_address().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect_via_tunnel` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:137:29 [INFO] [stdout] | [INFO] [stdout] 137 | let tunnel_info = node1.connect_via_tunnel( [INFO] [stdout] | ------^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:920:5 [INFO] [stdout] | [INFO] [stdout] 920 | pub async fn connect_peer(&self, address: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/tunneling/mod.rs:149:11 [INFO] [stdout] | [INFO] [stdout] 149 | node1.send_message(&node2_id, test_data.clone()).await?; [INFO] [stdout] | ^^^^^^^^^^^^ ----------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 149 | node1.send_message(&node2_id, /* &str */, test_data.clone()).await?; [INFO] [stdout] | +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `wait_for_message` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:153:15 [INFO] [stdout] | [INFO] [stdout] 153 | node2.wait_for_message() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/tunneling/mod.rs:160:11 [INFO] [stdout] | [INFO] [stdout] 160 | node2.send_message(&node1.peer_id(), response_data.clone()).await?; [INFO] [stdout] | ^^^^^^^^^^^^ --------------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 160 | node2.send_message(&node1.peer_id(), /* &str */, response_data.clone()).await?; [INFO] [stdout] | +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `wait_for_message` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:164:15 [INFO] [stdout] | [INFO] [stdout] 164 | node1.wait_for_message() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `check_tunnel_health` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:170:31 [INFO] [stdout] | [INFO] [stdout] 170 | let tunnel_health = node1.check_tunnel_health(TunnelProtocol::Teredo).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `NATType` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:172:39 [INFO] [stdout] | [INFO] [stdout] 172 | assert!(tunnel_health.nat_type != NATType::Unknown); [INFO] [stdout] | ^^^^^^^ use of undeclared type `NATType` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `create_manual_tunnel` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:211:24 [INFO] [stdout] | [INFO] [stdout] 211 | let tunnel = node1.create_manual_tunnel(tunnel_config).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:215:23 [INFO] [stdout] | [INFO] [stdout] 215 | let node2_addrs = node2.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect_via_tunnel` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:220:11 [INFO] [stdout] | [INFO] [stdout] 220 | node1.connect_via_tunnel(ipv6_addr.clone(), TunnelProtocol::SixInFour).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:920:5 [INFO] [stdout] | [INFO] [stdout] 920 | pub async fn connect_peer(&self, address: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_tunnel_stats` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:223:30 [INFO] [stdout] | [INFO] [stdout] 223 | let tunnel_stats = node1.get_tunnel_stats(TunnelProtocol::SixInFour).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/tunneling/mod.rs:230:11 [INFO] [stdout] | [INFO] [stdout] 230 | node1.send_message(&node2_id, test_data.clone()).await?; [INFO] [stdout] | ^^^^^^^^^^^^------------------------------ argument #3 of type `Vec` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 230 | node1.send_message(&node2_id, test_data.clone(), /* Vec */).await?; [INFO] [stdout] | +++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `wait_for_message` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:234:15 [INFO] [stdout] | [INFO] [stdout] 234 | node2.wait_for_message() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `destroy_manual_tunnel` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:240:11 [INFO] [stdout] | [INFO] [stdout] 240 | node1.destroy_manual_tunnel(tunnel.id()).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no associated item named `Auto` found for struct `p2p_foundation::tunneling::TunnelSelection` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:256:54 [INFO] [stdout] | [INFO] [stdout] 256 | auto_config1.tunnel_selection = TunnelSelection::Auto; [INFO] [stdout] | ^^^^ associated item not found in `p2p_foundation::tunneling::TunnelSelection` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no associated item named `Auto` found for struct `p2p_foundation::tunneling::TunnelSelection` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:265:54 [INFO] [stdout] | [INFO] [stdout] 265 | auto_config2.tunnel_selection = TunnelSelection::Auto; [INFO] [stdout] | ^^^^ associated item not found in `p2p_foundation::tunneling::TunnelSelection` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_selected_tunnel_protocol` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:274:35 [INFO] [stdout] | [INFO] [stdout] 274 | let selected_protocol = node1.get_selected_tunnel_protocol().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `is_behind_nat` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:281:27 [INFO] [stdout] | [INFO] [stdout] 281 | assert!(node1.is_behind_nat().await?); [INFO] [stdout] | ^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:292:23 [INFO] [stdout] | [INFO] [stdout] 292 | let node2_addrs = node2.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:293:35 [INFO] [stdout] | [INFO] [stdout] 293 | let connection_result = node1.connect(node2_addrs[0].clone()).await; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name [INFO] [stdout] | [INFO] [stdout] 293 | let connection_result = node1.connect_peer(node2_addrs[0].clone()).await; [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/tunneling/mod.rs:301:11 [INFO] [stdout] | [INFO] [stdout] 301 | node1.send_message(&node2_id, test_data.clone()).await?; [INFO] [stdout] | ^^^^^^^^^^^^ ----------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 301 | node1.send_message(&node2_id, /* &str */, test_data.clone()).await?; [INFO] [stdout] | +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `wait_for_message` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:305:15 [INFO] [stdout] | [INFO] [stdout] 305 | node2.wait_for_message() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:345:23 [INFO] [stdout] | [INFO] [stdout] 345 | let node2_addrs = node2.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect_with_failover` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:346:33 [INFO] [stdout] | [INFO] [stdout] 346 | let connection_info = node1.connect_with_failover(node2_addrs[0].clone()).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name [INFO] [stdout] | [INFO] [stdout] 346 - let connection_info = node1.connect_with_failover(node2_addrs[0].clone()).await?; [INFO] [stdout] 346 + let connection_info = node1.connect_peer(node2_addrs[0].clone()).await?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/tunneling/mod.rs:357:11 [INFO] [stdout] | [INFO] [stdout] 357 | node1.send_message(&node2_id, test_data.clone()).await?; [INFO] [stdout] | ^^^^^^^^^^^^ ----------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 357 | node1.send_message(&node2_id, /* &str */, test_data.clone()).await?; [INFO] [stdout] | +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `wait_for_message` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:361:15 [INFO] [stdout] | [INFO] [stdout] 361 | node2.wait_for_message() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `simulate_tunnel_failure` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:367:11 [INFO] [stdout] | [INFO] [stdout] 367 | node1.simulate_tunnel_failure(connection_info.primary_tunnel).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_connection_info` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:373:30 [INFO] [stdout] | [INFO] [stdout] 373 | let current_info = node1.get_connection_info(&node2_id).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/tunneling/mod.rs:378:11 [INFO] [stdout] | [INFO] [stdout] 378 | node1.send_message(&node2_id, failover_data.clone()).await?; [INFO] [stdout] | ^^^^^^^^^^^^ --------------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 378 | node1.send_message(&node2_id, /* &str */, failover_data.clone()).await?; [INFO] [stdout] | +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `wait_for_message` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:382:15 [INFO] [stdout] | [INFO] [stdout] 382 | node2.wait_for_message() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/tunneling/mod.rs:406:30 [INFO] [stdout] | [INFO] [stdout] 406 | network.node(0)?.send_message(&network.node(1)?.peer_id(), test_data.clone()).await?; [INFO] [stdout] | ^^^^^^^^^^^^------------------------------------------------ argument #3 of type `Vec` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 406 | network.node(0)?.send_message(&network.node(1)?.peer_id(), test_data.clone(), /* Vec */).await?; [INFO] [stdout] | +++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `wait_for_message` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:407:38 [INFO] [stdout] | [INFO] [stdout] 407 | let _ = network.node(1)?.wait_for_message().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/tunneling/mod.rs:400:69: 400:74}` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:400:69 [INFO] [stdout] | [INFO] [stdout] 400 | let direct_throughput = perf.measure_async("direct_connection", async { [INFO] [stdout] | __________________________________-------------______________________^ [INFO] [stdout] | | | [INFO] [stdout] | | required by a bound introduced by this call [INFO] [stdout] 401 | | let network = TestNetwork::simple(2).await?; [INFO] [stdout] 402 | | let test_data = TestDataGen::random_bytes(1024 * 1024); // 1MB [INFO] [stdout] ... | [INFO] [stdout] 415 | | Ok::(throughput) [INFO] [stdout] 416 | | }).await?; [INFO] [stdout] | |_____^ expected an `FnOnce()` closure, found `{async block@tests/integration/tunneling/mod.rs:400:69: 400:74}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/tunneling/mod.rs:400:69: 400:74}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/tunneling/mod.rs:400:69: 400:74}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/tunneling/mod.rs:400:69: 400:74}` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:400:29 [INFO] [stdout] | [INFO] [stdout] 400 | let direct_throughput = perf.measure_async("direct_connection", async { [INFO] [stdout] | _____________________________^ [INFO] [stdout] 401 | | let network = TestNetwork::simple(2).await?; [INFO] [stdout] 402 | | let test_data = TestDataGen::random_bytes(1024 * 1024); // 1MB [INFO] [stdout] ... | [INFO] [stdout] 415 | | Ok::(throughput) [INFO] [stdout] 416 | | }).await?; [INFO] [stdout] | |______^ expected an `FnOnce()` closure, found `{async block@tests/integration/tunneling/mod.rs:400:69: 400:74}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/tunneling/mod.rs:400:69: 400:74}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/tunneling/mod.rs:400:69: 400:74}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/tunneling/mod.rs:400:69: 400:74}` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:416:8 [INFO] [stdout] | [INFO] [stdout] 416 | }).await?; [INFO] [stdout] | ^^^^^ expected an `FnOnce()` closure, found `{async block@tests/integration/tunneling/mod.rs:400:69: 400:74}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/tunneling/mod.rs:400:69: 400:74}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/tunneling/mod.rs:400:69: 400:74}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:433:27 [INFO] [stdout] | [INFO] [stdout] 433 | let node2_addrs = node2.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect_via_tunnel` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:434:15 [INFO] [stdout] | [INFO] [stdout] 434 | node1.connect_via_tunnel(node2_addrs[0].clone(), TunnelProtocol::SixToFour).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:920:5 [INFO] [stdout] | [INFO] [stdout] 920 | pub async fn connect_peer(&self, address: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/tunneling/mod.rs:441:19 [INFO] [stdout] | [INFO] [stdout] 441 | node1.send_message(&node2_id, test_data.clone()).await?; [INFO] [stdout] | ^^^^^^^^^^^^------------------------------ argument #3 of type `Vec` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 441 | node1.send_message(&node2_id, test_data.clone(), /* Vec */).await?; [INFO] [stdout] | +++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `wait_for_message` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:442:27 [INFO] [stdout] | [INFO] [stdout] 442 | let _ = node2.wait_for_message().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/tunneling/mod.rs:419:63: 419:68}` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:419:63 [INFO] [stdout] | [INFO] [stdout] 419 | let tunnel_throughput = perf.measure_async("6to4_tunnel", async { [INFO] [stdout] | __________________________________-------------________________^ [INFO] [stdout] | | | [INFO] [stdout] | | required by a bound introduced by this call [INFO] [stdout] 420 | | let config1 = TestNodeConfig::builder().port(9250).enable_ipv6(false).build(); [INFO] [stdout] 421 | | let mut tunnel_config1 = config1; [INFO] [stdout] 422 | | tunnel_config1.enable_tunneling = true; [INFO] [stdout] ... | [INFO] [stdout] 452 | | Ok::(throughput) [INFO] [stdout] 453 | | }).await?; [INFO] [stdout] | |_____^ expected an `FnOnce()` closure, found `{async block@tests/integration/tunneling/mod.rs:419:63: 419:68}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/tunneling/mod.rs:419:63: 419:68}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/tunneling/mod.rs:419:63: 419:68}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/tunneling/mod.rs:419:63: 419:68}` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:419:29 [INFO] [stdout] | [INFO] [stdout] 419 | let tunnel_throughput = perf.measure_async("6to4_tunnel", async { [INFO] [stdout] | _____________________________^ [INFO] [stdout] 420 | | let config1 = TestNodeConfig::builder().port(9250).enable_ipv6(false).build(); [INFO] [stdout] 421 | | let mut tunnel_config1 = config1; [INFO] [stdout] 422 | | tunnel_config1.enable_tunneling = true; [INFO] [stdout] ... | [INFO] [stdout] 452 | | Ok::(throughput) [INFO] [stdout] 453 | | }).await?; [INFO] [stdout] | |______^ expected an `FnOnce()` closure, found `{async block@tests/integration/tunneling/mod.rs:419:63: 419:68}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/tunneling/mod.rs:419:63: 419:68}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/tunneling/mod.rs:419:63: 419:68}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/tunneling/mod.rs:419:63: 419:68}` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:453:8 [INFO] [stdout] | [INFO] [stdout] 453 | }).await?; [INFO] [stdout] | ^^^^^ expected an `FnOnce()` closure, found `{async block@tests/integration/tunneling/mod.rs:419:63: 419:68}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/tunneling/mod.rs:419:63: 419:68}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/tunneling/mod.rs:419:63: 419:68}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:502:23 [INFO] [stdout] | [INFO] [stdout] 502 | let node2_addrs = node2.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect_via_tunnel` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:503:29 [INFO] [stdout] | [INFO] [stdout] 503 | let tunnel_info = node1.connect_via_tunnel( [INFO] [stdout] | ------^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:920:5 [INFO] [stdout] | [INFO] [stdout] 920 | pub async fn connect_peer(&self, address: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/tunneling/mod.rs:518:19 [INFO] [stdout] | [INFO] [stdout] 518 | node1.send_message(&node2_id, test_data.clone()) [INFO] [stdout] | ^^^^^^^^^^^^ ----------------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 518 | node1.send_message(&node2_id, /* &str */, test_data.clone()) [INFO] [stdout] | +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `wait_for_message` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:524:27 [INFO] [stdout] | [INFO] [stdout] 524 | node2.wait_for_message() [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_tunnel_recovery_stats` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:546:32 [INFO] [stdout] | [INFO] [stdout] 546 | let recovery_stats = node1.get_tunnel_recovery_stats(TunnelProtocol::SixToFour).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/tunneling/mod.rs:571:24 [INFO] [stdout] | [INFO] [stdout] 571 | let server_addrs = server_node.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect_via_tunnel` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:588:16 [INFO] [stdout] | [INFO] [stdout] 588 | client.connect_via_tunnel( [INFO] [stdout] | -------^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:920:5 [INFO] [stdout] | [INFO] [stdout] 920 | pub async fn connect_peer(&self, address: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/tunneling/mod.rs:605:40 [INFO] [stdout] | [INFO] [stdout] 605 | if let Err(e) = client.send_message(&server_id, message).await { [INFO] [stdout] | ^^^^^^^^^^^^ ------- argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 605 | if let Err(e) = client.send_message(&server_id, /* &str */, message).await { [INFO] [stdout] | +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_tunnel_stats` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/tunneling/mod.rs:631:36 [INFO] [stdout] | [INFO] [stdout] 631 | let tunnel_stats = server_node.get_tunnel_stats(TunnelProtocol::SixToFour).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Option<&Arc>` is not a future [INFO] [stdout] --> tests/integration/mcp/mod.rs:37:40 [INFO] [stdout] | [INFO] [stdout] 37 | let mcp_server = node.mcp_server().await?; [INFO] [stdout] | ^^^^^ `Option<&Arc>` is not a future [INFO] [stdout] | [INFO] [stdout] = help: the trait `Future` is not implemented for `Option<&Arc>` [INFO] [stdout] = note: Option<&Arc> must be a future or must implement `IntoFuture` to be awaited [INFO] [stdout] = note: required for `Option<&Arc>` to implement `IntoFuture` [INFO] [stdout] help: remove the `.await` [INFO] [stdout] | [INFO] [stdout] 37 - let mcp_server = node.mcp_server().await?; [INFO] [stdout] 37 + let mcp_server = node.mcp_server()?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> tests/integration/mcp/mod.rs:41:27 [INFO] [stdout] | [INFO] [stdout] 41 | let calculator_tool = Tool::new("calculator") [INFO] [stdout] | ^^^^^^^^^-------------- two arguments of type `&str` and `serde_json::Value` are missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the arguments [INFO] [stdout] | [INFO] [stdout] 41 | let calculator_tool = Tool::new("calculator", /* &str */, /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `description` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:42:10 [INFO] [stdout] | [INFO] [stdout] 41 | let calculator_tool = Tool::new("calculator") [INFO] [stdout] | ___________________________- [INFO] [stdout] 42 | | .description("Basic calculator operations") [INFO] [stdout] | | -^^^^^^^^^^^ private field, not a method [INFO] [stdout] | |_________| [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Option<&Arc>` is not a future [INFO] [stdout] --> tests/integration/mcp/mod.rs:115:39 [INFO] [stdout] | [INFO] [stdout] 115 | network.node(0)?.mcp_server().await?.register_tool(tool).await?; [INFO] [stdout] | ^^^^^ `Option<&Arc>` is not a future [INFO] [stdout] | [INFO] [stdout] = help: the trait `Future` is not implemented for `Option<&Arc>` [INFO] [stdout] = note: Option<&Arc> must be a future or must implement `IntoFuture` to be awaited [INFO] [stdout] = note: required for `Option<&Arc>` to implement `IntoFuture` [INFO] [stdout] help: remove the `.await` [INFO] [stdout] | [INFO] [stdout] 115 - network.node(0)?.mcp_server().await?.register_tool(tool).await?; [INFO] [stdout] 115 + network.node(0)?.mcp_server()?.register_tool(tool).await?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Option<&Arc>` is not a future [INFO] [stdout] --> tests/integration/mcp/mod.rs:119:39 [INFO] [stdout] | [INFO] [stdout] 119 | network.node(1)?.mcp_server().await?.register_tool(tool).await?; [INFO] [stdout] | ^^^^^ `Option<&Arc>` is not a future [INFO] [stdout] | [INFO] [stdout] = help: the trait `Future` is not implemented for `Option<&Arc>` [INFO] [stdout] = note: Option<&Arc> must be a future or must implement `IntoFuture` to be awaited [INFO] [stdout] = note: required for `Option<&Arc>` to implement `IntoFuture` [INFO] [stdout] help: remove the `.await` [INFO] [stdout] | [INFO] [stdout] 119 - network.node(1)?.mcp_server().await?.register_tool(tool).await?; [INFO] [stdout] 119 + network.node(1)?.mcp_server()?.register_tool(tool).await?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Option<&Arc>` is not a future [INFO] [stdout] --> tests/integration/mcp/mod.rs:123:39 [INFO] [stdout] | [INFO] [stdout] 123 | network.node(2)?.mcp_server().await?.register_tool(tool).await?; [INFO] [stdout] | ^^^^^ `Option<&Arc>` is not a future [INFO] [stdout] | [INFO] [stdout] = help: the trait `Future` is not implemented for `Option<&Arc>` [INFO] [stdout] = note: Option<&Arc> must be a future or must implement `IntoFuture` to be awaited [INFO] [stdout] = note: required for `Option<&Arc>` to implement `IntoFuture` [INFO] [stdout] help: remove the `.await` [INFO] [stdout] | [INFO] [stdout] 123 - network.node(2)?.mcp_server().await?.register_tool(tool).await?; [INFO] [stdout] 123 + network.node(2)?.mcp_server()?.register_tool(tool).await?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_discover_services` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:131:52 [INFO] [stdout] | [INFO] [stdout] 131 | let discovered_services = network.node(i)?.mcp_discover_services().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_get_remote_capabilities` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:141:52 [INFO] [stdout] | [INFO] [stdout] 141 | let remote_capabilities = network.node(i)?.mcp_get_remote_capabilities().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Option<&Arc>` is not a future [INFO] [stdout] --> tests/integration/mcp/mod.rs:162:35 [INFO] [stdout] | [INFO] [stdout] 162 | network.node(1)?.mcp_server().await?.register_tool(calculator_tool).await?; [INFO] [stdout] | ^^^^^ `Option<&Arc>` is not a future [INFO] [stdout] | [INFO] [stdout] = help: the trait `Future` is not implemented for `Option<&Arc>` [INFO] [stdout] = note: Option<&Arc> must be a future or must implement `IntoFuture` to be awaited [INFO] [stdout] = note: required for `Option<&Arc>` to implement `IntoFuture` [INFO] [stdout] help: remove the `.await` [INFO] [stdout] | [INFO] [stdout] 162 - network.node(1)?.mcp_server().await?.register_tool(calculator_tool).await?; [INFO] [stdout] 162 + network.node(1)?.mcp_server()?.register_tool(calculator_tool).await?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_call_remote_tool` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:176:35 [INFO] [stdout] | [INFO] [stdout] 176 | let result = network.node(0)?.mcp_call_remote_tool( [INFO] [stdout] | -----------------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `call_mcp_tool` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:1093:5 [INFO] [stdout] | [INFO] [stdout] 1093 | pub async fn call_mcp_tool(&self, tool_name: &str, arguments: Value) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_call_remote_tool` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:188:41 [INFO] [stdout] | [INFO] [stdout] 188 | let error_result = network.node(0)?.mcp_call_remote_tool( [INFO] [stdout] | -----------------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `call_mcp_tool` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:1093:5 [INFO] [stdout] | [INFO] [stdout] 1093 | pub async fn call_mcp_tool(&self, tool_name: &str, arguments: Value) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_call_remote_tool` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:203:40 [INFO] [stdout] | [INFO] [stdout] 203 | let param_error = network.node(0)?.mcp_call_remote_tool( [INFO] [stdout] | -----------------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `call_mcp_tool` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:1093:5 [INFO] [stdout] | [INFO] [stdout] 1093 | pub async fn call_mcp_tool(&self, tool_name: &str, arguments: Value) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> tests/integration/mcp/mod.rs:221:25 [INFO] [stdout] | [INFO] [stdout] 221 | let kv_store_tool = Tool::new("kv_store") [INFO] [stdout] | ^^^^^^^^^------------ two arguments of type `&str` and `serde_json::Value` are missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the arguments [INFO] [stdout] | [INFO] [stdout] 221 | let kv_store_tool = Tool::new("kv_store", /* &str */, /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `description` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:222:10 [INFO] [stdout] | [INFO] [stdout] 221 | let kv_store_tool = Tool::new("kv_store") [INFO] [stdout] | _________________________- [INFO] [stdout] 222 | | .description("Distributed key-value store operations") [INFO] [stdout] | | -^^^^^^^^^^^ private field, not a method [INFO] [stdout] | |_________| [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Option<&Arc>` is not a future [INFO] [stdout] --> tests/integration/mcp/mod.rs:275:35 [INFO] [stdout] | [INFO] [stdout] 275 | network.node(1)?.mcp_server().await?.register_tool(kv_store_tool).await?; [INFO] [stdout] | ^^^^^ `Option<&Arc>` is not a future [INFO] [stdout] | [INFO] [stdout] = help: the trait `Future` is not implemented for `Option<&Arc>` [INFO] [stdout] = note: Option<&Arc> must be a future or must implement `IntoFuture` to be awaited [INFO] [stdout] = note: required for `Option<&Arc>` to implement `IntoFuture` [INFO] [stdout] help: remove the `.await` [INFO] [stdout] | [INFO] [stdout] 275 - network.node(1)?.mcp_server().await?.register_tool(kv_store_tool).await?; [INFO] [stdout] 275 + network.node(1)?.mcp_server()?.register_tool(kv_store_tool).await?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_call_remote_tool` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:284:39 [INFO] [stdout] | [INFO] [stdout] 284 | let set_result = network.node(0)?.mcp_call_remote_tool( [INFO] [stdout] | -----------------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `call_mcp_tool` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:1093:5 [INFO] [stdout] | [INFO] [stdout] 1093 | pub async fn call_mcp_tool(&self, tool_name: &str, arguments: Value) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_call_remote_tool` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:293:39 [INFO] [stdout] | [INFO] [stdout] 293 | let get_result = network.node(0)?.mcp_call_remote_tool( [INFO] [stdout] | -----------------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `call_mcp_tool` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:1093:5 [INFO] [stdout] | [INFO] [stdout] 1093 | pub async fn call_mcp_tool(&self, tool_name: &str, arguments: Value) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_call_remote_tool` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:302:40 [INFO] [stdout] | [INFO] [stdout] 302 | let list_result = network.node(0)?.mcp_call_remote_tool( [INFO] [stdout] | -----------------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `call_mcp_tool` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:1093:5 [INFO] [stdout] | [INFO] [stdout] 1093 | pub async fn call_mcp_tool(&self, tool_name: &str, arguments: Value) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_call_remote_tool` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:311:42 [INFO] [stdout] | [INFO] [stdout] 311 | let delete_result = network.node(0)?.mcp_call_remote_tool( [INFO] [stdout] | -----------------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `call_mcp_tool` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:1093:5 [INFO] [stdout] | [INFO] [stdout] 1093 | pub async fn call_mcp_tool(&self, tool_name: &str, arguments: Value) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_call_remote_tool` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:320:40 [INFO] [stdout] | [INFO] [stdout] 320 | let get_deleted = network.node(0)?.mcp_call_remote_tool( [INFO] [stdout] | -----------------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `call_mcp_tool` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:1093:5 [INFO] [stdout] | [INFO] [stdout] 1093 | pub async fn call_mcp_tool(&self, tool_name: &str, arguments: Value) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> tests/integration/mcp/mod.rs:338:30 [INFO] [stdout] | [INFO] [stdout] 338 | let number_stream_tool = Tool::new("number_stream") [INFO] [stdout] | ^^^^^^^^^----------------- two arguments of type `&str` and `serde_json::Value` are missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the arguments [INFO] [stdout] | [INFO] [stdout] 338 | let number_stream_tool = Tool::new("number_stream", /* &str */, /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `description` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:339:10 [INFO] [stdout] | [INFO] [stdout] 338 | let number_stream_tool = Tool::new("number_stream") [INFO] [stdout] | ______________________________- [INFO] [stdout] 339 | | .description("Generate a stream of numbers") [INFO] [stdout] | | -^^^^^^^^^^^ private field, not a method [INFO] [stdout] | |_________| [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Option<&Arc>` is not a future [INFO] [stdout] --> tests/integration/mcp/mod.rs:368:35 [INFO] [stdout] | [INFO] [stdout] 368 | network.node(1)?.mcp_server().await?.register_tool(number_stream_tool).await?; [INFO] [stdout] | ^^^^^ `Option<&Arc>` is not a future [INFO] [stdout] | [INFO] [stdout] = help: the trait `Future` is not implemented for `Option<&Arc>` [INFO] [stdout] = note: Option<&Arc> must be a future or must implement `IntoFuture` to be awaited [INFO] [stdout] = note: required for `Option<&Arc>` to implement `IntoFuture` [INFO] [stdout] help: remove the `.await` [INFO] [stdout] | [INFO] [stdout] 368 - network.node(1)?.mcp_server().await?.register_tool(number_stream_tool).await?; [INFO] [stdout] 368 + network.node(1)?.mcp_server()?.register_tool(number_stream_tool).await?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_call_remote_tool_streaming` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:378:39 [INFO] [stdout] | [INFO] [stdout] 378 | let mut stream = network.node(0)?.mcp_call_remote_tool_streaming( [INFO] [stdout] | -----------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Option<&Arc>` is not a future [INFO] [stdout] --> tests/integration/mcp/mod.rs:411:39 [INFO] [stdout] | [INFO] [stdout] 411 | network.node(i)?.mcp_server().await?.register_tool(echo_tool.clone()).await?; [INFO] [stdout] | ^^^^^ `Option<&Arc>` is not a future [INFO] [stdout] | [INFO] [stdout] = help: the trait `Future` is not implemented for `Option<&Arc>` [INFO] [stdout] = note: Option<&Arc> must be a future or must implement `IntoFuture` to be awaited [INFO] [stdout] = note: required for `Option<&Arc>` to implement `IntoFuture` [INFO] [stdout] help: remove the `.await` [INFO] [stdout] | [INFO] [stdout] 411 - network.node(i)?.mcp_server().await?.register_tool(echo_tool.clone()).await?; [INFO] [stdout] 411 + network.node(i)?.mcp_server()?.register_tool(echo_tool.clone()).await?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `clone` found for struct `p2p_foundation::Tool` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:411:70 [INFO] [stdout] | [INFO] [stdout] 411 | network.node(i)?.mcp_server().await?.register_tool(echo_tool.clone()).await?; [INFO] [stdout] | ^^^^^ method not found in `p2p_foundation::Tool` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_call_with_load_balancing` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:424:56 [INFO] [stdout] | [INFO] [stdout] 424 | let (result, handling_peer) = network.node(0)?.mcp_call_with_load_balancing( [INFO] [stdout] | -----------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0614]: type `usize` cannot be dereferenced [INFO] [stdout] --> tests/integration/mcp/mod.rs:441:26 [INFO] [stdout] | [INFO] [stdout] 441 | let percentage = *count as f64 / total_calls as f64; [INFO] [stdout] | ^^^^^^ can't be dereferenced [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/mcp/mod.rs:473:23 [INFO] [stdout] | [INFO] [stdout] 473 | let node1_addrs = node1.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:474:11 [INFO] [stdout] | [INFO] [stdout] 474 | node2.connect(node1_addrs[0].clone()).await?; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name [INFO] [stdout] | [INFO] [stdout] 474 | node2.connect_peer(node1_addrs[0].clone()).await?; [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> tests/integration/mcp/mod.rs:477:26 [INFO] [stdout] | [INFO] [stdout] 477 | let protected_tool = Tool::new("protected_operation") [INFO] [stdout] | ^^^^^^^^^----------------------- two arguments of type `&str` and `serde_json::Value` are missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the arguments [INFO] [stdout] | [INFO] [stdout] 477 | let protected_tool = Tool::new("protected_operation", /* &str */, /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `description` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:478:10 [INFO] [stdout] | [INFO] [stdout] 477 | let protected_tool = Tool::new("protected_operation") [INFO] [stdout] | __________________________- [INFO] [stdout] 478 | | .description("Operation requiring authentication") [INFO] [stdout] | | -^^^^^^^^^^^ private field, not a method [INFO] [stdout] | |_________| [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Option<&Arc>` is not a future [INFO] [stdout] --> tests/integration/mcp/mod.rs:487:24 [INFO] [stdout] | [INFO] [stdout] 487 | node1.mcp_server().await?.register_tool(protected_tool).await?; [INFO] [stdout] | ^^^^^ `Option<&Arc>` is not a future [INFO] [stdout] | [INFO] [stdout] = help: the trait `Future` is not implemented for `Option<&Arc>` [INFO] [stdout] = note: Option<&Arc> must be a future or must implement `IntoFuture` to be awaited [INFO] [stdout] = note: required for `Option<&Arc>` to implement `IntoFuture` [INFO] [stdout] help: remove the `.await` [INFO] [stdout] | [INFO] [stdout] 487 - node1.mcp_server().await?.register_tool(protected_tool).await?; [INFO] [stdout] 487 + node1.mcp_server()?.register_tool(protected_tool).await?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_call_remote_tool` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:495:31 [INFO] [stdout] | [INFO] [stdout] 495 | let unauth_result = node2.mcp_call_remote_tool( [INFO] [stdout] | ------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `call_mcp_tool` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:1093:5 [INFO] [stdout] | [INFO] [stdout] 1093 | pub async fn call_mcp_tool(&self, tool_name: &str, arguments: Value) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_authenticate` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:504:11 [INFO] [stdout] | [INFO] [stdout] 504 | node2.mcp_authenticate(&node1_id, "trusted_peer", "secret_token").await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_call_remote_tool` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:507:29 [INFO] [stdout] | [INFO] [stdout] 507 | let auth_result = node2.mcp_call_remote_tool( [INFO] [stdout] | ------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `call_mcp_tool` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:1093:5 [INFO] [stdout] | [INFO] [stdout] 1093 | pub async fn call_mcp_tool(&self, tool_name: &str, arguments: Value) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> tests/integration/mcp/mod.rs:527:21 [INFO] [stdout] | [INFO] [stdout] 527 | let perf_tool = Tool::new("perf_test") [INFO] [stdout] | ^^^^^^^^^------------- two arguments of type `&str` and `serde_json::Value` are missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the arguments [INFO] [stdout] | [INFO] [stdout] 527 | let perf_tool = Tool::new("perf_test", /* &str */, /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `description` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:528:10 [INFO] [stdout] | [INFO] [stdout] 527 | let perf_tool = Tool::new("perf_test") [INFO] [stdout] | _____________________- [INFO] [stdout] 528 | | .description("Performance testing tool") [INFO] [stdout] | | -^^^^^^^^^^^ private field, not a method [INFO] [stdout] | |_________| [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Option<&Arc>` is not a future [INFO] [stdout] --> tests/integration/mcp/mod.rs:555:35 [INFO] [stdout] | [INFO] [stdout] 555 | network.node(1)?.mcp_server().await?.register_tool(perf_tool).await?; [INFO] [stdout] | ^^^^^ `Option<&Arc>` is not a future [INFO] [stdout] | [INFO] [stdout] = help: the trait `Future` is not implemented for `Option<&Arc>` [INFO] [stdout] = note: Option<&Arc> must be a future or must implement `IntoFuture` to be awaited [INFO] [stdout] = note: required for `Option<&Arc>` to implement `IntoFuture` [INFO] [stdout] help: remove the `.await` [INFO] [stdout] | [INFO] [stdout] 555 - network.node(1)?.mcp_server().await?.register_tool(perf_tool).await?; [INFO] [stdout] 555 + network.node(1)?.mcp_server()?.register_tool(perf_tool).await?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_call_remote_tool` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:563:30 [INFO] [stdout] | [INFO] [stdout] 563 | network.node(0)?.mcp_call_remote_tool( [INFO] [stdout] | -----------------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `call_mcp_tool` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:1093:5 [INFO] [stdout] | [INFO] [stdout] 1093 | pub async fn call_mcp_tool(&self, tool_name: &str, arguments: Value) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/mcp/mod.rs:561:63: 561:68}` [INFO] [stdout] --> tests/integration/mcp/mod.rs:561:63 [INFO] [stdout] | [INFO] [stdout] 561 | let small_msg_time = perf.measure_async("small_messages", async { [INFO] [stdout] | _______________________________-------------___________________^ [INFO] [stdout] | | | [INFO] [stdout] | | required by a bound introduced by this call [INFO] [stdout] 562 | | for _ in 0..100 { [INFO] [stdout] 563 | | network.node(0)?.mcp_call_remote_tool( [INFO] [stdout] 564 | | &node1_id, [INFO] [stdout] ... | [INFO] [stdout] 569 | | Ok::<(), anyhow::Error>(()) [INFO] [stdout] 570 | | }).await?; [INFO] [stdout] | |_____^ expected an `FnOnce()` closure, found `{async block@tests/integration/mcp/mod.rs:561:63: 561:68}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/mcp/mod.rs:561:63: 561:68}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/mcp/mod.rs:561:63: 561:68}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/mcp/mod.rs:561:63: 561:68}` [INFO] [stdout] --> tests/integration/mcp/mod.rs:561:26 [INFO] [stdout] | [INFO] [stdout] 561 | let small_msg_time = perf.measure_async("small_messages", async { [INFO] [stdout] | __________________________^ [INFO] [stdout] 562 | | for _ in 0..100 { [INFO] [stdout] 563 | | network.node(0)?.mcp_call_remote_tool( [INFO] [stdout] 564 | | &node1_id, [INFO] [stdout] ... | [INFO] [stdout] 569 | | Ok::<(), anyhow::Error>(()) [INFO] [stdout] 570 | | }).await?; [INFO] [stdout] | |______^ expected an `FnOnce()` closure, found `{async block@tests/integration/mcp/mod.rs:561:63: 561:68}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/mcp/mod.rs:561:63: 561:68}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/mcp/mod.rs:561:63: 561:68}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/mcp/mod.rs:561:63: 561:68}` [INFO] [stdout] --> tests/integration/mcp/mod.rs:570:8 [INFO] [stdout] | [INFO] [stdout] 570 | }).await?; [INFO] [stdout] | ^^^^^ expected an `FnOnce()` closure, found `{async block@tests/integration/mcp/mod.rs:561:63: 561:68}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/mcp/mod.rs:561:63: 561:68}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/mcp/mod.rs:561:63: 561:68}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_call_remote_tool` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:575:30 [INFO] [stdout] | [INFO] [stdout] 575 | network.node(0)?.mcp_call_remote_tool( [INFO] [stdout] | -----------------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `call_mcp_tool` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:1093:5 [INFO] [stdout] | [INFO] [stdout] 1093 | pub async fn call_mcp_tool(&self, tool_name: &str, arguments: Value) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/mcp/mod.rs:573:63: 573:68}` [INFO] [stdout] --> tests/integration/mcp/mod.rs:573:63 [INFO] [stdout] | [INFO] [stdout] 573 | let large_msg_time = perf.measure_async("large_messages", async { [INFO] [stdout] | _______________________________-------------___________________^ [INFO] [stdout] | | | [INFO] [stdout] | | required by a bound introduced by this call [INFO] [stdout] 574 | | for _ in 0..10 { [INFO] [stdout] 575 | | network.node(0)?.mcp_call_remote_tool( [INFO] [stdout] 576 | | &node1_id, [INFO] [stdout] ... | [INFO] [stdout] 581 | | Ok::<(), anyhow::Error>(()) [INFO] [stdout] 582 | | }).await?; [INFO] [stdout] | |_____^ expected an `FnOnce()` closure, found `{async block@tests/integration/mcp/mod.rs:573:63: 573:68}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/mcp/mod.rs:573:63: 573:68}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/mcp/mod.rs:573:63: 573:68}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/mcp/mod.rs:573:63: 573:68}` [INFO] [stdout] --> tests/integration/mcp/mod.rs:573:26 [INFO] [stdout] | [INFO] [stdout] 573 | let large_msg_time = perf.measure_async("large_messages", async { [INFO] [stdout] | __________________________^ [INFO] [stdout] 574 | | for _ in 0..10 { [INFO] [stdout] 575 | | network.node(0)?.mcp_call_remote_tool( [INFO] [stdout] 576 | | &node1_id, [INFO] [stdout] ... | [INFO] [stdout] 581 | | Ok::<(), anyhow::Error>(()) [INFO] [stdout] 582 | | }).await?; [INFO] [stdout] | |______^ expected an `FnOnce()` closure, found `{async block@tests/integration/mcp/mod.rs:573:63: 573:68}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/mcp/mod.rs:573:63: 573:68}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/mcp/mod.rs:573:63: 573:68}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/mcp/mod.rs:573:63: 573:68}` [INFO] [stdout] --> tests/integration/mcp/mod.rs:582:8 [INFO] [stdout] | [INFO] [stdout] 582 | }).await?; [INFO] [stdout] | ^^^^^ expected an `FnOnce()` closure, found `{async block@tests/integration/mcp/mod.rs:573:63: 573:68}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/mcp/mod.rs:573:63: 573:68}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/mcp/mod.rs:573:63: 573:68}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_call_remote_tool` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:593:22 [INFO] [stdout] | [INFO] [stdout] 593 | node.mcp_call_remote_tool( [INFO] [stdout] | -----^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `call_mcp_tool` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:1093:5 [INFO] [stdout] | [INFO] [stdout] 1093 | pub async fn call_mcp_tool(&self, tool_name: &str, arguments: Value) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/mcp/mod.rs:585:66: 585:71}` [INFO] [stdout] --> tests/integration/mcp/mod.rs:585:66 [INFO] [stdout] | [INFO] [stdout] 585 | let concurrent_time = perf.measure_async("concurrent_calls", async { [INFO] [stdout] | ________________________________-------------_____________________^ [INFO] [stdout] | | | [INFO] [stdout] | | required by a bound introduced by this call [INFO] [stdout] 586 | | let mut handles = Vec::new(); [INFO] [stdout] 587 | | [INFO] [stdout] 588 | | for i in 0..20 { [INFO] [stdout] ... | [INFO] [stdout] 606 | | Ok::<(), anyhow::Error>(()) [INFO] [stdout] 607 | | }).await?; [INFO] [stdout] | |_____^ expected an `FnOnce()` closure, found `{async block@tests/integration/mcp/mod.rs:585:66: 585:71}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/mcp/mod.rs:585:66: 585:71}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/mcp/mod.rs:585:66: 585:71}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/mcp/mod.rs:585:66: 585:71}` [INFO] [stdout] --> tests/integration/mcp/mod.rs:585:27 [INFO] [stdout] | [INFO] [stdout] 585 | let concurrent_time = perf.measure_async("concurrent_calls", async { [INFO] [stdout] | ___________________________^ [INFO] [stdout] 586 | | let mut handles = Vec::new(); [INFO] [stdout] 587 | | [INFO] [stdout] 588 | | for i in 0..20 { [INFO] [stdout] ... | [INFO] [stdout] 606 | | Ok::<(), anyhow::Error>(()) [INFO] [stdout] 607 | | }).await?; [INFO] [stdout] | |______^ expected an `FnOnce()` closure, found `{async block@tests/integration/mcp/mod.rs:585:66: 585:71}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/mcp/mod.rs:585:66: 585:71}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/mcp/mod.rs:585:66: 585:71}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `{async block@tests/integration/mcp/mod.rs:585:66: 585:71}` [INFO] [stdout] --> tests/integration/mcp/mod.rs:607:8 [INFO] [stdout] | [INFO] [stdout] 607 | }).await?; [INFO] [stdout] | ^^^^^ expected an `FnOnce()` closure, found `{async block@tests/integration/mcp/mod.rs:585:66: 585:71}` [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `{async block@tests/integration/mcp/mod.rs:585:66: 585:71}` [INFO] [stdout] = note: wrap the `{async block@tests/integration/mcp/mod.rs:585:66: 585:71}` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `common::PerformanceTest::measure_async` [INFO] [stdout] --> tests/integration/common/mod.rs:360:12 [INFO] [stdout] | [INFO] [stdout] 358 | pub async fn measure_async(&mut self, name: &str, f: F) -> R [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 359 | where [INFO] [stdout] 360 | F: FnOnce() -> Fut, [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `PerformanceTest::measure_async` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> tests/integration/mcp/mod.rs:631:5 [INFO] [stdout] | [INFO] [stdout] 631 | Tool::new("calculator") [INFO] [stdout] | ^^^^^^^^^-------------- two arguments of type `&str` and `serde_json::Value` are missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the arguments [INFO] [stdout] | [INFO] [stdout] 631 | Tool::new("calculator", /* &str */, /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `description` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:632:10 [INFO] [stdout] | [INFO] [stdout] 631 | / Tool::new("calculator") [INFO] [stdout] 632 | | .description("Basic calculator operations") [INFO] [stdout] | | -^^^^^^^^^^^ private field, not a method [INFO] [stdout] | |_________| [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> tests/integration/mcp/mod.rs:664:5 [INFO] [stdout] | [INFO] [stdout] 664 | Tool::new("echo") [INFO] [stdout] | ^^^^^^^^^-------- two arguments of type `&str` and `serde_json::Value` are missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the arguments [INFO] [stdout] | [INFO] [stdout] 664 | Tool::new("echo", /* &str */, /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `description` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:665:10 [INFO] [stdout] | [INFO] [stdout] 664 | / Tool::new("echo") [INFO] [stdout] 665 | | .description("Echo back the input message") [INFO] [stdout] | | -^^^^^^^^^^^ private field, not a method [INFO] [stdout] | |_________| [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> tests/integration/mcp/mod.rs:682:5 [INFO] [stdout] | [INFO] [stdout] 682 | Tool::new("file_ops") [INFO] [stdout] | ^^^^^^^^^------------ two arguments of type `&str` and `serde_json::Value` are missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the arguments [INFO] [stdout] | [INFO] [stdout] 682 | Tool::new("file_ops", /* &str */, /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `description` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:683:10 [INFO] [stdout] | [INFO] [stdout] 682 | / Tool::new("file_ops") [INFO] [stdout] 683 | | .description("File system operations") [INFO] [stdout] | | -^^^^^^^^^^^ private field, not a method [INFO] [stdout] | |_________| [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> tests/integration/mcp/mod.rs:699:5 [INFO] [stdout] | [INFO] [stdout] 699 | Tool::new("text_process") [INFO] [stdout] | ^^^^^^^^^---------------- two arguments of type `&str` and `serde_json::Value` are missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the arguments [INFO] [stdout] | [INFO] [stdout] 699 | Tool::new("text_process", /* &str */, /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `description` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:700:10 [INFO] [stdout] | [INFO] [stdout] 699 | / Tool::new("text_process") [INFO] [stdout] 700 | | .description("Text processing operations") [INFO] [stdout] | | -^^^^^^^^^^^ private field, not a method [INFO] [stdout] | |_________| [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> tests/integration/mcp/mod.rs:716:5 [INFO] [stdout] | [INFO] [stdout] 716 | Tool::new("network_ops") [INFO] [stdout] | ^^^^^^^^^--------------- two arguments of type `&str` and `serde_json::Value` are missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the arguments [INFO] [stdout] | [INFO] [stdout] 716 | Tool::new("network_ops", /* &str */, /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `description` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:717:10 [INFO] [stdout] | [INFO] [stdout] 716 | / Tool::new("network_ops") [INFO] [stdout] 717 | | .description("Network operations") [INFO] [stdout] | | -^^^^^^^^^^^ private field, not a method [INFO] [stdout] | |_________| [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> tests/integration/mcp/mod.rs:733:5 [INFO] [stdout] | [INFO] [stdout] 733 | Tool::new("crypto_ops") [INFO] [stdout] | ^^^^^^^^^-------------- two arguments of type `&str` and `serde_json::Value` are missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the arguments [INFO] [stdout] | [INFO] [stdout] 733 | Tool::new("crypto_ops", /* &str */, /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `description` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:734:10 [INFO] [stdout] | [INFO] [stdout] 733 | / Tool::new("crypto_ops") [INFO] [stdout] 734 | | .description("Cryptographic operations") [INFO] [stdout] | | -^^^^^^^^^^^ private field, not a method [INFO] [stdout] | |_________| [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> tests/integration/mcp/mod.rs:750:5 [INFO] [stdout] | [INFO] [stdout] 750 | Tool::new("data_analysis") [INFO] [stdout] | ^^^^^^^^^----------------- two arguments of type `&str` and `serde_json::Value` are missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the arguments [INFO] [stdout] | [INFO] [stdout] 750 | Tool::new("data_analysis", /* &str */, /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `description` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:751:10 [INFO] [stdout] | [INFO] [stdout] 750 | / Tool::new("data_analysis") [INFO] [stdout] 751 | | .description("Data analysis operations") [INFO] [stdout] | | -^^^^^^^^^^^ private field, not a method [INFO] [stdout] | |_________| [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 1 argument was supplied [INFO] [stdout] --> tests/integration/mcp/mod.rs:767:5 [INFO] [stdout] | [INFO] [stdout] 767 | Tool::new("ai_ops") [INFO] [stdout] | ^^^^^^^^^---------- two arguments of type `&str` and `serde_json::Value` are missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/mcp.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | pub fn new(name: &str, description: &str, input_schema: Value) -> ToolBuilder { [INFO] [stdout] | ^^^ [INFO] [stdout] help: provide the arguments [INFO] [stdout] | [INFO] [stdout] 767 | Tool::new("ai_ops", /* &str */, /* serde_json::Value */) [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `description` found for struct `ToolBuilder` in the current scope [INFO] [stdout] --> tests/integration/mcp/mod.rs:768:10 [INFO] [stdout] | [INFO] [stdout] 767 | / Tool::new("ai_ops") [INFO] [stdout] 768 | | .description("AI model operations") [INFO] [stdout] | | -^^^^^^^^^^^ private field, not a method [INFO] [stdout] | |_________| [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:30:32 [INFO] [stdout] | [INFO] [stdout] 30 | let ed25519_keypair = node.security().generate_ed25519_keypair().await?; [INFO] [stdout] | ^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:35:31 [INFO] [stdout] | [INFO] [stdout] 35 | let x25519_keypair = node.security().generate_x25519_keypair().await?; [INFO] [stdout] | ^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:40:28 [INFO] [stdout] | [INFO] [stdout] 40 | let derived_key = node.security().derive_key( [INFO] [stdout] | ^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:48:29 [INFO] [stdout] | [INFO] [stdout] 48 | let derived_key2 = node.security().derive_key( [INFO] [stdout] | ^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:56:30 [INFO] [stdout] | [INFO] [stdout] 56 | let different_key = node.security().derive_key( [INFO] [stdout] | ^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:71:25 [INFO] [stdout] | [INFO] [stdout] 71 | let security = node.security(); [INFO] [stdout] | ^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:119:43 [INFO] [stdout] | [INFO] [stdout] 119 | let auth_challenge = network.node(0)?.security().create_auth_challenge(&node1_id).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:120:42 [INFO] [stdout] | [INFO] [stdout] 120 | let auth_response = network.node(1)?.security().respond_to_auth_challenge(auth_challenge).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:121:40 [INFO] [stdout] | [INFO] [stdout] 121 | let auth_result = network.node(0)?.security().verify_auth_response(auth_response).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:130:43 [INFO] [stdout] | [INFO] [stdout] 130 | let invalid_result = network.node(0)?.security().verify_auth_response(invalid_response).await; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:134:46 [INFO] [stdout] | [INFO] [stdout] 134 | let reverse_challenge = network.node(1)?.security().create_auth_challenge(&node2_id).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:135:45 [INFO] [stdout] | [INFO] [stdout] 135 | let reverse_response = network.node(0)?.security().respond_to_auth_challenge(reverse_challenge).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:136:43 [INFO] [stdout] | [INFO] [stdout] 136 | let reverse_result = network.node(1)?.security().verify_auth_response(reverse_response).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:154:45 [INFO] [stdout] | [INFO] [stdout] 154 | let node1_public_key = network.node(1)?.security().get_public_key().await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:157:46 [INFO] [stdout] | [INFO] [stdout] 157 | let encrypted_message = network.node(0)?.security().encrypt_message( [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:168:46 [INFO] [stdout] | [INFO] [stdout] 168 | let decrypted_message = network.node(1)?.security().decrypt_message( [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:176:45 [INFO] [stdout] | [INFO] [stdout] 176 | let wrong_decryption = network.node(0)?.security().decrypt_message( [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:194:44 [INFO] [stdout] | [INFO] [stdout] 194 | let channel_request = network.node(0)?.security().request_secure_channel(&node1_id).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:195:45 [INFO] [stdout] | [INFO] [stdout] 195 | let channel_response = network.node(1)?.security().accept_secure_channel(channel_request).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:196:43 [INFO] [stdout] | [INFO] [stdout] 196 | let secure_channel = network.node(0)?.security().complete_secure_channel(channel_response).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:208:42 [INFO] [stdout] | [INFO] [stdout] 208 | let node1_channel = network.node(1)?.security().get_secure_channel(&network.node(0)?.peer_id()).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:242:27 [INFO] [stdout] | [INFO] [stdout] 242 | let ca_cert = ca_node.security().get_ca_certificate().await?; [INFO] [stdout] | ^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:263:31 [INFO] [stdout] | [INFO] [stdout] 263 | let cert_request1 = node1.security().create_certificate_request("node1").await?; [INFO] [stdout] | ^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:264:25 [INFO] [stdout] | [INFO] [stdout] 264 | let cert1 = ca_node.security().issue_certificate(cert_request1).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:265:11 [INFO] [stdout] | [INFO] [stdout] 265 | node1.security().install_certificate(cert1).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:267:31 [INFO] [stdout] | [INFO] [stdout] 267 | let cert_request2 = node2.security().create_certificate_request("node2").await?; [INFO] [stdout] | ^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:268:25 [INFO] [stdout] | [INFO] [stdout] 268 | let cert2 = ca_node.security().issue_certificate(cert_request2).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:269:11 [INFO] [stdout] | [INFO] [stdout] 269 | node2.security().install_certificate(cert2).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/security/mod.rs:272:23 [INFO] [stdout] | [INFO] [stdout] 272 | let node1_addrs = node1.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:273:11 [INFO] [stdout] | [INFO] [stdout] 273 | node2.connect(node1_addrs[0].clone()).await?; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name [INFO] [stdout] | [INFO] [stdout] 273 | node2.connect_peer(node1_addrs[0].clone()).await?; [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `get_connection_info` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:277:33 [INFO] [stdout] | [INFO] [stdout] 277 | let connection_info = node2.get_connection_info(&node1_id).await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/security/mod.rs:287:24 [INFO] [stdout] | [INFO] [stdout] 287 | let unauth_addrs = unauth_node.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:290:15 [INFO] [stdout] | [INFO] [stdout] 290 | node1.connect(unauth_addrs[0].clone()) [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name [INFO] [stdout] | [INFO] [stdout] 290 | node1.connect_peer(unauth_addrs[0].clone()) [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:314:43 [INFO] [stdout] | [INFO] [stdout] 314 | let signed_message = network.node(0)?.security().create_signed_message( [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:320:41 [INFO] [stdout] | [INFO] [stdout] 320 | let first_result = network.node(1)?.security().verify_signed_message(&signed_message).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:325:42 [INFO] [stdout] | [INFO] [stdout] 325 | let replay_result = network.node(1)?.security().verify_signed_message(&signed_message).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:332:44 [INFO] [stdout] | [INFO] [stdout] 332 | let modified_result = network.node(1)?.security().verify_signed_message(&modified_message).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:349:44 [INFO] [stdout] | [INFO] [stdout] 349 | let channel_request = network.node(0)?.security().request_secure_channel(&node1_id).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:353:65 [INFO] [stdout] | [INFO] [stdout] 353 | intercepted_request.ephemeral_public_key = network.node(2)?.security().get_public_key().await?.clone(); [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:356:46 [INFO] [stdout] | [INFO] [stdout] 356 | let tampered_response = network.node(1)?.security().accept_secure_channel(intercepted_request).await; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:360:48 [INFO] [stdout] | [INFO] [stdout] 360 | let legitimate_response = network.node(1)?.security().accept_secure_channel(channel_request).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:361:43 [INFO] [stdout] | [INFO] [stdout] 361 | let secure_channel = network.node(0)?.security().complete_secure_channel(legitimate_response).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:371:52 [INFO] [stdout] | [INFO] [stdout] 371 | let attacker_channel_result = network.node(2)?.security().get_secure_channel(&network.node(0)?.peer_id()).await; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the `?` operator can only be applied to values that implement `Try` [INFO] [stdout] --> tests/integration/security/mod.rs:396:27 [INFO] [stdout] | [INFO] [stdout] 396 | let protected_addrs = protected_node.listen_addrs().await?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the `?` operator cannot be applied to type `Vec` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Try` is not implemented for `Vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:397:17 [INFO] [stdout] | [INFO] [stdout] 397 | client_node.connect(protected_addrs[0].clone()).await?; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name [INFO] [stdout] | [INFO] [stdout] 397 | client_node.connect_peer(protected_addrs[0].clone()).await?; [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> tests/integration/security/mod.rs:410:34 [INFO] [stdout] | [INFO] [stdout] 410 | let result = client_node.send_message(&protected_id, request_data).await; [INFO] [stdout] | ^^^^^^^^^^^^ ------------ argument #2 of type `&str` is missing [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:993:18 [INFO] [stdout] | [INFO] [stdout] 993 | pub async fn send_message(&self, peer_id: &PeerId, protocol: &str, data: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 410 | let result = client_node.send_message(&protected_id, /* &str */, request_data).await; [INFO] [stdout] | +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `connect` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:444:24 [INFO] [stdout] | [INFO] [stdout] 444 | extra_node.connect(protected_addrs[0].clone()) [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `connect_peer` with a similar name [INFO] [stdout] | [INFO] [stdout] 444 | extra_node.connect_peer(protected_addrs[0].clone()) [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:486:41 [INFO] [stdout] | [INFO] [stdout] 486 | let dh_private_0 = network.node(0)?.security().generate_dh_private_key().await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:487:40 [INFO] [stdout] | [INFO] [stdout] 487 | let dh_public_0 = network.node(0)?.security().compute_dh_public_key(&dh_private_0).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:489:41 [INFO] [stdout] | [INFO] [stdout] 489 | let dh_private_1 = network.node(1)?.security().generate_dh_private_key().await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:490:40 [INFO] [stdout] | [INFO] [stdout] 490 | let dh_public_1 = network.node(1)?.security().compute_dh_public_key(&dh_private_1).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:493:44 [INFO] [stdout] | [INFO] [stdout] 493 | let shared_secret_0 = network.node(0)?.security().compute_dh_shared_secret(&dh_private_0, &dh_public_1).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:494:44 [INFO] [stdout] | [INFO] [stdout] 494 | let shared_secret_1 = network.node(1)?.security().compute_dh_shared_secret(&dh_private_1, &dh_public_0).await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:500:45 [INFO] [stdout] | [INFO] [stdout] 500 | let observer_attempt = network.node(2)?.security().attempt_dh_attack(&dh_public_0, &dh_public_1).await; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:504:48 [INFO] [stdout] | [INFO] [stdout] 504 | let compromised_private = network.node(0)?.security().get_private_key().await?; [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:507:51 [INFO] [stdout] | [INFO] [stdout] 507 | let forward_secrecy_attack = network.node(2)?.security().break_forward_secrecy( [INFO] [stdout] | ^^^^^^^^ method not found in `&P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `security` found for struct `P2PNode` in the current scope [INFO] [stdout] --> tests/integration/security/mod.rs:523:25 [INFO] [stdout] | [INFO] [stdout] 523 | let security = node.security(); [INFO] [stdout] | ^^^^^^^^ method not found in `P2PNode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_call_remote_tool` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/scenarios/mod.rs:53:39 [INFO] [stdout] | [INFO] [stdout] 53 | let analysis_result = coordinator.mcp_call_remote_tool( [INFO] [stdout] | ------------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `call_mcp_tool` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:1093:5 [INFO] [stdout] | [INFO] [stdout] 1093 | pub async fn call_mcp_tool(&self, tool_name: &str, arguments: Value) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_call_remote_tool` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/scenarios/mod.rs:71:36 [INFO] [stdout] | [INFO] [stdout] 71 | let model_result = coordinator.mcp_call_remote_tool( [INFO] [stdout] | ------------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `call_mcp_tool` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:1093:5 [INFO] [stdout] | [INFO] [stdout] 1093 | pub async fn call_mcp_tool(&self, tool_name: &str, arguments: Value) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `mcp_call_remote_tool` found for reference `&P2PNode` in the current scope [INFO] [stdout] --> tests/integration/scenarios/mod.rs:89:34 [INFO] [stdout] | [INFO] [stdout] 89 | let viz_result = coordinator.mcp_call_remote_tool( [INFO] [stdout] | ------------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `call_mcp_tool` with a similar name, but with different arguments [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:1093:5 [INFO] [stdout] | [INFO] [stdout] 1093 | pub async fn call_mcp_tool(&self, tool_name: &str, arguments: Value) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> tests/integration/scenarios/mod.rs:310:34 [INFO] [stdout] | [INFO] [stdout] 310 | healed_node.connect_peer(bootstrap_addr).await?; [INFO] [stdout] | ------------ ^^^^^^^^^^^^^^ expected `&str`, found `String` [INFO] [stdout] | | [INFO] [stdout] | arguments to this method are incorrect [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:920:18 [INFO] [stdout] | [INFO] [stdout] 920 | pub async fn connect_peer(&self, address: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: consider borrowing here [INFO] [stdout] | [INFO] [stdout] 310 | healed_node.connect_peer(&bootstrap_addr).await?; [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> tests/integration/scenarios/mod.rs:514:35 [INFO] [stdout] | [INFO] [stdout] 514 | new_node.connect_peer(bootstrap_addr).await?; [INFO] [stdout] | ------------ ^^^^^^^^^^^^^^ expected `&str`, found `String` [INFO] [stdout] | | [INFO] [stdout] | arguments to this method are incorrect [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/network.rs:920:18 [INFO] [stdout] | [INFO] [stdout] 920 | pub async fn connect_peer(&self, address: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] help: consider borrowing here [INFO] [stdout] | [INFO] [stdout] 514 | new_node.connect_peer(&bootstrap_addr).await?; [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `network` does not live long enough [INFO] [stdout] --> tests/integration/scenarios/mod.rs:404:24 [INFO] [stdout] | [INFO] [stdout] 358 | let network = TestNetwork::simple(4).await?; [INFO] [stdout] | ------- binding `network` declared here [INFO] [stdout] ... [INFO] [stdout] 403 | / tokio::spawn({ [INFO] [stdout] 404 | | let node = network.node(1)?.clone(); [INFO] [stdout] | | ^^^^^^^ borrowed value does not live long enough [INFO] [stdout] 405 | | async move { [INFO] [stdout] 406 | | node.call_mcp_tool( [INFO] [stdout] ... | [INFO] [stdout] 416 | | }), [INFO] [stdout] | |__________- argument requires that `network` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 486 | } [INFO] [stdout] | - `network` dropped here while still borrowed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0505]: cannot move out of `network` because it is borrowed [INFO] [stdout] --> tests/integration/scenarios/mod.rs:484:5 [INFO] [stdout] | [INFO] [stdout] 358 | let network = TestNetwork::simple(4).await?; [INFO] [stdout] | ------- binding `network` declared here [INFO] [stdout] ... [INFO] [stdout] 403 | / tokio::spawn({ [INFO] [stdout] 404 | | let node = network.node(1)?.clone(); [INFO] [stdout] | | ------- borrow of `network` occurs here [INFO] [stdout] 405 | | async move { [INFO] [stdout] 406 | | node.call_mcp_tool( [INFO] [stdout] ... | [INFO] [stdout] 416 | | }), [INFO] [stdout] | |__________- argument requires that `network` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 484 | network.stop().await?; [INFO] [stdout] | ^^^^^^^ move out of `network` occurs here [INFO] [stdout] | [INFO] [stdout] note: if `common::TestNetwork` implemented `Clone`, you could clone the value [INFO] [stdout] --> tests/integration/common/mod.rs:38:1 [INFO] [stdout] | [INFO] [stdout] 38 | pub struct TestNetwork { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ consider implementing `Clone` for this type [INFO] [stdout] | [INFO] [stdout] ::: tests/integration/scenarios/mod.rs:404:24 [INFO] [stdout] | [INFO] [stdout] 404 | let node = network.node(1)?.clone(); [INFO] [stdout] | ------- you could clone this value [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0061, E0277, E0308, E0422, E0433, E0505, E0560, E0597, E0599... [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0061`. [INFO] [stdout] [INFO] [stderr] warning: p2p-foundation@0.1.8: Flutter not available, skipping web build [INFO] [stderr] error: could not compile `p2p-foundation` (test "integration") due to 422 previous errors [INFO] running `Command { std: "docker" "inspect" "0986f674ee68241b85324b8f5d0868dc025e385fdd4a8f46d232c6efbe0c60db", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0986f674ee68241b85324b8f5d0868dc025e385fdd4a8f46d232c6efbe0c60db", kill_on_drop: false }` [INFO] [stdout] 0986f674ee68241b85324b8f5d0868dc025e385fdd4a8f46d232c6efbe0c60db