[INFO] cloning repository https://github.com/ICP-Bitcoin-Fusion/Odin-Fusion [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ICP-Bitcoin-Fusion/Odin-Fusion" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FICP-Bitcoin-Fusion%2FOdin-Fusion", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FICP-Bitcoin-Fusion%2FOdin-Fusion'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] b0bdd189764dd6d6a4c7f95806e52727136555e4 [INFO] checking ICP-Bitcoin-Fusion/Odin-Fusion against try#5ff93158e08fa2205cd4b86cddf9eae95952cc96 for pr-129543-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FICP-Bitcoin-Fusion%2FOdin-Fusion" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/ICP-Bitcoin-Fusion/Odin-Fusion [INFO] finished tweaking git repo https://github.com/ICP-Bitcoin-Fusion/Odin-Fusion [INFO] tweaked toml for git repo https://github.com/ICP-Bitcoin-Fusion/Odin-Fusion written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/ICP-Bitcoin-Fusion/Odin-Fusion on toolchain 5ff93158e08fa2205cd4b86cddf9eae95952cc96 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5ff93158e08fa2205cd4b86cddf9eae95952cc96" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/ICP-Bitcoin-Fusion/Odin-Fusion 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" "+5ff93158e08fa2205cd4b86cddf9eae95952cc96" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded ic-cdk-macros v0.17.0 [INFO] [stderr] Downloaded itoa v1.0.13 [INFO] [stderr] Downloaded serde_tokenstream v0.2.2 [INFO] [stderr] Downloaded stacker v0.1.17 [INFO] [stderr] Downloaded ic-btc-interface v0.2.2 [INFO] [stderr] Downloaded psm v0.1.24 [INFO] [stderr] Downloaded ic0 v0.23.0 [INFO] [stderr] Downloaded ic-cdk v0.17.0 [INFO] [stderr] Downloaded candid v0.10.10 [INFO] [stderr] Downloaded ic-cdk-timers v0.11.0 [INFO] [stderr] Downloaded cc v1.2.1 [INFO] [stderr] Downloaded syn v2.0.89 [INFO] [stderr] Downloaded bitcoin v0.32.4 [INFO] [stderr] Downloaded libc v0.2.164 [INFO] [stderr] Downloaded tokio v1.41.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+5ff93158e08fa2205cd4b86cddf9eae95952cc96" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] f25a8acc82665302da1803f120225e272abd1839e7e69fcd6b30929adfad4e06 [INFO] running `Command { std: "docker" "start" "-a" "f25a8acc82665302da1803f120225e272abd1839e7e69fcd6b30929adfad4e06", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f25a8acc82665302da1803f120225e272abd1839e7e69fcd6b30929adfad4e06", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f25a8acc82665302da1803f120225e272abd1839e7e69fcd6b30929adfad4e06", kill_on_drop: false }` [INFO] [stdout] f25a8acc82665302da1803f120225e272abd1839e7e69fcd6b30929adfad4e06 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+5ff93158e08fa2205cd4b86cddf9eae95952cc96" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b941fd4373eb23fd2c8c1d577cb12533314da4bbb3d947bcbe27b82f9e4b4183 [INFO] running `Command { std: "docker" "start" "-a" "b941fd4373eb23fd2c8c1d577cb12533314da4bbb3d947bcbe27b82f9e4b4183", kill_on_drop: false }` [INFO] [stderr] Compiling syn v2.0.89 [INFO] [stderr] Compiling serde v1.0.215 [INFO] [stderr] Compiling libc v0.2.164 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling rustversion v1.0.18 [INFO] [stderr] Compiling anyhow v1.0.93 [INFO] [stderr] Compiling either v1.13.0 [INFO] [stderr] Compiling cc v1.2.1 [INFO] [stderr] Compiling typenum v1.17.0 [INFO] [stderr] Compiling bitcoin-io v0.1.3 [INFO] [stderr] Compiling cpufeatures v0.2.16 [INFO] [stderr] Compiling crc32fast v1.4.2 [INFO] [stderr] Checking arrayvec v0.7.6 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Checking data-encoding v2.6.0 [INFO] [stderr] Checking typed-arena v2.0.2 [INFO] [stderr] Compiling arrayvec v0.5.2 [INFO] [stderr] Compiling bitcoin-internals v0.3.0 [INFO] [stderr] Checking futures-sink v0.3.31 [INFO] [stderr] Checking sha2 v0.10.8 [INFO] [stderr] Checking futures-core v0.3.31 [INFO] [stderr] Compiling pretty v0.12.3 [INFO] [stderr] Checking hex-conservative v0.2.1 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Checking futures-channel v0.3.31 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling leb128 v0.2.5 [INFO] [stderr] Compiling hex v0.4.3 [INFO] [stderr] Compiling slotmap v1.0.7 [INFO] [stderr] Compiling hex_lit v0.1.1 [INFO] [stderr] Checking ic0 v0.23.0 [INFO] [stderr] Checking bitcoin_hashes v0.14.0 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling serde_json v1.0.133 [INFO] [stderr] Compiling bitcoin v0.32.4 [INFO] [stderr] Checking bitcoin-units v0.1.2 [INFO] [stderr] Checking itoa v1.0.13 [INFO] [stderr] Checking ryu v1.0.18 [INFO] [stderr] Checking bech32 v0.11.0 [INFO] [stderr] Checking bytes v1.8.0 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling psm v0.1.24 [INFO] [stderr] Compiling stacker v0.1.17 [INFO] [stderr] Compiling secp256k1-sys v0.10.1 [INFO] [stderr] Checking parking_lot_core v0.9.10 [INFO] [stderr] Checking signal-hook-registry v1.4.2 [INFO] [stderr] Checking socket2 v0.5.7 [INFO] [stderr] Checking mio v1.0.2 [INFO] [stderr] Checking parking_lot v0.12.3 [INFO] [stderr] Checking base58ck v0.1.0 [INFO] [stderr] Compiling binread_derive v2.1.0 [INFO] [stderr] Checking secp256k1 v0.29.1 [INFO] [stderr] Checking binread v2.2.0 [INFO] [stderr] Compiling serde_derive v1.0.215 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling candid_derive v0.6.6 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling tokio-macros v2.4.0 [INFO] [stderr] Checking tokio v1.41.1 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Checking futures-executor v0.3.31 [INFO] [stderr] Checking futures v0.3.31 [INFO] [stderr] Checking num-bigint v0.4.6 [INFO] [stderr] Checking serde_bytes v0.11.15 [INFO] [stderr] Checking ic_principal v0.1.1 [INFO] [stderr] Compiling serde_tokenstream v0.2.2 [INFO] [stderr] Checking candid v0.10.10 [INFO] [stderr] Checking ic-btc-interface v0.2.2 [INFO] [stderr] Compiling ic-cdk-macros v0.17.0 [INFO] [stderr] Checking ic-cdk v0.17.0 [INFO] [stderr] Checking ic-cdk-timers v0.11.0 [INFO] [stderr] Checking Odin_Fusion_backend v0.1.0 (/opt/rustwide/workdir/src/Odin_Fusion_backend) [INFO] [stdout] error[E0583]: file not found for module `bitcoin_api` [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | mod bitcoin_api; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: to create the module `bitcoin_api`, create file "src/Odin_Fusion_backend/src/bitcoin_api.rs" or "src/Odin_Fusion_backend/src/bitcoin_api/mod.rs" [INFO] [stdout] = note: if there is a `mod bitcoin_api` elsewhere in the crate already, import it with `use crate::...` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0583]: file not found for module `bitcoin_wallet` [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:53:1 [INFO] [stdout] | [INFO] [stdout] 53 | mod bitcoin_wallet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: to create the module `bitcoin_wallet`, create file "src/Odin_Fusion_backend/src/bitcoin_wallet.rs" or "src/Odin_Fusion_backend/src/bitcoin_wallet/mod.rs" [INFO] [stdout] = note: if there is a `mod bitcoin_wallet` elsewhere in the crate already, import it with `use crate::...` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0583]: file not found for module `ecdsa_api` [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:54:1 [INFO] [stdout] | [INFO] [stdout] 54 | mod ecdsa_api; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: to create the module `ecdsa_api`, create file "src/Odin_Fusion_backend/src/ecdsa_api.rs" or "src/Odin_Fusion_backend/src/ecdsa_api/mod.rs" [INFO] [stdout] = note: if there is a `mod ecdsa_api` elsewhere in the crate already, import it with `use crate::...` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0583]: file not found for module `schnorr_api` [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:55:1 [INFO] [stdout] | [INFO] [stdout] 55 | mod schnorr_api; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: to create the module `schnorr_api`, create file "src/Odin_Fusion_backend/src/schnorr_api.rs" or "src/Odin_Fusion_backend/src/schnorr_api/mod.rs" [INFO] [stdout] = note: if there is a `mod schnorr_api` elsewhere in the crate already, import it with `use crate::...` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0583]: file not found for module `bitcoin_api` [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | mod bitcoin_api; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: to create the module `bitcoin_api`, create file "src/Odin_Fusion_backend/src/bitcoin_api.rs" or "src/Odin_Fusion_backend/src/bitcoin_api/mod.rs" [INFO] [stdout] = note: if there is a `mod bitcoin_api` elsewhere in the crate already, import it with `use crate::...` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0583]: file not found for module `bitcoin_wallet` [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:53:1 [INFO] [stdout] | [INFO] [stdout] 53 | mod bitcoin_wallet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: to create the module `bitcoin_wallet`, create file "src/Odin_Fusion_backend/src/bitcoin_wallet.rs" or "src/Odin_Fusion_backend/src/bitcoin_wallet/mod.rs" [INFO] [stdout] = note: if there is a `mod bitcoin_wallet` elsewhere in the crate already, import it with `use crate::...` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0583]: file not found for module `ecdsa_api` [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:54:1 [INFO] [stdout] | [INFO] [stdout] 54 | mod ecdsa_api; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: to create the module `ecdsa_api`, create file "src/Odin_Fusion_backend/src/ecdsa_api.rs" or "src/Odin_Fusion_backend/src/ecdsa_api/mod.rs" [INFO] [stdout] = note: if there is a `mod ecdsa_api` elsewhere in the crate already, import it with `use crate::...` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0583]: file not found for module `schnorr_api` [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:55:1 [INFO] [stdout] | [INFO] [stdout] 55 | mod schnorr_api; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: to create the module `schnorr_api`, create file "src/Odin_Fusion_backend/src/schnorr_api.rs" or "src/Odin_Fusion_backend/src/schnorr_api/mod.rs" [INFO] [stdout] = note: if there is a `mod schnorr_api` elsewhere in the crate already, import it with `use crate::...` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0428]: the name `__canister_method_init` is defined multiple times [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:267:1 [INFO] [stdout] | [INFO] [stdout] 81 | #[init] [INFO] [stdout] | ------- previous definition of the value `__canister_method_init` here [INFO] [stdout] ... [INFO] [stdout] 267 | #[init] [INFO] [stdout] | ^^^^^^^ `__canister_method_init` redefined here [INFO] [stdout] | [INFO] [stdout] = note: `__canister_method_init` must be defined only once in the value namespace of this module [INFO] [stdout] = note: this error originates in the attribute macro `init` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0428]: the name `init` is defined multiple times [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:268:1 [INFO] [stdout] | [INFO] [stdout] 82 | pub fn init(network: BitcoinNetwork) { [INFO] [stdout] | ------------------------------------ previous definition of the value `init` here [INFO] [stdout] ... [INFO] [stdout] 268 | fn init(minter_id: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `init` redefined here [INFO] [stdout] | [INFO] [stdout] = note: `init` must be defined only once in the value namespace of this module [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: could not find `export` in `ic_cdk` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:3:13 [INFO] [stdout] | [INFO] [stdout] 3 | use ic_cdk::export::candid::Principal as CanisterId; [INFO] [stdout] | ^^^^^^ could not find `export` in `ic_cdk` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: could not find `export` in `ic_cdk` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:4:13 [INFO] [stdout] | [INFO] [stdout] 4 | use ic_cdk::export::candid::{CandidType, Deserialize}; [INFO] [stdout] | ^^^^^^ could not find `export` in `ic_cdk` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0428]: the name `__canister_method_init` is defined multiple times [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:267:1 [INFO] [stdout] | [INFO] [stdout] 81 | #[init] [INFO] [stdout] | ------- previous definition of the value `__canister_method_init` here [INFO] [stdout] ... [INFO] [stdout] 267 | #[init] [INFO] [stdout] | ^^^^^^^ `__canister_method_init` redefined here [INFO] [stdout] | [INFO] [stdout] = note: `__canister_method_init` must be defined only once in the value namespace of this module [INFO] [stdout] = note: this error originates in the attribute macro `init` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0428]: the name `init` is defined multiple times [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:268:1 [INFO] [stdout] | [INFO] [stdout] 82 | pub fn init(network: BitcoinNetwork) { [INFO] [stdout] | ------------------------------------ previous definition of the value `init` here [INFO] [stdout] ... [INFO] [stdout] 268 | fn init(minter_id: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `init` redefined here [INFO] [stdout] | [INFO] [stdout] = note: `init` must be defined only once in the value namespace of this module [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: could not find `export` in `ic_cdk` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:3:13 [INFO] [stdout] | [INFO] [stdout] 3 | use ic_cdk::export::candid::Principal as CanisterId; [INFO] [stdout] | ^^^^^^ could not find `export` in `ic_cdk` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: could not find `export` in `ic_cdk` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:4:13 [INFO] [stdout] | [INFO] [stdout] 4 | use ic_cdk::export::candid::{CandidType, Deserialize}; [INFO] [stdout] | ^^^^^^ could not find `export` in `ic_cdk` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find type `BitcoinNetwork` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:47:14 [INFO] [stdout] | [INFO] [stdout] 47 | network: BitcoinNetwork, [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these enums [INFO] [stdout] | [INFO] [stdout] 1 + use crate::BitcoinNetwork; [INFO] [stdout] | [INFO] [stdout] 1 + use ic_cdk::api::management_canister::bitcoin::BitcoinNetwork; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find type `BitcoinNetwork` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:52:25 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn new(network: BitcoinNetwork, basic_bitcoin_canister_id: CanisterId) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these enums [INFO] [stdout] | [INFO] [stdout] 1 + use crate::BitcoinNetwork; [INFO] [stdout] | [INFO] [stdout] 1 + use ic_cdk::api::management_canister::bitcoin::BitcoinNetwork; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find type `Cell` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:72:21 [INFO] [stdout] | [INFO] [stdout] 72 | static NETWORK: Cell = Cell::new(BitcoinNetwork::Testnet); [INFO] [stdout] | ^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 42 + use std::cell::Cell; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell` [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:72:44 [INFO] [stdout] | [INFO] [stdout] 72 | static NETWORK: Cell = Cell::new(BitcoinNetwork::Testnet); [INFO] [stdout] | ^^^^ use of undeclared type `Cell` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 42 + use std::cell::Cell; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find type `GetUtxosResponse` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:104:44 [INFO] [stdout] | [INFO] [stdout] 104 | pub async fn get_utxos(address: String) -> GetUtxosResponse { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these structs [INFO] [stdout] | [INFO] [stdout] 42 + use crate::bitcoin::GetUtxosResponse; [INFO] [stdout] | [INFO] [stdout] 42 + use ic_btc_interface::GetUtxosResponse; [INFO] [stdout] | [INFO] [stdout] 42 + use ic_cdk::api::management_canister::bitcoin::GetUtxosResponse; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find type `MillisatoshiPerByte` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:137:51 [INFO] [stdout] | [INFO] [stdout] 137 | pub async fn get_current_fee_percentiles() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 42 + use crate::bitcoin::MillisatoshiPerByte; [INFO] [stdout] | [INFO] [stdout] 42 + use ic_btc_interface::MillisatoshiPerByte; [INFO] [stdout] | [INFO] [stdout] 42 + use ic_cdk::api::management_canister::bitcoin::MillisatoshiPerByte; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:269:5 [INFO] [stdout] | [INFO] [stdout] 269 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:282:23 [INFO] [stdout] | [INFO] [stdout] 282 | let btc_balance = STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:291:25 [INFO] [stdout] | [INFO] [stdout] 291 | let ckbtc_balance = STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:308:5 [INFO] [stdout] | [INFO] [stdout] 308 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:320:5 [INFO] [stdout] | [INFO] [stdout] 320 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:332:5 [INFO] [stdout] | [INFO] [stdout] 332 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:346:25 [INFO] [stdout] | [INFO] [stdout] 346 | let ckbtc_balance = STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:359:23 [INFO] [stdout] | [INFO] [stdout] 359 | let btc_address = STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:377:5 [INFO] [stdout] | [INFO] [stdout] 377 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:386:18 [INFO] [stdout] | [INFO] [stdout] 386 | let wallet = STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:395:13 [INFO] [stdout] | [INFO] [stdout] 395 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:407:13 [INFO] [stdout] | [INFO] [stdout] 407 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:425:23 [INFO] [stdout] | [INFO] [stdout] 425 | let btc_address = STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:434:26 [INFO] [stdout] | [INFO] [stdout] 434 | let bitcoin_wallet = STATE.with(|state| state.borrow().bitcoin_wallet.clone()); [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:444:18 [INFO] [stdout] | [INFO] [stdout] 444 | let wallet = STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:461:5 [INFO] [stdout] | [INFO] [stdout] 461 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:473:13 [INFO] [stdout] | [INFO] [stdout] 473 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:485:13 [INFO] [stdout] | [INFO] [stdout] 485 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find type `MillisatoshiPerByte` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:499:1 [INFO] [stdout] | [INFO] [stdout] 499 | ic_cdk::export_candid!(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `::candid::export_service` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 42 + use crate::bitcoin::MillisatoshiPerByte; [INFO] [stdout] | [INFO] [stdout] 42 + use ic_btc_interface::MillisatoshiPerByte; [INFO] [stdout] | [INFO] [stdout] 42 + use ic_cdk::api::management_canister::bitcoin::MillisatoshiPerByte; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find type `GetUtxosResponse` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:499:1 [INFO] [stdout] | [INFO] [stdout] 499 | ic_cdk::export_candid!(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `::candid::export_service` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider importing one of these structs [INFO] [stdout] | [INFO] [stdout] 42 + use crate::bitcoin::GetUtxosResponse; [INFO] [stdout] | [INFO] [stdout] 42 + use ic_btc_interface::GetUtxosResponse; [INFO] [stdout] | [INFO] [stdout] 42 + use ic_cdk::api::management_canister::bitcoin::GetUtxosResponse; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ic_cdk::id` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use ic_cdk::id; [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: `ic_cdk_macros::update` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use ic_cdk_macros::update; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::str::FromStr` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::str::FromStr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find type `BitcoinNetwork` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:47:14 [INFO] [stdout] | [INFO] [stdout] 47 | network: BitcoinNetwork, [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these enums [INFO] [stdout] | [INFO] [stdout] 1 + use crate::BitcoinNetwork; [INFO] [stdout] | [INFO] [stdout] 1 + use ic_cdk::api::management_canister::bitcoin::BitcoinNetwork; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find type `BitcoinNetwork` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:52:25 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn new(network: BitcoinNetwork, basic_bitcoin_canister_id: CanisterId) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these enums [INFO] [stdout] | [INFO] [stdout] 1 + use crate::BitcoinNetwork; [INFO] [stdout] | [INFO] [stdout] 1 + use ic_cdk::api::management_canister::bitcoin::BitcoinNetwork; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find type `Cell` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:72:21 [INFO] [stdout] | [INFO] [stdout] 72 | static NETWORK: Cell = Cell::new(BitcoinNetwork::Testnet); [INFO] [stdout] | ^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 42 + use std::cell::Cell; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Cell` [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:72:44 [INFO] [stdout] | [INFO] [stdout] 72 | static NETWORK: Cell = Cell::new(BitcoinNetwork::Testnet); [INFO] [stdout] | ^^^^ use of undeclared type `Cell` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 42 + use std::cell::Cell; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find type `GetUtxosResponse` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:104:44 [INFO] [stdout] | [INFO] [stdout] 104 | pub async fn get_utxos(address: String) -> GetUtxosResponse { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these structs [INFO] [stdout] | [INFO] [stdout] 42 + use crate::bitcoin::GetUtxosResponse; [INFO] [stdout] | [INFO] [stdout] 42 + use ic_btc_interface::GetUtxosResponse; [INFO] [stdout] | [INFO] [stdout] 42 + use ic_cdk::api::management_canister::bitcoin::GetUtxosResponse; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find type `MillisatoshiPerByte` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:137:51 [INFO] [stdout] | [INFO] [stdout] 137 | pub async fn get_current_fee_percentiles() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 42 + use crate::bitcoin::MillisatoshiPerByte; [INFO] [stdout] | [INFO] [stdout] 42 + use ic_btc_interface::MillisatoshiPerByte; [INFO] [stdout] | [INFO] [stdout] 42 + use ic_cdk::api::management_canister::bitcoin::MillisatoshiPerByte; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:269:5 [INFO] [stdout] | [INFO] [stdout] 269 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:282:23 [INFO] [stdout] | [INFO] [stdout] 282 | let btc_balance = STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:291:25 [INFO] [stdout] | [INFO] [stdout] 291 | let ckbtc_balance = STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:308:5 [INFO] [stdout] | [INFO] [stdout] 308 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:320:5 [INFO] [stdout] | [INFO] [stdout] 320 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:332:5 [INFO] [stdout] | [INFO] [stdout] 332 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:346:25 [INFO] [stdout] | [INFO] [stdout] 346 | let ckbtc_balance = STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:359:23 [INFO] [stdout] | [INFO] [stdout] 359 | let btc_address = STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:377:5 [INFO] [stdout] | [INFO] [stdout] 377 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:386:18 [INFO] [stdout] | [INFO] [stdout] 386 | let wallet = STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:395:13 [INFO] [stdout] | [INFO] [stdout] 395 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:407:13 [INFO] [stdout] | [INFO] [stdout] 407 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:425:23 [INFO] [stdout] | [INFO] [stdout] 425 | let btc_address = STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:434:26 [INFO] [stdout] | [INFO] [stdout] 434 | let bitcoin_wallet = STATE.with(|state| state.borrow().bitcoin_wallet.clone()); [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:444:18 [INFO] [stdout] | [INFO] [stdout] 444 | let wallet = STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:461:5 [INFO] [stdout] | [INFO] [stdout] 461 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:473:13 [INFO] [stdout] | [INFO] [stdout] 473 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `STATE` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:485:13 [INFO] [stdout] | [INFO] [stdout] 485 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find type `MillisatoshiPerByte` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:499:1 [INFO] [stdout] | [INFO] [stdout] 499 | ic_cdk::export_candid!(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `::candid::export_service` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider importing one of these items [INFO] [stdout] | [INFO] [stdout] 42 + use crate::bitcoin::MillisatoshiPerByte; [INFO] [stdout] | [INFO] [stdout] 42 + use ic_btc_interface::MillisatoshiPerByte; [INFO] [stdout] | [INFO] [stdout] 42 + use ic_cdk::api::management_canister::bitcoin::MillisatoshiPerByte; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find type `GetUtxosResponse` in this scope [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:499:1 [INFO] [stdout] | [INFO] [stdout] 499 | ic_cdk::export_candid!(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `::candid::export_service` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider importing one of these structs [INFO] [stdout] | [INFO] [stdout] 42 + use crate::bitcoin::GetUtxosResponse; [INFO] [stdout] | [INFO] [stdout] 42 + use ic_btc_interface::GetUtxosResponse; [INFO] [stdout] | [INFO] [stdout] 42 + use ic_cdk::api::management_canister::bitcoin::GetUtxosResponse; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ic_cdk::id` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use ic_cdk::id; [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: `ic_cdk_macros::update` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use ic_cdk_macros::update; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::str::FromStr` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::str::FromStr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'a> u64: ArgumentDecoder<'a>` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:60:39 [INFO] [stdout] | [INFO] [stdout] 60 | let result: CallResult = call( [INFO] [stdout] | _______________________________________^ [INFO] [stdout] 61 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 62 | | "get_balance", [INFO] [stdout] 63 | | (address.to_string(),), [INFO] [stdout] 64 | | ) [INFO] [stdout] | |_________^ the trait `for<'a> ArgumentDecoder<'a>` is not implemented for `u64` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ArgumentDecoder<'a>`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] (A, B, C, D) [INFO] [stdout] (A, B, C, D, E) [INFO] [stdout] (A, B, C, D, E, F) [INFO] [stdout] (A, B, C, D, E, F, G) [INFO] [stdout] (A, B, C, D, E, F, G, H) [INFO] [stdout] and 9 others [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:36 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'a> u64: ArgumentDecoder<'a>` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:60:39 [INFO] [stdout] | [INFO] [stdout] 60 | let result: CallResult = call( [INFO] [stdout] | _______________________________________^ [INFO] [stdout] 61 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 62 | | "get_balance", [INFO] [stdout] 63 | | (address.to_string(),), [INFO] [stdout] 64 | | ) [INFO] [stdout] | |_________^ the trait `for<'a> ArgumentDecoder<'a>` is not implemented for `u64` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ArgumentDecoder<'a>`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] (A, B, C, D) [INFO] [stdout] (A, B, C, D, E) [INFO] [stdout] (A, B, C, D, E, F) [INFO] [stdout] (A, B, C, D, E, F, G) [INFO] [stdout] (A, B, C, D, E, F, G, H) [INFO] [stdout] and 9 others [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:36 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'a> bitcoin::GetUtxosResponse: ArgumentDecoder<'a>` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:71:52 [INFO] [stdout] | [INFO] [stdout] 71 | let result: CallResult = call( [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 72 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 73 | | "get_utxos", [INFO] [stdout] 74 | | (address.to_string(),), [INFO] [stdout] 75 | | ) [INFO] [stdout] | |_________^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `for<'a> ArgumentDecoder<'a>` is not implemented for `bitcoin::GetUtxosResponse` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct GetUtxosResponse { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `ArgumentDecoder<'a>`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] (A, B, C, D) [INFO] [stdout] (A, B, C, D, E) [INFO] [stdout] (A, B, C, D, E, F) [INFO] [stdout] (A, B, C, D, E, F, G) [INFO] [stdout] (A, B, C, D, E, F, G, H) [INFO] [stdout] and 9 others [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:36 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'a> bitcoin::GetUtxosResponse: ArgumentDecoder<'a>` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:71:52 [INFO] [stdout] | [INFO] [stdout] 71 | let result: CallResult = call( [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 72 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 73 | | "get_utxos", [INFO] [stdout] 74 | | (address.to_string(),), [INFO] [stdout] 75 | | ) [INFO] [stdout] | |_________^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `for<'a> ArgumentDecoder<'a>` is not implemented for `bitcoin::GetUtxosResponse` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct GetUtxosResponse { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `ArgumentDecoder<'a>`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] (A, B, C, D) [INFO] [stdout] (A, B, C, D, E) [INFO] [stdout] (A, B, C, D, E, F) [INFO] [stdout] (A, B, C, D, E, F, G) [INFO] [stdout] (A, B, C, D, E, F, G, H) [INFO] [stdout] and 9 others [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:36 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'a> bitcoin::GetBlockHeadersResponse: ArgumentDecoder<'a>` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:86:59 [INFO] [stdout] | [INFO] [stdout] 86 | let result: CallResult = call( [INFO] [stdout] | ___________________________________________________________^ [INFO] [stdout] 87 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 88 | | "get_block_headers", [INFO] [stdout] 89 | | (start_height, end_height), [INFO] [stdout] 90 | | ) [INFO] [stdout] | |_________^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `for<'a> ArgumentDecoder<'a>` is not implemented for `bitcoin::GetBlockHeadersResponse` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:37:1 [INFO] [stdout] | [INFO] [stdout] 37 | pub struct GetBlockHeadersResponse { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `ArgumentDecoder<'a>`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] (A, B, C, D) [INFO] [stdout] (A, B, C, D, E) [INFO] [stdout] (A, B, C, D, E, F) [INFO] [stdout] (A, B, C, D, E, F, G) [INFO] [stdout] (A, B, C, D, E, F, G, H) [INFO] [stdout] and 9 others [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:36 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'a> bitcoin::GetBlockHeadersResponse: ArgumentDecoder<'a>` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:86:59 [INFO] [stdout] | [INFO] [stdout] 86 | let result: CallResult = call( [INFO] [stdout] | ___________________________________________________________^ [INFO] [stdout] 87 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 88 | | "get_block_headers", [INFO] [stdout] 89 | | (start_height, end_height), [INFO] [stdout] 90 | | ) [INFO] [stdout] | |_________^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `for<'a> ArgumentDecoder<'a>` is not implemented for `bitcoin::GetBlockHeadersResponse` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:37:1 [INFO] [stdout] | [INFO] [stdout] 37 | pub struct GetBlockHeadersResponse { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `ArgumentDecoder<'a>`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] (A, B, C, D) [INFO] [stdout] (A, B, C, D, E) [INFO] [stdout] (A, B, C, D, E, F) [INFO] [stdout] (A, B, C, D, E, F, G) [INFO] [stdout] (A, B, C, D, E, F, G, H) [INFO] [stdout] and 9 others [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:36 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'a> base58ck::Vec: ArgumentDecoder<'a>` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:97:60 [INFO] [stdout] | [INFO] [stdout] 97 | let result: CallResult> = call( [INFO] [stdout] | ____________________________________________________________^ [INFO] [stdout] 98 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 99 | | "get_current_fee_percentiles", [INFO] [stdout] 100 | | (), [INFO] [stdout] 101 | | ) [INFO] [stdout] | |_________^ the trait `for<'a> ArgumentDecoder<'a>` is not implemented for `base58ck::Vec` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ArgumentDecoder<'a>`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] (A, B, C, D) [INFO] [stdout] (A, B, C, D, E) [INFO] [stdout] (A, B, C, D, E, F) [INFO] [stdout] (A, B, C, D, E, F, G) [INFO] [stdout] (A, B, C, D, E, F, G, H) [INFO] [stdout] and 9 others [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:36 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'a> base58ck::Vec: ArgumentDecoder<'a>` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:97:60 [INFO] [stdout] | [INFO] [stdout] 97 | let result: CallResult> = call( [INFO] [stdout] | ____________________________________________________________^ [INFO] [stdout] 98 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 99 | | "get_current_fee_percentiles", [INFO] [stdout] 100 | | (), [INFO] [stdout] 101 | | ) [INFO] [stdout] | |_________^ the trait `for<'a> ArgumentDecoder<'a>` is not implemented for `base58ck::Vec` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ArgumentDecoder<'a>`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] (A, B, C, D) [INFO] [stdout] (A, B, C, D, E) [INFO] [stdout] (A, B, C, D, E, F) [INFO] [stdout] (A, B, C, D, E, F, G) [INFO] [stdout] (A, B, C, D, E, F, G, H) [INFO] [stdout] and 9 others [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:36 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'a> base58ck::String: ArgumentDecoder<'a>` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:108:42 [INFO] [stdout] | [INFO] [stdout] 108 | let result: CallResult = call( [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 109 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 110 | | "get_p2pkh_address", [INFO] [stdout] 111 | | (), [INFO] [stdout] 112 | | ) [INFO] [stdout] | |_________^ the trait `for<'a> ArgumentDecoder<'a>` is not implemented for `base58ck::String` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ArgumentDecoder<'a>`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] (A, B, C, D) [INFO] [stdout] (A, B, C, D, E) [INFO] [stdout] (A, B, C, D, E, F) [INFO] [stdout] (A, B, C, D, E, F, G) [INFO] [stdout] (A, B, C, D, E, F, G, H) [INFO] [stdout] and 9 others [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:36 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'a> base58ck::String: ArgumentDecoder<'a>` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:108:42 [INFO] [stdout] | [INFO] [stdout] 108 | let result: CallResult = call( [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 109 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 110 | | "get_p2pkh_address", [INFO] [stdout] 111 | | (), [INFO] [stdout] 112 | | ) [INFO] [stdout] | |_________^ the trait `for<'a> ArgumentDecoder<'a>` is not implemented for `base58ck::String` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ArgumentDecoder<'a>`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] (A, B, C, D) [INFO] [stdout] (A, B, C, D, E) [INFO] [stdout] (A, B, C, D, E, F) [INFO] [stdout] (A, B, C, D, E, F, G) [INFO] [stdout] (A, B, C, D, E, F, G, H) [INFO] [stdout] and 9 others [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:36 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `bitcoin::SendRequest: CandidType` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:122:14 [INFO] [stdout] | [INFO] [stdout] 119 | let result: CallResult = call( [INFO] [stdout] | ---- required by a bound introduced by this call [INFO] [stdout] ... [INFO] [stdout] 122 | (request,), [INFO] [stdout] | ^^^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `CandidType` is not implemented for `bitcoin::SendRequest` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SendRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `CandidType`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 159 others [INFO] [stdout] = note: required for `(bitcoin::SendRequest,)` to implement `ArgumentEncoder` [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:16 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `bitcoin::SendRequest: CandidType` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:122:14 [INFO] [stdout] | [INFO] [stdout] 119 | let result: CallResult = call( [INFO] [stdout] | ---- required by a bound introduced by this call [INFO] [stdout] ... [INFO] [stdout] 122 | (request,), [INFO] [stdout] | ^^^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `CandidType` is not implemented for `bitcoin::SendRequest` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SendRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `CandidType`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 159 others [INFO] [stdout] = note: required for `(bitcoin::SendRequest,)` to implement `ArgumentEncoder` [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:16 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `bitcoin::SendRequest: CandidType` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:119:42 [INFO] [stdout] | [INFO] [stdout] 119 | let result: CallResult = call( [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 120 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 121 | | "send_from_p2pkh", [INFO] [stdout] 122 | | (request,), [INFO] [stdout] 123 | | ) [INFO] [stdout] | |_________^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `CandidType` is not implemented for `bitcoin::SendRequest` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SendRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `CandidType`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 159 others [INFO] [stdout] = note: required for `(bitcoin::SendRequest,)` to implement `ArgumentEncoder` [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:16 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `bitcoin::SendRequest: CandidType` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:119:42 [INFO] [stdout] | [INFO] [stdout] 119 | let result: CallResult = call( [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 120 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 121 | | "send_from_p2pkh", [INFO] [stdout] 122 | | (request,), [INFO] [stdout] 123 | | ) [INFO] [stdout] | |_________^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `CandidType` is not implemented for `bitcoin::SendRequest` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SendRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `CandidType`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 159 others [INFO] [stdout] = note: required for `(bitcoin::SendRequest,)` to implement `ArgumentEncoder` [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:16 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `bitcoin::SendRequest: CandidType` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:124:10 [INFO] [stdout] | [INFO] [stdout] 124 | .await; [INFO] [stdout] | ^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `CandidType` is not implemented for `bitcoin::SendRequest` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SendRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `CandidType`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 159 others [INFO] [stdout] = note: required for `(bitcoin::SendRequest,)` to implement `ArgumentEncoder` [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:16 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'a> base58ck::String: ArgumentDecoder<'a>` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:119:42 [INFO] [stdout] | [INFO] [stdout] 119 | let result: CallResult = call( [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 120 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 121 | | "send_from_p2pkh", [INFO] [stdout] 122 | | (request,), [INFO] [stdout] 123 | | ) [INFO] [stdout] | |_________^ the trait `for<'a> ArgumentDecoder<'a>` is not implemented for `base58ck::String` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ArgumentDecoder<'a>`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] (A, B, C, D) [INFO] [stdout] (A, B, C, D, E) [INFO] [stdout] (A, B, C, D, E, F) [INFO] [stdout] (A, B, C, D, E, F, G) [INFO] [stdout] (A, B, C, D, E, F, G, H) [INFO] [stdout] and 9 others [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:36 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `bitcoin::SendRequest: CandidType` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:124:10 [INFO] [stdout] | [INFO] [stdout] 124 | .await; [INFO] [stdout] | ^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `CandidType` is not implemented for `bitcoin::SendRequest` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SendRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `CandidType`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 159 others [INFO] [stdout] = note: required for `(bitcoin::SendRequest,)` to implement `ArgumentEncoder` [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:16 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'a> base58ck::String: ArgumentDecoder<'a>` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:130:42 [INFO] [stdout] | [INFO] [stdout] 130 | let result: CallResult = call( [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 131 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 132 | | "get_p2tr_script_spend_address", [INFO] [stdout] 133 | | (), [INFO] [stdout] 134 | | ) [INFO] [stdout] | |_________^ the trait `for<'a> ArgumentDecoder<'a>` is not implemented for `base58ck::String` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ArgumentDecoder<'a>`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] (A, B, C, D) [INFO] [stdout] (A, B, C, D, E) [INFO] [stdout] (A, B, C, D, E, F) [INFO] [stdout] (A, B, C, D, E, F, G) [INFO] [stdout] (A, B, C, D, E, F, G, H) [INFO] [stdout] and 9 others [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:36 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'a> base58ck::String: ArgumentDecoder<'a>` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:119:42 [INFO] [stdout] | [INFO] [stdout] 119 | let result: CallResult = call( [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 120 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 121 | | "send_from_p2pkh", [INFO] [stdout] 122 | | (request,), [INFO] [stdout] 123 | | ) [INFO] [stdout] | |_________^ the trait `for<'a> ArgumentDecoder<'a>` is not implemented for `base58ck::String` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ArgumentDecoder<'a>`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] (A, B, C, D) [INFO] [stdout] (A, B, C, D, E) [INFO] [stdout] (A, B, C, D, E, F) [INFO] [stdout] (A, B, C, D, E, F, G) [INFO] [stdout] (A, B, C, D, E, F, G, H) [INFO] [stdout] and 9 others [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:36 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'a> base58ck::String: ArgumentDecoder<'a>` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:130:42 [INFO] [stdout] | [INFO] [stdout] 130 | let result: CallResult = call( [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 131 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 132 | | "get_p2tr_script_spend_address", [INFO] [stdout] 133 | | (), [INFO] [stdout] 134 | | ) [INFO] [stdout] | |_________^ the trait `for<'a> ArgumentDecoder<'a>` is not implemented for `base58ck::String` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ArgumentDecoder<'a>`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] (A, B, C, D) [INFO] [stdout] (A, B, C, D, E) [INFO] [stdout] (A, B, C, D, E, F) [INFO] [stdout] (A, B, C, D, E, F, G) [INFO] [stdout] (A, B, C, D, E, F, G, H) [INFO] [stdout] and 9 others [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:36 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `bitcoin::SendRequest: CandidType` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:144:14 [INFO] [stdout] | [INFO] [stdout] 141 | let result: CallResult = call( [INFO] [stdout] | ---- required by a bound introduced by this call [INFO] [stdout] ... [INFO] [stdout] 144 | (request,), [INFO] [stdout] | ^^^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `CandidType` is not implemented for `bitcoin::SendRequest` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SendRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `CandidType`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 159 others [INFO] [stdout] = note: required for `(bitcoin::SendRequest,)` to implement `ArgumentEncoder` [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:16 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `bitcoin::SendRequest: CandidType` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:141:42 [INFO] [stdout] | [INFO] [stdout] 141 | let result: CallResult = call( [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 142 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 143 | | "send_from_p2tr_script_spend", [INFO] [stdout] 144 | | (request,), [INFO] [stdout] 145 | | ) [INFO] [stdout] | |_________^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `CandidType` is not implemented for `bitcoin::SendRequest` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SendRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `CandidType`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 159 others [INFO] [stdout] = note: required for `(bitcoin::SendRequest,)` to implement `ArgumentEncoder` [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:16 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `bitcoin::SendRequest: CandidType` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:144:14 [INFO] [stdout] | [INFO] [stdout] 141 | let result: CallResult = call( [INFO] [stdout] | ---- required by a bound introduced by this call [INFO] [stdout] ... [INFO] [stdout] 144 | (request,), [INFO] [stdout] | ^^^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `CandidType` is not implemented for `bitcoin::SendRequest` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SendRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `CandidType`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 159 others [INFO] [stdout] = note: required for `(bitcoin::SendRequest,)` to implement `ArgumentEncoder` [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:16 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `bitcoin::SendRequest: CandidType` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:146:10 [INFO] [stdout] | [INFO] [stdout] 146 | .await; [INFO] [stdout] | ^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `CandidType` is not implemented for `bitcoin::SendRequest` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SendRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `CandidType`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 159 others [INFO] [stdout] = note: required for `(bitcoin::SendRequest,)` to implement `ArgumentEncoder` [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:16 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `bitcoin::SendRequest: CandidType` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:141:42 [INFO] [stdout] | [INFO] [stdout] 141 | let result: CallResult = call( [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 142 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 143 | | "send_from_p2tr_script_spend", [INFO] [stdout] 144 | | (request,), [INFO] [stdout] 145 | | ) [INFO] [stdout] | |_________^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `CandidType` is not implemented for `bitcoin::SendRequest` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SendRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `CandidType`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 159 others [INFO] [stdout] = note: required for `(bitcoin::SendRequest,)` to implement `ArgumentEncoder` [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:16 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'a> base58ck::String: ArgumentDecoder<'a>` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:141:42 [INFO] [stdout] | [INFO] [stdout] 141 | let result: CallResult = call( [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 142 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 143 | | "send_from_p2tr_script_spend", [INFO] [stdout] 144 | | (request,), [INFO] [stdout] 145 | | ) [INFO] [stdout] | |_________^ the trait `for<'a> ArgumentDecoder<'a>` is not implemented for `base58ck::String` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ArgumentDecoder<'a>`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] (A, B, C, D) [INFO] [stdout] (A, B, C, D, E) [INFO] [stdout] (A, B, C, D, E, F) [INFO] [stdout] (A, B, C, D, E, F, G) [INFO] [stdout] (A, B, C, D, E, F, G, H) [INFO] [stdout] and 9 others [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:36 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'a> base58ck::String: ArgumentDecoder<'a>` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:152:42 [INFO] [stdout] | [INFO] [stdout] 152 | let result: CallResult = call( [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 153 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 154 | | "get_p2tr_raw_key_spend_address", [INFO] [stdout] 155 | | (), [INFO] [stdout] 156 | | ) [INFO] [stdout] | |_________^ the trait `for<'a> ArgumentDecoder<'a>` is not implemented for `base58ck::String` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ArgumentDecoder<'a>`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] (A, B, C, D) [INFO] [stdout] (A, B, C, D, E) [INFO] [stdout] (A, B, C, D, E, F) [INFO] [stdout] (A, B, C, D, E, F, G) [INFO] [stdout] (A, B, C, D, E, F, G, H) [INFO] [stdout] and 9 others [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:36 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `bitcoin::SendRequest: CandidType` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:146:10 [INFO] [stdout] | [INFO] [stdout] 146 | .await; [INFO] [stdout] | ^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `CandidType` is not implemented for `bitcoin::SendRequest` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SendRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `CandidType`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 159 others [INFO] [stdout] = note: required for `(bitcoin::SendRequest,)` to implement `ArgumentEncoder` [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:16 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'a> base58ck::String: ArgumentDecoder<'a>` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:141:42 [INFO] [stdout] | [INFO] [stdout] 141 | let result: CallResult = call( [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 142 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 143 | | "send_from_p2tr_script_spend", [INFO] [stdout] 144 | | (request,), [INFO] [stdout] 145 | | ) [INFO] [stdout] | |_________^ the trait `for<'a> ArgumentDecoder<'a>` is not implemented for `base58ck::String` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ArgumentDecoder<'a>`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] (A, B, C, D) [INFO] [stdout] (A, B, C, D, E) [INFO] [stdout] (A, B, C, D, E, F) [INFO] [stdout] (A, B, C, D, E, F, G) [INFO] [stdout] (A, B, C, D, E, F, G, H) [INFO] [stdout] and 9 others [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:36 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `bitcoin::SendRequest: CandidType` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:166:14 [INFO] [stdout] | [INFO] [stdout] 163 | let result: CallResult = call( [INFO] [stdout] | ---- required by a bound introduced by this call [INFO] [stdout] ... [INFO] [stdout] 166 | (request,), [INFO] [stdout] | ^^^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `CandidType` is not implemented for `bitcoin::SendRequest` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SendRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `CandidType`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 159 others [INFO] [stdout] = note: required for `(bitcoin::SendRequest,)` to implement `ArgumentEncoder` [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:16 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'a> base58ck::String: ArgumentDecoder<'a>` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:152:42 [INFO] [stdout] | [INFO] [stdout] 152 | let result: CallResult = call( [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 153 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 154 | | "get_p2tr_raw_key_spend_address", [INFO] [stdout] 155 | | (), [INFO] [stdout] 156 | | ) [INFO] [stdout] | |_________^ the trait `for<'a> ArgumentDecoder<'a>` is not implemented for `base58ck::String` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ArgumentDecoder<'a>`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] (A, B, C, D) [INFO] [stdout] (A, B, C, D, E) [INFO] [stdout] (A, B, C, D, E, F) [INFO] [stdout] (A, B, C, D, E, F, G) [INFO] [stdout] (A, B, C, D, E, F, G, H) [INFO] [stdout] and 9 others [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:36 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `bitcoin::SendRequest: CandidType` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:163:42 [INFO] [stdout] | [INFO] [stdout] 163 | let result: CallResult = call( [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 164 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 165 | | "send_from_p2tr_raw_key_spend", [INFO] [stdout] 166 | | (request,), [INFO] [stdout] 167 | | ) [INFO] [stdout] | |_________^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `CandidType` is not implemented for `bitcoin::SendRequest` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SendRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `CandidType`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 159 others [INFO] [stdout] = note: required for `(bitcoin::SendRequest,)` to implement `ArgumentEncoder` [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:16 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `bitcoin::SendRequest: CandidType` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:166:14 [INFO] [stdout] | [INFO] [stdout] 163 | let result: CallResult = call( [INFO] [stdout] | ---- required by a bound introduced by this call [INFO] [stdout] ... [INFO] [stdout] 166 | (request,), [INFO] [stdout] | ^^^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `CandidType` is not implemented for `bitcoin::SendRequest` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SendRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `CandidType`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 159 others [INFO] [stdout] = note: required for `(bitcoin::SendRequest,)` to implement `ArgumentEncoder` [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:16 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `bitcoin::SendRequest: CandidType` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:168:10 [INFO] [stdout] | [INFO] [stdout] 168 | .await; [INFO] [stdout] | ^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `CandidType` is not implemented for `bitcoin::SendRequest` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SendRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `CandidType`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 159 others [INFO] [stdout] = note: required for `(bitcoin::SendRequest,)` to implement `ArgumentEncoder` [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:16 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'a> base58ck::String: ArgumentDecoder<'a>` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:163:42 [INFO] [stdout] | [INFO] [stdout] 163 | let result: CallResult = call( [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 164 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 165 | | "send_from_p2tr_raw_key_spend", [INFO] [stdout] 166 | | (request,), [INFO] [stdout] 167 | | ) [INFO] [stdout] | |_________^ the trait `for<'a> ArgumentDecoder<'a>` is not implemented for `base58ck::String` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ArgumentDecoder<'a>`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] (A, B, C, D) [INFO] [stdout] (A, B, C, D, E) [INFO] [stdout] (A, B, C, D, E, F) [INFO] [stdout] (A, B, C, D, E, F, G) [INFO] [stdout] (A, B, C, D, E, F, G, H) [INFO] [stdout] and 9 others [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:36 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `bitcoin::SendRequest: CandidType` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:163:42 [INFO] [stdout] | [INFO] [stdout] 163 | let result: CallResult = call( [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 164 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 165 | | "send_from_p2tr_raw_key_spend", [INFO] [stdout] 166 | | (request,), [INFO] [stdout] 167 | | ) [INFO] [stdout] | |_________^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `CandidType` is not implemented for `bitcoin::SendRequest` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SendRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `CandidType`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 159 others [INFO] [stdout] = note: required for `(bitcoin::SendRequest,)` to implement `ArgumentEncoder` [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:16 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `bitcoin::SendRequest: CandidType` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:168:10 [INFO] [stdout] | [INFO] [stdout] 168 | .await; [INFO] [stdout] | ^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `CandidType` is not implemented for `bitcoin::SendRequest` [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SendRequest { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: the following other types implement trait `CandidType`: [INFO] [stdout] &'a T [INFO] [stdout] &'a mut T [INFO] [stdout] () [INFO] [stdout] (T0, T1) [INFO] [stdout] (T0, T1, T2) [INFO] [stdout] (T0, T1, T2, T3) [INFO] [stdout] (T0, T1, T2, T3, T4) [INFO] [stdout] (T0, T1, T2, T3, T4, T5) [INFO] [stdout] and 159 others [INFO] [stdout] = note: required for `(bitcoin::SendRequest,)` to implement `ArgumentEncoder` [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:16 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `for<'a> base58ck::String: ArgumentDecoder<'a>` is not satisfied [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:163:42 [INFO] [stdout] | [INFO] [stdout] 163 | let result: CallResult = call( [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 164 | | self.basic_bitcoin_canister_id, [INFO] [stdout] 165 | | "send_from_p2tr_raw_key_spend", [INFO] [stdout] 166 | | (request,), [INFO] [stdout] 167 | | ) [INFO] [stdout] | |_________^ the trait `for<'a> ArgumentDecoder<'a>` is not implemented for `base58ck::String` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `ArgumentDecoder<'a>`: [INFO] [stdout] () [INFO] [stdout] (A, B) [INFO] [stdout] (A, B, C) [INFO] [stdout] (A, B, C, D) [INFO] [stdout] (A, B, C, D, E) [INFO] [stdout] (A, B, C, D, E, F) [INFO] [stdout] (A, B, C, D, E, F, G) [INFO] [stdout] (A, B, C, D, E, F, G, H) [INFO] [stdout] and 9 others [INFO] [stdout] note: required by a bound in `ic_cdk::call` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ic-cdk-0.17.0/src/api/call.rs:389:36 [INFO] [stdout] | [INFO] [stdout] 389 | pub fn call ArgumentDecoder<'a>>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:98:33 [INFO] [stdout] | [INFO] [stdout] 98 | let network = NETWORK.with(|n| n.get()); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 98 | let network = NETWORK.with(|n: /* Type */| n.get()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:98:33 [INFO] [stdout] | [INFO] [stdout] 98 | let network = NETWORK.with(|n| n.get()); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 98 | let network = NETWORK.with(|n: /* Type */| n.get()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:105:33 [INFO] [stdout] | [INFO] [stdout] 105 | let network = NETWORK.with(|n| n.get()); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 105 | let network = NETWORK.with(|n: /* Type */| n.get()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:105:33 [INFO] [stdout] | [INFO] [stdout] 105 | let network = NETWORK.with(|n| n.get()); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 105 | let network = NETWORK.with(|n: /* Type */| n.get()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:130:33 [INFO] [stdout] | [INFO] [stdout] 130 | let network = NETWORK.with(|n| n.get()); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 130 | let network = NETWORK.with(|n: /* Type */| n.get()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:130:33 [INFO] [stdout] | [INFO] [stdout] 130 | let network = NETWORK.with(|n| n.get()); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 130 | let network = NETWORK.with(|n: /* Type */| n.get()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:138:33 [INFO] [stdout] | [INFO] [stdout] 138 | let network = NETWORK.with(|n| n.get()); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 138 | let network = NETWORK.with(|n: /* Type */| n.get()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:138:33 [INFO] [stdout] | [INFO] [stdout] 138 | let network = NETWORK.with(|n| n.get()); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 138 | let network = NETWORK.with(|n: /* Type */| n.get()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:147:33 [INFO] [stdout] | [INFO] [stdout] 147 | let network = NETWORK.with(|n| n.get()); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 147 | let network = NETWORK.with(|n: /* Type */| n.get()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:147:33 [INFO] [stdout] | [INFO] [stdout] 147 | let network = NETWORK.with(|n| n.get()); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 147 | let network = NETWORK.with(|n: /* Type */| n.get()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:156:33 [INFO] [stdout] | [INFO] [stdout] 156 | let network = NETWORK.with(|n| n.get()); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 156 | let network = NETWORK.with(|n: /* Type */| n.get()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:158:9 [INFO] [stdout] | [INFO] [stdout] 158 | let tx_id = bitcoin_wallet::p2pkh::send( [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | tx_id.to_string() [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving `tx_id` an explicit type [INFO] [stdout] | [INFO] [stdout] 158 | let tx_id: /* Type */ = bitcoin_wallet::p2pkh::send( [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:156:33 [INFO] [stdout] | [INFO] [stdout] 156 | let network = NETWORK.with(|n| n.get()); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 156 | let network = NETWORK.with(|n: /* Type */| n.get()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:158:9 [INFO] [stdout] | [INFO] [stdout] 158 | let tx_id = bitcoin_wallet::p2pkh::send( [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | tx_id.to_string() [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving `tx_id` an explicit type [INFO] [stdout] | [INFO] [stdout] 158 | let tx_id: /* Type */ = bitcoin_wallet::p2pkh::send( [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:176:33 [INFO] [stdout] | [INFO] [stdout] 176 | let network = NETWORK.with(|n| n.get()); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 176 | let network = NETWORK.with(|n: /* Type */| n.get()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:178:5 [INFO] [stdout] | [INFO] [stdout] 178 | / bitcoin_wallet::p2tr_script_spend::get_address(network, key_name, derivation_path) [INFO] [stdout] 179 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:176:33 [INFO] [stdout] | [INFO] [stdout] 176 | let network = NETWORK.with(|n| n.get()); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 176 | let network = NETWORK.with(|n: /* Type */| n.get()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:178:5 [INFO] [stdout] | [INFO] [stdout] 178 | / bitcoin_wallet::p2tr_script_spend::get_address(network, key_name, derivation_path) [INFO] [stdout] 179 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:189:33 [INFO] [stdout] | [INFO] [stdout] 189 | let network = NETWORK.with(|n| n.get()); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 189 | let network = NETWORK.with(|n: /* Type */| n.get()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:191:9 [INFO] [stdout] | [INFO] [stdout] 191 | let tx_id = bitcoin_wallet::p2tr_script_spend::send( [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 200 | tx_id.to_string() [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving `tx_id` an explicit type [INFO] [stdout] | [INFO] [stdout] 191 | let tx_id: /* Type */ = bitcoin_wallet::p2tr_script_spend::send( [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:189:33 [INFO] [stdout] | [INFO] [stdout] 189 | let network = NETWORK.with(|n| n.get()); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 189 | let network = NETWORK.with(|n: /* Type */| n.get()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:191:9 [INFO] [stdout] | [INFO] [stdout] 191 | let tx_id = bitcoin_wallet::p2tr_script_spend::send( [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 200 | tx_id.to_string() [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving `tx_id` an explicit type [INFO] [stdout] | [INFO] [stdout] 191 | let tx_id: /* Type */ = bitcoin_wallet::p2tr_script_spend::send( [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:209:33 [INFO] [stdout] | [INFO] [stdout] 209 | let network = NETWORK.with(|n| n.get()); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 209 | let network = NETWORK.with(|n: /* Type */| n.get()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:211:5 [INFO] [stdout] | [INFO] [stdout] 211 | / bitcoin_wallet::p2tr_raw_key_spend::get_address(network, key_name, derivation_path) [INFO] [stdout] 212 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:209:33 [INFO] [stdout] | [INFO] [stdout] 209 | let network = NETWORK.with(|n| n.get()); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 209 | let network = NETWORK.with(|n: /* Type */| n.get()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:211:5 [INFO] [stdout] | [INFO] [stdout] 211 | / bitcoin_wallet::p2tr_raw_key_spend::get_address(network, key_name, derivation_path) [INFO] [stdout] 212 | | .await [INFO] [stdout] | |______________^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:227:33 [INFO] [stdout] | [INFO] [stdout] 227 | let network = NETWORK.with(|n| n.get()); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 227 | let network = NETWORK.with(|n: /* Type */| n.get()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:229:9 [INFO] [stdout] | [INFO] [stdout] 229 | let tx_id = bitcoin_wallet::p2tr_raw_key_spend::send( [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 238 | tx_id.to_string() [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving `tx_id` an explicit type [INFO] [stdout] | [INFO] [stdout] 229 | let tx_id: /* Type */ = bitcoin_wallet::p2tr_raw_key_spend::send( [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:227:33 [INFO] [stdout] | [INFO] [stdout] 227 | let network = NETWORK.with(|n| n.get()); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 227 | let network = NETWORK.with(|n: /* Type */| n.get()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:346:37 [INFO] [stdout] | [INFO] [stdout] 346 | let ckbtc_balance = STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 347 | let state = state.borrow(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 346 | let ckbtc_balance = STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:349:39 [INFO] [stdout] | [INFO] [stdout] 349 | Some(ref ckbtc_wallet) => ckbtc_wallet.get_ckbtc_balance_sync(caller), [INFO] [stdout] | ^^^^^^^^^^^^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:359:35 [INFO] [stdout] | [INFO] [stdout] 359 | let btc_address = STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 360 | state.borrow() [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 359 | let btc_address = STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:377:17 [INFO] [stdout] | [INFO] [stdout] 377 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 378 | let mut state = state.borrow_mut(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 377 | STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:386:30 [INFO] [stdout] | [INFO] [stdout] 386 | let wallet = STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 387 | let state = state.borrow(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 386 | let wallet = STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:388:42 [INFO] [stdout] | [INFO] [stdout] 388 | state.ckbtc_wallet.as_ref().map(|w| w.clone()) [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 388 | state.ckbtc_wallet.as_ref().map(|w: /* Type */| w.clone()) [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:229:9 [INFO] [stdout] | [INFO] [stdout] 229 | let tx_id = bitcoin_wallet::p2tr_raw_key_spend::send( [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 238 | tx_id.to_string() [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving `tx_id` an explicit type [INFO] [stdout] | [INFO] [stdout] 229 | let tx_id: /* Type */ = bitcoin_wallet::p2tr_raw_key_spend::send( [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:395:25 [INFO] [stdout] | [INFO] [stdout] 395 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 396 | let mut state = state.borrow_mut(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 395 | STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:398:41 [INFO] [stdout] | [INFO] [stdout] 398 | if let Some(last) = history.last_mut() { [INFO] [stdout] | ^^^^^^^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:346:37 [INFO] [stdout] | [INFO] [stdout] 346 | let ckbtc_balance = STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 347 | let state = state.borrow(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 346 | let ckbtc_balance = STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:349:39 [INFO] [stdout] | [INFO] [stdout] 349 | Some(ref ckbtc_wallet) => ckbtc_wallet.get_ckbtc_balance_sync(caller), [INFO] [stdout] | ^^^^^^^^^^^^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:407:25 [INFO] [stdout] | [INFO] [stdout] 407 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 408 | let mut state = state.borrow_mut(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 407 | STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:410:41 [INFO] [stdout] | [INFO] [stdout] 410 | if let Some(last) = history.last_mut() { [INFO] [stdout] | ^^^^^^^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:411:64 [INFO] [stdout] | [INFO] [stdout] 411 | last.status = ConversionStatus::Failed(e.clone()); [INFO] [stdout] | ^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:425:35 [INFO] [stdout] | [INFO] [stdout] 425 | let btc_address = STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 426 | state.borrow() [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 425 | let btc_address = STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:359:35 [INFO] [stdout] | [INFO] [stdout] 359 | let btc_address = STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 360 | state.borrow() [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 359 | let btc_address = STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:434:38 [INFO] [stdout] | [INFO] [stdout] 434 | let bitcoin_wallet = STATE.with(|state| state.borrow().bitcoin_wallet.clone()); [INFO] [stdout] | ^^^^^ ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 434 | let bitcoin_wallet = STATE.with(|state: /* Type */| state.borrow().bitcoin_wallet.clone()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:377:17 [INFO] [stdout] | [INFO] [stdout] 377 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 378 | let mut state = state.borrow_mut(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 377 | STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:386:30 [INFO] [stdout] | [INFO] [stdout] 386 | let wallet = STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 387 | let state = state.borrow(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 386 | let wallet = STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:444:30 [INFO] [stdout] | [INFO] [stdout] 444 | let wallet = STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 445 | let state = state.borrow(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 444 | let wallet = STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:388:42 [INFO] [stdout] | [INFO] [stdout] 388 | state.ckbtc_wallet.as_ref().map(|w| w.clone()) [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 388 | state.ckbtc_wallet.as_ref().map(|w: /* Type */| w.clone()) [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:446:42 [INFO] [stdout] | [INFO] [stdout] 446 | state.ckbtc_wallet.as_ref().map(|w| w.clone()) [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 446 | state.ckbtc_wallet.as_ref().map(|w: /* Type */| w.clone()) [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:395:25 [INFO] [stdout] | [INFO] [stdout] 395 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 396 | let mut state = state.borrow_mut(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 395 | STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:461:17 [INFO] [stdout] | [INFO] [stdout] 461 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 462 | let mut state = state.borrow_mut(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 461 | STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:398:41 [INFO] [stdout] | [INFO] [stdout] 398 | if let Some(last) = history.last_mut() { [INFO] [stdout] | ^^^^^^^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:407:25 [INFO] [stdout] | [INFO] [stdout] 407 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 408 | let mut state = state.borrow_mut(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 407 | STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:473:25 [INFO] [stdout] | [INFO] [stdout] 473 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 474 | let mut state = state.borrow_mut(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 473 | STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:410:41 [INFO] [stdout] | [INFO] [stdout] 410 | if let Some(last) = history.last_mut() { [INFO] [stdout] | ^^^^^^^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:411:64 [INFO] [stdout] | [INFO] [stdout] 411 | last.status = ConversionStatus::Failed(e.clone()); [INFO] [stdout] | ^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:476:41 [INFO] [stdout] | [INFO] [stdout] 476 | if let Some(last) = history.last_mut() { [INFO] [stdout] | ^^^^^^^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:485:25 [INFO] [stdout] | [INFO] [stdout] 485 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 486 | let mut state = state.borrow_mut(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 485 | STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:488:41 [INFO] [stdout] | [INFO] [stdout] 488 | if let Some(last) = history.last_mut() { [INFO] [stdout] | ^^^^^^^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:489:64 [INFO] [stdout] | [INFO] [stdout] 489 | last.status = ConversionStatus::Failed(e.clone()); [INFO] [stdout] | ^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:425:35 [INFO] [stdout] | [INFO] [stdout] 425 | let btc_address = STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 426 | state.borrow() [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 425 | let btc_address = STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:434:38 [INFO] [stdout] | [INFO] [stdout] 434 | let bitcoin_wallet = STATE.with(|state| state.borrow().bitcoin_wallet.clone()); [INFO] [stdout] | ^^^^^ ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 434 | let bitcoin_wallet = STATE.with(|state: /* Type */| state.borrow().bitcoin_wallet.clone()); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:444:30 [INFO] [stdout] | [INFO] [stdout] 444 | let wallet = STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 445 | let state = state.borrow(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 444 | let wallet = STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:446:42 [INFO] [stdout] | [INFO] [stdout] 446 | state.ckbtc_wallet.as_ref().map(|w| w.clone()) [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 446 | state.ckbtc_wallet.as_ref().map(|w: /* Type */| w.clone()) [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:461:17 [INFO] [stdout] | [INFO] [stdout] 461 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 462 | let mut state = state.borrow_mut(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 461 | STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:473:25 [INFO] [stdout] | [INFO] [stdout] 473 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 474 | let mut state = state.borrow_mut(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 473 | STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:476:41 [INFO] [stdout] | [INFO] [stdout] 476 | if let Some(last) = history.last_mut() { [INFO] [stdout] | ^^^^^^^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:485:25 [INFO] [stdout] | [INFO] [stdout] 485 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 486 | let mut state = state.borrow_mut(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 485 | STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:488:41 [INFO] [stdout] | [INFO] [stdout] 488 | if let Some(last) = history.last_mut() { [INFO] [stdout] | ^^^^^^^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:489:64 [INFO] [stdout] | [INFO] [stdout] 489 | last.status = ConversionStatus::Failed(e.clone()); [INFO] [stdout] | ^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:83:19 [INFO] [stdout] | [INFO] [stdout] 83 | NETWORK.with(|n| n.set(network)); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 83 | NETWORK.with(|n: /* Type */| n.set(network)); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:83:19 [INFO] [stdout] | [INFO] [stdout] 83 | NETWORK.with(|n| n.set(network)); [INFO] [stdout] | ^ - type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 83 | NETWORK.with(|n: /* Type */| n.set(network)); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:258:29 [INFO] [stdout] | [INFO] [stdout] 258 | bitcoin_wallet: BitcoinWallet::new(BitcoinNetwork::Testnet), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- argument #2 is missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:52:12 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn new(network: BitcoinNetwork, basic_bitcoin_canister_id: CanisterId) -> Self { [INFO] [stdout] | ^^^ ------------------------------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 258 | bitcoin_wallet: BitcoinWallet::new(BitcoinNetwork::Testnet, /* basic_bitcoin_canister_id */), [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:269:17 [INFO] [stdout] | [INFO] [stdout] 269 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 270 | let mut state = state.borrow_mut(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 269 | STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:258:29 [INFO] [stdout] | [INFO] [stdout] 258 | bitcoin_wallet: BitcoinWallet::new(BitcoinNetwork::Testnet), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- argument #2 is missing [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/Odin_Fusion_backend/src/bitcoin.rs:52:12 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn new(network: BitcoinNetwork, basic_bitcoin_canister_id: CanisterId) -> Self { [INFO] [stdout] | ^^^ ------------------------------------- [INFO] [stdout] help: provide the argument [INFO] [stdout] | [INFO] [stdout] 258 | bitcoin_wallet: BitcoinWallet::new(BitcoinNetwork::Testnet, /* basic_bitcoin_canister_id */), [INFO] [stdout] | +++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:282:35 [INFO] [stdout] | [INFO] [stdout] 282 | let btc_balance = STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 283 | let state = state.borrow(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 282 | let btc_balance = STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:269:17 [INFO] [stdout] | [INFO] [stdout] 269 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 270 | let mut state = state.borrow_mut(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 269 | STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:291:37 [INFO] [stdout] | [INFO] [stdout] 291 | let ckbtc_balance = STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 292 | let state = state.borrow(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 291 | let ckbtc_balance = STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:294:29 [INFO] [stdout] | [INFO] [stdout] 294 | Some(wallet) => wallet.get_ckbtc_balance_sync(caller), [INFO] [stdout] | ^^^^^^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:282:35 [INFO] [stdout] | [INFO] [stdout] 282 | let btc_balance = STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 283 | let state = state.borrow(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 282 | let btc_balance = STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:308:17 [INFO] [stdout] | [INFO] [stdout] 308 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 309 | state.borrow() [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 308 | STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:291:37 [INFO] [stdout] | [INFO] [stdout] 291 | let ckbtc_balance = STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 292 | let state = state.borrow(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 291 | let ckbtc_balance = STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:294:29 [INFO] [stdout] | [INFO] [stdout] 294 | Some(wallet) => wallet.get_ckbtc_balance_sync(caller), [INFO] [stdout] | ^^^^^^ cannot infer type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:320:17 [INFO] [stdout] | [INFO] [stdout] 320 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 321 | let mut state = state.borrow_mut(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 320 | STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:332:17 [INFO] [stdout] | [INFO] [stdout] 332 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 333 | state.borrow() [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 332 | STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:308:17 [INFO] [stdout] | [INFO] [stdout] 308 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 309 | state.borrow() [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 308 | STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:320:17 [INFO] [stdout] | [INFO] [stdout] 320 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 321 | let mut state = state.borrow_mut(); [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 320 | STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0282]: type annotations needed [INFO] [stdout] --> src/Odin_Fusion_backend/src/lib.rs:332:17 [INFO] [stdout] | [INFO] [stdout] 332 | STATE.with(|state| { [INFO] [stdout] | ^^^^^ [INFO] [stdout] 333 | state.borrow() [INFO] [stdout] | ----- type must be known at this point [INFO] [stdout] | [INFO] [stdout] help: consider giving this closure parameter an explicit type [INFO] [stdout] | [INFO] [stdout] 332 | STATE.with(|state: /* Type */| { [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0061, E0277, E0282, E0425, E0428, E0433, E0583. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0061`. [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0061, E0277, E0282, E0425, E0428, E0433, E0583. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0061`. [INFO] [stdout] [INFO] [stderr] error: could not compile `Odin_Fusion_backend` (lib test) due to 98 previous errors; 3 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: could not compile `Odin_Fusion_backend` (lib) due to 98 previous errors; 3 warnings emitted [INFO] running `Command { std: "docker" "inspect" "b941fd4373eb23fd2c8c1d577cb12533314da4bbb3d947bcbe27b82f9e4b4183", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b941fd4373eb23fd2c8c1d577cb12533314da4bbb3d947bcbe27b82f9e4b4183", kill_on_drop: false }` [INFO] [stdout] b941fd4373eb23fd2c8c1d577cb12533314da4bbb3d947bcbe27b82f9e4b4183