[INFO] fetching crate solana-network-sdk 0.2.2... [INFO] testing solana-network-sdk-0.2.2 against try#c2e32f1c9652b13ed99608599c1e855462f421f3 for pr-146098-8 [INFO] extracting crate solana-network-sdk 0.2.2 into /workspace/builds/worker-2-tc2/source [INFO] started tweaking crates.io crate solana-network-sdk 0.2.2 [INFO] finished tweaking crates.io crate solana-network-sdk 0.2.2 [INFO] tweaked toml for crates.io crate solana-network-sdk 0.2.2 written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate solana-network-sdk 0.2.2 on toolchain c2e32f1c9652b13ed99608599c1e855462f421f3 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate solana-network-sdk 0.2.2 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" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 63f93a805f47c738e09dde4440e1b2d85f7fcdd1f8010b497c9e3fcad92590f6 [INFO] running `Command { std: "docker" "start" "-a" "63f93a805f47c738e09dde4440e1b2d85f7fcdd1f8010b497c9e3fcad92590f6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "63f93a805f47c738e09dde4440e1b2d85f7fcdd1f8010b497c9e3fcad92590f6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "63f93a805f47c738e09dde4440e1b2d85f7fcdd1f8010b497c9e3fcad92590f6", kill_on_drop: false }` [INFO] [stdout] 63f93a805f47c738e09dde4440e1b2d85f7fcdd1f8010b497c9e3fcad92590f6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 1e182761ce3b2436fe1eb27f2cee3d35f99877762514536c6abd209b3125bc5a [INFO] running `Command { std: "docker" "start" "-a" "1e182761ce3b2436fe1eb27f2cee3d35f99877762514536c6abd209b3125bc5a", kill_on_drop: false }` [INFO] [stderr] Compiling cfg-if v1.0.3 [INFO] [stderr] Compiling subtle v2.6.1 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Compiling five8_core v0.1.2 [INFO] [stderr] Compiling const-oid v0.9.6 [INFO] [stderr] Compiling winnow v0.7.13 [INFO] [stderr] Compiling indexmap v2.11.4 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling five8 v0.2.1 [INFO] [stderr] Compiling five8_const v0.1.4 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling borsh v1.5.7 [INFO] [stderr] Compiling semver v1.0.27 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling libc v0.2.177 [INFO] [stderr] Compiling memchr v2.7.6 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling curve25519-dalek v4.1.3 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling bs58 v0.5.1 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling feature-probe v0.1.1 [INFO] [stderr] Compiling jobserver v0.1.34 [INFO] [stderr] Compiling socket2 v0.6.0 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling bv v0.11.1 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Compiling cc v1.2.41 [INFO] [stderr] Compiling mio v1.0.4 [INFO] [stderr] Compiling solana-msg v3.0.0 [INFO] [stderr] Compiling solana-program-memory v3.0.0 [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Compiling derivation-path v0.2.0 [INFO] [stderr] Compiling uriparse v0.6.4 [INFO] [stderr] Compiling solana-atomic-u64 v2.2.1 [INFO] [stderr] Compiling toml_parser v1.0.4 [INFO] [stderr] Compiling solana-sanitize v2.2.1 [INFO] [stderr] Compiling icu_properties_data v2.0.1 [INFO] [stderr] Compiling icu_normalizer_data v2.0.0 [INFO] [stderr] Compiling solana-decode-error v2.3.0 [INFO] [stderr] Compiling rustls v0.23.32 [INFO] [stderr] Compiling constant_time_eq v0.3.1 [INFO] [stderr] Compiling arrayvec v0.7.6 [INFO] [stderr] Compiling solana-define-syscall v3.0.0 [INFO] [stderr] Compiling form_urlencoded v1.2.2 [INFO] [stderr] Compiling ident_case v1.0.1 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling toml_edit v0.23.7 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling serde_bytes v0.11.19 [INFO] [stderr] Compiling alloc-no-stdlib v2.0.4 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling crc32fast v1.5.0 [INFO] [stderr] Compiling alloc-stdlib v0.2.2 [INFO] [stderr] Compiling solana-derivation-path v3.0.0 [INFO] [stderr] Compiling brotli-decompressor v5.0.0 [INFO] [stderr] Compiling flate2 v1.1.4 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling blake3 v1.8.2 [INFO] [stderr] Compiling solana-seed-derivable v3.0.0 [INFO] [stderr] Compiling zstd-sys v2.0.16+zstd.1.5.7 [INFO] [stderr] Compiling proc-macro-crate v3.4.0 [INFO] [stderr] Compiling itertools v0.12.1 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling sync_wrapper v1.0.2 [INFO] [stderr] Compiling ipnet v2.11.0 [INFO] [stderr] Compiling keccak v0.1.5 [INFO] [stderr] Compiling brotli v8.0.2 [INFO] [stderr] Compiling compression-core v0.4.29 [INFO] [stderr] Compiling iri-string v0.7.8 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling darling_core v0.21.3 [INFO] [stderr] Compiling zstd-safe v7.2.4 [INFO] [stderr] Compiling void v1.0.2 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling unreachable v1.0.0 [INFO] [stderr] Compiling ascii v0.9.3 [INFO] [stderr] Compiling combine v3.8.1 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling zeroize_derive v1.4.2 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling bytemuck_derive v1.10.2 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling borsh-derive v1.5.7 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling curve25519-dalek-derive v0.1.1 [INFO] [stderr] Compiling bytemuck v1.24.0 [INFO] [stderr] Compiling signature v2.2.0 [INFO] [stderr] Compiling thiserror-impl v2.0.17 [INFO] [stderr] Compiling ed25519 v2.2.3 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling solana-sdk-macro v3.0.0 [INFO] [stderr] Compiling yoke-derive v0.8.0 [INFO] [stderr] Compiling thiserror v2.0.17 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Compiling bincode v1.3.3 [INFO] [stderr] Compiling solana-hash v3.0.0 [INFO] [stderr] Compiling solana-program-error v3.0.0 [INFO] [stderr] Compiling solana-sha256-hasher v3.0.0 [INFO] [stderr] Compiling bitflags v2.9.4 [INFO] [stderr] Compiling solana-instruction-error v2.0.0 [INFO] [stderr] Compiling bytes v1.10.1 [INFO] [stderr] Compiling solana-transaction-error v3.0.0 [INFO] [stderr] Compiling serde-big-array v0.5.1 [INFO] [stderr] Compiling yoke v0.8.0 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling zerovec-derive v0.11.1 [INFO] [stderr] Compiling hmac v0.12.1 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling zerotrie v0.2.2 [INFO] [stderr] Compiling tokio v1.47.1 [INFO] [stderr] Compiling rustls-pki-types v1.12.0 [INFO] [stderr] Compiling solana-address v1.0.0 [INFO] [stderr] Compiling solana-pubkey v3.0.0 [INFO] [stderr] Compiling ed25519-dalek v2.2.0 [INFO] [stderr] Compiling solana-sdk-ids v3.0.0 [INFO] [stderr] Compiling solana-instruction v3.0.0 [INFO] [stderr] Compiling solana-sysvar-id v3.0.0 [INFO] [stderr] Compiling solana-signature v3.1.0 [INFO] [stderr] Compiling zerovec v0.11.4 [INFO] [stderr] Compiling solana-account-info v3.0.0 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling solana-clock v3.0.0 [INFO] [stderr] Compiling solana-signer v3.0.0 [INFO] [stderr] Compiling solana-epoch-schedule v3.0.0 [INFO] [stderr] Compiling solana-short-vec v3.0.0 [INFO] [stderr] Compiling solana-slot-hashes v3.0.0 [INFO] [stderr] Compiling solana-fee-calculator v3.0.0 [INFO] [stderr] Compiling pbkdf2 v0.11.0 [INFO] [stderr] Compiling solana-seed-phrase v3.0.0 [INFO] [stderr] Compiling solana-rent v3.0.0 [INFO] [stderr] Compiling rustls-webpki v0.103.7 [INFO] [stderr] Compiling solana-pubkey v2.4.0 [INFO] [stderr] Compiling solana-program-entrypoint v3.1.0 [INFO] [stderr] Compiling solana-last-restart-slot v3.0.0 [INFO] [stderr] Compiling solana-epoch-rewards v3.0.0 [INFO] [stderr] Compiling solana-slot-history v3.0.0 [INFO] [stderr] Compiling http v1.3.1 [INFO] [stderr] Compiling solana-sysvar v3.0.0 [INFO] [stderr] Compiling solana-message v3.0.1 [INFO] [stderr] Compiling tinystr v0.8.1 [INFO] [stderr] Compiling potential_utf v0.1.3 [INFO] [stderr] Compiling icu_collections v2.0.0 [INFO] [stderr] Compiling icu_locale_core v2.0.0 [INFO] [stderr] Compiling icu_provider v2.0.0 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling solana-serialize-utils v3.1.0 [INFO] [stderr] Compiling icu_normalizer v2.0.0 [INFO] [stderr] Compiling icu_properties v2.0.1 [INFO] [stderr] Compiling darling_macro v0.21.3 [INFO] [stderr] Compiling darling v0.21.3 [INFO] [stderr] Compiling num-derive v0.4.2 [INFO] [stderr] Compiling serde_with_macros v3.15.0 [INFO] [stderr] Compiling solana-instructions-sysvar v3.0.0 [INFO] [stderr] Compiling solana-account v3.1.0 [INFO] [stderr] Compiling webpki-roots v1.0.3 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling compression-codecs v0.4.31 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling cfg_eval v0.1.2 [INFO] [stderr] Compiling serde_with v3.15.0 [INFO] [stderr] Compiling http-body-util v0.1.3 [INFO] [stderr] Compiling solana-system-interface v2.0.0 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling url v2.5.7 [INFO] [stderr] Compiling solana-serde-varint v3.0.0 [INFO] [stderr] Compiling sha3 v0.10.8 [INFO] [stderr] Compiling inout v0.1.4 [INFO] [stderr] Compiling cipher v0.4.4 [INFO] [stderr] Compiling num_enum_derive v0.7.4 [INFO] [stderr] Compiling solana-transaction v3.0.1 [INFO] [stderr] Compiling solana-sdk-ids v2.2.1 [INFO] [stderr] Compiling universal-hash v0.5.1 [INFO] [stderr] Compiling hyper v1.7.0 [INFO] [stderr] Compiling tower v0.5.2 [INFO] [stderr] Compiling tokio-util v0.7.16 [INFO] [stderr] Compiling async-compression v0.4.32 [INFO] [stderr] Compiling tower-http v0.6.6 [INFO] [stderr] Compiling num_enum v0.7.4 [INFO] [stderr] Compiling hash32 v0.3.1 [INFO] [stderr] Compiling zstd v0.13.3 [INFO] [stderr] Compiling rustc-demangle v0.1.26 [INFO] [stderr] Compiling solana-svm-feature-set v3.0.6 [INFO] [stderr] Compiling polyval v0.6.2 [INFO] [stderr] Compiling agave-feature-set v3.0.6 [INFO] [stderr] Compiling hyper-util v0.1.17 [INFO] [stderr] Compiling solana-sbpf v0.12.2 [INFO] [stderr] Compiling solana-account-decoder-client-types v3.0.6 [INFO] [stderr] Compiling solana-sysvar-id v2.2.1 [INFO] [stderr] Compiling aes v0.8.4 [INFO] [stderr] Compiling tokio-rustls v0.26.4 [INFO] [stderr] Compiling ctr v0.9.2 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling solana-instruction v2.3.0 [INFO] [stderr] Compiling ed25519-dalek-bip32 v0.3.0 [INFO] [stderr] Compiling solana-commitment-config v3.0.0 [INFO] [stderr] Compiling aead v0.5.2 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling solana-program-option v3.0.0 [INFO] [stderr] Compiling minimal-lexical v0.2.1 [INFO] [stderr] Compiling rayon-core v1.13.0 [INFO] [stderr] Compiling portable-atomic v1.11.1 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling time-macros v0.2.24 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Compiling deranged v0.5.4 [INFO] [stderr] Compiling hyper-rustls v0.27.7 [INFO] [stderr] Compiling reqwest v0.12.23 [INFO] [stderr] Compiling synstructure v0.12.6 [INFO] [stderr] Compiling solana-transaction-context v3.0.6 [INFO] [stderr] Compiling aes-gcm-siv v0.11.1 [INFO] [stderr] Compiling solana-keypair v3.0.1 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling spl-generic-token v2.0.1 [INFO] [stderr] Compiling solana-reward-info v3.0.0 [INFO] [stderr] Compiling merlin v3.0.0 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling nix v0.30.1 [INFO] [stderr] Compiling data-encoding v2.9.0 [INFO] [stderr] Compiling solana-version v3.0.6 [INFO] [stderr] Compiling solana-time-utils v3.0.0 [INFO] [stderr] Compiling solana-transaction-status-client-types v3.0.6 [INFO] [stderr] Compiling solana-zk-sdk v4.0.0 [INFO] [stderr] Compiling rusticata-macros v4.1.0 [INFO] [stderr] Compiling time v0.3.44 [INFO] [stderr] Compiling asn1-rs-derive v0.4.0 [INFO] [stderr] Compiling asn1-rs-impl v0.1.0 [INFO] [stderr] Compiling solana-cluster-type v3.0.0 [INFO] [stderr] Compiling solana-inflation v3.0.0 [INFO] [stderr] Compiling der v0.7.10 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling rand_core v0.9.3 [INFO] [stderr] Compiling num-bigint v0.2.6 [INFO] [stderr] Compiling gethostname v0.2.3 [INFO] [stderr] Compiling solana-msg v2.2.1 [INFO] [stderr] Compiling solana-metrics v3.0.6 [INFO] [stderr] Compiling solana-program-error v2.2.2 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling rayon v1.11.0 [INFO] [stderr] Compiling asn1-rs v0.5.2 [INFO] [stderr] Compiling spl-discriminator-syn v0.2.1 [INFO] [stderr] Compiling solana-packet v3.0.0 [INFO] [stderr] Compiling rustls-webpki v0.101.7 [INFO] [stderr] Compiling solana-sdk-macro v2.2.1 [INFO] [stderr] Compiling concurrent-queue v2.5.0 [INFO] [stderr] Compiling num-complex v0.2.4 [INFO] [stderr] Compiling num-rational v0.2.4 [INFO] [stderr] Compiling oid-registry v0.6.1 [INFO] [stderr] Compiling rustls v0.21.12 [INFO] [stderr] Compiling rustls-native-certs v0.8.1 [INFO] [stderr] Compiling solana-rpc-client-types v3.0.6 [INFO] [stderr] Compiling spl-discriminator-derive v0.2.0 [INFO] [stderr] Compiling spki v0.7.3 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling solana-nonce v3.0.0 [INFO] [stderr] Compiling sct v0.7.1 [INFO] [stderr] Compiling solana-serde v3.0.0 [INFO] [stderr] Compiling dlopen2_derive v0.3.0 [INFO] [stderr] Compiling ff v0.13.1 [INFO] [stderr] Compiling quinn-udp v0.5.14 [INFO] [stderr] Compiling num_cpus v1.17.0 [INFO] [stderr] Compiling solana-perf v3.0.6 [INFO] [stderr] Compiling base16ct v0.2.0 [INFO] [stderr] Compiling solana-program-memory v2.3.1 [INFO] [stderr] Compiling solana-rayon-threadlimit v3.0.6 [INFO] [stderr] Compiling solana-account-info v2.3.0 [INFO] [stderr] Compiling sec1 v0.7.3 [INFO] [stderr] Compiling fastbloom v0.14.0 [INFO] [stderr] Compiling dlopen2 v0.5.0 [INFO] [stderr] Compiling group v0.13.0 [INFO] [stderr] Compiling spl-pod v0.7.1 [INFO] [stderr] Compiling pkcs8 v0.10.2 [INFO] [stderr] Compiling spl-discriminator v0.5.1 [INFO] [stderr] Compiling rustls-platform-verifier v0.6.1 [INFO] [stderr] Compiling der-parser v8.2.0 [INFO] [stderr] Compiling reqwest-middleware v0.4.2 [INFO] [stderr] Compiling jsonrpc-core v18.0.0 [INFO] [stderr] Compiling solana-vote-interface v3.0.0 [INFO] [stderr] Compiling caps v0.5.5 [INFO] [stderr] Compiling raw-cpuid v11.6.0 [INFO] [stderr] Compiling solana-program-pack v3.0.0 [INFO] [stderr] Compiling solana-borsh v3.0.0 [INFO] [stderr] Compiling solana-epoch-info v3.0.0 [INFO] [stderr] Compiling crypto-bigint v0.5.5 [INFO] [stderr] Compiling num-iter v0.1.45 [INFO] [stderr] Compiling quinn v0.11.9 [INFO] [stderr] Compiling lru-slab v0.1.2 [INFO] [stderr] Compiling rustc-hash v2.1.1 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling solana-measure v3.0.6 [INFO] [stderr] Compiling unicode-width v0.2.2 [INFO] [stderr] Compiling quinn-proto v0.11.13 [INFO] [stderr] Compiling num v0.2.1 [INFO] [stderr] Compiling x509-parser v0.14.0 [INFO] [stderr] Compiling console v0.16.1 [INFO] [stderr] Compiling dashmap v5.5.3 [INFO] [stderr] Compiling solana-rpc-client-api v3.0.6 [INFO] [stderr] Compiling quanta v0.12.6 [INFO] [stderr] Compiling elliptic-curve v0.13.8 [INFO] [stderr] Compiling solana-net-utils v3.0.6 [INFO] [stderr] Compiling webpki-roots v0.24.0 [INFO] [stderr] Compiling solana-quic-definitions v3.0.0 [INFO] [stderr] Compiling solana-address-lookup-table-interface v3.0.0 [INFO] [stderr] Compiling solana-cpi v3.0.0 [INFO] [stderr] Compiling http v0.2.12 [INFO] [stderr] Compiling rfc6979 v0.4.0 [INFO] [stderr] Compiling sha1 v0.10.6 [INFO] [stderr] Compiling spinning_top v0.3.0 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling futures-timer v3.0.3 [INFO] [stderr] Compiling unit-prefix v0.5.1 [INFO] [stderr] Compiling regex-syntax v0.8.7 [INFO] [stderr] Compiling event-listener v2.5.3 [INFO] [stderr] Compiling utf-8 v0.7.6 [INFO] [stderr] Compiling no-std-compat v0.4.1 [INFO] [stderr] Compiling nonzero_ext v0.3.0 [INFO] [stderr] Compiling tungstenite v0.20.1 [INFO] [stderr] Compiling governor v0.6.3 [INFO] [stderr] Compiling event-listener v5.4.1 [INFO] [stderr] Compiling async-channel v1.9.0 [INFO] [stderr] Compiling indicatif v0.18.0 [INFO] [stderr] Compiling ecdsa v0.16.9 [INFO] [stderr] Compiling solana-transaction-metrics-tracker v3.0.6 [INFO] [stderr] Compiling solana-tls-utils v3.0.6 [INFO] [stderr] Compiling tokio-rustls v0.24.1 [INFO] [stderr] Compiling percentage v0.1.0 [INFO] [stderr] Compiling solana-connection-cache v3.0.6 [INFO] [stderr] Compiling spl-type-length-value v0.9.0 [INFO] [stderr] Compiling regex-automata v0.4.12 [INFO] [stderr] Compiling pem v1.1.1 [INFO] [stderr] Compiling solana-feature-gate-interface v3.0.0 [INFO] [stderr] Compiling solana-curve25519 v2.3.13 [INFO] [stderr] Compiling solana-hash v2.3.0 [INFO] [stderr] Compiling histogram v0.6.9 [INFO] [stderr] Compiling webpki-roots v0.25.4 [INFO] [stderr] Compiling tokio-tungstenite v0.20.1 [INFO] [stderr] Compiling solana-streamer v3.0.6 [INFO] [stderr] Compiling spl-token-confidential-transfer-proof-extraction v0.5.0 [INFO] [stderr] Compiling solana-rpc-client v3.0.6 [INFO] [stderr] Compiling spl-token-metadata-interface v0.8.0 [INFO] [stderr] Compiling k256 v0.13.4 [INFO] [stderr] Compiling event-listener-strategy v0.5.4 [INFO] [stderr] Compiling spl-token-group-interface v0.7.1 [INFO] [stderr] Compiling spl-token-confidential-transfer-proof-generation v0.5.0 [INFO] [stderr] Compiling solana-cpi v2.2.1 [INFO] [stderr] Compiling solana-clock v2.2.2 [INFO] [stderr] Compiling solana-system-interface v1.0.0 [INFO] [stderr] Compiling solana-serialize-utils v2.2.1 [INFO] [stderr] Compiling tokio-stream v0.1.17 [INFO] [stderr] Compiling solana-keccak-hasher v3.0.0 [INFO] [stderr] Compiling solana-instructions-sysvar v2.2.2 [INFO] [stderr] Compiling solana-example-mocks v3.0.0 [INFO] [stderr] Compiling solana-stake-interface v1.2.1 [INFO] [stderr] Compiling spl-token-2022-interface v2.0.0 [INFO] [stderr] Compiling solana-secp256k1-recover v3.0.0 [INFO] [stderr] Compiling regex v1.12.1 [INFO] [stderr] Compiling solana-pubsub-client v3.0.6 [INFO] [stderr] Compiling Inflector v0.11.4 [INFO] [stderr] Compiling async-lock v3.4.1 [INFO] [stderr] Compiling solana-slot-hashes v2.2.1 [INFO] [stderr] Compiling solana-epoch-rewards v2.2.1 [INFO] [stderr] Compiling solana-stake-interface v2.0.1 [INFO] [stderr] Compiling solana-client-traits v3.0.0 [INFO] [stderr] Compiling spl-token-interface v2.0.0 [INFO] [stderr] Compiling solana-program-entrypoint v2.3.0 [INFO] [stderr] Compiling solana-last-restart-slot v2.2.1 [INFO] [stderr] Compiling solana-rent v2.2.1 [INFO] [stderr] Compiling solana-epoch-schedule v2.2.1 [INFO] [stderr] Compiling solana-big-mod-exp v3.0.0 [INFO] [stderr] Compiling solana-slot-history v2.2.1 [INFO] [stderr] Compiling solana-config-interface v2.0.0 [INFO] [stderr] Compiling solana-loader-v3-interface v6.1.0 [INFO] [stderr] Compiling solana-blake3-hasher v3.0.0 [INFO] [stderr] Compiling solana-stable-layout v3.0.0 [INFO] [stderr] Compiling solana-epoch-stake v3.0.0 [INFO] [stderr] Compiling solana-fee-calculator v2.2.1 [INFO] [stderr] Compiling solana-hard-forks v3.0.0 [INFO] [stderr] Compiling siphasher v0.3.11 [INFO] [stderr] Compiling solana-native-token v3.0.0 [INFO] [stderr] Compiling solana-shred-version v3.0.0 [INFO] [stderr] Compiling solana-account-decoder v3.0.6 [INFO] [stderr] Compiling solana-sysvar v2.3.0 [INFO] [stderr] Compiling solana-program v3.0.0 [INFO] [stderr] Compiling solana-epoch-rewards-hasher v3.0.0 [INFO] [stderr] Compiling solana-quic-client v3.0.6 [INFO] [stderr] Compiling solana-udp-client v3.0.6 [INFO] [stderr] Compiling solana-offchain-message v3.0.0 [INFO] [stderr] Compiling solana-program-pack v2.2.1 [INFO] [stderr] Compiling agave-reserved-account-keys v3.0.6 [INFO] [stderr] Compiling solana-presigner v3.0.0 [INFO] [stderr] Compiling solana-loader-v2-interface v3.0.0 [INFO] [stderr] Compiling spl-memo-interface v2.0.0 [INFO] [stderr] Compiling solana-tpu-client v3.0.6 [INFO] [stderr] Compiling solana-rpc-client-nonce-utils v3.0.6 [INFO] [stderr] Compiling spl-associated-token-account-interface v2.0.0 [INFO] [stderr] Compiling solana-fee-structure v3.0.0 [INFO] [stderr] Compiling solana-program-option v2.2.1 [INFO] [stderr] Compiling spl-token v8.0.0 [INFO] [stderr] Compiling solana-sdk v3.0.0 [INFO] [stderr] Compiling solana-transaction-status v3.0.6 [INFO] [stderr] Compiling solana-client v3.0.6 [INFO] [stderr] Compiling solana-network-sdk v0.2.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `str::FromStr` [INFO] [stdout] --> src/account.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{str::FromStr, sync::Arc}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rpc_client::GetConfirmedSignaturesForAddress2Config` [INFO] [stdout] --> src/account.rs:4:41 [INFO] [stdout] | [INFO] [stdout] 4 | nonblocking::rpc_client::RpcClient, rpc_client::GetConfirmedSignaturesForAddress2Config, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `solana_program::pubkey` [INFO] [stdout] --> src/account.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use solana_program::pubkey; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `clock::Epoch`, `native_token::LAMPORTS_PER_SOL`, and `pubkey::Pubkey` [INFO] [stdout] --> src/account.rs:7:18 [INFO] [stdout] | [INFO] [stdout] 7 | use solana_sdk::{clock::Epoch, native_token::LAMPORTS_PER_SOL, pubkey::Pubkey}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `UiInstruction` [INFO] [stdout] --> src/trade.rs:16:68 [INFO] [stdout] | [INFO] [stdout] 16 | EncodedConfirmedTransactionWithStatusMeta, EncodedTransaction, UiInstruction, UiMessage, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Signature` [INFO] [stdout] --> src/wallet.rs:3:17 [INFO] [stdout] | [INFO] [stdout] 3 | signature::{Signature, Signer}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decimals` [INFO] [stdout] --> src/tool.rs:378:41 [INFO] [stdout] | [INFO] [stdout] 378 | pub fn validate_amount(amount: u64, decimals: u8) -> bool { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decimals` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `legacy` [INFO] [stdout] --> src/trade.rs:706:44 [INFO] [stdout] | [INFO] [stdout] 706 | TransactionVersion::Legacy(legacy) => {} [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: you might have meant to pattern match on the similarly named variant `Legacy` [INFO] [stdout] | [INFO] [stdout] 706 - TransactionVersion::Legacy(legacy) => {} [INFO] [stdout] 706 + TransactionVersion::Legacy(solana_sdk::transaction::Legacy::Legacy) => {} [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 706 | TransactionVersion::Legacy(_legacy) => {} [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `partial_inst` [INFO] [stdout] --> src/trade.rs:738:29 [INFO] [stdout] | [INFO] [stdout] 738 | ... partial_inst, [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_partial_inst` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tx` [INFO] [stdout] --> src/trade.rs:758:9 [INFO] [stdout] | [INFO] [stdout] 758 | tx: &EncodedConfirmedTransactionWithStatusMeta, [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_tx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:870:12 [INFO] [stdout] | [INFO] [stdout] 870 | if let (pre_balances, post_balances) = (&meta.pre_balances, &meta.post_balances) { [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: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:898:40 [INFO] [stdout] | [INFO] [stdout] 898 | ... if let account_keys = &parsed_msg.account_keys { [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:934:32 [INFO] [stdout] | [INFO] [stdout] 934 | ... if let account_keys = &parsed_msg.account_keys { [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:936:40 [INFO] [stdout] | [INFO] [stdout] 936 | ... if let pubkey = &fee_payer.pubkey { [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:985:12 [INFO] [stdout] | [INFO] [stdout] 985 | if let (pre_token_balances, post_token_balances) = [INFO] [stdout] | ____________^ [INFO] [stdout] 986 | | (&meta.pre_token_balances, &meta.post_token_balances) [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:1084:12 [INFO] [stdout] | [INFO] [stdout] 1084 | if let logs = &meta.log_messages { [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:1126:12 [INFO] [stdout] | [INFO] [stdout] 1126 | if let logs = &meta.log_messages.clone().unwrap_or(vec![]) { [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:1148:12 [INFO] [stdout] | [INFO] [stdout] 1148 | if let instructions = &parsed_msg.instructions { [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:1246:24 [INFO] [stdout] | [INFO] [stdout] 1246 | if let account_keys = &parsed_msg.account_keys { [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:1251:32 [INFO] [stdout] | [INFO] [stdout] 1251 | ... if let (from_pubkey, to_pubkey) = (&from_acc.pubkey, &to_acc.pubkey) { [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] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/lib.rs:41:13 [INFO] [stdout] | [INFO] [stdout] 41 | _ => { [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/lib.rs:41:13 [INFO] [stdout] | [INFO] [stdout] 32 | Mode::MAIN => { [INFO] [stdout] | ---------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 35 | Mode::TEST => { [INFO] [stdout] | ---------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 38 | Mode::DEV => { [INFO] [stdout] | --------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 41 | _ => { [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/lib.rs:166:23 [INFO] [stdout] | [INFO] [stdout] 166 | .map_err(|e| UnifiedError::Error(0.0))?; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/lib.rs:161:61 [INFO] [stdout] | [INFO] [stdout] 161 | let pubkey = Pubkey::from_str(&public_key).map_err(|e| UnifiedError::Error(0.0))?; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `mode` is never read [INFO] [stdout] --> src/lib.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct Solana { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 23 | mode: Mode, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `client` is never read [INFO] [stdout] --> src/account.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Account { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 10 | client: Arc, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `client` is never read [INFO] [stdout] --> src/scan.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Scan { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 6 | client: Arc, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 5m 59s [INFO] running `Command { std: "docker" "inspect" "1e182761ce3b2436fe1eb27f2cee3d35f99877762514536c6abd209b3125bc5a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1e182761ce3b2436fe1eb27f2cee3d35f99877762514536c6abd209b3125bc5a", kill_on_drop: false }` [INFO] [stdout] 1e182761ce3b2436fe1eb27f2cee3d35f99877762514536c6abd209b3125bc5a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 490ce7e6a4488db51da711d96f67e9877022d4e1b6c4e9a51c1495bbde795e5d [INFO] running `Command { std: "docker" "start" "-a" "490ce7e6a4488db51da711d96f67e9877022d4e1b6c4e9a51c1495bbde795e5d", kill_on_drop: false }` [INFO] [stdout] warning: unused import: `str::FromStr` [INFO] [stdout] --> src/account.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{str::FromStr, sync::Arc}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rpc_client::GetConfirmedSignaturesForAddress2Config` [INFO] [stdout] --> src/account.rs:4:41 [INFO] [stdout] | [INFO] [stdout] 4 | nonblocking::rpc_client::RpcClient, rpc_client::GetConfirmedSignaturesForAddress2Config, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `solana_program::pubkey` [INFO] [stdout] --> src/account.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use solana_program::pubkey; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `clock::Epoch`, `native_token::LAMPORTS_PER_SOL`, and `pubkey::Pubkey` [INFO] [stdout] --> src/account.rs:7:18 [INFO] [stdout] | [INFO] [stdout] 7 | use solana_sdk::{clock::Epoch, native_token::LAMPORTS_PER_SOL, pubkey::Pubkey}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `UiInstruction` [INFO] [stdout] --> src/trade.rs:16:68 [INFO] [stdout] | [INFO] [stdout] 16 | EncodedConfirmedTransactionWithStatusMeta, EncodedTransaction, UiInstruction, UiMessage, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Signature` [INFO] [stdout] --> src/wallet.rs:3:17 [INFO] [stdout] | [INFO] [stdout] 3 | signature::{Signature, Signer}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decimals` [INFO] [stdout] --> src/tool.rs:378:41 [INFO] [stdout] | [INFO] [stdout] 378 | pub fn validate_amount(amount: u64, decimals: u8) -> bool { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decimals` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `legacy` [INFO] [stdout] --> src/trade.rs:706:44 [INFO] [stdout] | [INFO] [stdout] 706 | TransactionVersion::Legacy(legacy) => {} [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: you might have meant to pattern match on the similarly named variant `Legacy` [INFO] [stdout] | [INFO] [stdout] 706 - TransactionVersion::Legacy(legacy) => {} [INFO] [stdout] 706 + TransactionVersion::Legacy(solana_sdk::transaction::Legacy::Legacy) => {} [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 706 | TransactionVersion::Legacy(_legacy) => {} [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `partial_inst` [INFO] [stdout] --> src/trade.rs:738:29 [INFO] [stdout] | [INFO] [stdout] 738 | ... partial_inst, [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_partial_inst` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tx` [INFO] [stdout] --> src/trade.rs:758:9 [INFO] [stdout] | [INFO] [stdout] 758 | tx: &EncodedConfirmedTransactionWithStatusMeta, [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_tx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:870:12 [INFO] [stdout] | [INFO] [stdout] 870 | if let (pre_balances, post_balances) = (&meta.pre_balances, &meta.post_balances) { [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: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:898:40 [INFO] [stdout] | [INFO] [stdout] 898 | ... if let account_keys = &parsed_msg.account_keys { [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:934:32 [INFO] [stdout] | [INFO] [stdout] 934 | ... if let account_keys = &parsed_msg.account_keys { [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:936:40 [INFO] [stdout] | [INFO] [stdout] 936 | ... if let pubkey = &fee_payer.pubkey { [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:985:12 [INFO] [stdout] | [INFO] [stdout] 985 | if let (pre_token_balances, post_token_balances) = [INFO] [stdout] | ____________^ [INFO] [stdout] 986 | | (&meta.pre_token_balances, &meta.post_token_balances) [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:1084:12 [INFO] [stdout] | [INFO] [stdout] 1084 | if let logs = &meta.log_messages { [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:1126:12 [INFO] [stdout] | [INFO] [stdout] 1126 | if let logs = &meta.log_messages.clone().unwrap_or(vec![]) { [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:1148:12 [INFO] [stdout] | [INFO] [stdout] 1148 | if let instructions = &parsed_msg.instructions { [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:1246:24 [INFO] [stdout] | [INFO] [stdout] 1246 | if let account_keys = &parsed_msg.account_keys { [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:1251:32 [INFO] [stdout] | [INFO] [stdout] 1251 | ... if let (from_pubkey, to_pubkey) = (&from_acc.pubkey, &to_acc.pubkey) { [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] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/lib.rs:41:13 [INFO] [stdout] | [INFO] [stdout] 41 | _ => { [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/lib.rs:41:13 [INFO] [stdout] | [INFO] [stdout] 32 | Mode::MAIN => { [INFO] [stdout] | ---------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 35 | Mode::TEST => { [INFO] [stdout] | ---------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 38 | Mode::DEV => { [INFO] [stdout] | --------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 41 | _ => { [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/lib.rs:166:23 [INFO] [stdout] | [INFO] [stdout] 166 | .map_err(|e| UnifiedError::Error(0.0))?; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/lib.rs:161:61 [INFO] [stdout] | [INFO] [stdout] 161 | let pubkey = Pubkey::from_str(&public_key).map_err(|e| UnifiedError::Error(0.0))?; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `mode` is never read [INFO] [stdout] --> src/lib.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct Solana { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 23 | mode: Mode, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `client` is never read [INFO] [stdout] --> src/account.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Account { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 10 | client: Arc, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `client` is never read [INFO] [stdout] --> src/scan.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Scan { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 6 | client: Arc, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling solana-network-sdk v0.2.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `str::FromStr` [INFO] [stdout] --> src/account.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{str::FromStr, sync::Arc}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rpc_client::GetConfirmedSignaturesForAddress2Config` [INFO] [stdout] --> src/account.rs:4:41 [INFO] [stdout] | [INFO] [stdout] 4 | nonblocking::rpc_client::RpcClient, rpc_client::GetConfirmedSignaturesForAddress2Config, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `solana_program::pubkey` [INFO] [stdout] --> src/account.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use solana_program::pubkey; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `clock::Epoch`, `native_token::LAMPORTS_PER_SOL`, and `pubkey::Pubkey` [INFO] [stdout] --> src/account.rs:7:18 [INFO] [stdout] | [INFO] [stdout] 7 | use solana_sdk::{clock::Epoch, native_token::LAMPORTS_PER_SOL, pubkey::Pubkey}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `UiInstruction` [INFO] [stdout] --> src/trade.rs:16:68 [INFO] [stdout] | [INFO] [stdout] 16 | EncodedConfirmedTransactionWithStatusMeta, EncodedTransaction, UiInstruction, UiMessage, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Signature` [INFO] [stdout] --> src/wallet.rs:3:17 [INFO] [stdout] | [INFO] [stdout] 3 | signature::{Signature, Signer}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decimals` [INFO] [stdout] --> src/tool.rs:378:41 [INFO] [stdout] | [INFO] [stdout] 378 | pub fn validate_amount(amount: u64, decimals: u8) -> bool { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decimals` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `legacy` [INFO] [stdout] --> src/trade.rs:706:44 [INFO] [stdout] | [INFO] [stdout] 706 | TransactionVersion::Legacy(legacy) => {} [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: you might have meant to pattern match on the similarly named variant `Legacy` [INFO] [stdout] | [INFO] [stdout] 706 - TransactionVersion::Legacy(legacy) => {} [INFO] [stdout] 706 + TransactionVersion::Legacy(solana_sdk::transaction::Legacy::Legacy) => {} [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 706 | TransactionVersion::Legacy(_legacy) => {} [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `partial_inst` [INFO] [stdout] --> src/trade.rs:738:29 [INFO] [stdout] | [INFO] [stdout] 738 | ... partial_inst, [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_partial_inst` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tx` [INFO] [stdout] --> src/trade.rs:758:9 [INFO] [stdout] | [INFO] [stdout] 758 | tx: &EncodedConfirmedTransactionWithStatusMeta, [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_tx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:870:12 [INFO] [stdout] | [INFO] [stdout] 870 | if let (pre_balances, post_balances) = (&meta.pre_balances, &meta.post_balances) { [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: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:898:40 [INFO] [stdout] | [INFO] [stdout] 898 | ... if let account_keys = &parsed_msg.account_keys { [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:934:32 [INFO] [stdout] | [INFO] [stdout] 934 | ... if let account_keys = &parsed_msg.account_keys { [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:936:40 [INFO] [stdout] | [INFO] [stdout] 936 | ... if let pubkey = &fee_payer.pubkey { [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:985:12 [INFO] [stdout] | [INFO] [stdout] 985 | if let (pre_token_balances, post_token_balances) = [INFO] [stdout] | ____________^ [INFO] [stdout] 986 | | (&meta.pre_token_balances, &meta.post_token_balances) [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:1084:12 [INFO] [stdout] | [INFO] [stdout] 1084 | if let logs = &meta.log_messages { [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:1126:12 [INFO] [stdout] | [INFO] [stdout] 1126 | if let logs = &meta.log_messages.clone().unwrap_or(vec![]) { [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:1148:12 [INFO] [stdout] | [INFO] [stdout] 1148 | if let instructions = &parsed_msg.instructions { [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:1246:24 [INFO] [stdout] | [INFO] [stdout] 1246 | if let account_keys = &parsed_msg.account_keys { [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] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> src/trade.rs:1251:32 [INFO] [stdout] | [INFO] [stdout] 1251 | ... if let (from_pubkey, to_pubkey) = (&from_acc.pubkey, &to_acc.pubkey) { [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] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/lib.rs:41:13 [INFO] [stdout] | [INFO] [stdout] 41 | _ => { [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/lib.rs:41:13 [INFO] [stdout] | [INFO] [stdout] 32 | Mode::MAIN => { [INFO] [stdout] | ---------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 35 | Mode::TEST => { [INFO] [stdout] | ---------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 38 | Mode::DEV => { [INFO] [stdout] | --------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 41 | _ => { [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/lib.rs:166:23 [INFO] [stdout] | [INFO] [stdout] 166 | .map_err(|e| UnifiedError::Error(0.0))?; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/lib.rs:161:61 [INFO] [stdout] | [INFO] [stdout] 161 | let pubkey = Pubkey::from_str(&public_key).map_err(|e| UnifiedError::Error(0.0))?; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `mode` is never read [INFO] [stdout] --> src/lib.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct Solana { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 23 | mode: Mode, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `client` is never read [INFO] [stdout] --> src/account.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Account { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 10 | client: Arc, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `client` is never read [INFO] [stdout] --> src/scan.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Scan { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 6 | client: Arc, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 3.54s [INFO] running `Command { std: "docker" "inspect" "490ce7e6a4488db51da711d96f67e9877022d4e1b6c4e9a51c1495bbde795e5d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "490ce7e6a4488db51da711d96f67e9877022d4e1b6c4e9a51c1495bbde795e5d", kill_on_drop: false }` [INFO] [stdout] 490ce7e6a4488db51da711d96f67e9877022d4e1b6c4e9a51c1495bbde795e5d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 0274f5ceb042d770f2a937ba04e462a82fa4d2397d61f742639fe97575cf063f [INFO] running `Command { std: "docker" "start" "-a" "0274f5ceb042d770f2a937ba04e462a82fa4d2397d61f742639fe97575cf063f", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `str::FromStr` [INFO] [stderr] --> src/account.rs:1:11 [INFO] [stderr] | [INFO] [stderr] 1 | use std::{str::FromStr, sync::Arc}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `rpc_client::GetConfirmedSignaturesForAddress2Config` [INFO] [stderr] --> src/account.rs:4:41 [INFO] [stderr] | [INFO] [stderr] 4 | nonblocking::rpc_client::RpcClient, rpc_client::GetConfirmedSignaturesForAddress2Config, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `solana_program::pubkey` [INFO] [stderr] --> src/account.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use solana_program::pubkey; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `clock::Epoch`, `native_token::LAMPORTS_PER_SOL`, and `pubkey::Pubkey` [INFO] [stderr] --> src/account.rs:7:18 [INFO] [stderr] | [INFO] [stderr] 7 | use solana_sdk::{clock::Epoch, native_token::LAMPORTS_PER_SOL, pubkey::Pubkey}; [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `UiInstruction` [INFO] [stderr] --> src/trade.rs:16:68 [INFO] [stderr] | [INFO] [stderr] 16 | EncodedConfirmedTransactionWithStatusMeta, EncodedTransaction, UiInstruction, UiMessage, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Signature` [INFO] [stderr] --> src/wallet.rs:3:17 [INFO] [stderr] | [INFO] [stderr] 3 | signature::{Signature, Signer}, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `decimals` [INFO] [stderr] --> src/tool.rs:378:41 [INFO] [stderr] | [INFO] [stderr] 378 | pub fn validate_amount(amount: u64, decimals: u8) -> bool { [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decimals` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `legacy` [INFO] [stderr] --> src/trade.rs:706:44 [INFO] [stderr] | [INFO] [stderr] 706 | TransactionVersion::Legacy(legacy) => {} [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: you might have meant to pattern match on the similarly named variant `Legacy` [INFO] [stderr] | [INFO] [stderr] 706 - TransactionVersion::Legacy(legacy) => {} [INFO] [stderr] 706 + TransactionVersion::Legacy(solana_sdk::transaction::Legacy::Legacy) => {} [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 706 | TransactionVersion::Legacy(_legacy) => {} [INFO] [stderr] | + [INFO] [stderr] [INFO] [stderr] warning: unused variable: `partial_inst` [INFO] [stderr] --> src/trade.rs:738:29 [INFO] [stderr] | [INFO] [stderr] 738 | ... partial_inst, [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_partial_inst` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tx` [INFO] [stderr] --> src/trade.rs:758:9 [INFO] [stderr] | [INFO] [stderr] 758 | tx: &EncodedConfirmedTransactionWithStatusMeta, [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_tx` [INFO] [stderr] [INFO] [stderr] warning: irrefutable `if let` pattern [INFO] [stderr] --> src/trade.rs:870:12 [INFO] [stderr] | [INFO] [stderr] 870 | if let (pre_balances, post_balances) = (&meta.pre_balances, &meta.post_balances) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this pattern will always match, so the `if let` is useless [INFO] [stderr] = help: consider replacing the `if let` with a `let` [INFO] [stderr] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: irrefutable `if let` pattern [INFO] [stderr] --> src/trade.rs:898:40 [INFO] [stderr] | [INFO] [stderr] 898 | ... if let account_keys = &parsed_msg.account_keys { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this pattern will always match, so the `if let` is useless [INFO] [stderr] = help: consider replacing the `if let` with a `let` [INFO] [stderr] [INFO] [stderr] warning: irrefutable `if let` pattern [INFO] [stderr] --> src/trade.rs:934:32 [INFO] [stderr] | [INFO] [stderr] 934 | ... if let account_keys = &parsed_msg.account_keys { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this pattern will always match, so the `if let` is useless [INFO] [stderr] = help: consider replacing the `if let` with a `let` [INFO] [stderr] [INFO] [stderr] warning: irrefutable `if let` pattern [INFO] [stderr] --> src/trade.rs:936:40 [INFO] [stderr] | [INFO] [stderr] 936 | ... if let pubkey = &fee_payer.pubkey { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this pattern will always match, so the `if let` is useless [INFO] [stderr] = help: consider replacing the `if let` with a `let` [INFO] [stderr] [INFO] [stderr] warning: irrefutable `if let` pattern [INFO] [stderr] --> src/trade.rs:985:12 [INFO] [stderr] | [INFO] [stderr] 985 | if let (pre_token_balances, post_token_balances) = [INFO] [stderr] | ____________^ [INFO] [stderr] 986 | | (&meta.pre_token_balances, &meta.post_token_balances) [INFO] [stderr] | |_________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = note: this pattern will always match, so the `if let` is useless [INFO] [stderr] = help: consider replacing the `if let` with a `let` [INFO] [stderr] [INFO] [stderr] warning: irrefutable `if let` pattern [INFO] [stderr] --> src/trade.rs:1084:12 [INFO] [stderr] | [INFO] [stderr] 1084 | if let logs = &meta.log_messages { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this pattern will always match, so the `if let` is useless [INFO] [stderr] = help: consider replacing the `if let` with a `let` [INFO] [stderr] [INFO] [stderr] warning: irrefutable `if let` pattern [INFO] [stderr] --> src/trade.rs:1126:12 [INFO] [stderr] | [INFO] [stderr] 1126 | if let logs = &meta.log_messages.clone().unwrap_or(vec![]) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this pattern will always match, so the `if let` is useless [INFO] [stderr] = help: consider replacing the `if let` with a `let` [INFO] [stderr] [INFO] [stderr] warning: irrefutable `if let` pattern [INFO] [stderr] --> src/trade.rs:1148:12 [INFO] [stderr] | [INFO] [stderr] 1148 | if let instructions = &parsed_msg.instructions { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this pattern will always match, so the `if let` is useless [INFO] [stderr] = help: consider replacing the `if let` with a `let` [INFO] [stderr] [INFO] [stderr] warning: irrefutable `if let` pattern [INFO] [stderr] --> src/trade.rs:1246:24 [INFO] [stderr] | [INFO] [stderr] 1246 | if let account_keys = &parsed_msg.account_keys { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this pattern will always match, so the `if let` is useless [INFO] [stderr] = help: consider replacing the `if let` with a `let` [INFO] [stderr] [INFO] [stderr] warning: irrefutable `if let` pattern [INFO] [stderr] --> src/trade.rs:1251:32 [INFO] [stderr] | [INFO] [stderr] 1251 | ... if let (from_pubkey, to_pubkey) = (&from_acc.pubkey, &to_acc.pubkey) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this pattern will always match, so the `if let` is useless [INFO] [stderr] = help: consider replacing the `if let` with a `let` [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/lib.rs:41:13 [INFO] [stderr] | [INFO] [stderr] 41 | _ => { [INFO] [stderr] | ^ no value can reach this [INFO] [stderr] | [INFO] [stderr] note: multiple earlier patterns match some of the same values [INFO] [stderr] --> src/lib.rs:41:13 [INFO] [stderr] | [INFO] [stderr] 32 | Mode::MAIN => { [INFO] [stderr] | ---------- matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 35 | Mode::TEST => { [INFO] [stderr] | ---------- matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 38 | Mode::DEV => { [INFO] [stderr] | --------- matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 41 | _ => { [INFO] [stderr] | ^ collectively making this unreachable [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `e` [INFO] [stderr] --> src/lib.rs:166:23 [INFO] [stderr] | [INFO] [stderr] 166 | .map_err(|e| UnifiedError::Error(0.0))?; [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `e` [INFO] [stderr] --> src/lib.rs:161:61 [INFO] [stderr] | [INFO] [stderr] 161 | let pubkey = Pubkey::from_str(&public_key).map_err(|e| UnifiedError::Error(0.0))?; [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stderr] [INFO] [stderr] warning: field `mode` is never read [INFO] [stderr] --> src/lib.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 22 | pub struct Solana { [INFO] [stderr] | ------ field in this struct [INFO] [stderr] 23 | mode: Mode, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: field `client` is never read [INFO] [stderr] --> src/account.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 9 | pub struct Account { [INFO] [stderr] | ------- field in this struct [INFO] [stderr] 10 | client: Arc, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `client` is never read [INFO] [stderr] --> src/scan.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 5 | pub struct Scan { [INFO] [stderr] | ---- field in this struct [INFO] [stderr] 6 | client: Arc, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `solana-network-sdk` (lib) generated 26 warnings (run `cargo fix --lib -p solana-network-sdk` to apply 12 suggestions) [INFO] [stderr] warning: `solana-network-sdk` (lib test) generated 26 warnings (26 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.94s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/solana_network_sdk-a0d965171897b7b2) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests solana_network_sdk [INFO] [stdout] [INFO] [stdout] running 24 tests [INFO] [stdout] test src/message.rs - message::Message::sign_message (line 11) ... FAILED [INFO] [stdout] test src/lib.rs - Solana::last_block_hash (line 110) ... FAILED [INFO] [stdout] test src/lib.rs - Solana::client_arc (line 53) ... FAILED [INFO] [stdout] test src/lib.rs - Solana::block_height (line 94) ... FAILED [INFO] [stdout] test src/lib.rs - Solana::epoch (line 142) ... FAILED [INFO] [stdout] test src/tool.rs - tool::address::bytes_to_address (line 104) ... FAILED [INFO] [stdout] test src/lib.rs - Solana::core_version (line 62) ... FAILED [INFO] [stdout] test src/lib.rs - Solana::feature_set (line 78) ... FAILED [INFO] [stdout] test src/lib.rs - Solana::slot (line 126) ... FAILED [INFO] [stdout] test src/tool.rs - tool::address::get_short_address (line 132) ... FAILED [INFO] [stdout] test src/tool.rs - tool::address::validate_address_to_pubkey (line 46) ... FAILED [INFO] [stdout] test src/message.rs - message::Message::verify_message (line 23) ... FAILED [INFO] [stdout] test src/tool.rs - tool::address::generate_random_address (line 87) ... FAILED [INFO] [stdout] test src/tool.rs - tool::address::is_valid_address (line 24) ... FAILED [INFO] [stdout] test src/trade.rs - trade::Trade::get_last_transactions_contains_address (line 190) ... FAILED [INFO] [stdout] test src/tool.rs - tool::address::is_same_address (line 66) ... FAILED [INFO] [stdout] test src/trade.rs - trade::Trade::get_transactions_by_recipient_and_payer (line 312) ... FAILED [INFO] [stdout] test src/trade.rs - trade::Trade::get_transactions_history_by_cursor (line 49) ... FAILED [INFO] [stdout] test src/trade.rs - trade::Trade::get_transaction_details (line 271) ... FAILED [INFO] [stdout] test src/trade.rs - trade::Trade::get_transactions_history_filtered (line 129) ... FAILED [INFO] [stdout] test src/wallet.rs - wallet::Wallet::from_private_key_64 (line 43) ... FAILED [INFO] [stdout] test src/wallet.rs - wallet::Wallet::create_new_wallet (line 22) ... FAILED [INFO] [stdout] test src/wallet.rs - wallet::Wallet::from_private_key_32 (line 60) ... FAILED [INFO] [stdout] test src/trade.rs - trade::Trade::get_transactions_vec_containing_address (line 234) ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- src/message.rs - message::Message::sign_message (line 11) stdout ---- [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Wallet` [INFO] [stdout] --> src/message.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 12 | let w = Wallet::from_private_key_64("private key"); [INFO] [stdout] | ^^^^^^ use of undeclared type `Wallet` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 11 + use solana_network_sdk::wallet::Wallet; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Message` [INFO] [stdout] --> src/message.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | let s = Message::sign_message(w, "message".as_bytes()); [INFO] [stdout] | ^^^^^^^ use of undeclared type `Message` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 11 + use solana_network_sdk::message::Message; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0433`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/lib.rs - Solana::last_block_hash (line 110) stdout ---- [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Solana` [INFO] [stdout] --> src/lib.rs:111:9 [INFO] [stdout] | [INFO] [stdout] 111 | let s = Solana::new(Mode::TEST); [INFO] [stdout] | ^^^^^^ use of undeclared type `Solana` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 110 + use solana_network_sdk::Solana; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Mode` [INFO] [stdout] --> src/lib.rs:111:21 [INFO] [stdout] | [INFO] [stdout] 111 | let s = Solana::new(Mode::TEST); [INFO] [stdout] | ^^^^ use of undeclared type `Mode` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 110 + use solana_network_sdk::types::Mode; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks [INFO] [stdout] --> src/lib.rs:112:34 [INFO] [stdout] | [INFO] [stdout] 110 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_110_0() { [INFO] [stdout] | ----------------------------------- this is not `async` [INFO] [stdout] 111 | let s = Solana::new(Mode::TEST); [INFO] [stdout] 112 | let client = s.last_block_hash().await; [INFO] [stdout] | ^^^^^ only allowed inside `async` functions and blocks [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0433, E0728. [INFO] [stdout] For more information about an error, try `rustc --explain E0433`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/lib.rs - Solana::client_arc (line 53) stdout ---- [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Solana` [INFO] [stdout] --> src/lib.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | let s = Solana::new(Mode::TEST); [INFO] [stdout] | ^^^^^^ use of undeclared type `Solana` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 53 + use solana_network_sdk::Solana; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Mode` [INFO] [stdout] --> src/lib.rs:54:21 [INFO] [stdout] | [INFO] [stdout] 54 | let s = Solana::new(Mode::TEST); [INFO] [stdout] | ^^^^ use of undeclared type `Mode` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 53 + use solana_network_sdk::types::Mode; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks [INFO] [stdout] --> src/lib.rs:55:29 [INFO] [stdout] | [INFO] [stdout] 53 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_53_0() { [INFO] [stdout] | ---------------------------------- this is not `async` [INFO] [stdout] 54 | let s = Solana::new(Mode::TEST); [INFO] [stdout] 55 | let client = s.client_arc().await; [INFO] [stdout] | ^^^^^ only allowed inside `async` functions and blocks [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0433, E0728. [INFO] [stdout] For more information about an error, try `rustc --explain E0433`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/lib.rs - Solana::block_height (line 94) stdout ---- [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Solana` [INFO] [stdout] --> src/lib.rs:95:9 [INFO] [stdout] | [INFO] [stdout] 95 | let s = Solana::new(Mode::TEST); [INFO] [stdout] | ^^^^^^ use of undeclared type `Solana` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 94 + use solana_network_sdk::Solana; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Mode` [INFO] [stdout] --> src/lib.rs:95:21 [INFO] [stdout] | [INFO] [stdout] 95 | let s = Solana::new(Mode::TEST); [INFO] [stdout] | ^^^^ use of undeclared type `Mode` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 94 + use solana_network_sdk::types::Mode; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks [INFO] [stdout] --> src/lib.rs:96:31 [INFO] [stdout] | [INFO] [stdout] 94 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_94_0() { [INFO] [stdout] | ---------------------------------- this is not `async` [INFO] [stdout] 95 | let s = Solana::new(Mode::TEST); [INFO] [stdout] 96 | let client = s.block_height().await; [INFO] [stdout] | ^^^^^ only allowed inside `async` functions and blocks [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0433, E0728. [INFO] [stdout] For more information about an error, try `rustc --explain E0433`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/lib.rs - Solana::epoch (line 142) stdout ---- [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Solana` [INFO] [stdout] --> src/lib.rs:143:9 [INFO] [stdout] | [INFO] [stdout] 143 | let s = Solana::new(Mode::TEST); [INFO] [stdout] | ^^^^^^ use of undeclared type `Solana` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 142 + use solana_network_sdk::Solana; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Mode` [INFO] [stdout] --> src/lib.rs:143:21 [INFO] [stdout] | [INFO] [stdout] 143 | let s = Solana::new(Mode::TEST); [INFO] [stdout] | ^^^^ use of undeclared type `Mode` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 142 + use solana_network_sdk::types::Mode; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks [INFO] [stdout] --> src/lib.rs:144:24 [INFO] [stdout] | [INFO] [stdout] 142 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_142_0() { [INFO] [stdout] | ----------------------------------- this is not `async` [INFO] [stdout] 143 | let s = Solana::new(Mode::TEST); [INFO] [stdout] 144 | let client = s.epoch().await; [INFO] [stdout] | ^^^^^ only allowed inside `async` functions and blocks [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0433, E0728. [INFO] [stdout] For more information about an error, try `rustc --explain E0433`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/tool.rs - tool::address::bytes_to_address (line 104) stdout ---- [INFO] [stdout] error[E0425]: cannot find function `bytes_to_address` in module `wallet` [INFO] [stdout] --> src/tool.rs:109:15 [INFO] [stdout] | [INFO] [stdout] 109 | match wallet::bytes_to_address(&bytes) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ not found in `wallet` [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 103 + use solana_network_sdk::tool::address::bytes_to_address; [INFO] [stdout] | [INFO] [stdout] help: if you import `bytes_to_address`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 109 - match wallet::bytes_to_address(&bytes) { [INFO] [stdout] 109 + match bytes_to_address(&bytes) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0425`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/lib.rs - Solana::core_version (line 62) stdout ---- [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Solana` [INFO] [stdout] --> src/lib.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 63 | let s = Solana::new(Mode::TEST); [INFO] [stdout] | ^^^^^^ use of undeclared type `Solana` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 62 + use solana_network_sdk::Solana; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Mode` [INFO] [stdout] --> src/lib.rs:63:21 [INFO] [stdout] | [INFO] [stdout] 63 | let s = Solana::new(Mode::TEST); [INFO] [stdout] | ^^^^ use of undeclared type `Mode` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 62 + use solana_network_sdk::types::Mode; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks [INFO] [stdout] --> src/lib.rs:64:31 [INFO] [stdout] | [INFO] [stdout] 62 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_62_0() { [INFO] [stdout] | ---------------------------------- this is not `async` [INFO] [stdout] 63 | let s = Solana::new(Mode::TEST); [INFO] [stdout] 64 | let client = s.core_version().await; [INFO] [stdout] | ^^^^^ only allowed inside `async` functions and blocks [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0433, E0728. [INFO] [stdout] For more information about an error, try `rustc --explain E0433`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/lib.rs - Solana::feature_set (line 78) stdout ---- [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Solana` [INFO] [stdout] --> src/lib.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | let s = Solana::new(Mode::TEST); [INFO] [stdout] | ^^^^^^ use of undeclared type `Solana` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 78 + use solana_network_sdk::Solana; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Mode` [INFO] [stdout] --> src/lib.rs:79:21 [INFO] [stdout] | [INFO] [stdout] 79 | let s = Solana::new(Mode::TEST); [INFO] [stdout] | ^^^^ use of undeclared type `Mode` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 78 + use solana_network_sdk::types::Mode; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks [INFO] [stdout] --> src/lib.rs:80:30 [INFO] [stdout] | [INFO] [stdout] 78 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_78_0() { [INFO] [stdout] | ---------------------------------- this is not `async` [INFO] [stdout] 79 | let s = Solana::new(Mode::TEST); [INFO] [stdout] 80 | let client = s.feature_set().await; [INFO] [stdout] | ^^^^^ only allowed inside `async` functions and blocks [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0433, E0728. [INFO] [stdout] For more information about an error, try `rustc --explain E0433`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/lib.rs - Solana::slot (line 126) stdout ---- [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Solana` [INFO] [stdout] --> src/lib.rs:127:9 [INFO] [stdout] | [INFO] [stdout] 127 | let s = Solana::new(Mode::TEST); [INFO] [stdout] | ^^^^^^ use of undeclared type `Solana` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 126 + use solana_network_sdk::Solana; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Mode` [INFO] [stdout] --> src/lib.rs:127:21 [INFO] [stdout] | [INFO] [stdout] 127 | let s = Solana::new(Mode::TEST); [INFO] [stdout] | ^^^^ use of undeclared type `Mode` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 126 + use solana_network_sdk::types::Mode; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks [INFO] [stdout] --> src/lib.rs:128:23 [INFO] [stdout] | [INFO] [stdout] 126 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_126_0() { [INFO] [stdout] | ----------------------------------- this is not `async` [INFO] [stdout] 127 | let s = Solana::new(Mode::TEST); [INFO] [stdout] 128 | let client = s.slot().await; [INFO] [stdout] | ^^^^^ only allowed inside `async` functions and blocks [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0433, E0728. [INFO] [stdout] For more information about an error, try `rustc --explain E0433`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/tool.rs - tool::address::get_short_address (line 132) stdout ---- [INFO] [stdout] error[E0425]: cannot find function `get_short_address` in module `wallet` [INFO] [stdout] --> src/tool.rs:137:21 [INFO] [stdout] | [INFO] [stdout] 137 | let short = wallet::get_short_address(address); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ not found in `wallet` [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 131 + use solana_network_sdk::tool::address::get_short_address; [INFO] [stdout] | [INFO] [stdout] help: if you import `get_short_address`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 137 - let short = wallet::get_short_address(address); [INFO] [stdout] 137 + let short = get_short_address(address); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0425`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/tool.rs - tool::address::validate_address_to_pubkey (line 46) stdout ---- [INFO] [stdout] error[E0425]: cannot find function `validate_address_to_pubkey` in module `wallet` [INFO] [stdout] --> src/tool.rs:50:15 [INFO] [stdout] | [INFO] [stdout] 50 | match wallet::validate_address_to_pubkey("address") { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in `wallet` [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 45 + use solana_network_sdk::tool::address::validate_address_to_pubkey; [INFO] [stdout] | [INFO] [stdout] help: if you import `validate_address_to_pubkey`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 50 - match wallet::validate_address_to_pubkey("address") { [INFO] [stdout] 50 + match validate_address_to_pubkey("address") { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0425`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/message.rs - message::Message::verify_message (line 23) stdout ---- [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Wallet` [INFO] [stdout] --> src/message.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | let w = Wallet::from_private_key_64("private key"); [INFO] [stdout] | ^^^^^^ use of undeclared type `Wallet` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 23 + use solana_network_sdk::wallet::Wallet; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Message` [INFO] [stdout] --> src/message.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | let s = Message::sign_message(w, "message".as_bytes()); [INFO] [stdout] | ^^^^^^^ use of undeclared type `Message` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 23 + use solana_network_sdk::message::Message; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Message` [INFO] [stdout] --> src/message.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | let bool = Message::verify_message(s, w, "message".as_bytes()); [INFO] [stdout] | ^^^^^^^ use of undeclared type `Message` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 23 + use solana_network_sdk::message::Message; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0433`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/tool.rs - tool::address::generate_random_address (line 87) stdout ---- [INFO] [stdout] error[E0425]: cannot find function `generate_random_address` in module `wallet` [INFO] [stdout] --> src/tool.rs:91:30 [INFO] [stdout] | [INFO] [stdout] 91 | let random_address = wallet::generate_random_address(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ not found in `wallet` [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 86 + use solana_network_sdk::tool::address::generate_random_address; [INFO] [stdout] | [INFO] [stdout] help: if you import `generate_random_address`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 91 - let random_address = wallet::generate_random_address(); [INFO] [stdout] 91 + let random_address = generate_random_address(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `is_valid_address` in module `wallet` [INFO] [stdout] --> src/tool.rs:92:17 [INFO] [stdout] | [INFO] [stdout] 92 | assert!(wallet::is_valid_address(&random_address)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ not found in `wallet` [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 86 + use solana_network_sdk::tool::address::is_valid_address; [INFO] [stdout] | [INFO] [stdout] help: if you import `is_valid_address`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 92 - assert!(wallet::is_valid_address(&random_address)); [INFO] [stdout] 92 + assert!(is_valid_address(&random_address)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0425`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/tool.rs - tool::address::is_valid_address (line 24) stdout ---- [INFO] [stdout] error[E0425]: cannot find function `is_valid_address` in module `wallet` [INFO] [stdout] --> src/tool.rs:31:17 [INFO] [stdout] | [INFO] [stdout] 31 | assert!(wallet::is_valid_address(valid_address)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ not found in `wallet` [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 23 + use solana_network_sdk::tool::address::is_valid_address; [INFO] [stdout] | [INFO] [stdout] help: if you import `is_valid_address`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 31 - assert!(wallet::is_valid_address(valid_address)); [INFO] [stdout] 31 + assert!(is_valid_address(valid_address)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `is_valid_address` in module `wallet` [INFO] [stdout] --> src/tool.rs:32:18 [INFO] [stdout] | [INFO] [stdout] 32 | assert!(!wallet::is_valid_address(invalid_address)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ not found in `wallet` [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 23 + use solana_network_sdk::tool::address::is_valid_address; [INFO] [stdout] | [INFO] [stdout] help: if you import `is_valid_address`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 32 - assert!(!wallet::is_valid_address(invalid_address)); [INFO] [stdout] 32 + assert!(!is_valid_address(invalid_address)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0425`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/trade.rs - trade::Trade::get_last_transactions_contains_address (line 190) stdout ---- [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Solana` [INFO] [stdout] --> src/trade.rs:191:14 [INFO] [stdout] | [INFO] [stdout] 191 | let solana = Solana::new(Mode::DEV).unwrap(); [INFO] [stdout] | ^^^^^^ use of undeclared type `Solana` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 190 + use solana_network_sdk::Solana; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Mode` [INFO] [stdout] --> src/trade.rs:191:26 [INFO] [stdout] | [INFO] [stdout] 191 | let solana = Solana::new(Mode::DEV).unwrap(); [INFO] [stdout] | ^^^^ use of undeclared type `Mode` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 190 + use solana_network_sdk::types::Mode; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks [INFO] [stdout] --> src/trade.rs:196:3 [INFO] [stdout] | [INFO] [stdout] 190 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_trade_rs_190_0() { [INFO] [stdout] | ------------------------------------- this is not `async` [INFO] [stdout] ... [INFO] [stdout] 196 | ).await; [INFO] [stdout] | ^^^^^ only allowed inside `async` functions and blocks [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0433, E0728. [INFO] [stdout] For more information about an error, try `rustc --explain E0433`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/tool.rs - tool::address::is_same_address (line 66) stdout ---- [INFO] [stdout] error[E0425]: cannot find function `is_same_address` in module `wallet` [INFO] [stdout] --> src/tool.rs:73:17 [INFO] [stdout] | [INFO] [stdout] 73 | assert!(wallet::is_same_address(addr1, addr2)); [INFO] [stdout] | ^^^^^^^^^^^^^^^ not found in `wallet` [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 65 + use solana_network_sdk::tool::address::is_same_address; [INFO] [stdout] | [INFO] [stdout] help: if you import `is_same_address`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 73 - assert!(wallet::is_same_address(addr1, addr2)); [INFO] [stdout] 73 + assert!(is_same_address(addr1, addr2)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0425`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/trade.rs - trade::Trade::get_transactions_by_recipient_and_payer (line 312) stdout ---- [INFO] [stdout] error[E0425]: cannot find value `trade` in this scope [INFO] [stdout] --> src/trade.rs:313:20 [INFO] [stdout] | [INFO] [stdout] 313 | let transactions = trade.get_transactions_by_recipient_and_payer( [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks [INFO] [stdout] --> src/trade.rs:317:3 [INFO] [stdout] | [INFO] [stdout] 312 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_trade_rs_312_0() { [INFO] [stdout] | ------------------------------------- this is not `async` [INFO] [stdout] ... [INFO] [stdout] 317 | ).await?; [INFO] [stdout] | ^^^^^ only allowed inside `async` functions and blocks [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0425, E0728. [INFO] [stdout] For more information about an error, try `rustc --explain E0425`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/trade.rs - trade::Trade::get_transactions_history_by_cursor (line 49) stdout ---- [INFO] [stdout] error: expected one of `!`, `)`, `,`, `.`, `::`, `?`, `{`, or an operator, found `size` [INFO] [stdout] --> src/trade.rs:56:18 [INFO] [stdout] | [INFO] [stdout] 56 | page size, [INFO] [stdout] | -^^^^ expected one of 8 possible tokens [INFO] [stdout] | | [INFO] [stdout] | help: missing `,` [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `trade` in this scope [INFO] [stdout] --> src/trade.rs:52:11 [INFO] [stdout] | [INFO] [stdout] 52 | match trade [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `page` in this scope [INFO] [stdout] --> src/trade.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | page size, [INFO] [stdout] | ^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `size` in this scope [INFO] [stdout] --> src/trade.rs:56:18 [INFO] [stdout] | [INFO] [stdout] 56 | page size, [INFO] [stdout] | ^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks [INFO] [stdout] --> src/trade.rs:58:10 [INFO] [stdout] | [INFO] [stdout] 49 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_trade_rs_49_0() { [INFO] [stdout] | ------------------------------------ this is not `async` [INFO] [stdout] ... [INFO] [stdout] 58 | .await [INFO] [stdout] | ^^^^^ only allowed inside `async` functions and blocks [INFO] [stdout] [INFO] [stdout] error: aborting due to 5 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0425, E0728. [INFO] [stdout] For more information about an error, try `rustc --explain E0425`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/trade.rs - trade::Trade::get_transaction_details (line 271) stdout ---- [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Solana` [INFO] [stdout] --> src/trade.rs:272:14 [INFO] [stdout] | [INFO] [stdout] 272 | let solana = Solana::new(solana_trader::types::Mode::DEV).unwrap(); [INFO] [stdout] | ^^^^^^ use of undeclared type `Solana` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 271 + use solana_network_sdk::Solana; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `solana_trader` [INFO] [stdout] --> src/trade.rs:272:26 [INFO] [stdout] | [INFO] [stdout] 272 | let solana = Solana::new(solana_trader::types::Mode::DEV).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ use of unresolved module or unlinked crate `solana_trader` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `solana_trader`, use `cargo add solana_trader` to add it to your `Cargo.toml` [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 271 + use solana_network_sdk::types::Mode; [INFO] [stdout] | [INFO] [stdout] help: if you import `Mode`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 272 - let solana = Solana::new(solana_trader::types::Mode::DEV).unwrap(); [INFO] [stdout] 272 + let solana = Solana::new(Mode::DEV).unwrap(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks [INFO] [stdout] --> src/trade.rs:274:79 [INFO] [stdout] | [INFO] [stdout] 271 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_trade_rs_271_0() { [INFO] [stdout] | ------------------------------------- this is not `async` [INFO] [stdout] ... [INFO] [stdout] 274 | let transaction_info = trade.get_transaction_details("transaction signature").await; [INFO] [stdout] | ^^^^^ only allowed inside `async` functions and blocks [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0433, E0728. [INFO] [stdout] For more information about an error, try `rustc --explain E0433`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/trade.rs - trade::Trade::get_transactions_history_filtered (line 129) stdout ---- [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Solana` [INFO] [stdout] --> src/trade.rs:130:14 [INFO] [stdout] | [INFO] [stdout] 130 | let solana = Solana::new(Mode::DEV).unwrap(); [INFO] [stdout] | ^^^^^^ use of undeclared type `Solana` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 129 + use solana_network_sdk::Solana; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Mode` [INFO] [stdout] --> src/trade.rs:130:26 [INFO] [stdout] | [INFO] [stdout] 130 | let solana = Solana::new(Mode::DEV).unwrap(); [INFO] [stdout] | ^^^^ use of undeclared type `Mode` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 129 + use solana_network_sdk::types::Mode; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks [INFO] [stdout] --> src/trade.rs:139:3 [INFO] [stdout] | [INFO] [stdout] 129 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_trade_rs_129_0() { [INFO] [stdout] | ------------------------------------- this is not `async` [INFO] [stdout] ... [INFO] [stdout] 139 | ).await; [INFO] [stdout] | ^^^^^ only allowed inside `async` functions and blocks [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `TradeHistory` [INFO] [stdout] --> src/trade.rs:132:15 [INFO] [stdout] | [INFO] [stdout] 132 | let history = TradeHistory::get_filtered_transactions( [INFO] [stdout] | ^^^^^^^^^^^^ use of undeclared type `TradeHistory` [INFO] [stdout] [INFO] [stdout] error: aborting due to 4 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0433, E0728. [INFO] [stdout] For more information about an error, try `rustc --explain E0433`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/wallet.rs - wallet::Wallet::from_private_key_64 (line 43) stdout ---- [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Wallet` [INFO] [stdout] --> src/wallet.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | let w = Wallet::from_private_key_64("64 bytes private"); [INFO] [stdout] | ^^^^^^ use of undeclared type `Wallet` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 43 + use solana_network_sdk::wallet::Wallet; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0433`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/wallet.rs - wallet::Wallet::create_new_wallet (line 22) stdout ---- [INFO] [stdout] error[E0412]: cannot find type `Wallet` in this scope [INFO] [stdout] --> src/wallet.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | let w: Wallet = Wallet::create_new_wallet(); [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 22 + use solana_network_sdk::wallet::Wallet; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Wallet` [INFO] [stdout] --> src/wallet.rs:23:17 [INFO] [stdout] | [INFO] [stdout] 23 | let w: Wallet = Wallet::create_new_wallet(); [INFO] [stdout] | ^^^^^^ use of undeclared type `Wallet` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 22 + use solana_network_sdk::wallet::Wallet; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0412, E0433. [INFO] [stdout] For more information about an error, try `rustc --explain E0412`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/wallet.rs - wallet::Wallet::from_private_key_32 (line 60) stdout ---- [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Wallet` [INFO] [stdout] --> src/wallet.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | let w = Wallet::from_private_key_64("32 bytes private"); [INFO] [stdout] | ^^^^^^ use of undeclared type `Wallet` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 60 + use solana_network_sdk::wallet::Wallet; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0433`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/trade.rs - trade::Trade::get_transactions_vec_containing_address (line 234) stdout ---- [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Solana` [INFO] [stdout] --> src/trade.rs:235:14 [INFO] [stdout] | [INFO] [stdout] 235 | let solana = Solana::new(Mode::DEV).unwrap(); [INFO] [stdout] | ^^^^^^ use of undeclared type `Solana` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 234 + use solana_network_sdk::Solana; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Mode` [INFO] [stdout] --> src/trade.rs:235:26 [INFO] [stdout] | [INFO] [stdout] 235 | let solana = Solana::new(Mode::DEV).unwrap(); [INFO] [stdout] | ^^^^ use of undeclared type `Mode` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 234 + use solana_network_sdk::types::Mode; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0728]: `await` is only allowed inside `async` functions and blocks [INFO] [stdout] --> src/trade.rs:240:3 [INFO] [stdout] | [INFO] [stdout] 234 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_trade_rs_234_0() { [INFO] [stdout] | ------------------------------------- this is not `async` [INFO] [stdout] ... [INFO] [stdout] 240 | ).await; [INFO] [stdout] | ^^^^^ only allowed inside `async` functions and blocks [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0433, E0728. [INFO] [stdout] For more information about an error, try `rustc --explain E0433`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] src/lib.rs - Solana::block_height (line 94) [INFO] [stdout] src/lib.rs - Solana::client_arc (line 53) [INFO] [stdout] src/lib.rs - Solana::core_version (line 62) [INFO] [stdout] src/lib.rs - Solana::epoch (line 142) [INFO] [stdout] src/lib.rs - Solana::feature_set (line 78) [INFO] [stdout] src/lib.rs - Solana::last_block_hash (line 110) [INFO] [stdout] src/lib.rs - Solana::slot (line 126) [INFO] [stdout] src/message.rs - message::Message::sign_message (line 11) [INFO] [stdout] src/message.rs - message::Message::verify_message (line 23) [INFO] [stdout] src/tool.rs - tool::address::bytes_to_address (line 104) [INFO] [stdout] src/tool.rs - tool::address::generate_random_address (line 87) [INFO] [stdout] src/tool.rs - tool::address::get_short_address (line 132) [INFO] [stdout] src/tool.rs - tool::address::is_same_address (line 66) [INFO] [stdout] src/tool.rs - tool::address::is_valid_address (line 24) [INFO] [stdout] src/tool.rs - tool::address::validate_address_to_pubkey (line 46) [INFO] [stdout] src/trade.rs - trade::Trade::get_last_transactions_contains_address (line 190) [INFO] [stdout] src/trade.rs - trade::Trade::get_transaction_details (line 271) [INFO] [stdout] src/trade.rs - trade::Trade::get_transactions_by_recipient_and_payer (line 312) [INFO] [stdout] src/trade.rs - trade::Trade::get_transactions_history_by_cursor (line 49) [INFO] [stdout] src/trade.rs - trade::Trade::get_transactions_history_filtered (line 129) [INFO] [stdout] src/trade.rs - trade::Trade::get_transactions_vec_containing_address (line 234) [INFO] [stdout] src/wallet.rs - wallet::Wallet::create_new_wallet (line 22) [INFO] [stdout] src/wallet.rs - wallet::Wallet::from_private_key_32 (line 60) [INFO] [stdout] src/wallet.rs - wallet::Wallet::from_private_key_64 (line 43) [INFO] [stdout] [INFO] [stdout] test result: FAILED. 0 passed; 24 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.43s [INFO] [stdout] [INFO] [stdout] all doctests ran in 3.83s; merged doctests compilation took 0.39s [INFO] [stderr] error: doctest failed, to rerun pass `--doc` [INFO] running `Command { std: "docker" "inspect" "0274f5ceb042d770f2a937ba04e462a82fa4d2397d61f742639fe97575cf063f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0274f5ceb042d770f2a937ba04e462a82fa4d2397d61f742639fe97575cf063f", kill_on_drop: false }` [INFO] [stdout] 0274f5ceb042d770f2a937ba04e462a82fa4d2397d61f742639fe97575cf063f