diff --git a/Cargo.lock b/Cargo.lock index 817446a..8c95e67 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -467,8 +467,8 @@ dependencies = [ [[package]] name = "bitcoin-coordinator" -version = "0.8.1" -source = "git+https://github.com/FairgateLabs/rust-bitvmx-bitcoin?branch=dev#62fcfcd1ef10de6274eb6050b27fab49b4ff6741" +version = "0.8.2" +source = "git+https://github.com/FairgateLabs/rust-bitvmx-bitcoin?tag=v0.8.2#3a3663ab0040f2889ea6673ed129499376a94d41" dependencies = [ "anyhow", "bitcoin 0.32.102", @@ -494,8 +494,8 @@ dependencies = [ [[package]] name = "bitcoin-indexer" -version = "0.8.1" -source = "git+https://github.com/FairgateLabs/rust-bitcoin-indexer.git?tag=v0.8.1#0fed62c0ba05cee6e5711b4f03334362b4671b02" +version = "0.8.2" +source = "git+https://github.com/FairgateLabs/rust-bitcoin-indexer.git?tag=v0.8.2#33d122f99f0c54d11e2a76ba8efd2793c8c47795" dependencies = [ "anyhow", "bitcoin 0.32.102", @@ -647,8 +647,8 @@ dependencies = [ [[package]] name = "bitcoind" -version = "0.8.1" -source = "git+https://github.com/FairgateLabs/rust-bitcoind.git?tag=v0.8.1#2989dc28c0b76ae4d669d66db033c1f54b45a6b8" +version = "0.8.2" +source = "git+https://github.com/FairgateLabs/rust-bitcoind.git?tag=v0.8.2#50afe4aa22d73e05b21a97ca5ddefd681331042c" dependencies = [ "bitvmx-bitcoin-rpc", "bollard", @@ -670,8 +670,8 @@ dependencies = [ [[package]] name = "bitvmx-bitcoin-rpc" -version = "0.8.1" -source = "git+https://github.com/FairgateLabs/rust-bitvmx-bitcoin-rpc.git?tag=v0.8.1#43b90bbe297689110f7687e18cdb026ee5f50759" +version = "0.8.2" +source = "git+https://github.com/FairgateLabs/rust-bitvmx-bitcoin-rpc.git?tag=v0.8.2#2718d44938b8059ccb4ba82c95146385718cbc30" dependencies = [ "bitcoin 0.32.102", "bitcoincore-rpc", @@ -686,8 +686,8 @@ dependencies = [ [[package]] name = "bitvmx-broker" -version = "0.8.1" -source = "git+https://github.com/FairgateLabs/rust-bitvmx-broker.git?tag=v0.8.1#b2152f268f9f33d94e29f6bc68401c623753395a" +version = "0.8.2" +source = "git+https://github.com/FairgateLabs/rust-bitvmx-broker.git?tag=v0.8.2#294e43cf67bedb77e8d0d0d6484ecf91fab6f70c" dependencies = [ "anyhow", "bitvmx-settings", @@ -718,7 +718,7 @@ dependencies = [ [[package]] name = "bitvmx-client-types" -version = "0.8.1" +version = "0.8.2" dependencies = [ "bitcoin 0.32.102", "bitcoin-coordinator", @@ -739,8 +739,8 @@ dependencies = [ [[package]] name = "bitvmx-key-manager" -version = "0.8.1" -source = "git+https://github.com/FairgateLabs/rust-bitvmx-key-manager.git?tag=v0.8.1#a0d7cacec3e527f40d7b36dcc1dd61e1dcb37434" +version = "0.8.2" +source = "git+https://github.com/FairgateLabs/rust-bitvmx-key-manager.git?tag=v0.8.2#eb1f26ce95639bdb30d854f725354d2527a67495" dependencies = [ "anyhow", "base64 0.22.1", @@ -771,8 +771,8 @@ dependencies = [ [[package]] name = "bitvmx-protocol-builder" -version = "0.8.1" -source = "git+https://github.com/FairgateLabs/rust-bitvmx-protocol-builder.git?tag=v0.8.1#84cb08ccd794d1835ca6e9c7256cb48a4397208d" +version = "0.8.2" +source = "git+https://github.com/FairgateLabs/rust-bitvmx-protocol-builder.git?tag=v0.8.2#0856d9226f468cfaf17975ccee75c89a3be64747" dependencies = [ "anyhow", "bitcoin 0.32.102", @@ -800,8 +800,8 @@ dependencies = [ [[package]] name = "bitvmx-settings" -version = "0.8.1" -source = "git+https://github.com/FairgateLabs/rust-bitvmx-settings.git?tag=v0.8.1#23fa022aeff5535d51b5a19bc58bae5eb168cc5e" +version = "0.8.2" +source = "git+https://github.com/FairgateLabs/rust-bitvmx-settings.git?tag=v0.8.2#14f3e60af0029b811e927e93ba7c5a2b67553729" dependencies = [ "age", "clap", @@ -816,8 +816,8 @@ dependencies = [ [[package]] name = "bitvmx-transaction-monitor" -version = "0.8.1" -source = "git+https://github.com/FairgateLabs/rust-bitvmx-transaction-monitor.git?tag=v0.8.1#3eae9b2be04b9840b3097edc455b0f84e80f7e72" +version = "0.8.2" +source = "git+https://github.com/FairgateLabs/rust-bitvmx-transaction-monitor.git?tag=v0.8.2#903910c43c80befceabeb5dca257efa5ff9e53bd" dependencies = [ "anyhow", "bitcoin 0.32.102", @@ -837,8 +837,8 @@ dependencies = [ [[package]] name = "bitvmx-wallet" -version = "0.8.1" -source = "git+https://github.com/FairgateLabs/rust-bitvmx-wallet.git?tag=v0.8.1#d3f734247b178bb013954584e9c11c8c2e22db83" +version = "0.8.2" +source = "git+https://github.com/FairgateLabs/rust-bitvmx-wallet.git?tag=v0.8.2#6e552a3af1791fef4c36ffd60ff46a6d6659f831" dependencies = [ "anyhow", "bdk_bitcoind_rpc", @@ -1021,17 +1021,6 @@ dependencies = [ "cpufeatures 0.2.17", ] -[[package]] -name = "chacha20" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d524456ba66e72eb8b115ff89e01e497f8e6d11d78b70b1aa13c0fbd97540a81" -dependencies = [ - "cfg-if", - "cpufeatures 0.3.0", - "rand_core 0.10.1", -] - [[package]] name = "chacha20poly1305" version = "0.10.1" @@ -1039,7 +1028,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "10cd79432192d1c0f4e1a0fef9527696cc039165d729fb41b3f4f4f354c2dc35" dependencies = [ "aead", - "chacha20 0.9.1", + "chacha20", "cipher", "poly1305", "zeroize", @@ -1852,11 +1841,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "300e883d756b2e4ec94e02791f39b04b522276138852cfc41d9fb7e904106099" dependencies = [ "cfg-if", - "js-sys", "libc", "r-efi 6.0.0", - "rand_core 0.10.1", - "wasm-bindgen", ] [[package]] @@ -2609,12 +2595,6 @@ version = "0.4.33" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ceec5bc11778974d1bcb055b18002eba7f4b3518b6a0081b3af5f21666da9ad" -[[package]] -name = "lru-slab" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "112b39cec0b298b6c1999fee3e31427f74f676e4cb9879ed1a121b43661a4154" - [[package]] name = "lz4-sys" version = "1.11.1+lz4-1.10.0" @@ -3295,62 +3275,6 @@ dependencies = [ "unicode-ident", ] -[[package]] -name = "quinn" -version = "0.11.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c1a41e437b6bbd489372cd4971de128e85c855f56c57f283d20ff016cf7c0a8" -dependencies = [ - "bytes", - "cfg_aliases", - "pin-project-lite", - "quinn-proto", - "quinn-udp", - "rustc-hash 2.1.3", - "rustls", - "socket2", - "thiserror 2.0.19", - "tokio", - "tracing", - "web-time", -] - -[[package]] -name = "quinn-proto" -version = "0.11.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f4bfc015262b9df63c8845072ce59068853ff5872180c2ce2f13038b970e560" -dependencies = [ - "bytes", - "getrandom 0.4.3", - "lru-slab", - "rand 0.10.2", - "rand_pcg", - "ring", - "rustc-hash 2.1.3", - "rustls", - "rustls-pki-types", - "slab", - "thiserror 2.0.19", - "tinyvec", - "tracing", - "web-time", -] - -[[package]] -name = "quinn-udp" -version = "0.5.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35a133f956daabe89a61a685c2649f13d82d5aa4bd5d12d1277e1072a21c0694" -dependencies = [ - "cfg_aliases", - "libc", - "once_cell", - "socket2", - "tracing", - "windows-sys 0.61.2", -] - [[package]] name = "quote" version = "1.0.47" @@ -3393,17 +3317,6 @@ dependencies = [ "rand_core 0.9.5", ] -[[package]] -name = "rand" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7f5fa3a058cd35567ef9bfa5e75732bee0f9e4c55fa90477bef2dfcdbc4be80" -dependencies = [ - "chacha20 0.10.1", - "getrandom 0.4.3", - "rand_core 0.10.1", -] - [[package]] name = "rand_chacha" version = "0.3.1" @@ -3442,21 +3355,6 @@ dependencies = [ "getrandom 0.3.4", ] -[[package]] -name = "rand_core" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63b8176103e19a2643978565ca18b50549f6101881c443590420e4dc998a3c69" - -[[package]] -name = "rand_pcg" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "caa0f4137e1c0a72f4c651489402276c8e8e1cf081f3b0ba156d2cbeef09e86a" -dependencies = [ - "rand_core 0.10.1", -] - [[package]] name = "rcgen" version = "0.12.1" @@ -3578,7 +3476,6 @@ dependencies = [ "native-tls", "percent-encoding", "pin-project-lite", - "quinn", "rustls", "rustls-pki-types", "serde", @@ -3672,8 +3569,8 @@ dependencies = [ [[package]] name = "rust-bitvmx-storage-backend" -version = "0.8.1" -source = "git+https://github.com/FairgateLabs/rust-bitvmx-storage-backend.git?tag=v0.8.1#586414299328972adfc290c248bc45364f94e7bf" +version = "0.8.2" +source = "git+https://github.com/FairgateLabs/rust-bitvmx-storage-backend.git?tag=v0.8.2#3607c18977bbaeb55fef1973948ee9e7dcc0623b" dependencies = [ "age", "clap", @@ -3785,7 +3682,6 @@ dependencies = [ "aws-lc-rs", "log", "once_cell", - "ring", "rustls-pki-types", "rustls-webpki", "subtle", @@ -3807,7 +3703,6 @@ version = "1.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2f4925028c7eb5d1fcdaf196971378ed9d2c1c4efc7dc5d011256f76c99c0a96" dependencies = [ - "web-time", "zeroize", ] diff --git a/Cargo.toml b/Cargo.toml index d08815d..25cf297 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "bitvmx-client-types" -version = "0.8.1" +version = "0.8.2" edition = "2021" [dependencies] @@ -13,11 +13,11 @@ thiserror = "2.0.12" redact = { version = "0.1", features = ["serde", "zeroize"] } tracing = "0.1.41" -bitvmx-key-manager = { git = "https://github.com/FairgateLabs/rust-bitvmx-key-manager.git", tag = "v0.8.1" } -bitvmx-protocol-builder = { git = "https://github.com/FairgateLabs/rust-bitvmx-protocol-builder.git", tag = "v0.8.1" } -bitcoin-coordinator = { git = "https://github.com/FairgateLabs/rust-bitvmx-bitcoin", branch = "dev" } -bitvmx-wallet = { git = "https://github.com/FairgateLabs/rust-bitvmx-wallet.git", tag = "v0.8.1" } -bitvmx-broker = { git = "https://github.com/FairgateLabs/rust-bitvmx-broker.git", tag = "v0.8.1" } +bitvmx-key-manager = { git = "https://github.com/FairgateLabs/rust-bitvmx-key-manager.git", tag = "v0.8.2" } +bitvmx-protocol-builder = { git = "https://github.com/FairgateLabs/rust-bitvmx-protocol-builder.git", tag = "v0.8.2" } +bitcoin-coordinator = { git = "https://github.com/FairgateLabs/rust-bitvmx-bitcoin", tag = "v0.8.2" } +bitvmx-wallet = { git = "https://github.com/FairgateLabs/rust-bitvmx-wallet.git", tag = "v0.8.2" } +bitvmx-broker = { git = "https://github.com/FairgateLabs/rust-bitvmx-broker.git", tag = "v0.8.2" } [dev-dependencies] hex = "0.4.3" diff --git a/mirror.toml b/mirror.toml index 72c4de5..7943765 100644 --- a/mirror.toml +++ b/mirror.toml @@ -1,7 +1,7 @@ -source_tag = "v0.8.1" +source_tag = "v0.8.2" [files] -"src/types/shared.rs" = 307 +"src/types/shared.rs" = 321 "src/spv_proof.rs" = 501 "src/program/participant.rs" = 726 "src/program/variables/shared.rs" = 178 diff --git a/src/program/participant.rs b/src/program/participant.rs index 6cb4f47..13ee79c 100644 --- a/src/program/participant.rs +++ b/src/program/participant.rs @@ -1,5 +1,5 @@ // GENERATED FILE - DO NOT EDIT -// Source: rust-bitvmx-client @ v0.8.1 +// Source: rust-bitvmx-client @ v0.8.2 // Regenerate with scripts/mirror.py //! Shared with `rust-bitvmx-client-types` — this file is copied verbatim on release. //! Node-only code does not belong here; put it in the sibling `mod.rs`. diff --git a/src/program/protocols/union/common/shared.rs b/src/program/protocols/union/common/shared.rs index 2b9430e..42dabea 100644 --- a/src/program/protocols/union/common/shared.rs +++ b/src/program/protocols/union/common/shared.rs @@ -1,5 +1,5 @@ // GENERATED FILE - DO NOT EDIT -// Source: rust-bitvmx-client @ v0.8.1 +// Source: rust-bitvmx-client @ v0.8.2 // Regenerate with scripts/mirror.py //! Shared with `rust-bitvmx-client-types` — this file is copied verbatim on release. //! Node-only code does not belong here; put it in the sibling `mod.rs`. diff --git a/src/program/protocols/union/transport.rs b/src/program/protocols/union/transport.rs index 277a2b0..a4d8281 100644 --- a/src/program/protocols/union/transport.rs +++ b/src/program/protocols/union/transport.rs @@ -1,5 +1,5 @@ // GENERATED FILE - DO NOT EDIT -// Source: rust-bitvmx-client @ v0.8.1 +// Source: rust-bitvmx-client @ v0.8.2 // Regenerate with scripts/mirror.py //! Shared with `rust-bitvmx-client-types` — this file is copied verbatim on release. //! Node-only code does not belong here; put it in the sibling `mod.rs`. diff --git a/src/program/protocols/union/types.rs b/src/program/protocols/union/types.rs index e7ee4b7..24e932c 100644 --- a/src/program/protocols/union/types.rs +++ b/src/program/protocols/union/types.rs @@ -1,5 +1,5 @@ // GENERATED FILE - DO NOT EDIT -// Source: rust-bitvmx-client @ v0.8.1 +// Source: rust-bitvmx-client @ v0.8.2 // Regenerate with scripts/mirror.py //! Shared with `rust-bitvmx-client-types` — this file is copied verbatim on release. //! Node-only code does not belong here; put it in the sibling `mod.rs`. diff --git a/src/program/variables/shared.rs b/src/program/variables/shared.rs index 1f60060..32bebd2 100644 --- a/src/program/variables/shared.rs +++ b/src/program/variables/shared.rs @@ -1,5 +1,5 @@ // GENERATED FILE - DO NOT EDIT -// Source: rust-bitvmx-client @ v0.8.1 +// Source: rust-bitvmx-client @ v0.8.2 // Regenerate with scripts/mirror.py //! Shared with `rust-bitvmx-client-types` — this file is copied verbatim on release. //! Node-only code does not belong here; put it in the sibling `mod.rs`. diff --git a/src/spv_proof.rs b/src/spv_proof.rs index 6d2365d..96f0f47 100644 --- a/src/spv_proof.rs +++ b/src/spv_proof.rs @@ -1,5 +1,5 @@ // GENERATED FILE - DO NOT EDIT -// Source: rust-bitvmx-client @ v0.8.1 +// Source: rust-bitvmx-client @ v0.8.2 // Regenerate with scripts/mirror.py //! Shared with `rust-bitvmx-client-types` — this file is copied verbatim on release. //! Node-only code does not belong here; put it in the sibling `mod.rs`. diff --git a/src/types/shared.rs b/src/types/shared.rs index 292eff0..fe3135c 100644 --- a/src/types/shared.rs +++ b/src/types/shared.rs @@ -1,5 +1,5 @@ // GENERATED FILE - DO NOT EDIT -// Source: rust-bitvmx-client @ v0.8.1 +// Source: rust-bitvmx-client @ v0.8.2 // Regenerate with scripts/mirror.py //! Shared with `rust-bitvmx-client-types` — this file is copied verbatim on release. //! Node-only code does not belong here; put it in the sibling `mod.rs`. @@ -81,6 +81,17 @@ impl IncomingBitVMXApiMessages { type ProgramId = Uuid; +#[derive(Clone, Serialize, Deserialize, Debug, PartialEq)] +pub enum SetupFailureReason { + StepError(String), + /// The sender's key was still missing on the final attempt. + VerificationKeyMissing, + /// A message from the sender ran out of retries. + MessageLost, + /// A message addressed to this peer could not be delivered. + Undeliverable, +} + #[derive(Clone, Serialize, Deserialize, Debug)] pub enum OutgoingBitVMXApiMessages { Pong(Uuid), @@ -96,6 +107,8 @@ pub enum OutgoingBitVMXApiMessages { SpeedUpProgramNoFunds(), // Setup Completed, SetupCompleted(ProgramId), + // Setup could not be completed. Terminal: no further messages arrive for this program. + SetupFailed(ProgramId, String, Option, SetupFailureReason), // id, step, peer involved, reason // Add response types for the new messages if needed AggregatedPubkey(Uuid, PublicKey), AggregatedPubkeyNotReady(Uuid), @@ -260,6 +273,7 @@ impl OutgoingBitVMXApiMessages { "SpeedUpProgramNoFunds".to_string() } OutgoingBitVMXApiMessages::SetupCompleted(_) => "SetupCompleted".to_string(), + OutgoingBitVMXApiMessages::SetupFailed(_, _, _, _) => "SetupFailed".to_string(), OutgoingBitVMXApiMessages::AggregatedPubkey(_, _) => "AggregatedPubkey".to_string(), OutgoingBitVMXApiMessages::AggregatedPubkeyNotReady(_) => { "AggregatedPubkeyNotReady".to_string()