From e82b11623095a0f9185bbdd3bc4a82057c5a2db3 Mon Sep 17 00:00:00 2001 From: benedettadavico Date: Wed, 3 Jun 2026 09:14:07 +0200 Subject: [PATCH 01/12] bump versions --- Cargo.lock | 14 +++++++------- clients/native/Cargo.toml | 2 +- clients/socks5/Cargo.toml | 2 +- nym-api/Cargo.toml | 2 +- nym-node/Cargo.toml | 2 +- service-providers/network-requester/Cargo.toml | 2 +- tools/nym-cli/Cargo.toml | 2 +- tools/nymvisor/Cargo.toml | 2 +- 8 files changed, 14 insertions(+), 14 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index ec3b88bb98..3a5f80d782 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5819,7 +5819,7 @@ dependencies = [ [[package]] name = "nym-api" -version = "1.1.80-no-gw-penalty" +version = "1.1.81" dependencies = [ "anyhow", "async-trait", @@ -6065,7 +6065,7 @@ dependencies = [ [[package]] name = "nym-cli" -version = "1.1.77" +version = "1.1.78" dependencies = [ "anyhow", "base64 0.22.1", @@ -6148,7 +6148,7 @@ dependencies = [ [[package]] name = "nym-client" -version = "1.1.77" +version = "1.1.78" dependencies = [ "bs58", "clap", @@ -7665,7 +7665,7 @@ dependencies = [ [[package]] name = "nym-network-requester" -version = "1.1.78" +version = "1.1.79" dependencies = [ "addr", "anyhow", @@ -7715,7 +7715,7 @@ dependencies = [ [[package]] name = "nym-node" -version = "1.32.0" +version = "1.33.0" dependencies = [ "anyhow", "arc-swap", @@ -8266,7 +8266,7 @@ dependencies = [ [[package]] name = "nym-socks5-client" -version = "1.1.77" +version = "1.1.78" dependencies = [ "bs58", "clap", @@ -9066,7 +9066,7 @@ dependencies = [ [[package]] name = "nymvisor" -version = "0.1.42" +version = "0.1.43" dependencies = [ "anyhow", "bytes", diff --git a/clients/native/Cargo.toml b/clients/native/Cargo.toml index 1535070585..cc411d422c 100644 --- a/clients/native/Cargo.toml +++ b/clients/native/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "nym-client" description = "Implementation of the Nym Client" -version = "1.1.77" +version = "1.1.78" authors = ["Dave Hrycyszyn ", "Jędrzej Stuczyński "] edition = "2021" license.workspace = true diff --git a/clients/socks5/Cargo.toml b/clients/socks5/Cargo.toml index 47d259d342..2f64b817fc 100644 --- a/clients/socks5/Cargo.toml +++ b/clients/socks5/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "nym-socks5-client" description = "A SOCKS5 localhost proxy that converts incoming messages to Sphinx and sends them to a Nym address" -version = "1.1.77" +version = "1.1.78" authors = ["Dave Hrycyszyn "] edition = "2021" license.workspace = true diff --git a/nym-api/Cargo.toml b/nym-api/Cargo.toml index df3e0f1da4..1eba8e4e6b 100644 --- a/nym-api/Cargo.toml +++ b/nym-api/Cargo.toml @@ -3,7 +3,7 @@ [package] name = "nym-api" -version = "1.1.80-no-gw-penalty" +version = "1.1.81" authors.workspace = true edition = "2021" license = "GPL-3.0" diff --git a/nym-node/Cargo.toml b/nym-node/Cargo.toml index c57cdcc278..9fefe0d2d0 100644 --- a/nym-node/Cargo.toml +++ b/nym-node/Cargo.toml @@ -3,7 +3,7 @@ [package] name = "nym-node" -version = "1.32.0" +version = "1.33.0" authors.workspace = true edition.workspace = true license = "GPL-3.0" diff --git a/service-providers/network-requester/Cargo.toml b/service-providers/network-requester/Cargo.toml index bc6719e1b3..8e55bc7486 100644 --- a/service-providers/network-requester/Cargo.toml +++ b/service-providers/network-requester/Cargo.toml @@ -3,7 +3,7 @@ [package] name = "nym-network-requester" -version = "1.1.78" +version = "1.1.79" authors.workspace = true edition.workspace = true license = "GPL-3.0" diff --git a/tools/nym-cli/Cargo.toml b/tools/nym-cli/Cargo.toml index 54d942cc29..933c2a0d3d 100644 --- a/tools/nym-cli/Cargo.toml +++ b/tools/nym-cli/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "nym-cli" -version = "1.1.77" +version = "1.1.78" authors.workspace = true edition = "2021" license.workspace = true diff --git a/tools/nymvisor/Cargo.toml b/tools/nymvisor/Cargo.toml index ca520e5c35..02a8bb929a 100644 --- a/tools/nymvisor/Cargo.toml +++ b/tools/nymvisor/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "nymvisor" -version = "0.1.42" +version = "0.1.43" authors.workspace = true edition.workspace = true license.workspace = true From 367716612f408aa633e73499eaf7fc3c251cd57a Mon Sep 17 00:00:00 2001 From: Nym bot Date: Tue, 2 Jun 2026 13:09:36 +0000 Subject: [PATCH 02/12] crates release: bump version to 1.21.1 --- Cargo.lock | 246 +++++++++++++++++++------------------- Cargo.toml | 218 ++++++++++++++++----------------- common/nym-kkt/Cargo.toml | 2 +- 3 files changed, 233 insertions(+), 233 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 3a5f80d782..4600b3f048 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2679,7 +2679,7 @@ checksum = "1c7a8fb8a9fbf66c1f703fe16184d10ca0ee9d23be5b4436400408ba54a95005" [[package]] name = "easy-addr" -version = "1.21.0" +version = "1.21.1" dependencies = [ "cosmwasm-std", "quote", @@ -5903,7 +5903,7 @@ dependencies = [ [[package]] name = "nym-api-requests" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bs58", "celes", @@ -5945,7 +5945,7 @@ dependencies = [ [[package]] name = "nym-async-file-watcher" -version = "1.21.0" +version = "1.21.1" dependencies = [ "futures", "log", @@ -5955,7 +5955,7 @@ dependencies = [ [[package]] name = "nym-authenticator-client" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bincode", "futures", @@ -5977,7 +5977,7 @@ dependencies = [ [[package]] name = "nym-authenticator-requests" -version = "1.21.0" +version = "1.21.1" dependencies = [ "base64 0.22.1", "bincode", @@ -6001,7 +6001,7 @@ dependencies = [ [[package]] name = "nym-bandwidth-controller" -version = "1.21.0" +version = "1.21.1" dependencies = [ "async-trait", "log", @@ -6018,7 +6018,7 @@ dependencies = [ [[package]] name = "nym-bin-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "clap", "clap_complete", @@ -6058,7 +6058,7 @@ dependencies = [ [[package]] name = "nym-cache" -version = "1.21.0" +version = "1.21.1" dependencies = [ "tokio", ] @@ -6089,7 +6089,7 @@ dependencies = [ [[package]] name = "nym-cli-commands" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "base64 0.22.1", @@ -6185,7 +6185,7 @@ dependencies = [ [[package]] name = "nym-client-core" -version = "1.21.0" +version = "1.21.1" dependencies = [ "async-trait", "base64 0.22.1", @@ -6247,7 +6247,7 @@ dependencies = [ [[package]] name = "nym-client-core-config-types" -version = "1.21.0" +version = "1.21.1" dependencies = [ "humantime-serde", "nym-config", @@ -6262,7 +6262,7 @@ dependencies = [ [[package]] name = "nym-client-core-gateways-storage" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "async-trait", @@ -6281,7 +6281,7 @@ dependencies = [ [[package]] name = "nym-client-core-surb-storage" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "async-trait", @@ -6325,7 +6325,7 @@ dependencies = [ [[package]] name = "nym-client-websocket-requests" -version = "1.21.0" +version = "1.21.1" dependencies = [ "nym-sphinx", "serde", @@ -6334,7 +6334,7 @@ dependencies = [ [[package]] name = "nym-coconut-dkg-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "cosmwasm-schema", "cosmwasm-std", @@ -6347,7 +6347,7 @@ dependencies = [ [[package]] name = "nym-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "tracing", "tracing-test", @@ -6355,7 +6355,7 @@ dependencies = [ [[package]] name = "nym-compact-ecash" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bincode", "bs58", @@ -6379,7 +6379,7 @@ dependencies = [ [[package]] name = "nym-config" -version = "1.21.0" +version = "1.21.1" dependencies = [ "dirs", "handlebars", @@ -6411,7 +6411,7 @@ dependencies = [ [[package]] name = "nym-contracts-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "bs58", @@ -6428,7 +6428,7 @@ dependencies = [ [[package]] name = "nym-contracts-common-testing" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "cosmwasm-std", @@ -6442,7 +6442,7 @@ dependencies = [ [[package]] name = "nym-cpp-ffi" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "bs58", @@ -6505,7 +6505,7 @@ dependencies = [ [[package]] name = "nym-credential-proxy-lib" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "axum", @@ -6543,7 +6543,7 @@ dependencies = [ [[package]] name = "nym-credential-proxy-requests" -version = "1.21.0" +version = "1.21.1" dependencies = [ "async-trait", "nym-credentials", @@ -6567,7 +6567,7 @@ dependencies = [ [[package]] name = "nym-credential-storage" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "async-trait", @@ -6590,7 +6590,7 @@ dependencies = [ [[package]] name = "nym-credential-utils" -version = "1.21.0" +version = "1.21.1" dependencies = [ "log", "nym-bandwidth-controller", @@ -6608,7 +6608,7 @@ dependencies = [ [[package]] name = "nym-credential-verification" -version = "1.21.0" +version = "1.21.1" dependencies = [ "async-trait", "bs58", @@ -6636,7 +6636,7 @@ dependencies = [ [[package]] name = "nym-credentials" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bincode", "cosmrs", @@ -6662,7 +6662,7 @@ dependencies = [ [[package]] name = "nym-credentials-interface" -version = "1.21.0" +version = "1.21.1" dependencies = [ "nym-bls12_381-fork", "nym-compact-ecash", @@ -6680,7 +6680,7 @@ dependencies = [ [[package]] name = "nym-crypto" -version = "1.21.0" +version = "1.21.1" dependencies = [ "aead", "aes 0.8.4", @@ -6755,7 +6755,7 @@ dependencies = [ [[package]] name = "nym-dkg" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bitvec", "bs58", @@ -6777,7 +6777,7 @@ dependencies = [ [[package]] name = "nym-ecash-contract-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bs58", "cosmwasm-schema", @@ -6791,7 +6791,7 @@ dependencies = [ [[package]] name = "nym-ecash-signer-check" -version = "1.21.0" +version = "1.21.1" dependencies = [ "futures", "nym-ecash-signer-check-types", @@ -6808,7 +6808,7 @@ dependencies = [ [[package]] name = "nym-ecash-signer-check-types" -version = "1.21.0" +version = "1.21.1" dependencies = [ "nym-coconut-dkg-common", "nym-crypto", @@ -6823,7 +6823,7 @@ dependencies = [ [[package]] name = "nym-ecash-time" -version = "1.21.0" +version = "1.21.1" dependencies = [ "nym-compact-ecash", "time", @@ -6831,7 +6831,7 @@ dependencies = [ [[package]] name = "nym-exit-policy" -version = "1.21.0" +version = "1.21.1" dependencies = [ "reqwest 0.13.1", "serde", @@ -6843,7 +6843,7 @@ dependencies = [ [[package]] name = "nym-ffi-shared" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "bs58", @@ -6919,7 +6919,7 @@ dependencies = [ [[package]] name = "nym-gateway-client" -version = "1.21.0" +version = "1.21.1" dependencies = [ "futures", "getrandom 0.2.16", @@ -6957,7 +6957,7 @@ dependencies = [ [[package]] name = "nym-gateway-probe" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "base64 0.22.1", @@ -7011,7 +7011,7 @@ dependencies = [ [[package]] name = "nym-gateway-requests" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "bs58", @@ -7043,7 +7043,7 @@ dependencies = [ [[package]] name = "nym-gateway-stats-storage" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "nym-node-metrics", @@ -7059,7 +7059,7 @@ dependencies = [ [[package]] name = "nym-gateway-storage" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "async-trait", @@ -7078,7 +7078,7 @@ dependencies = [ [[package]] name = "nym-go-ffi" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "lazy_static", @@ -7095,7 +7095,7 @@ dependencies = [ [[package]] name = "nym-group-contract-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "cosmwasm-schema", "cw-controllers", @@ -7106,7 +7106,7 @@ dependencies = [ [[package]] name = "nym-http-api-client" -version = "1.21.0" +version = "1.21.1" dependencies = [ "async-trait", "bincode", @@ -7140,7 +7140,7 @@ dependencies = [ [[package]] name = "nym-http-api-client-macro" -version = "1.21.0" +version = "1.21.1" dependencies = [ "nym-http-api-client", "proc-macro-crate", @@ -7153,7 +7153,7 @@ dependencies = [ [[package]] name = "nym-http-api-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "axum", "axum-client-ip", @@ -7175,7 +7175,7 @@ dependencies = [ [[package]] name = "nym-id" -version = "1.21.0" +version = "1.21.1" dependencies = [ "nym-credential-storage", "nym-credentials", @@ -7201,7 +7201,7 @@ dependencies = [ [[package]] name = "nym-inclusion-probability" -version = "1.21.0" +version = "1.21.1" dependencies = [ "log", "rand 0.8.6", @@ -7210,7 +7210,7 @@ dependencies = [ [[package]] name = "nym-ip-packet-client" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bincode", "bytes", @@ -7226,7 +7226,7 @@ dependencies = [ [[package]] name = "nym-ip-packet-requests" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bincode", "bytes", @@ -7246,7 +7246,7 @@ dependencies = [ [[package]] name = "nym-ip-packet-router" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "async-trait", @@ -7302,7 +7302,7 @@ dependencies = [ [[package]] name = "nym-kkt" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "libcrux-chacha20poly1305", @@ -7325,7 +7325,7 @@ dependencies = [ [[package]] name = "nym-kkt-ciphersuite" -version = "1.21.0" +version = "1.21.1" dependencies = [ "blake3", "libcrux-sha3", @@ -7338,7 +7338,7 @@ dependencies = [ [[package]] name = "nym-kkt-context" -version = "1.21.0" +version = "1.21.1" dependencies = [ "num_enum", "nym-kkt-ciphersuite", @@ -7347,7 +7347,7 @@ dependencies = [ [[package]] name = "nym-ledger" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bip32", "k256", @@ -7358,7 +7358,7 @@ dependencies = [ [[package]] name = "nym-lp" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "bs58", @@ -7418,7 +7418,7 @@ dependencies = [ [[package]] name = "nym-lp-data" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bytes", "num_enum", @@ -7429,7 +7429,7 @@ dependencies = [ [[package]] name = "nym-metrics" -version = "1.21.0" +version = "1.21.1" dependencies = [ "dashmap", "lazy_static", @@ -7439,7 +7439,7 @@ dependencies = [ [[package]] name = "nym-mixnet-client" -version = "1.21.0" +version = "1.21.1" dependencies = [ "dashmap", "futures", @@ -7456,7 +7456,7 @@ dependencies = [ [[package]] name = "nym-mixnet-contract-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bs58", "cosmwasm-schema", @@ -7479,7 +7479,7 @@ dependencies = [ [[package]] name = "nym-mixnode-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bytes", "futures", @@ -7506,7 +7506,7 @@ dependencies = [ [[package]] name = "nym-multisig-contract-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "cosmwasm-schema", "cosmwasm-std", @@ -7521,7 +7521,7 @@ dependencies = [ [[package]] name = "nym-network-defaults" -version = "1.21.0" +version = "1.21.1" dependencies = [ "cargo_metadata 0.19.2", "dotenvy", @@ -7638,7 +7638,7 @@ dependencies = [ [[package]] name = "nym-network-monitor-orchestrator-requests" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "humantime-serde", @@ -7653,7 +7653,7 @@ dependencies = [ [[package]] name = "nym-network-monitors-contract-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "cosmwasm-schema", "cosmwasm-std", @@ -7812,7 +7812,7 @@ dependencies = [ [[package]] name = "nym-node-families-contract-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "cosmwasm-schema", "cosmwasm-std", @@ -7827,7 +7827,7 @@ dependencies = [ [[package]] name = "nym-node-metrics" -version = "1.21.0" +version = "1.21.1" dependencies = [ "dashmap", "futures", @@ -7841,7 +7841,7 @@ dependencies = [ [[package]] name = "nym-node-requests" -version = "1.21.0" +version = "1.21.1" dependencies = [ "async-trait", "celes", @@ -7968,7 +7968,7 @@ dependencies = [ [[package]] name = "nym-node-tester-utils" -version = "1.21.0" +version = "1.21.1" dependencies = [ "futures", "log", @@ -7988,7 +7988,7 @@ dependencies = [ [[package]] name = "nym-noise" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "arc-swap", @@ -8011,7 +8011,7 @@ dependencies = [ [[package]] name = "nym-noise-keys" -version = "1.21.0" +version = "1.21.1" dependencies = [ "nym-crypto", "schemars 0.8.22", @@ -8021,7 +8021,7 @@ dependencies = [ [[package]] name = "nym-nonexhaustive-delayqueue" -version = "1.21.0" +version = "1.21.1" dependencies = [ "tokio", "tokio-stream", @@ -8047,7 +8047,7 @@ dependencies = [ [[package]] name = "nym-ordered-buffer" -version = "1.21.0" +version = "1.21.1" dependencies = [ "log", "thiserror 2.0.18", @@ -8055,7 +8055,7 @@ dependencies = [ [[package]] name = "nym-outfox" -version = "1.21.0" +version = "1.21.1" dependencies = [ "blake3", "chacha20 0.9.1", @@ -8069,7 +8069,7 @@ dependencies = [ [[package]] name = "nym-pemstore" -version = "1.21.0" +version = "1.21.1" dependencies = [ "pem", "tracing", @@ -8078,7 +8078,7 @@ dependencies = [ [[package]] name = "nym-performance-contract-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "cosmwasm-schema", "cosmwasm-std", @@ -8091,7 +8091,7 @@ dependencies = [ [[package]] name = "nym-pool-contract-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "cosmwasm-schema", "cosmwasm-std", @@ -8104,7 +8104,7 @@ dependencies = [ [[package]] name = "nym-registration-client" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bincode", "bytes", @@ -8133,7 +8133,7 @@ dependencies = [ [[package]] name = "nym-registration-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bincode", "nym-authenticator-requests", @@ -8150,7 +8150,7 @@ dependencies = [ [[package]] name = "nym-sdk" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "async-trait", @@ -8213,7 +8213,7 @@ dependencies = [ [[package]] name = "nym-serde-helpers" -version = "1.21.0" +version = "1.21.1" dependencies = [ "base64 0.22.1", "bs58", @@ -8224,7 +8224,7 @@ dependencies = [ [[package]] name = "nym-service-provider-requests-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bincode", "serde", @@ -8233,7 +8233,7 @@ dependencies = [ [[package]] name = "nym-service-providers-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "async-trait", "log", @@ -8299,7 +8299,7 @@ dependencies = [ [[package]] name = "nym-socks5-client-core" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "dirs", @@ -8331,7 +8331,7 @@ dependencies = [ [[package]] name = "nym-socks5-proxy-helpers" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bytes", "futures", @@ -8346,7 +8346,7 @@ dependencies = [ [[package]] name = "nym-socks5-requests" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bincode", "log", @@ -8361,7 +8361,7 @@ dependencies = [ [[package]] name = "nym-sphinx" -version = "1.21.0" +version = "1.21.1" dependencies = [ "nym-crypto", "nym-metrics", @@ -8387,7 +8387,7 @@ dependencies = [ [[package]] name = "nym-sphinx-acknowledgements" -version = "1.21.0" +version = "1.21.1" dependencies = [ "generic-array 0.14.7", "nym-crypto", @@ -8405,7 +8405,7 @@ dependencies = [ [[package]] name = "nym-sphinx-addressing" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bincode", "nym-crypto", @@ -8418,7 +8418,7 @@ dependencies = [ [[package]] name = "nym-sphinx-anonymous-replies" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bs58", "nym-crypto", @@ -8436,7 +8436,7 @@ dependencies = [ [[package]] name = "nym-sphinx-chunking" -version = "1.21.0" +version = "1.21.1" dependencies = [ "dashmap", "log", @@ -8454,7 +8454,7 @@ dependencies = [ [[package]] name = "nym-sphinx-cover" -version = "1.21.0" +version = "1.21.1" dependencies = [ "nym-crypto", "nym-sphinx-acknowledgements", @@ -8471,7 +8471,7 @@ dependencies = [ [[package]] name = "nym-sphinx-forwarding" -version = "1.21.0" +version = "1.21.1" dependencies = [ "nym-sphinx-addressing", "nym-sphinx-anonymous-replies", @@ -8482,7 +8482,7 @@ dependencies = [ [[package]] name = "nym-sphinx-framing" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bytes", "cfg-if", @@ -8499,7 +8499,7 @@ dependencies = [ [[package]] name = "nym-sphinx-params" -version = "1.21.0" +version = "1.21.1" dependencies = [ "nym-crypto", "nym-sphinx-types", @@ -8509,7 +8509,7 @@ dependencies = [ [[package]] name = "nym-sphinx-routing" -version = "1.21.0" +version = "1.21.1" dependencies = [ "nym-sphinx-addressing", "nym-sphinx-types", @@ -8518,7 +8518,7 @@ dependencies = [ [[package]] name = "nym-sphinx-types" -version = "1.21.0" +version = "1.21.1" dependencies = [ "nym-outfox", "sphinx-packet", @@ -8527,7 +8527,7 @@ dependencies = [ [[package]] name = "nym-sqlx-pool-guard" -version = "1.21.0" +version = "1.21.1" dependencies = [ "proc_pidinfo", "sqlx", @@ -8570,7 +8570,7 @@ dependencies = [ [[package]] name = "nym-statistics-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "futures", "log", @@ -8595,7 +8595,7 @@ dependencies = [ [[package]] name = "nym-store-cipher" -version = "1.21.0" +version = "1.21.1" dependencies = [ "aes-gcm", "argon2", @@ -8610,7 +8610,7 @@ dependencies = [ [[package]] name = "nym-task" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "cfg-if", @@ -8628,7 +8628,7 @@ dependencies = [ [[package]] name = "nym-test-utils" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "futures", @@ -8641,7 +8641,7 @@ dependencies = [ [[package]] name = "nym-ticketbooks-merkle" -version = "1.21.0" +version = "1.21.1" dependencies = [ "nym-credentials-interface", "nym-serde-helpers", @@ -8658,7 +8658,7 @@ dependencies = [ [[package]] name = "nym-topology" -version = "1.21.0" +version = "1.21.1" dependencies = [ "async-trait", "nym-api-requests", @@ -8680,7 +8680,7 @@ dependencies = [ [[package]] name = "nym-tun" -version = "1.21.0" +version = "1.21.1" dependencies = [ "etherparse", "log", @@ -8692,7 +8692,7 @@ dependencies = [ [[package]] name = "nym-types" -version = "1.21.0" +version = "1.21.1" dependencies = [ "base64 0.22.1", "cosmrs", @@ -8723,7 +8723,7 @@ dependencies = [ [[package]] name = "nym-upgrade-mode-check" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "jwt-simple", @@ -8741,7 +8741,7 @@ dependencies = [ [[package]] name = "nym-validator-client" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "async-trait", @@ -8837,7 +8837,7 @@ dependencies = [ [[package]] name = "nym-verloc" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bytes", "futures", @@ -8858,7 +8858,7 @@ dependencies = [ [[package]] name = "nym-vesting-contract-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "cosmwasm-schema", "cosmwasm-std", @@ -8892,7 +8892,7 @@ dependencies = [ [[package]] name = "nym-wasm-client-core" -version = "1.21.0" +version = "1.21.1" dependencies = [ "async-trait", "console_error_panic_hook", @@ -8926,7 +8926,7 @@ dependencies = [ [[package]] name = "nym-wasm-storage" -version = "1.21.0" +version = "1.21.1" dependencies = [ "async-trait", "indexed_db_futures", @@ -8940,7 +8940,7 @@ dependencies = [ [[package]] name = "nym-wasm-utils" -version = "1.21.0" +version = "1.21.1" dependencies = [ "console_error_panic_hook", "futures", @@ -8956,7 +8956,7 @@ dependencies = [ [[package]] name = "nym-wireguard" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "base64 0.22.1", @@ -8986,7 +8986,7 @@ dependencies = [ [[package]] name = "nym-wireguard-private-metadata-client" -version = "1.21.0" +version = "1.21.1" dependencies = [ "async-trait", "nym-http-api-client", @@ -8996,7 +8996,7 @@ dependencies = [ [[package]] name = "nym-wireguard-private-metadata-server" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "async-trait", @@ -9016,7 +9016,7 @@ dependencies = [ [[package]] name = "nym-wireguard-private-metadata-shared" -version = "1.21.0" +version = "1.21.1" dependencies = [ "axum", "bincode", @@ -9029,7 +9029,7 @@ dependencies = [ [[package]] name = "nym-wireguard-private-metadata-tests" -version = "1.21.0" +version = "1.21.1" dependencies = [ "async-trait", "axum", @@ -9053,7 +9053,7 @@ dependencies = [ [[package]] name = "nym-wireguard-types" -version = "1.21.0" +version = "1.21.1" dependencies = [ "base64 0.22.1", "nym-crypto", @@ -9144,7 +9144,7 @@ dependencies = [ [[package]] name = "nyxd-scraper-shared" -version = "1.21.0" +version = "1.21.1" dependencies = [ "async-trait", "base64 0.22.1", @@ -11558,7 +11558,7 @@ dependencies = [ [[package]] name = "smolmix" -version = "1.21.0" +version = "1.21.1" dependencies = [ "futures", "hickory-proto", @@ -15058,7 +15058,7 @@ dependencies = [ [[package]] name = "zknym-lib" -version = "1.21.0" +version = "1.21.1" dependencies = [ "async-trait", "js-sys", @@ -15129,7 +15129,7 @@ dependencies = [ [[package]] name = "zulip-client" -version = "1.21.0" +version = "1.21.1" dependencies = [ "itertools 0.14.0", "nym-bin-common", diff --git a/Cargo.toml b/Cargo.toml index b5798320e3..7029cbb322 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -212,7 +212,7 @@ edition = "2024" license = "Apache-2.0" rust-version = "1.87.0" readme = "README.md" -version = "1.21.0" +version = "1.21.1" [workspace.dependencies] addr = "0.15.6" @@ -430,115 +430,115 @@ libcrux-sha3 = "0.0.8" libcrux-traits = "0.0.6" # Workspace dep definitions required by crates.io publication - we need a workspace version since `cargo workspaces` doesn't work with path imports from crate manifests -nym-api-requests = { version = "1.21.0", path = "nym-api/nym-api-requests" } -nym-authenticator-requests = { version = "1.21.0", path = "common/authenticator-requests" } -nym-async-file-watcher = { version = "1.21.0", path = "common/async-file-watcher" } -nym-authenticator-client = { version = "1.21.0", path = "nym-authenticator-client" } -nym-bandwidth-controller = { version = "1.21.0", path = "common/bandwidth-controller" } -nym-bin-common = { version = "1.21.0", path = "common/bin-common" } -nym-cache = { version = "1.21.0", path = "common/nym-cache" } -nym-client-core = { version = "1.21.0", path = "common/client-core", default-features = false } -nym-client-core-config-types = { version = "1.21.0", path = "common/client-core/config-types" } -nym-client-core-gateways-storage = { version = "1.21.0", path = "common/client-core/gateways-storage" } -nym-client-core-surb-storage = { version = "1.21.0", path = "common/client-core/surb-storage" } -nym-client-websocket-requests = { version = "1.21.0", path = "clients/native/websocket-requests" } -nym-common = { version = "1.21.0", path = "common/nym-common" } -nym-compact-ecash = { version = "1.21.0", path = "common/nym_offline_compact_ecash" } -nym-config = { version = "1.21.0", path = "common/config" } -nym-contracts-common = { version = "1.21.0", path = "common/cosmwasm-smart-contracts/contracts-common" } -nym-coconut-dkg-common = { version = "1.21.0", path = "common/cosmwasm-smart-contracts/coconut-dkg" } -nym-credential-storage = { version = "1.21.0", path = "common/credential-storage" } -nym-credential-utils = { version = "1.21.0", path = "common/credential-utils" } -nym-credential-proxy-lib = { version = "1.21.0", path = "common/credential-proxy" } -nym-credentials = { version = "1.21.0", path = "common/credentials", default-features = false } -nym-credentials-interface = { version = "1.21.0", path = "common/credentials-interface" } -nym-credential-proxy-requests = { version = "1.21.0", path = "nym-credential-proxy/nym-credential-proxy-requests", default-features = false } -nym-credential-verification = { version = "1.21.0", path = "common/credential-verification" } -nym-crypto = { version = "1.21.0", path = "common/crypto", default-features = false } -nym-dkg = { version = "1.21.0", path = "common/dkg" } -nym-ecash-contract-common = { version = "1.21.0", path = "common/cosmwasm-smart-contracts/ecash-contract" } -nym-ecash-signer-check = { version = "1.21.0", path = "common/ecash-signer-check" } -nym-ecash-signer-check-types = { version = "1.21.0", path = "common/ecash-signer-check-types" } -nym-ecash-time = { version = "1.21.0", path = "common/ecash-time" } -nym-exit-policy = { version = "1.21.0", path = "common/exit-policy" } -nym-ffi-shared = { version = "1.21.0", path = "sdk/ffi/shared" } -nym-gateway-client = { version = "1.21.0", path = "common/client-libs/gateway-client", default-features = false } -nym-gateway-probe = { version = "1.18.0", path = "nym-gateway-probe" } -nym-gateway-requests = { version = "1.21.0", path = "common/gateway-requests" } -nym-gateway-storage = { version = "1.21.0", path = "common/gateway-storage" } -nym-gateway-stats-storage = { version = "1.21.0", path = "common/gateway-stats-storage" } -nym-group-contract-common = { version = "1.21.0", path = "common/cosmwasm-smart-contracts/group-contract" } -nym-http-api-client = { version = "1.21.0", path = "common/http-api-client" } -nym-http-api-client-macro = { version = "1.21.0", path = "common/http-api-client-macro" } -nym-http-api-common = { version = "1.21.0", path = "common/http-api-common", default-features = false } -nym-id = { version = "1.21.0", path = "common/nym-id" } -nym-ip-packet-client = { version = "1.21.0", path = "nym-ip-packet-client" } -nym-ip-packet-requests = { version = "1.21.0", path = "common/ip-packet-requests" } -nym-lp = { version = "1.21.0", path = "common/nym-lp" } -nym-lp-data = { version = "1.21.0", path = "common/nym-lp-data" } -nym-kkt = { version = "1.21.0", path = "common/nym-kkt" } -nym-kkt-ciphersuite = { version = "1.21.0", path = "common/nym-kkt-ciphersuite" } -nym-kkt-context = { version = "1.21.0", path = "common/nym-kkt-context" } -nym-metrics = { version = "1.21.0", path = "common/nym-metrics" } -nym-mixnet-client = { version = "1.21.0", path = "common/client-libs/mixnet-client" } -nym-mixnet-contract-common = { version = "1.21.0", path = "common/cosmwasm-smart-contracts/mixnet-contract" } -nym-multisig-contract-common = { version = "1.21.0", path = "common/cosmwasm-smart-contracts/multisig-contract" } -nym-network-defaults = { version = "1.21.0", path = "common/network-defaults" } -nym-node-tester-utils = { version = "1.21.0", path = "common/node-tester-utils" } -nym-noise = { version = "1.21.0", path = "common/nymnoise" } -nym-noise-keys = { version = "1.21.0", path = "common/nymnoise/keys" } -nym-nonexhaustive-delayqueue = { version = "1.21.0", path = "common/nonexhaustive-delayqueue" } -nym-node-requests = { version = "1.21.0", path = "nym-node/nym-node-requests", default-features = false } -nym-node-metrics = { version = "1.21.0", path = "nym-node/nym-node-metrics" } -nym-node-families-contract-common = { version = "1.21.0", path = "common/cosmwasm-smart-contracts/node-families-contract" } -nym-ordered-buffer = { version = "1.21.0", path = "common/socks5/ordered-buffer" } -nym-outfox = { version = "1.21.0", path = "nym-outfox" } -nym-registration-common = { version = "1.21.0", path = "common/registration" } -nym-pemstore = { version = "1.21.0", path = "common/pemstore" } -nym-performance-contract-common = { version = "1.21.0", path = "common/cosmwasm-smart-contracts/nym-performance-contract" } -nym-sdk = { version = "1.21.0", path = "sdk/rust/nym-sdk" } -nym-serde-helpers = { version = "1.21.0", path = "common/serde-helpers" } -nym-service-providers-common = { version = "1.21.0", path = "service-providers/common" } -nym-service-provider-requests-common = { version = "1.21.0", path = "common/service-provider-requests-common" } -nym-socks5-client-core = { version = "1.21.0", path = "common/socks5-client-core" } -nym-socks5-proxy-helpers = { version = "1.21.0", path = "common/socks5/proxy-helpers" } -nym-socks5-requests = { version = "1.21.0", path = "common/socks5/requests" } -nym-sphinx = { version = "1.21.0", path = "common/nymsphinx" } -nym-sphinx-acknowledgements = { version = "1.21.0", path = "common/nymsphinx/acknowledgements" } -nym-sphinx-addressing = { version = "1.21.0", path = "common/nymsphinx/addressing" } -nym-sphinx-anonymous-replies = { version = "1.21.0", path = "common/nymsphinx/anonymous-replies" } -nym-sphinx-chunking = { version = "1.21.0", path = "common/nymsphinx/chunking" } -nym-sphinx-cover = { version = "1.21.0", path = "common/nymsphinx/cover" } -nym-sphinx-forwarding = { version = "1.21.0", path = "common/nymsphinx/forwarding" } -nym-sphinx-framing = { version = "1.21.0", path = "common/nymsphinx/framing" } -nym-sphinx-params = { version = "1.21.0", path = "common/nymsphinx/params" } -nym-sphinx-routing = { version = "1.21.0", path = "common/nymsphinx/routing" } -nym-sphinx-types = { version = "1.21.0", path = "common/nymsphinx/types" } -nym-statistics-common = { version = "1.21.0", path = "common/statistics" } -nym-store-cipher = { version = "1.21.0", path = "common/store-cipher" } -nym-task = { version = "1.21.0", path = "common/task" } -nym-tun = { version = "1.21.0", path = "common/tun" } -nym-test-utils = { version = "1.21.0", path = "common/test-utils" } -nym-ticketbooks-merkle = { version = "1.21.0", path = "common/ticketbooks-merkle" } -nym-topology = { version = "1.21.0", path = "common/topology" } -nym-types = { version = "1.21.0", path = "common/types" } -nym-upgrade-mode-check = { version = "1.21.0", path = "common/upgrade-mode-check" } -nym-validator-client = { version = "1.21.0", path = "common/client-libs/validator-client", default-features = false } -nym-vesting-contract-common = { version = "1.21.0", path = "common/cosmwasm-smart-contracts/vesting-contract" } -nym-network-monitors-contract-common = { version = "1.21.0", path = "common/cosmwasm-smart-contracts/network-monitors-contract" } -nym-verloc = { version = "1.21.0", path = "common/verloc" } -nym-wireguard = { version = "1.21.0", path = "common/wireguard" } -nym-wireguard-types = { version = "1.21.0", path = "common/wireguard-types" } -nym-wireguard-private-metadata-shared = { version = "1.21.0", path = "common/wireguard-private-metadata/shared" } -nym-wireguard-private-metadata-client = { version = "1.21.0", path = "common/wireguard-private-metadata/client" } -nym-wireguard-private-metadata-server = { version = "1.21.0", path = "common/wireguard-private-metadata/server" } -nym-sqlx-pool-guard = { version = "1.2.0", path = "nym-sqlx-pool-guard" } -nym-wasm-client-core = { version = "1.21.0", path = "common/wasm/client-core" } -nym-wasm-storage = { version = "1.21.0", path = "common/wasm/storage" } -nym-wasm-utils = { version = "1.21.0", path = "common/wasm/utils", default-features = false } -nyxd-scraper-shared = { version = "1.21.0", path = "common/nyxd-scraper-shared" } +nym-api-requests = { version = "1.21.1", path = "nym-api/nym-api-requests" } +nym-authenticator-requests = { version = "1.21.1", path = "common/authenticator-requests" } +nym-async-file-watcher = { version = "1.21.1", path = "common/async-file-watcher" } +nym-authenticator-client = { version = "1.21.1", path = "nym-authenticator-client" } +nym-bandwidth-controller = { version = "1.21.1", path = "common/bandwidth-controller" } +nym-bin-common = { version = "1.21.1", path = "common/bin-common" } +nym-cache = { version = "1.21.1", path = "common/nym-cache" } +nym-client-core = { version = "1.21.1", path = "common/client-core", default-features = false } +nym-client-core-config-types = { version = "1.21.1", path = "common/client-core/config-types" } +nym-client-core-gateways-storage = { version = "1.21.1", path = "common/client-core/gateways-storage" } +nym-client-core-surb-storage = { version = "1.21.1", path = "common/client-core/surb-storage" } +nym-client-websocket-requests = { version = "1.21.1", path = "clients/native/websocket-requests" } +nym-common = { version = "1.21.1", path = "common/nym-common" } +nym-compact-ecash = { version = "1.21.1", path = "common/nym_offline_compact_ecash" } +nym-config = { version = "1.21.1", path = "common/config" } +nym-contracts-common = { version = "1.21.1", path = "common/cosmwasm-smart-contracts/contracts-common" } +nym-coconut-dkg-common = { version = "1.21.1", path = "common/cosmwasm-smart-contracts/coconut-dkg" } +nym-credential-storage = { version = "1.21.1", path = "common/credential-storage" } +nym-credential-utils = { version = "1.21.1", path = "common/credential-utils" } +nym-credential-proxy-lib = { version = "1.21.1", path = "common/credential-proxy" } +nym-credentials = { version = "1.21.1", path = "common/credentials", default-features = false } +nym-credentials-interface = { version = "1.21.1", path = "common/credentials-interface" } +nym-credential-proxy-requests = { version = "1.21.1", path = "nym-credential-proxy/nym-credential-proxy-requests", default-features = false } +nym-credential-verification = { version = "1.21.1", path = "common/credential-verification" } +nym-crypto = { version = "1.21.1", path = "common/crypto", default-features = false } +nym-dkg = { version = "1.21.1", path = "common/dkg" } +nym-ecash-contract-common = { version = "1.21.1", path = "common/cosmwasm-smart-contracts/ecash-contract" } +nym-ecash-signer-check = { version = "1.21.1", path = "common/ecash-signer-check" } +nym-ecash-signer-check-types = { version = "1.21.1", path = "common/ecash-signer-check-types" } +nym-ecash-time = { version = "1.21.1", path = "common/ecash-time" } +nym-exit-policy = { version = "1.21.1", path = "common/exit-policy" } +nym-ffi-shared = { version = "1.21.1", path = "sdk/ffi/shared" } +nym-gateway-client = { version = "1.21.1", path = "common/client-libs/gateway-client", default-features = false } +nym-gateway-probe = { version = "1.21.1", path = "nym-gateway-probe" } +nym-gateway-requests = { version = "1.21.1", path = "common/gateway-requests" } +nym-gateway-storage = { version = "1.21.1", path = "common/gateway-storage" } +nym-gateway-stats-storage = { version = "1.21.1", path = "common/gateway-stats-storage" } +nym-group-contract-common = { version = "1.21.1", path = "common/cosmwasm-smart-contracts/group-contract" } +nym-http-api-client = { version = "1.21.1", path = "common/http-api-client" } +nym-http-api-client-macro = { version = "1.21.1", path = "common/http-api-client-macro" } +nym-http-api-common = { version = "1.21.1", path = "common/http-api-common", default-features = false } +nym-id = { version = "1.21.1", path = "common/nym-id" } +nym-ip-packet-client = { version = "1.21.1", path = "nym-ip-packet-client" } +nym-ip-packet-requests = { version = "1.21.1", path = "common/ip-packet-requests" } +nym-lp = { version = "1.21.1", path = "common/nym-lp" } +nym-lp-data = { version = "1.21.1", path = "common/nym-lp-data" } +nym-kkt = { version = "1.21.1", path = "common/nym-kkt" } +nym-kkt-ciphersuite = { version = "1.21.1", path = "common/nym-kkt-ciphersuite" } +nym-kkt-context = { version = "1.21.1", path = "common/nym-kkt-context" } +nym-metrics = { version = "1.21.1", path = "common/nym-metrics" } +nym-mixnet-client = { version = "1.21.1", path = "common/client-libs/mixnet-client" } +nym-mixnet-contract-common = { version = "1.21.1", path = "common/cosmwasm-smart-contracts/mixnet-contract" } +nym-multisig-contract-common = { version = "1.21.1", path = "common/cosmwasm-smart-contracts/multisig-contract" } +nym-network-defaults = { version = "1.21.1", path = "common/network-defaults" } +nym-node-tester-utils = { version = "1.21.1", path = "common/node-tester-utils" } +nym-noise = { version = "1.21.1", path = "common/nymnoise" } +nym-noise-keys = { version = "1.21.1", path = "common/nymnoise/keys" } +nym-nonexhaustive-delayqueue = { version = "1.21.1", path = "common/nonexhaustive-delayqueue" } +nym-node-requests = { version = "1.21.1", path = "nym-node/nym-node-requests", default-features = false } +nym-node-metrics = { version = "1.21.1", path = "nym-node/nym-node-metrics" } +nym-node-families-contract-common = { version = "1.21.1", path = "common/cosmwasm-smart-contracts/node-families-contract" } +nym-ordered-buffer = { version = "1.21.1", path = "common/socks5/ordered-buffer" } +nym-outfox = { version = "1.21.1", path = "nym-outfox" } +nym-registration-common = { version = "1.21.1", path = "common/registration" } +nym-pemstore = { version = "1.21.1", path = "common/pemstore" } +nym-performance-contract-common = { version = "1.21.1", path = "common/cosmwasm-smart-contracts/nym-performance-contract" } +nym-sdk = { version = "1.21.1", path = "sdk/rust/nym-sdk" } +nym-serde-helpers = { version = "1.21.1", path = "common/serde-helpers" } +nym-service-providers-common = { version = "1.21.1", path = "service-providers/common" } +nym-service-provider-requests-common = { version = "1.21.1", path = "common/service-provider-requests-common" } +nym-socks5-client-core = { version = "1.21.1", path = "common/socks5-client-core" } +nym-socks5-proxy-helpers = { version = "1.21.1", path = "common/socks5/proxy-helpers" } +nym-socks5-requests = { version = "1.21.1", path = "common/socks5/requests" } +nym-sphinx = { version = "1.21.1", path = "common/nymsphinx" } +nym-sphinx-acknowledgements = { version = "1.21.1", path = "common/nymsphinx/acknowledgements" } +nym-sphinx-addressing = { version = "1.21.1", path = "common/nymsphinx/addressing" } +nym-sphinx-anonymous-replies = { version = "1.21.1", path = "common/nymsphinx/anonymous-replies" } +nym-sphinx-chunking = { version = "1.21.1", path = "common/nymsphinx/chunking" } +nym-sphinx-cover = { version = "1.21.1", path = "common/nymsphinx/cover" } +nym-sphinx-forwarding = { version = "1.21.1", path = "common/nymsphinx/forwarding" } +nym-sphinx-framing = { version = "1.21.1", path = "common/nymsphinx/framing" } +nym-sphinx-params = { version = "1.21.1", path = "common/nymsphinx/params" } +nym-sphinx-routing = { version = "1.21.1", path = "common/nymsphinx/routing" } +nym-sphinx-types = { version = "1.21.1", path = "common/nymsphinx/types" } +nym-statistics-common = { version = "1.21.1", path = "common/statistics" } +nym-store-cipher = { version = "1.21.1", path = "common/store-cipher" } +nym-task = { version = "1.21.1", path = "common/task" } +nym-tun = { version = "1.21.1", path = "common/tun" } +nym-test-utils = { version = "1.21.1", path = "common/test-utils" } +nym-ticketbooks-merkle = { version = "1.21.1", path = "common/ticketbooks-merkle" } +nym-topology = { version = "1.21.1", path = "common/topology" } +nym-types = { version = "1.21.1", path = "common/types" } +nym-upgrade-mode-check = { version = "1.21.1", path = "common/upgrade-mode-check" } +nym-validator-client = { version = "1.21.1", path = "common/client-libs/validator-client", default-features = false } +nym-vesting-contract-common = { version = "1.21.1", path = "common/cosmwasm-smart-contracts/vesting-contract" } +nym-network-monitors-contract-common = { version = "1.21.1", path = "common/cosmwasm-smart-contracts/network-monitors-contract" } +nym-verloc = { version = "1.21.1", path = "common/verloc" } +nym-wireguard = { version = "1.21.1", path = "common/wireguard" } +nym-wireguard-types = { version = "1.21.1", path = "common/wireguard-types" } +nym-wireguard-private-metadata-shared = { version = "1.21.1", path = "common/wireguard-private-metadata/shared" } +nym-wireguard-private-metadata-client = { version = "1.21.1", path = "common/wireguard-private-metadata/client" } +nym-wireguard-private-metadata-server = { version = "1.21.1", path = "common/wireguard-private-metadata/server" } +nym-sqlx-pool-guard = { version = "1.21.1", path = "nym-sqlx-pool-guard" } +nym-wasm-client-core = { version = "1.21.1", path = "common/wasm/client-core" } +nym-wasm-storage = { version = "1.21.1", path = "common/wasm/storage" } +nym-wasm-utils = { version = "1.21.1", path = "common/wasm/utils", default-features = false } +nyxd-scraper-shared = { version = "1.21.1", path = "common/nyxd-scraper-shared" } -smolmix = { version = "1.21.0", path = "smolmix/core" } +smolmix = { version = "1.21.1", path = "smolmix/core" } # coconut/DKG related # unfortunately until https://github.com/zkcrypto/nym-bls12_381-fork/issues/10 is resolved, we have to rely on the fork diff --git a/common/nym-kkt/Cargo.toml b/common/nym-kkt/Cargo.toml index 1157ee3869..f0ebf0b53d 100644 --- a/common/nym-kkt/Cargo.toml +++ b/common/nym-kkt/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "nym-kkt" description = "Key transport protocol for the Nym network" -version = "1.21.0" +version = "1.21.1" authors = ["Georgio Nicolas "] edition = { workspace = true } license.workspace = true From 225024d42819ef8e7b23c14a370b18ebdffea7fa Mon Sep 17 00:00:00 2001 From: benedettadavico Date: Wed, 3 Jun 2026 12:04:36 +0200 Subject: [PATCH 03/12] update cargo lock --- Cargo.lock | 2468 +++++++++++++++++++++--------------------- contracts/Cargo.lock | 566 +++++----- 2 files changed, 1544 insertions(+), 1490 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 4600b3f048..fab6eec072 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -36,7 +36,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0" dependencies = [ - "crypto-common 0.1.6", + "crypto-common 0.1.7", "generic-array 0.14.7", ] @@ -53,9 +53,9 @@ dependencies = [ [[package]] name = "aes" -version = "0.9.0" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66bd29a732b644c0431c6140f370d097879203d79b80c94a6747ba0872adaef8" +checksum = "f1fc76eaeac4c9164506c466d4ffdd8ec9d0c5bf57ee97177c4d8eceb3a0e138" dependencies = [ "cipher 0.5.2", "cpubits", @@ -97,7 +97,7 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "10b6f24a1f796bc46415a1d0d18dc0a8203ccba088acf5def3291c4f61225522" dependencies = [ - "aes 0.9.0", + "aes 0.9.1", "byteorder", ] @@ -115,9 +115,9 @@ dependencies = [ [[package]] name = "aho-corasick" -version = "1.1.3" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301" dependencies = [ "memchr", ] @@ -182,9 +182,9 @@ dependencies = [ [[package]] name = "anstream" -version = "0.6.19" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "301af1932e46185686725e0fad2f8f2aa7da69dd70bf6ecc44d6b703844a3933" +checksum = "824a212faf96e9acacdbd09febd34438f8f711fb84e09a8916013cd7815ca28d" dependencies = [ "anstyle", "anstyle-parse", @@ -197,37 +197,37 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.11" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "862ed96ca487e809f1c8e5a8447f6ee2cf102f846893800b20cebdf541fc6bbd" +checksum = "940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000" [[package]] name = "anstyle-parse" -version = "0.2.7" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e7644824f0aa2c7b9384579234ef10eb7efb6a0deb83f9630a49594dd9c15c2" +checksum = "52ce7f38b242319f7cabaa6813055467063ecdc9d355bbb4ce0c68908cd8130e" dependencies = [ "utf8parse", ] [[package]] name = "anstyle-query" -version = "1.1.3" +version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c8bdeb6047d8983be085bab0ba1472e6dc604e7041dbf6fcd5e71523014fae9" +checksum = "40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] name = "anstyle-wincon" -version = "3.0.9" +version = "3.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "403f75924867bb1033c59fbf0797484329750cfbe3c4325cd33127941fabc882" +checksum = "291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d" dependencies = [ "anstyle", "once_cell_polyfill", - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -238,18 +238,21 @@ checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c" [[package]] name = "arbitrary" -version = "1.4.1" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223" +checksum = "c3d036a3c4ab069c7b410a2ce876bd74808d2d0888a82667669f8e783a898bf1" dependencies = [ "derive_arbitrary", ] [[package]] name = "arc-swap" -version = "1.7.1" +version = "1.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457" +checksum = "6a3a1fd6f75306b68087b831f025c712524bcb19aad54e557b1129cfa0a2b207" +dependencies = [ + "rustversion", +] [[package]] name = "argon2" @@ -465,7 +468,7 @@ dependencies = [ "memchr", "serde", "serde_derive", - "winnow", + "winnow 0.7.15", ] [[package]] @@ -477,63 +480,37 @@ dependencies = [ "memchr", "serde", "serde_derive", - "winnow", + "winnow 0.7.15", ] [[package]] name = "async-compression" -version = "0.4.27" +version = "0.4.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddb939d66e4ae03cee6091612804ba446b12878410cfa17f785f4dd67d4014e8" +checksum = "e79b3f8a79cccc2898f31920fc69f304859b3bd567490f75ebf51ae1c792a9ac" dependencies = [ - "brotli", - "flate2", - "futures-core", - "memchr", + "compression-codecs", + "compression-core", "pin-project-lite", "tokio", - "zstd", - "zstd-safe", ] [[package]] name = "async-lock" -version = "3.4.0" +version = "3.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff6e472cdea888a4bd64f342f09b3f50e1886d32afe8df3d663c01140b811b18" +checksum = "290f7f2596bd5b78a9fec8088ccd89180d7f9f55b94b0576823bbbdc72ee8311" dependencies = [ "event-listener", "event-listener-strategy", "pin-project-lite", ] -[[package]] -name = "async-stream" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b5a71a6f37880a80d1d7f19efd781e4b5de42c88f0722cc13bcb6cc2cfe8476" -dependencies = [ - "async-stream-impl", - "futures-core", - "pin-project-lite", -] - -[[package]] -name = "async-stream-impl" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - [[package]] name = "async-trait" -version = "0.1.88" +version = "0.1.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e539d3fca749fcee5236ab05e93a52867dd549cc157c8cb7f99595f3cedffdb5" +checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" dependencies = [ "proc-macro2", "quote", @@ -585,9 +562,9 @@ dependencies = [ [[package]] name = "autocfg" -version = "1.5.0" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" +checksum = "f2032f911046de80f0a198e0901378627c33f59ea0ac00e363d481118bd70a53" [[package]] name = "autodoc" @@ -599,9 +576,9 @@ dependencies = [ [[package]] name = "aws-lc-rs" -version = "1.15.4" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b7b6141e96a8c160799cc2d5adecd5cbbe5054cb8c7c4af53da0f83bb7ad256" +checksum = "5ec2f1fc3ec205783a5da9a7e6c1509cc69dedf09a1949e412c1e18469326d00" dependencies = [ "aws-lc-sys", "zeroize", @@ -609,9 +586,9 @@ dependencies = [ [[package]] name = "aws-lc-sys" -version = "0.37.1" +version = "0.41.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b092fe214090261288111db7a2b2c2118e5a7f30dc2569f1732c4069a6840549" +checksum = "1a2f9779ce85b93ab6170dd940ad0169b5766ff848247aff13bb788b832fe3f4" dependencies = [ "cc", "cmake", @@ -633,7 +610,7 @@ dependencies = [ "http 1.4.1", "http-body 1.0.1", "http-body-util", - "hyper 1.9.0", + "hyper 1.10.1", "hyper-util", "itoa", "matchit", @@ -730,7 +707,7 @@ dependencies = [ "expect-json", "http 1.4.1", "http-body-util", - "hyper 1.9.0", + "hyper 1.10.1", "hyper-util", "mime", "pretty_assertions", @@ -770,9 +747,9 @@ checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" [[package]] name = "base64ct" -version = "1.8.0" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55248b47b0caf0546f7988906588779981c43bb1bc9d0c44087278f80cdb44ba" +checksum = "2af50177e190e07a26ab74f8b1efbfe2ef87da2116221318cb1c2e82baf7de06" [[package]] name = "base85rs" @@ -791,9 +768,9 @@ dependencies = [ [[package]] name = "bech32" -version = "0.11.0" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d965446196e3b7decd44aa7ee49e31d630118f90ef12f97900f262eb915c951d" +checksum = "32637268377fc7b10a8c6d51de3e7fba1ce5dd371a96e342b34e6078db558e7f" [[package]] name = "bincode" @@ -817,7 +794,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "db40d3dfbeab4e031d78c844642fa0caa0b0db11ce1607ac9d2986dff1405c69" dependencies = [ "bs58", - "hmac", + "hmac 0.12.1", "k256", "rand_core 0.6.4", "ripemd", @@ -829,9 +806,9 @@ dependencies = [ [[package]] name = "bip39" -version = "2.2.0" +version = "2.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43d193de1f7487df1914d3a568b772458861d33f9c54249612cc2893d6915054" +checksum = "90dbd31c98227229239363921e60fcf5e558e43ec69094d46fc4996f08d1d5bc" dependencies = [ "bitcoin_hashes", "rand 0.8.6", @@ -841,19 +818,12 @@ dependencies = [ "zeroize", ] -[[package]] -name = "bitcoin-internals" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9425c3bf7089c983facbae04de54513cce73b41c7f9ff8c845b54e7bc64ebbfb" - [[package]] name = "bitcoin_hashes" -version = "0.13.0" +version = "0.14.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1930a4dabfebb8d7d9992db18ebe3ae2876f0a305fab206fd168df931ede293b" +checksum = "0c9901a56e133a1fc86eeb1113e2591f45f4682451ca893bff494d2f88918e3f" dependencies = [ - "bitcoin-internals", "hex-conservative", ] @@ -865,11 +835,11 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.9.1" +version = "2.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967" +checksum = "84d7ced0ae9557296835c32bf1b1e02b44c746701f898460fb000d7eaa84f00a" dependencies = [ - "serde", + "serde_core", ] [[package]] @@ -913,20 +883,21 @@ checksum = "b79834656f71332577234b50bfc009996f7449e0c056884e6a02492ded0ca2f3" dependencies = [ "arrayref", "arrayvec", - "constant_time_eq 0.4.2", + "constant_time_eq", ] [[package]] name = "blake3" -version = "1.8.2" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3888aaa89e4b2a40fca9848e400f6a658a5a3978de7be858e209cafa8be9a4a0" +checksum = "2468ef7d57b3fb7e16b576e8377cdbde2320c60e1491e961d11da40fc4f02a2d" dependencies = [ "arrayref", "arrayvec", "cc", "cfg-if", - "constant_time_eq 0.3.1", + "constant_time_eq", + "cpufeatures 0.2.17", "digest 0.10.7", ] @@ -972,8 +943,8 @@ version = "3.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1f6d7f06817e48ea4e17532fa61bc4e8b9a101437f0623f69d2ea54284f3a817" dependencies = [ - "getrandom 0.2.16", - "siphasher 1.0.1", + "getrandom 0.2.17", + "siphasher 1.0.3", ] [[package]] @@ -984,18 +955,19 @@ checksum = "3e31ea183f6ee62ac8b8a8cf7feddd766317adfb13ff469de57ce033efd6a790" [[package]] name = "borsh" -version = "1.6.0" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1da5ab77c1437701eeff7c88d968729e7766172279eab0676857b3d63af7a6f" +checksum = "cfd1e3f8955a5d7de9fab72fc8373fade9fb8a703968cb200ae3dc6cf08e185a" dependencies = [ + "bytes", "cfg_aliases", ] [[package]] name = "brotli" -version = "8.0.1" +version = "8.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9991eea70ea4f293524138648e41ee89b0b2b12ddef3b255effa43c8056e0e0d" +checksum = "8119e4516436f5708bbc474a9d395bf12f1b5395e93a92a56e647ac3388c8610" dependencies = [ "alloc-no-stdlib", "alloc-stdlib", @@ -1004,9 +976,9 @@ dependencies = [ [[package]] name = "brotli-decompressor" -version = "5.0.0" +version = "5.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "874bb8112abecc98cbd6d81ea4fa7e94fb9449648c93cc89aa40c81c24d7de03" +checksum = "5962523e1b92ce1b5e793d9169b9943eece10d39f62550bc04bb605d75b94924" dependencies = [ "alloc-no-stdlib", "alloc-stdlib", @@ -1024,9 +996,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.19.0" +version = "3.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46c5e41b57b8bba42a04676d81cb89e9ee8e859a1a66f80a5a72e1cb76b34d43" +checksum = "72f5acc6cb2ba439de613abc23857ec3d78374d8ed5ac84e9d11336e87da8649" [[package]] name = "byte-tools" @@ -1067,21 +1039,21 @@ checksum = "6bd91ee7b2422bcb158d90ef4d14f75ef67f340943fc4149891dcce8f8b972a3" [[package]] name = "camino" -version = "1.1.10" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0da45bc31171d8d6960122e222a67740df867c1dd53b4d51caa297084c185cab" +checksum = "e629a66d692cb9ff1a1c664e41771b3dcaf961985a9774c0eb0bd1b51cf60a48" dependencies = [ - "serde", + "serde_core", ] [[package]] name = "cargo-edit" -version = "0.13.9" +version = "0.13.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ece153e2ba81bf4550b18830097a8f9bdf14f17e90135be93dd113a5d19647ff" +checksum = "b7e1b56c3e75909142cb9c4a949d65bab0859f7bac07792b6db982e886ea95ea" dependencies = [ "anyhow", - "cargo_metadata 0.21.0", + "cargo_metadata 0.23.1", "clap", "clap-cargo", "clap-verbosity-flag", @@ -1089,16 +1061,16 @@ dependencies = [ "dunce", "env_logger", "home", - "indexmap 2.13.0", + "indexmap 2.14.0", "log", "pathdiff", - "semver 1.0.27", + "semver 1.0.28", "serde", "serde_derive", "tame-index", "termcolor", - "toml 0.9.12+spec-1.1.0", - "toml_edit 0.23.10+spec-1.0.0", + "toml 1.1.2+spec-1.1.0", + "toml_edit 0.25.12+spec-1.1.0", "url", ] @@ -1113,27 +1085,12 @@ dependencies = [ [[package]] name = "cargo-platform" -version = "0.2.0" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84982c6c0ae343635a3a4ee6dedef965513735c8b183caa7289fa6e27399ebd4" +checksum = "dd0061da739915fae12ea00e16397555ed4371a6bb285431aab930f61b0aa4ba" dependencies = [ "serde", -] - -[[package]] -name = "cargo-util-schemas" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dc1a6f7b5651af85774ae5a34b4e8be397d9cf4bc063b7e6dbd99a841837830" -dependencies = [ - "semver 1.0.27", - "serde", - "serde-untagged", - "serde-value", - "thiserror 2.0.18", - "toml 0.8.23", - "unicode-xid", - "url", + "serde_core", ] [[package]] @@ -1144,7 +1101,7 @@ checksum = "2d886547e41f740c616ae73108f6eb70afe6d940c7bc697cb30f13daec073037" dependencies = [ "camino", "cargo-platform 0.1.9", - "semver 1.0.27", + "semver 1.0.28", "serde", "serde_json", "thiserror 1.0.69", @@ -1158,7 +1115,7 @@ checksum = "dd5eb614ed4c27c5d706420e4320fbe3216ab31fa1c33cd8246ac36dae4479ba" dependencies = [ "camino", "cargo-platform 0.1.9", - "semver 1.0.27", + "semver 1.0.28", "serde", "serde_json", "thiserror 2.0.18", @@ -1166,14 +1123,13 @@ dependencies = [ [[package]] name = "cargo_metadata" -version = "0.21.0" +version = "0.23.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cfca2aaa699835ba88faf58a06342a314a950d2b9686165e038286c30316868" +checksum = "ef987d17b0a113becdd19d3d0022d04d7ef41f9efe4f3fb63ac44ba61df3ade9" dependencies = [ "camino", - "cargo-platform 0.2.0", - "cargo-util-schemas", - "semver 1.0.27", + "cargo-platform 0.3.3", + "semver 1.0.28", "serde", "serde_json", "thiserror 2.0.18", @@ -1187,9 +1143,9 @@ checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" [[package]] name = "cc" -version = "1.2.56" +version = "1.2.63" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aebf35691d1bfb0ac386a69bac2fde4dd276fb618cf8bf4f5318fe285e821bb2" +checksum = "556e016178bb5662a08681bbe0f00f8e17631781a4dfc8c45e466e4b185ec27f" dependencies = [ "find-msvc-tools", "jobserver", @@ -1199,25 +1155,19 @@ dependencies = [ [[package]] name = "celes" -version = "2.6.0" +version = "2.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc3ba3c5408fae183329e0d1ac8f8eed3cb7b647590fd93e6d6288f6b09db0be" +checksum = "55028d5b1eebb35237512a3838ce5583211434a233c8bb179551a7197ffb7bd4" dependencies = [ - "phf", + "phf 0.13.1", "serde", ] -[[package]] -name = "cesu8" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" - [[package]] name = "cfg-if" -version = "1.0.1" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9555578bc9e57714c812a1f84e4fc5b4d21fcb063490c624de019f7464c91268" +checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" [[package]] name = "cfg_aliases" @@ -1317,7 +1267,7 @@ version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" dependencies = [ - "crypto-common 0.1.6", + "crypto-common 0.1.7", "inout 0.1.4", "zeroize", ] @@ -1334,9 +1284,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.60" +version = "4.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2797f34da339ce31042b27d23607e051786132987f595b02ba4f6a6dffb7030a" +checksum = "1ddb117e43bbf7dacf0a4190fef4d345b9bad68dfc649cb349e7d17d28428e51" dependencies = [ "clap_builder", "clap_derive", @@ -1344,9 +1294,9 @@ dependencies = [ [[package]] name = "clap-cargo" -version = "0.16.0" +version = "0.18.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6affd9fc8702a94172345c11fa913aa84601cd05e187af166dcd48deff27b8d" +checksum = "936551935c8258754bb8216aec040957d261f977303754b9bf1a213518388006" dependencies = [ "anstyle", "clap", @@ -1364,9 +1314,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.60" +version = "4.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24a241312cea5059b13574bb9b3861cabf758b879c15190b37b6d6fd63ab6876" +checksum = "714a53001bf66416adb0e2ef5ac857140e7dc3a0c48fb28b2f10762fc4b5069f" dependencies = [ "anstream", "anstyle", @@ -1377,9 +1327,9 @@ dependencies = [ [[package]] name = "clap_complete" -version = "4.5.55" +version = "4.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5abde44486daf70c5be8b8f8f1b66c49f86236edf6fa2abadb4d961c4c6229a" +checksum = "e0a7a9bfdb35811f9e59832f0f05975114d2251b415fb534108e6f34060fd772" dependencies = [ "clap", ] @@ -1396,9 +1346,9 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.55" +version = "4.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a92793da1a46a5f2a02a6f4c46c6496b28c43638adea8306fcb0caa1634f24e5" +checksum = "f2ce8604710f6733aa641a2b3731eaa1e8b3d9973d5e3565da11800813f997a9" dependencies = [ "heck 0.5.0", "proc-macro2", @@ -1408,9 +1358,9 @@ dependencies = [ [[package]] name = "clap_lex" -version = "1.0.0" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a822ea5bc7590f9d40f1ba12c0dc3c2760f3482c6984db1573ad11031420831" +checksum = "c8d4a3bb8b1e0c1050499d1815f5ab16d04f0959b233085fb31653fbfc9d98f9" [[package]] name = "classic-mceliece-rust" @@ -1419,7 +1369,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "62a9b6d27e553269a76625911aa8cf6afaa8659f1b0c85b410cb5f51a87183d9" dependencies = [ "rand 0.8.6", - "sha3 0.10.8", + "sha3 0.10.9", "zeroize", ] @@ -1434,18 +1384,18 @@ dependencies = [ [[package]] name = "cmake" -version = "0.1.57" +version = "0.1.58" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75443c44cd6b379beb8c5b45d85d0773baf31cce901fe7bb252f4eff3008ef7d" +checksum = "c0f78a02292a74a88ac736019ab962ece0bc380e3f977bf72e376c5d78ff0678" dependencies = [ "cc", ] [[package]] name = "cmov" -version = "0.5.3" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f88a43d011fc4a6876cb7344703e297c71dda42494fee094d5f7c76bf13f746" +checksum = "0c9ea0ac24bc397ab3c98583a3c9ba74fa56b09a4449bbe172b9b1ddb016027a" [[package]] name = "coarsetime" @@ -1460,9 +1410,9 @@ dependencies = [ [[package]] name = "colorchoice" -version = "1.0.4" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75" +checksum = "1d07550c9036bf2ae0c684c4297d503f838287c83c53686d05370d0e139ae570" [[package]] name = "colored" @@ -1486,15 +1436,35 @@ dependencies = [ [[package]] name = "comfy-table" -version = "7.1.4" +version = "7.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a65ebfec4fb190b6f90e944a817d60499ee0744e582530e2c9900a22e591d9a" +checksum = "958c5d6ecf1f214b4c2bbbbf6ab9523a864bd136dcf71a7e8904799acfe1ad47" dependencies = [ - "crossterm 0.28.1", + "crossterm 0.29.0", "unicode-segmentation", - "unicode-width 0.2.1", + "unicode-width 0.2.2", ] +[[package]] +name = "compression-codecs" +version = "0.4.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce2548391e9c1929c21bf6aa2680af86fe4c1b33e6cea9ac1cfeec0bd11218cf" +dependencies = [ + "brotli", + "compression-core", + "flate2", + "memchr", + "zstd", + "zstd-safe", +] + +[[package]] +name = "compression-core" +version = "0.4.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc14f565cf027a105f7a44ccf9e5b424348421a1d8952a8fc9d499d313107789" + [[package]] name = "concolor-control" version = "0.0.7" @@ -1523,15 +1493,14 @@ dependencies = [ [[package]] name = "console" -version = "0.16.0" +version = "0.16.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e09ced7ebbccb63b4c65413d821f2e00ce54c5ca4514ddc6b3c892fdbcbc69d" +checksum = "d64e8af5551369d19cf50138de61f1c42074ab970f74e99be916646777f8fc87" dependencies = [ "encode_unicode", "libc", - "once_cell", - "unicode-width 0.2.1", - "windows-sys 0.60.2", + "unicode-width 0.2.2", + "windows-sys 0.61.2", ] [[package]] @@ -1543,7 +1512,7 @@ dependencies = [ "futures-core", "prost 0.14.3", "prost-types", - "tonic 0.14.4", + "tonic 0.14.6", "tonic-prost", "tracing-core", ] @@ -1568,7 +1537,7 @@ dependencies = [ "thread_local", "tokio", "tokio-stream", - "tonic 0.14.4", + "tonic 0.14.6", "tracing", "tracing-core", "tracing-subscriber", @@ -1604,11 +1573,12 @@ checksum = "3618cccc083bb987a415d85c02ca6c9994ea5b44731ec28b9ecf09658655fba9" [[package]] name = "const_format" -version = "0.2.34" +version = "0.2.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "126f97965c8ad46d6d9163268ff28432e8f6a1196a55578867832e3049df63dd" +checksum = "4481a617ad9a412be3b97c5d403fef8ed023103368908b9c50af598ff467cc1e" dependencies = [ "const_format_proc_macros", + "konst", ] [[package]] @@ -1622,12 +1592,6 @@ dependencies = [ "unicode-xid", ] -[[package]] -name = "constant_time_eq" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" - [[package]] name = "constant_time_eq" version = "0.4.2" @@ -1677,7 +1641,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "657f625ff361906f779745d08375ae3cc9fef87a35fba5f22874cf773010daf4" dependencies = [ "hax-lib", - "pastey 0.2.1", + "pastey 0.2.3", "rand 0.9.2", ] @@ -1717,15 +1681,15 @@ dependencies = [ [[package]] name = "cosmwasm-core" -version = "2.2.2" +version = "2.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35b6dc17e7fd89d0a0a58f12ef33f0bbdf09a6a14c3dfb383eae665e5889250e" +checksum = "fac5ed3671399bdaa500eeeaacdc9c11ddb93b4a30662c09b845722186748c13" [[package]] name = "cosmwasm-crypto" -version = "2.2.2" +version = "2.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa2f53285517db3e33d825b3e46301efe845135778527e1295154413b2f0469e" +checksum = "bba8d89908fe256c7fe6efaccb54da59689329bc92011a9eb9bad8d615426c29" dependencies = [ "ark-bls12-381", "ark-ec", @@ -1747,9 +1711,9 @@ dependencies = [ [[package]] name = "cosmwasm-derive" -version = "2.2.2" +version = "2.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a782b93fae93e57ca8ad3e9e994e784583f5933aeaaa5c80a545c4b437be2047" +checksum = "28561fc9ba9ef8ea234c3306fcbf20e6799ea0b78a7ca13386012f371c34a6d0" dependencies = [ "proc-macro2", "quote", @@ -1830,18 +1794,18 @@ dependencies = [ [[package]] name = "crc" -version = "3.3.0" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9710d3b3739c2e349eb44fe848ad0b7c8cb1e42bd87ee49371df2f7acaf3e675" +checksum = "5eb8a2a1cd12ab0d987a5d5e825195d372001a4094a0376319d5a0ad71c1ba0d" dependencies = [ "crc-catalog", ] [[package]] name = "crc-catalog" -version = "2.4.0" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" +checksum = "217698eaf96b4a3f0bc4f3662aaa55bdf913cd54d7204591faa790070c6d0853" [[package]] name = "crc32fast" @@ -1957,14 +1921,15 @@ dependencies = [ [[package]] name = "crossterm" -version = "0.28.1" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "829d955a0bb380ef178a640b91779e3987da38c9aea133b20614cfed8cdea9c6" +checksum = "d8b9f2e4c67f833b660cdb0a3523065869fb35570177239812ed4c905aeff87b" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.12.1", "crossterm_winapi", + "document-features", "parking_lot", - "rustix 0.38.44", + "rustix", "winapi", ] @@ -1997,9 +1962,9 @@ dependencies = [ [[package]] name = "crypto-common" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" +checksum = "78c8292055d1c1df0cce5d180393dc8cce0abec0a7102adb6c7b1eef6016d60a" dependencies = [ "generic-array 0.14.7", "rand_core 0.6.4", @@ -2012,7 +1977,7 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ce6e4c961d6cd6c9a86db418387425e8bdeaf05b3c8bc1411e6dca4c252f1453" dependencies = [ - "getrandom 0.4.1", + "getrandom 0.4.2", "hybrid-array", "rand_core 0.10.1", ] @@ -2036,7 +2001,7 @@ dependencies = [ "cssparser-macros", "dtoa-short", "itoa", - "phf", + "phf 0.11.3", "smallvec", ] @@ -2052,30 +2017,30 @@ dependencies = [ [[package]] name = "csv" -version = "1.3.1" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acdc4883a9c96732e4733212c01447ebd805833b7275a73ca3ee080fd77afdaf" +checksum = "52cd9d68cf7efc6ddfaaee42e7288d3a99d613d4b50f76ce9827ae0c6e14f938" dependencies = [ "csv-core", "itoa", "ryu", - "serde", + "serde_core", ] [[package]] name = "csv-core" -version = "0.1.12" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d02f3b0da4c6504f86e9cd789d8dbafab48c2321be74e9987593de5a894d93d" +checksum = "704a3c26996a80471189265814dbc2c257598b96b8a7feae2d31ace646bb9782" dependencies = [ "memchr", ] [[package]] name = "ct-codecs" -version = "1.1.6" +version = "1.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b10589d1a5e400d61f9f38f12f884cfd080ff345de8f17efda36fe0e4a02aa8" +checksum = "49fb0c6640b4507ebd99ff67677009e381ba5eee1d14df78de4a3d16eb123c39" [[package]] name = "ctr" @@ -2215,7 +2180,7 @@ dependencies = [ "cosmwasm-std", "cw-storage-plus", "schemars 0.8.22", - "semver 1.0.27", + "semver 1.0.28", "serde", "thiserror 1.0.69", ] @@ -2267,8 +2232,18 @@ version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee" dependencies = [ - "darling_core", - "darling_macro", + "darling_core 0.20.11", + "darling_macro 0.20.11", +] + +[[package]] +name = "darling" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25ae13da2f202d56bd7f91c25fba009e7717a1e4a1cc98a76d844b65ae912e9d" +dependencies = [ + "darling_core 0.23.0", + "darling_macro 0.23.0", ] [[package]] @@ -2285,13 +2260,37 @@ dependencies = [ "syn 2.0.117", ] +[[package]] +name = "darling_core" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9865a50f7c335f53564bb694ef660825eb8610e0a53d3e11bf1b0d3df31e03b0" +dependencies = [ + "ident_case", + "proc-macro2", + "quote", + "strsim", + "syn 2.0.117", +] + [[package]] name = "darling_macro" version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ - "darling_core", + "darling_core 0.20.11", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "darling_macro" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3984ec7bd6cfa798e62b4a642426a5be0e68f9401cfc2a01e3fa9ea2fcdb8d" +dependencies = [ + "darling_core 0.23.0", "quote", "syn 2.0.117", ] @@ -2312,9 +2311,9 @@ dependencies = [ [[package]] name = "data-encoding" -version = "2.9.0" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476" +checksum = "a4ae5f15dda3c708c0ade84bfee31ccab44a3da4f88015ed22f63732abe300c8" [[package]] name = "defguard_boringtun" @@ -2327,17 +2326,17 @@ dependencies = [ "blake2 0.10.6", "chacha20poly1305", "hex", - "hmac", + "hmac 0.12.1", "ip_network", "ip_network_table", "libc", "nix 0.31.3", "parking_lot", "ring", - "socket2 0.6.3", + "socket2 0.6.4", "thiserror 2.0.18", "tracing", - "uniffi 0.31.0", + "uniffi 0.31.1", "untrusted", "x25519-dalek", ] @@ -2374,14 +2373,14 @@ version = "0.3.100" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0963443817029b2024136fc4dd07a5107eb8f977eaf18fcd1fdeb11306b64ad" dependencies = [ - "defmt 1.0.1", + "defmt 1.1.0", ] [[package]] name = "defmt" -version = "1.0.1" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "548d977b6da32fa1d1fda2876453da1e7df63ad0304c8b3dae4dbe7b96f39b78" +checksum = "a6e524506490a1953d237cb87b1cfc1e46f88c18f10a22dfe0f507dc6bfc7f7f" dependencies = [ "bitflags 1.3.2", "defmt-macros", @@ -2389,9 +2388,9 @@ dependencies = [ [[package]] name = "defmt-macros" -version = "1.0.1" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d4fc12a85bcf441cfe44344c4b72d58493178ce635338a3f3b78943aceb258e" +checksum = "f0a27770e9c8f719a79d8b638281f4d828f77d8fd61e0bd94451b9b85e576a0b" dependencies = [ "defmt-parser", "proc-macro-error2", @@ -2446,12 +2445,12 @@ dependencies = [ [[package]] name = "deranged" -version = "0.4.0" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c9e6a11ca8224451684bc0d7d5a7adbf8f2fd6887261a1cfc3c0432f9d4068e" +checksum = "7cd812cc2bc1d69d4764bd80df88b4317eaef9e773c75226407d9bc0876b211c" dependencies = [ "powerfmt", - "serde", + "serde_core", ] [[package]] @@ -2467,9 +2466,9 @@ dependencies = [ [[package]] name = "derive_arbitrary" -version = "1.4.1" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30542c1ad912e0e3d22a1935c290e12e8a29d704a420177a31faad4a601a0800" +checksum = "1e567bd82dcff979e4b03460c307b3cdc9e96fde3d73bed1496d2bc75d9dd62a" dependencies = [ "proc-macro2", "quote", @@ -2491,7 +2490,7 @@ version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2d5bcf7b024d6835cfb3d473887cd966994907effbe9227e8c8219824d06c4e8" dependencies = [ - "darling", + "darling 0.20.11", "proc-macro2", "quote", "syn 2.0.117", @@ -2518,11 +2517,11 @@ dependencies = [ [[package]] name = "derive_more" -version = "2.0.1" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" +checksum = "d751e9e49156b02b44f9c1815bcb94b984cdcc4396ecc32521c739452808b134" dependencies = [ - "derive_more-impl 2.0.1", + "derive_more-impl 2.1.1", ] [[package]] @@ -2539,12 +2538,13 @@ dependencies = [ [[package]] name = "derive_more-impl" -version = "2.0.1" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" +checksum = "799a97264921d8623a957f6c3b9011f3b5492f557bbb7a5a19b7fa6d06ba8dcb" dependencies = [ "proc-macro2", "quote", + "rustc_version 0.4.1", "syn 2.0.117", "unicode-xid", ] @@ -2581,7 +2581,7 @@ checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ "block-buffer 0.10.4", "const-oid 0.9.6", - "crypto-common 0.1.6", + "crypto-common 0.1.7", "subtle 2.6.1", ] @@ -2592,7 +2592,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f1dd6dbb5841937940781866fa1281a1ff7bd3bf827091440879f9994983d5c2" dependencies = [ "block-buffer 0.12.0", + "const-oid 0.10.2", "crypto-common 0.2.2", + "ctutils", ] [[package]] @@ -2618,9 +2620,9 @@ dependencies = [ [[package]] name = "displaydoc" -version = "0.2.5" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" +checksum = "1ac70aa55017e108007fbaf5aa0f54b021c98f92ff8af59d42eda9da96e3dd4f" dependencies = [ "proc-macro2", "quote", @@ -2640,9 +2642,18 @@ dependencies = [ [[package]] name = "doc-comment" -version = "0.3.3" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" +checksum = "780955b8b195a21ab8e4ac6b60dd1dbdcec1dc6c51c0617964b08c81785e12c9" + +[[package]] +name = "document-features" +version = "0.2.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4b8a88685455ed29a21542a33abd9cb6510b6b129abadabdcef0f4c55bc8f61" +dependencies = [ + "litrs", +] [[package]] name = "dotenvy" @@ -2652,9 +2663,9 @@ checksum = "1aaf95b3e5c8f23aa320147307562d361db0ae0d51242340f558153b4eb2439b" [[package]] name = "dtoa" -version = "1.0.10" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6add3b8cff394282be81f3fc1a0605db594ed69890078ca6e2cab1c408bcf04" +checksum = "4c3cf4824e2d5f025c7b531afcb2325364084a16806f6d47fbc1f5fbd9960590" [[package]] name = "dtoa-short" @@ -2673,9 +2684,9 @@ checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" [[package]] name = "dyn-clone" -version = "1.0.19" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c7a8fb8a9fbf66c1f703fe16184d10ca0ee9d23be5b4436400408ba54a95005" +checksum = "d0881ea181b1df73ff77ffaaf9c7544ecc11e82fba9b5f27b262a3c73a332555" [[package]] name = "easy-addr" @@ -2744,7 +2755,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f5c0284a5d4b1a2fae017a9fe55fd7d01699711f1b572493f16593e173ea2801" dependencies = [ "ct-codecs", - "getrandom 0.4.1", + "getrandom 0.4.2", ] [[package]] @@ -2792,9 +2803,9 @@ dependencies = [ [[package]] name = "either" -version = "1.15.0" +version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" +checksum = "91622ff5e7162018101f2fea40d6ebf4a78bbe5a49736a2020649edf9693679e" dependencies = [ "serde", ] @@ -2847,9 +2858,9 @@ dependencies = [ [[package]] name = "env_filter" -version = "0.1.3" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "186e05a59d4c50738528153b83b0b0194d3a29507dfec16eccd4b342903397d0" +checksum = "32e90c2accc4b07a8456ea0debdc2e7587bdd890680d71173a15d4ae604f6eef" dependencies = [ "log", "regex", @@ -2857,9 +2868,9 @@ dependencies = [ [[package]] name = "env_logger" -version = "0.11.8" +version = "0.11.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13c863f0904021b108aa8b2f55046443e6b1ebde8fd4a15c399893aae4fa069f" +checksum = "0621c04f2196ac3f488dd583365b9c09be011a4ab8b9f37248ffcc8f6198b56a" dependencies = [ "anstream", "anstyle", @@ -2887,12 +2898,12 @@ dependencies = [ [[package]] name = "errno" -version = "0.3.13" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "778e2ac28f6c47af28e4907f13ffd1e1ddbd400980a9abd7c8df189bf578a5ad" +checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] @@ -2917,9 +2928,9 @@ dependencies = [ [[package]] name = "event-listener" -version = "5.4.0" +version = "5.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3492acde4c3fc54c845eaab3eed8bd00c7a7d881f78bfc801e43a93dec1331ae" +checksum = "e13b66accf52311f30a0db42147dadea9850cb48cd070028831ae5f5d4b856ab" dependencies = [ "concurrent-queue", "parking", @@ -2995,9 +3006,9 @@ dependencies = [ [[package]] name = "fastrand" -version = "2.3.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" +checksum = "9f1f227452a390804cdb637b74a86990f2a7d7ba4b7d5693aac9b4dd6defd8d6" [[package]] name = "ff" @@ -3017,14 +3028,12 @@ checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" [[package]] name = "filetime" -version = "0.2.25" +version = "0.2.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35c0522e981e68cbfa8c3f978441a5f34b30b96e146b33cd3359176b50fe8586" +checksum = "5c287a33c7f0a620c38e641e7f60827713987b3c0f26e8ddc9462cc69cf75759" dependencies = [ "cfg-if", "libc", - "libredox", - "windows-sys 0.59.0", ] [[package]] @@ -3041,13 +3050,13 @@ checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" [[package]] name = "flate2" -version = "1.1.2" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a3d7db9596fecd151c5f638c0ee5d5bd487b6e0ea232e5dc96d5250f6f94b1d" +checksum = "843fba2746e448b37e26a819579957415c8cef339bf08564fe8b7ddbd959573c" dependencies = [ "crc32fast", - "libz-rs-sys", "miniz_oxide", + "zlib-rs", ] [[package]] @@ -3134,9 +3143,9 @@ dependencies = [ [[package]] name = "futures" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876" +checksum = "8b147ee9d1f6d097cef9ce628cd2ee62288d963e16fb287bd9286455b241382d" dependencies = [ "futures-channel", "futures-core", @@ -3165,9 +3174,9 @@ checksum = "7e3450815272ef58cec6d564423f6e755e25379b217b0bc688e295ba24df6b1d" [[package]] name = "futures-executor" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f" +checksum = "baf29c38818342a3b26b5b923639e7b1f4a61fc5e76102d4b1981c6dc7a7579d" dependencies = [ "futures-core", "futures-task", @@ -3209,7 +3218,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a8f2f12607f92c69b12ed746fabf9ca4f5c482cba46679c1a75b874ed7c26adb" dependencies = [ "futures-io", - "rustls 0.23.37", + "rustls 0.23.40", "rustls-pki-types", ] @@ -3248,20 +3257,6 @@ version = "0.3.55" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8f5f3913fa0bfe7ee1fd8248b6b9f42a5af4b9d65ec2dd2c3c26132b950ecfc2" -[[package]] -name = "generator" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d18470a76cb7f8ff746cf1f7470914f900252ec36bbc40b569d74b1258446827" -dependencies = [ - "cc", - "cfg-if", - "libc", - "log", - "rustversion", - "windows 0.61.3", -] - [[package]] name = "generic-array" version = "0.12.4" @@ -3285,9 +3280,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.16" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592" +checksum = "ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0" dependencies = [ "cfg-if", "js-sys", @@ -3305,21 +3300,21 @@ dependencies = [ "cfg-if", "js-sys", "libc", - "r-efi", - "wasi 0.14.2+wasi-0.2.4", + "r-efi 5.3.0", + "wasi 0.14.7+wasi-0.2.4", "wasm-bindgen", ] [[package]] name = "getrandom" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "139ef39800118c7683f2fd3c98c1b23c09ae076556b435f8e9064ae108aaeeec" +checksum = "0de51e6874e94e7bf76d726fc5d13ba782deca734ff60d5bb2fb2607c7406555" dependencies = [ "cfg-if", "js-sys", "libc", - "r-efi", + "r-efi 6.0.0", "rand_core 0.10.1", "wasip2", "wasip3", @@ -3338,9 +3333,9 @@ dependencies = [ [[package]] name = "glob" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2" +checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280" [[package]] name = "gloo-net" @@ -3435,7 +3430,7 @@ dependencies = [ "futures-sink", "futures-util", "http 0.2.12", - "indexmap 2.13.0", + "indexmap 2.14.0", "slab", "tokio", "tokio-util", @@ -3444,9 +3439,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.4.11" +version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17da50a276f1e01e0ba6c029e47b7100754904ee8a278f886546e98575380785" +checksum = "171fefbc92fe4a4de27e0698d6a5b392d6a0e333506bc49133760b3bcf948733" dependencies = [ "atomic-waker", "bytes", @@ -3454,7 +3449,7 @@ dependencies = [ "futures-core", "futures-sink", "http 1.4.1", - "indexmap 2.13.0", + "indexmap 2.14.0", "slab", "tokio", "tokio-util", @@ -3463,12 +3458,13 @@ dependencies = [ [[package]] name = "half" -version = "2.6.0" +version = "2.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "459196ed295495a68f7d7fe1d84f6c4b7ff0e21fe3017b2f283c6fac3ad803c9" +checksum = "6ea2d84b969582b4b1864a92dc5d27cd2b77b622a8d79306834f1be5ba20d84b" dependencies = [ "cfg-if", "crunchy", + "zerocopy", ] [[package]] @@ -3521,9 +3517,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.4" +version = "0.15.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5971ac85611da7067dbfcabef3c70ebb5606018acd9e2a3903a0da507521e0d5" +checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1" dependencies = [ "allocator-api2", "equivalent", @@ -3532,9 +3528,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.16.1" +version = "0.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" +checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a" [[package]] name = "hashlink" @@ -3542,7 +3538,7 @@ version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7382cf6263419f2d8df38c55d7da83da5c18aef87fc7a7fc1fb1e344edfe14c1" dependencies = [ - "hashbrown 0.15.4", + "hashbrown 0.15.5", ] [[package]] @@ -3664,9 +3660,12 @@ checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" [[package]] name = "hex-conservative" -version = "0.1.2" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "212ab92002354b4819390025006c897e8140934349e8635c9b077f47b4dcbd20" +checksum = "fda06d18ac606267c40c04e41b9947729bf8b9efe74bd4e82b61a5f26a510b9f" +dependencies = [ + "arrayvec", +] [[package]] name = "hex-literal" @@ -3687,21 +3686,21 @@ dependencies = [ "futures-channel", "futures-io", "futures-util", - "h2 0.4.11", + "h2 0.4.14", "hickory-proto", "http 1.4.1", "idna", "ipnet", - "jni 0.22.4", + "jni", "rand 0.10.1", - "rustls 0.23.37", + "rustls 0.23.40", "thiserror 2.0.18", "tinyvec", "tokio", - "tokio-rustls 0.26.2", + "tokio-rustls 0.26.4", "tracing", "url", - "webpki-roots 1.0.2", + "webpki-roots 1.0.7", ] [[package]] @@ -3713,7 +3712,7 @@ dependencies = [ "data-encoding", "idna", "ipnet", - "jni 0.22.4", + "jni", "once_cell", "prefix-trie", "rand 0.10.1", @@ -3736,21 +3735,21 @@ dependencies = [ "hickory-proto", "ipconfig", "ipnet", - "jni 0.22.4", + "jni", "moka", "ndk-context", "once_cell", "parking_lot", "rand 0.10.1", "resolv-conf", - "rustls 0.23.37", + "rustls 0.23.40", "smallvec", "system-configuration 0.7.0", "thiserror 2.0.18", "tokio", - "tokio-rustls 0.26.2", + "tokio-rustls 0.26.4", "tracing", - "webpki-roots 1.0.2", + "webpki-roots 1.0.7", ] [[package]] @@ -3771,7 +3770,7 @@ version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7" dependencies = [ - "hmac", + "hmac 0.12.1", ] [[package]] @@ -3783,6 +3782,15 @@ dependencies = [ "digest 0.10.7", ] +[[package]] +name = "hmac" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6303bc9732ae41b04cb554b844a762b4115a61bfaa81e3e83050991eeb56863f" +dependencies = [ + "digest 0.11.3", +] + [[package]] name = "hmac-sha1-compact" version = "1.1.7" @@ -3918,9 +3926,9 @@ checksum = "f58b778a5761513caf593693f8951c97a5b610841e754788400f32102eefdff1" [[package]] name = "humantime" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b112acc8b3adf4b107a8ec20977da0273a8c386765a3ec0229bd500a1443f9f" +checksum = "135b12329e5e3ce057a9f972339ea52bc954fe1e9358ef27f95e89716fbc5424" [[package]] name = "humantime-serde" @@ -3968,15 +3976,15 @@ dependencies = [ [[package]] name = "hyper" -version = "1.9.0" +version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6299f016b246a94207e63da54dbe807655bf9e00044f73ded42c3ac5305fbcca" +checksum = "55281c53a1894c864990125767da440a4e630446785086f52523b20033b74498" dependencies = [ "atomic-waker", "bytes", "futures-channel", "futures-core", - "h2 0.4.11", + "h2 0.4.14", "http 1.4.1", "http-body 1.0.1", "httparse", @@ -4004,20 +4012,19 @@ dependencies = [ [[package]] name = "hyper-rustls" -version = "0.27.7" +version = "0.27.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3c93eb611681b207e1fe55d5a71ecf91572ec8a6705cdb6857f7d8d5242cf58" +checksum = "33ca68d021ef39cf6463ab54c1d0f5daf03377b70561305bb89a8f83aab66e0f" dependencies = [ "http 1.4.1", - "hyper 1.9.0", + "hyper 1.10.1", "hyper-util", - "rustls 0.23.37", - "rustls-native-certs 0.8.3", - "rustls-pki-types", + "rustls 0.23.40", + "rustls-native-certs 0.8.4", "tokio", - "tokio-rustls 0.26.2", + "tokio-rustls 0.26.4", "tower-service", - "webpki-roots 1.0.2", + "webpki-roots 1.0.7", ] [[package]] @@ -4026,7 +4033,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b90d566bffbce6a75bd8b09a05aa8c2cb1fabb6cb348f8840c9e4c90a0d83b0" dependencies = [ - "hyper 1.9.0", + "hyper 1.10.1", "hyper-util", "pin-project-lite", "tokio", @@ -4045,12 +4052,12 @@ dependencies = [ "futures-util", "http 1.4.1", "http-body 1.0.1", - "hyper 1.9.0", + "hyper 1.10.1", "ipnet", "libc", "percent-encoding", "pin-project-lite", - "socket2 0.5.10", + "socket2 0.6.4", "tokio", "tower-service", "tracing", @@ -4058,9 +4065,9 @@ dependencies = [ [[package]] name = "iana-time-zone" -version = "0.1.63" +version = "0.1.65" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0c919e5debc312ad217002b8048a17b7d83f80703865bbfcfebb0458b0b27d8" +checksum = "e31bc9ad994ba00e440a8aa5c9ef0ec67d5cb5e5cb0cc7f8b744a35b389cc470" dependencies = [ "android_system_properties", "core-foundation-sys", @@ -4068,7 +4075,7 @@ dependencies = [ "js-sys", "log", "wasm-bindgen", - "windows-core 0.61.2", + "windows-core 0.62.2", ] [[package]] @@ -4115,12 +4122,13 @@ dependencies = [ [[package]] name = "icu_collections" -version = "2.0.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "200072f5d0e3614556f94a9930d5dc3e0662a652823904c3a75dc3b0af7fee47" +checksum = "2984d1cd16c883d7935b9e07e44071dca8d917fd52ecc02c04d5fa0b5a3f191c" dependencies = [ "displaydoc", "potential_utf", + "utf8_iter", "yoke", "zerofrom", "zerovec", @@ -4128,9 +4136,9 @@ dependencies = [ [[package]] name = "icu_locale_core" -version = "2.0.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0cde2700ccaed3872079a65fb1a78f6c0a36c91570f28755dda67bc8f7d9f00a" +checksum = "92219b62b3e2b4d88ac5119f8904c10f8f61bf7e95b640d25ba3075e6cac2c29" dependencies = [ "displaydoc", "litemap", @@ -4141,11 +4149,10 @@ dependencies = [ [[package]] name = "icu_normalizer" -version = "2.0.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "436880e8e18df4d7bbc06d58432329d6458cc84531f7ac5f024e93deadb37979" +checksum = "c56e5ee99d6e3d33bd91c5d85458b6005a22140021cc324cea84dd0e72cff3b4" dependencies = [ - "displaydoc", "icu_collections", "icu_normalizer_data", "icu_properties", @@ -4156,42 +4163,38 @@ dependencies = [ [[package]] name = "icu_normalizer_data" -version = "2.0.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00210d6893afc98edb752b664b8890f0ef174c8adbb8d0be9710fa66fbbf72d3" +checksum = "da3be0ae77ea334f4da67c12f149704f19f81d1adf7c51cf482943e84a2bad38" [[package]] name = "icu_properties" -version = "2.0.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "016c619c1eeb94efb86809b015c58f479963de65bdb6253345c1a1276f22e32b" +checksum = "bee3b67d0ea5c2cca5003417989af8996f8604e34fb9ddf96208a033901e70de" dependencies = [ - "displaydoc", "icu_collections", "icu_locale_core", "icu_properties_data", "icu_provider", - "potential_utf", "zerotrie", "zerovec", ] [[package]] name = "icu_properties_data" -version = "2.0.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "298459143998310acd25ffe6810ed544932242d3f07083eee1084d83a71bd632" +checksum = "8e2bbb201e0c04f7b4b3e14382af113e17ba4f63e2c9d2ee626b720cbce54a14" [[package]] name = "icu_provider" -version = "2.0.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03c80da27b5f4187909049ee2d72f276f0d9f99a42c306bd0131ecfe04d8e5af" +checksum = "139c4cf31c8b5f33d7e199446eff9c1e02decfc2f0eec2c8d71f65befa45b421" dependencies = [ "displaydoc", "icu_locale_core", - "stable_deref_trait", - "tinystr", "writeable", "yoke", "zerofrom", @@ -4224,9 +4227,9 @@ dependencies = [ [[package]] name = "idna_adapter" -version = "1.2.1" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3acae9609540aa318d1bc588455225fb2085b9ed0c4f6bd0d9d5bcd86f1a0344" +checksum = "cb68373c0d6620ef8105e855e7745e18b0d00d3bdb07fb532e434244cdb9a714" dependencies = [ "icu_normalizer", "icu_properties", @@ -4274,9 +4277,9 @@ dependencies = [ [[package]] name = "indenter" -version = "0.3.3" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683" +checksum = "964de6e86d545b246d84badc0fef527924ace5134f30641c203ef52ba83f58d5" [[package]] name = "indexed_db_futures" @@ -4287,7 +4290,7 @@ dependencies = [ "accessory", "cfg-if", "delegate-display", - "derive_more 2.0.1", + "derive_more 2.1.1", "fancy_constructor", "indexed_db_futures_macros_internal", "js-sys", @@ -4325,25 +4328,25 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.13.0" +version = "2.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7714e70437a7dc3ac8eb7e6f8df75fd8eb422675fc7678aff7364301092b1017" +checksum = "d466e9454f08e4a911e14806c24e16fba1b4c121d1ea474396f396069cf949d9" dependencies = [ "equivalent", - "hashbrown 0.16.1", + "hashbrown 0.17.1", "serde", "serde_core", ] [[package]] name = "indicatif" -version = "0.18.0" +version = "0.18.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70a646d946d06bedbbc4cac4c218acf4bbf2d87757a784857025f4d447e4e1cd" +checksum = "25470f23803092da7d239834776d653104d551bc4d7eacaf31e6837854b8e9eb" dependencies = [ "console", "portable-atomic", - "unicode-width 0.2.1", + "unicode-width 0.2.2", "unit-prefix", "vt100", "web-time", @@ -4439,9 +4442,9 @@ dependencies = [ [[package]] name = "inventory" -version = "0.3.21" +version = "0.3.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc61209c082fbeb19919bee74b176221b27223e27b65d781eb91af24eb1fb46e" +checksum = "a4f0c30c76f2f4ccee3fe55a2435f691ca00c0e4bd87abe4f4a851b1d4dac39b" dependencies = [ "rustversion", ] @@ -4470,21 +4473,22 @@ checksum = "8e537132deb99c0eb4b752f0346b6a836200eaaa3516dd7e5514b63930a09e5d" [[package]] name = "ipconfig" -version = "0.3.2" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b58db92f96b720de98181bbbe63c831e87005ab460c1bf306eb2622b4707997f" +checksum = "4d40460c0ce33d6ce4b0630ad68ff63d6661961c48b6dba35e5a4d81cfb48222" dependencies = [ - "socket2 0.5.10", - "widestring 1.2.0", - "windows-sys 0.48.0", - "winreg", + "socket2 0.6.4", + "widestring 1.2.1", + "windows-registry", + "windows-result 0.4.1", + "windows-sys 0.61.2", ] [[package]] name = "ipnet" -version = "2.11.0" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" +checksum = "d98f6fed1fde3f8c21bc40a1abb88dd75e67924f9cffc3ef95607bad8017f8e2" dependencies = [ "serde", ] @@ -4498,32 +4502,22 @@ dependencies = [ "serde", ] -[[package]] -name = "iri-string" -version = "0.7.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbc5ebe9c3a1a7a5127f920a418f7585e9e758e911d0466ed004f393b0e380b2" -dependencies = [ - "memchr", - "serde", -] - [[package]] name = "is-terminal" -version = "0.4.16" +version = "0.4.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e04d7f318608d35d4b61ddd75cbdaee86b023ebe2bd5a66ee0915f0bf93095a9" +checksum = "3640c1c38b8e4e43584d8df18be5fc6b0aa314ce6ebf51b53313d4306cca8e46" dependencies = [ "hermit-abi 0.5.2", "libc", - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] name = "is_terminal_polyfill" -version = "1.70.1" +version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" +checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695" [[package]] name = "itertools" @@ -4545,50 +4539,34 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.15" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" +checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682" [[package]] name = "jiff" -version = "0.2.15" +version = "0.2.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be1f93b8b1eb69c77f24bbb0afdf66f54b632ee39af40ca21c4365a1d7347e49" +checksum = "4603d3033e49e2b0e31229fcab20a5d40089c607d975cd9c80551dc69eed9102" dependencies = [ "jiff-static", "log", "portable-atomic", "portable-atomic-util", - "serde", + "serde_core", ] [[package]] name = "jiff-static" -version = "0.2.15" +version = "0.2.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03343451ff899767262ec32146f6d559dd759fdadf42ff0e227c7c48f72594b4" +checksum = "782d32378dddf207193ac91cefb848ad41abb58195c95168e1291227a0832b47" dependencies = [ "proc-macro2", "quote", "syn 2.0.117", ] -[[package]] -name = "jni" -version = "0.21.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" -dependencies = [ - "cesu8", - "cfg-if", - "combine", - "jni-sys 0.3.0", - "log", - "thiserror 1.0.69", - "walkdir", - "windows-sys 0.45.0", -] - [[package]] name = "jni" version = "0.22.4" @@ -4598,7 +4576,7 @@ dependencies = [ "cfg-if", "combine", "jni-macros", - "jni-sys 0.4.1", + "jni-sys", "log", "simd_cesu8", "thiserror 2.0.18", @@ -4619,12 +4597,6 @@ dependencies = [ "syn 2.0.117", ] -[[package]] -name = "jni-sys" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" - [[package]] name = "jni-sys" version = "0.4.1" @@ -4646,9 +4618,9 @@ dependencies = [ [[package]] name = "jobserver" -version = "0.1.33" +version = "0.1.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38f262f097c174adebe41eb73d66ae9c06b2844fb0da69969647bbddd9b0538a" +checksum = "9afb3de4395d6b3e67a780b6de64b51c978ecf11cb9a462c66be7d4ca9039d33" dependencies = [ "getrandom 0.3.3", "libc", @@ -4656,10 +4628,12 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.77" +version = "0.3.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" +checksum = "142bc4740e452c1e57ade0cbc129f139c9093e354346f0872ef985f4f5cf5f11" dependencies = [ + "cfg-if", + "futures-util", "once_cell", "wasm-bindgen", ] @@ -4730,10 +4704,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c33070833c9ee02266356de0c43f723152bd38bd96ddf52c82b3af10c9138b28" [[package]] -name = "kqueue" -version = "1.1.1" +name = "konst" +version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eac30106d7dce88daf4a3fcb4879ea939476d5074a9b7ddd0fb97fa4bed5596a" +checksum = "128133ed7824fcd73d6e7b17957c5eb7bacb885649bd8c69708b2331a10bcefb" +dependencies = [ + "konst_macro_rules", +] + +[[package]] +name = "konst_macro_rules" +version = "0.2.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4933f3f57a8e9d9da04db23fb153356ecaf00cbd14aee46279c33dc80925c37" + +[[package]] +name = "kqueue" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "273c0752728918e0ac4976f2b275b6fefb9ecd400585dec929419f3844cd87b5" dependencies = [ "kqueue-sys", "libc", @@ -4741,11 +4730,11 @@ dependencies = [ [[package]] name = "kqueue-sys" -version = "1.0.4" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed9625ffda8729b85e45cf04090035ac368927b8cebc34898e7c120f52e4838b" +checksum = "07293a4e297ac234359b510362495713f75ea345d5307140414f20c69ffeb087" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.12.1", "libc", ] @@ -4865,7 +4854,7 @@ dependencies = [ "libcrux-hacl-rs", "libcrux-macros", "libcrux-sha2", - "rand_core 0.9.3", + "rand_core 0.9.5", "tls_codec", ] @@ -5076,19 +5065,20 @@ dependencies = [ [[package]] name = "libm" -version = "0.2.15" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de" +checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" [[package]] name = "libredox" -version = "0.1.6" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4488594b9328dee448adb906d8b126d9b7deb7cf5c22161ee591610bb1be83c0" +checksum = "f02ab6bace2054fb888a3c16f990117b579d14a3088e472d63c6011fa185c9d3" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.12.1", "libc", - "redox_syscall", + "plain", + "redox_syscall 0.8.1", ] [[package]] @@ -5102,26 +5092,11 @@ dependencies = [ "vcpkg", ] -[[package]] -name = "libz-rs-sys" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c10501e7805cee23da17c7790e59df2870c0d4043ec6d03f67d31e2b53e77415" -dependencies = [ - "zlib-rs", -] - [[package]] name = "linux-raw-sys" -version = "0.4.15" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" - -[[package]] -name = "linux-raw-sys" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" +checksum = "32a66949e030da00e8c7d4434b251670a91556f4144941d37452769c25d58a53" [[package]] name = "lioness" @@ -5137,9 +5112,15 @@ dependencies = [ [[package]] name = "litemap" -version = "0.8.0" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956" +checksum = "92daf443525c4cce67b150400bc2316076100ce0b3686209eb8cf3c31612e6f0" + +[[package]] +name = "litrs" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11d3d7f243d5c5a8b9bb5d6dd2b1602c0cb0b9db1621bafc7ed66e35ff9fe092" [[package]] name = "localnet-orchestrator" @@ -5173,7 +5154,7 @@ dependencies = [ "nym-validator-client", "nym-vesting-contract-common", "rand 0.8.6", - "reqwest 0.13.1", + "reqwest 0.13.4", "serde", "serde_json", "sqlx", @@ -5189,32 +5170,18 @@ dependencies = [ [[package]] name = "lock_api" -version = "0.4.13" +version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96936507f153605bddfcda068dd804796c84324ed2510809e5b2a624c81da765" +checksum = "224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965" dependencies = [ - "autocfg", "scopeguard", ] [[package]] name = "log" -version = "0.4.29" +version = "0.4.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" - -[[package]] -name = "loom" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "419e0dc8046cb947daa77eb95ae174acfbddb7673b4151f56d1eed8e93fbfaca" -dependencies = [ - "cfg-if", - "generator", - "scoped-tls", - "tracing", - "tracing-subscriber", -] +checksum = "113b30b4cd05f7c06868fdb2854f66a7b9fece9a48425351cd532e810d74024f" [[package]] name = "lru-slab" @@ -5336,10 +5303,20 @@ dependencies = [ ] [[package]] -name = "memchr" -version = "2.7.5" +name = "md-5" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0" +checksum = "69b6441f590336821bb897fb28fc622898ccceb1d6cea3fde5ea86b090c4de98" +dependencies = [ + "cfg-if", + "digest 0.11.3", +] + +[[package]] +name = "memchr" +version = "2.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b947ae49db0d222b1dbc6b113ce7248a3fc3a6ca21b696717bfc000ba4484d8" [[package]] name = "memoffset" @@ -5368,9 +5345,9 @@ dependencies = [ [[package]] name = "minicov" -version = "0.3.7" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f27fe9f1cc3c22e1687f9446c2083c4c5fc7f0bcf1c7a86bdbded14985895b4b" +checksum = "4869b6a491569605d66d3952bcdf03df789e5b536e5f0cf7758a7f08a55ae24d" dependencies = [ "cc", "walkdir", @@ -5389,6 +5366,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316" dependencies = [ "adler2", + "simd-adler32", ] [[package]] @@ -5405,9 +5383,9 @@ dependencies = [ [[package]] name = "mio" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50b7e5b27aa02a74bac8c3f23f448f8d87ff11f92d3aac1a6ed369ee08cc56c1" +checksum = "02bd0af71c67b473010cbbc60715ee815645a4dc942899111f494b4b737d6fda" dependencies = [ "libc", "wasi 0.11.1+wasi-snapshot-preview1", @@ -5490,23 +5468,21 @@ dependencies = [ [[package]] name = "moka" -version = "0.12.10" +version = "0.12.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9321642ca94a4282428e6ea4af8cc2ca4eac48ac7a6a4ea8f33f76d0ce70926" +checksum = "957228ad12042ee839f93c8f257b62b4c0ab5eaae1d4fa60de53b27c9d7c5046" dependencies = [ "async-lock", "crossbeam-channel", "crossbeam-epoch", "crossbeam-utils", + "equivalent", "event-listener", "futures-util", - "loom", "parking_lot", "portable-atomic", - "rustc_version 0.4.1", "smallvec", "tagptr", - "thiserror 1.0.69", "uuid", ] @@ -5540,7 +5516,7 @@ version = "0.25.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3ec2f5b6839be2a19d7fa5aab5bc444380f6311c2b693551cb80f45caaa7b5ef" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.12.1", "libc", "log", "netlink-packet-core", @@ -5571,9 +5547,9 @@ dependencies = [ [[package]] name = "netlink-sys" -version = "0.8.7" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16c903aa70590cb93691bf97a767c8d1d6122d2cc9070433deb3bbf36ce8bd23" +checksum = "cd6c30ed10fa69cc491d491b85cc971f6bdeb8e7367b7cde2ee6cc878d583fae" dependencies = [ "bytes", "libc", @@ -5601,7 +5577,7 @@ version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.12.1", "cfg-if", "cfg_aliases", "libc", @@ -5613,7 +5589,7 @@ version = "0.30.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "74523f3a35e05aba87a1d978330aef40f67b0304ac79c1c00b294c9830543db6" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.12.1", "cfg-if", "cfg_aliases", "libc", @@ -5626,7 +5602,7 @@ version = "0.31.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cf20d2fde8ff38632c426f1165ed7436270b44f199fc55284c38276f9db47c3d" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.12.1", "cfg-if", "cfg_aliases", "libc", @@ -5674,9 +5650,9 @@ dependencies = [ [[package]] name = "ntapi" -version = "0.4.1" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4" +checksum = "c3b335231dfd352ffb0f8017f3b6027a4917f7df785ea2143d8af2adc66980ae" dependencies = [ "winapi", ] @@ -5741,9 +5717,9 @@ dependencies = [ [[package]] name = "num-conv" -version = "0.1.0" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" +checksum = "521739c6d2bac4aa25192232afe6841231376b2b26d4d9fae5ecf8ca5772e441" [[package]] name = "num-integer" @@ -5788,9 +5764,9 @@ dependencies = [ [[package]] name = "num_enum" -version = "0.7.5" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1207a7e20ad57b847bbddc6776b968420d38292bbfe2089accff5e19e82454c" +checksum = "5d0bca838442ec211fa11de3a8b0e0e8f3a4522575b5c4c06ed722e005036f26" dependencies = [ "num_enum_derive", "rustversion", @@ -5798,9 +5774,9 @@ dependencies = [ [[package]] name = "num_enum_derive" -version = "0.7.5" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff32365de1b6743cb203b710788263c44a03de03802daf96092f2da4fe6ba4d7" +checksum = "680998035259dcfcafe653688bf2aa6d3e2dc05e98be6ab46afb089dc84f1df8" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -5876,9 +5852,9 @@ dependencies = [ "pin-project", "rand 0.8.6", "rand_chacha 0.3.1", - "reqwest 0.13.1", + "reqwest 0.13.4", "schemars 0.8.22", - "semver 1.0.27", + "semver 1.0.28", "serde", "serde_json", "sha2 0.10.9", @@ -5968,7 +5944,7 @@ dependencies = [ "nym-service-provider-requests-common", "nym-validator-client", "nym-wireguard-types", - "semver 1.0.27", + "semver 1.0.28", "thiserror 2.0.18", "tokio", "tokio-util", @@ -5981,7 +5957,7 @@ version = "1.21.1" dependencies = [ "base64 0.22.1", "bincode", - "hmac", + "hmac 0.12.1", "nym-credentials-interface", "nym-crypto", "nym-network-defaults", @@ -5990,7 +5966,7 @@ dependencies = [ "nym-test-utils", "nym-wireguard-types", "rand 0.8.6", - "semver 1.0.27", + "semver 1.0.28", "serde", "sha2 0.10.9", "strum_macros 0.28.0", @@ -6031,7 +6007,7 @@ dependencies = [ "schemars 0.8.22", "serde", "serde_json", - "tonic 0.14.4", + "tonic 0.14.6", "tracing", "tracing-opentelemetry", "tracing-subscriber", @@ -6198,7 +6174,7 @@ dependencies = [ "gloo-timers", "http-body-util", "humantime", - "hyper 1.9.0", + "hyper 1.10.1", "hyper-util", "nym-bandwidth-controller", "nym-client-core-config-types", @@ -6483,7 +6459,7 @@ dependencies = [ "nym-upgrade-mode-check", "nym-validator-client", "rand 0.8.6", - "reqwest 0.13.1", + "reqwest 0.13.4", "serde", "serde_json", "sqlx", @@ -6524,7 +6500,7 @@ dependencies = [ "nym-network-defaults", "nym-validator-client", "rand 0.8.6", - "reqwest 0.13.1", + "reqwest 0.13.4", "serde", "serde_json", "sqlx", @@ -6552,7 +6528,7 @@ dependencies = [ "nym-http-api-common", "nym-serde-helpers", "nym-upgrade-mode-check", - "reqwest 0.13.1", + "reqwest 0.13.4", "schemars 0.8.22", "serde", "serde_json", @@ -6696,7 +6672,7 @@ dependencies = [ "ed25519-dalek", "generic-array 0.14.7", "hkdf", - "hmac", + "hmac 0.12.1", "jwt-simple", "libcrux-curve25519", "libcrux-psq", @@ -6735,7 +6711,7 @@ dependencies = [ "nym-validator-client", "nyxd-scraper-psql", "nyxd-scraper-shared", - "reqwest 0.13.1", + "reqwest 0.13.4", "schemars 0.8.22", "serde", "serde_json", @@ -6798,7 +6774,7 @@ dependencies = [ "nym-http-api-client", "nym-network-defaults", "nym-validator-client", - "semver 1.0.27", + "semver 1.0.28", "serde", "thiserror 2.0.18", "tokio", @@ -6812,7 +6788,7 @@ version = "1.21.1" dependencies = [ "nym-coconut-dkg-common", "nym-crypto", - "semver 1.0.27", + "semver 1.0.28", "serde", "thiserror 2.0.18", "time", @@ -6833,7 +6809,7 @@ dependencies = [ name = "nym-exit-policy" version = "1.21.1" dependencies = [ - "reqwest 0.13.1", + "reqwest 0.13.4", "serde", "serde_json", "thiserror 2.0.18", @@ -6853,8 +6829,8 @@ dependencies = [ "nym-sdk", "nym-sphinx-anonymous-replies", "tokio", - "uniffi 0.29.3", - "uniffi_build 0.29.3", + "uniffi 0.29.5", + "uniffi_build 0.29.5", ] [[package]] @@ -6922,7 +6898,7 @@ name = "nym-gateway-client" version = "1.21.1" dependencies = [ "futures", - "getrandom 0.2.16", + "getrandom 0.2.17", "gloo-utils 0.2.0", "nym-bandwidth-controller", "nym-credential-storage", @@ -6995,8 +6971,8 @@ dependencies = [ "pnet_packet", "rand 0.8.6", "rand 0.9.2", - "reqwest 0.13.1", - "semver 1.0.27", + "reqwest 0.13.4", + "semver 1.0.28", "serde", "serde_json", "time", @@ -7089,8 +7065,8 @@ dependencies = [ "nym-sphinx-anonymous-replies", "thiserror 2.0.18", "tokio", - "uniffi 0.29.3", - "uniffi_build 0.29.3", + "uniffi 0.29.5", + "uniffi_build 0.29.5", ] [[package]] @@ -7124,8 +7100,8 @@ dependencies = [ "nym-http-api-common", "nym-network-defaults", "once_cell", - "reqwest 0.13.1", - "rustls 0.23.37", + "reqwest 0.13.4", + "rustls 0.23.40", "serde", "serde_json", "serde_plain", @@ -7146,7 +7122,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "reqwest 0.13.1", + "reqwest 0.13.4", "syn 2.0.117", "uuid", ] @@ -7236,7 +7212,7 @@ dependencies = [ "nym-sphinx", "pnet_packet", "rand 0.8.6", - "semver 1.0.27", + "semver 1.0.28", "serde", "thiserror 2.0.18", "time", @@ -7277,7 +7253,7 @@ dependencies = [ "nym-wireguard", "nym-wireguard-types", "rand 0.8.6", - "reqwest 0.13.1", + "reqwest 0.13.4", "serde", "serde_json", "thiserror 2.0.18", @@ -7330,7 +7306,7 @@ dependencies = [ "blake3", "libcrux-sha3", "num_enum", - "semver 1.0.27", + "semver 1.0.28", "strum 0.28.0", "strum_macros 0.28.0", "thiserror 2.0.18", @@ -7468,7 +7444,7 @@ dependencies = [ "nym-contracts-common", "rand_chacha 0.3.1", "schemars 0.8.22", - "semver 1.0.27", + "semver 1.0.28", "serde", "serde_repr", "thiserror 2.0.18", @@ -7559,7 +7535,7 @@ dependencies = [ "petgraph", "rand 0.8.6", "rand_chacha 0.3.1", - "reqwest 0.13.1", + "reqwest 0.13.4", "serde", "serde_json", "tokio", @@ -7699,7 +7675,7 @@ dependencies = [ "publicsuffix", "rand 0.8.6", "regex", - "reqwest 0.13.1", + "reqwest 0.13.4", "serde", "serde_json", "sqlx", @@ -7927,8 +7903,8 @@ dependencies = [ "rand 0.8.6", "rand_chacha 0.3.1", "regex", - "reqwest 0.13.1", - "semver 1.0.27", + "reqwest 0.13.4", + "semver 1.0.28", "serde", "serde_json", "serde_json_path", @@ -7959,7 +7935,7 @@ dependencies = [ "nym-credentials", "nym-crypto", "nym-gateway-probe", - "reqwest 0.13.1", + "reqwest 0.13.4", "serde", "serde_json", "time", @@ -8193,8 +8169,8 @@ dependencies = [ "parking_lot", "pnet_packet", "rand 0.8.6", - "reqwest 0.13.1", - "semver 1.0.27", + "reqwest 0.13.4", + "semver 1.0.28", "serde", "tap", "tempfile", @@ -8320,7 +8296,7 @@ dependencies = [ "nym-validator-client", "pin-project", "rand 0.8.6", - "reqwest 0.13.1", + "reqwest 0.13.4", "schemars 0.8.22", "serde", "tap", @@ -8600,7 +8576,7 @@ dependencies = [ "aes-gcm", "argon2", "generic-array 0.14.7", - "getrandom 0.2.16", + "getrandom 0.2.17", "rand 0.8.6", "serde", "serde_json", @@ -8668,7 +8644,7 @@ dependencies = [ "nym-sphinx-types", "nym-wasm-utils", "rand 0.8.6", - "reqwest 0.13.1", + "reqwest 0.13.4", "serde", "serde_json", "thiserror 2.0.18", @@ -8698,7 +8674,7 @@ dependencies = [ "cosmrs", "cosmwasm-std", "eyre", - "hmac", + "hmac 0.12.1", "itertools 0.14.0", "log", "nym-config", @@ -8706,7 +8682,7 @@ dependencies = [ "nym-mixnet-contract-common", "nym-validator-client", "nym-vesting-contract-common", - "reqwest 0.13.1", + "reqwest 0.13.4", "schemars 0.8.22", "serde", "serde_json", @@ -8730,7 +8706,7 @@ dependencies = [ "nym-crypto", "nym-http-api-client", "nym-test-utils", - "reqwest 0.13.1", + "reqwest 0.13.4", "serde", "serde_json", "thiserror 2.0.18", @@ -8777,7 +8753,7 @@ dependencies = [ "nym-serde-helpers", "nym-vesting-contract-common", "prost 0.13.5", - "reqwest 0.13.1", + "reqwest 0.13.4", "serde", "serde_json", "sha2 0.10.9", @@ -8944,7 +8920,7 @@ version = "1.21.1" dependencies = [ "console_error_panic_hook", "futures", - "getrandom 0.2.16", + "getrandom 0.2.17", "gloo-net", "gloo-utils 0.2.0", "js-sys", @@ -9082,7 +9058,7 @@ dependencies = [ "nym-bin-common", "nym-config", "nym-task", - "reqwest 0.13.1", + "reqwest 0.13.4", "serde", "serde_json", "sha2 0.10.9", @@ -9109,7 +9085,7 @@ dependencies = [ "nym-task", "nym-validator-client", "nyxd-scraper-sqlite", - "reqwest 0.13.1", + "reqwest 0.13.4", "schemars 0.8.22", "serde", "sqlx", @@ -9185,28 +9161,37 @@ dependencies = [ [[package]] name = "objc2-core-foundation" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c10c2894a6fed806ade6027bcd50662746363a9589d3ec9d9bef30a4e4bc166" +checksum = "2a180dd8642fa45cdb7dd721cd4c11b1cadd4929ce112ebd8b9f5803cc79d536" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.12.1", ] [[package]] name = "objc2-io-kit" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71c1c64d6120e51cd86033f67176b1cb66780c2efe34dec55176f77befd93c0a" +checksum = "33fafba39597d6dc1fb709123dfa8289d39406734be322956a69f0931c73bb15" dependencies = [ "libc", "objc2-core-foundation", ] [[package]] -name = "once_cell" -version = "1.21.3" +name = "objc2-system-configuration" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" +checksum = "7216bd11cbda54ccabcab84d523dc93b858ec75ecfb3a7d89513fa22464da396" +dependencies = [ + "objc2-core-foundation", +] + +[[package]] +name = "once_cell" +version = "1.21.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50" dependencies = [ "critical-section", "portable-atomic", @@ -9214,9 +9199,9 @@ dependencies = [ [[package]] name = "once_cell_polyfill" -version = "1.70.1" +version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" +checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" [[package]] name = "oorandom" @@ -9272,14 +9257,14 @@ dependencies = [ "bytes", "http 1.4.1", "opentelemetry", - "reqwest 0.12.22", + "reqwest 0.12.28", ] [[package]] name = "opentelemetry-otlp" -version = "0.31.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a2366db2dca4d2ad033cad11e6ee42844fd727007af5ad04a1730f4cb8163bf" +checksum = "1f69cd6acbb9af919df949cd1ec9e5e7fdc2ef15d234b6b795aaa525cc02f71f" dependencies = [ "http 1.4.1", "opentelemetry", @@ -9287,10 +9272,10 @@ dependencies = [ "opentelemetry-proto", "opentelemetry_sdk", "prost 0.14.3", - "reqwest 0.12.22", + "reqwest 0.12.28", "thiserror 2.0.18", "tokio", - "tonic 0.14.4", + "tonic 0.14.6", "tracing", ] @@ -9303,7 +9288,7 @@ dependencies = [ "opentelemetry", "opentelemetry_sdk", "prost 0.14.3", - "tonic 0.14.4", + "tonic 0.14.6", "tonic-prost", ] @@ -9328,15 +9313,6 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" -[[package]] -name = "ordered-float" -version = "2.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68f19d67e5a2795c94e73e0bb1cc1a7edeb2e28efd39e2e1c9b7a40c1108b11c" -dependencies = [ - "num-traits", -] - [[package]] name = "p256" version = "0.13.2" @@ -9378,9 +9354,9 @@ checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" [[package]] name = "parking_lot" -version = "0.12.4" +version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70d58bf43669b5795d1576d0641cfb6fbb2057bf629506267a92807158584a13" +checksum = "93857453250e3077bd71ff98b6a65ea6621a19bb0f559a85248955ac12c45a1a" dependencies = [ "lock_api", "parking_lot_core", @@ -9388,15 +9364,15 @@ dependencies = [ [[package]] name = "parking_lot_core" -version = "0.9.11" +version = "0.9.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc838d2a56b5b1a6c25f55575dfc605fabb63bb2365f6c2353ef9159aa69e4a5" +checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1" dependencies = [ "cfg-if", "libc", - "redox_syscall", + "redox_syscall 0.5.18", "smallvec", - "windows-targets 0.52.6", + "windows-link 0.2.1", ] [[package]] @@ -9424,9 +9400,9 @@ checksum = "35fb2e5f958ec131621fdd531e9fc186ed768cbe395337403ae56c17a74c68ec" [[package]] name = "pastey" -version = "0.2.1" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b867cad97c0791bbd3aaa6472142568c6c9e8f71937e98379f584cfb0cf35bec" +checksum = "2ee67f1008b1ba2321834326597b8e186293b049a023cdef258527550b9935b4" [[package]] name = "pathdiff" @@ -9436,9 +9412,9 @@ checksum = "df94ce210e5bc13cb6651479fa48d14f601d9858cfe0467f43ae157023b938d3" [[package]] name = "peg" -version = "0.8.5" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9928cfca101b36ec5163e70049ee5368a8a1c3c6efc9ca9c5f9cc2f816152477" +checksum = "0aad070be5b63aa72103f2fcdd70a83adbd5e90112ce5b574171ff1c65501773" dependencies = [ "peg-macros", "peg-runtime", @@ -9446,9 +9422,9 @@ dependencies = [ [[package]] name = "peg-macros" -version = "0.8.5" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6298ab04c202fa5b5d52ba03269fb7b74550b150323038878fe6c372d8280f71" +checksum = "ddd8ef6825cae95355031ae26a99b616a2a21f22ba2de0197c43dfb05acbe7ee" dependencies = [ "peg-runtime", "proc-macro2", @@ -9457,9 +9433,9 @@ dependencies = [ [[package]] name = "peg-runtime" -version = "0.8.5" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "132dca9b868d927b35b5dd728167b2dee150eb1ad686008fc71ccb298b776fca" +checksum = "7011d97b484a5ebdc4b1fdb3b12d5e4bbbea56e9d22b688f2e79e04b65a7d8a6" [[package]] name = "pem" @@ -9489,20 +9465,19 @@ checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220" [[package]] name = "pest" -version = "2.8.1" +version = "2.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1db05f56d34358a8b1066f67cbb203ee3e7ed2ba674a6263a1d5ec6db2204323" +checksum = "e0848c601009d37dfa3430c4666e147e49cdcf1b92ecd3e63657d8a5f19da662" dependencies = [ "memchr", - "thiserror 2.0.18", "ucd-trie", ] [[package]] name = "pest_derive" -version = "2.8.1" +version = "2.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb056d9e8ea77922845ec74a1c4e8fb17e7c218cc4fc11a15c5d25e189aa40bc" +checksum = "11f486f1ea21e6c10ed15d5a7c77165d0ee443402f0780849d1768e7d9d6fe77" dependencies = [ "pest", "pest_generator", @@ -9510,9 +9485,9 @@ dependencies = [ [[package]] name = "pest_generator" -version = "2.8.1" +version = "2.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87e404e638f781eb3202dc82db6760c8ae8a1eeef7fb3fa8264b2ef280504966" +checksum = "8040c4647b13b210a963c1ed407c1ff4fdfa01c31d6d2a098218702e6664f94f" dependencies = [ "pest", "pest_meta", @@ -9523,9 +9498,9 @@ dependencies = [ [[package]] name = "pest_meta" -version = "2.8.1" +version = "2.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edd1101f170f5903fde0914f899bb503d9ff5271d7ba76bbb70bea63690cc0d5" +checksum = "89815c69d36021a140146f26659a81d6c2afa33d216d736dd4be5381a7362220" dependencies = [ "pest", "sha2 0.10.9", @@ -9538,7 +9513,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" dependencies = [ "fixedbitset", - "indexmap 2.13.0", + "indexmap 2.14.0", ] [[package]] @@ -9547,8 +9522,19 @@ version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078" dependencies = [ - "phf_macros", - "phf_shared", + "phf_macros 0.11.3", + "phf_shared 0.11.3", +] + +[[package]] +name = "phf" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1562dc717473dbaa4c1f85a36410e03c047b2e7df7f45ee938fbef64ae7fadf" +dependencies = [ + "phf_macros 0.13.1", + "phf_shared 0.13.1", + "serde", ] [[package]] @@ -9557,8 +9543,8 @@ version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aef8048c789fa5e851558d709946d6d79a8ff88c0440c587967f8e94bfb1216a" dependencies = [ - "phf_generator", - "phf_shared", + "phf_generator 0.11.3", + "phf_shared 0.11.3", ] [[package]] @@ -9567,18 +9553,41 @@ version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d" dependencies = [ - "phf_shared", + "phf_shared 0.11.3", "rand 0.8.6", ] +[[package]] +name = "phf_generator" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "135ace3a761e564ec88c03a77317a7c6b80bb7f7135ef2544dbe054243b89737" +dependencies = [ + "fastrand", + "phf_shared 0.13.1", +] + [[package]] name = "phf_macros" version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f84ac04429c13a7ff43785d75ad27569f2951ce0ffd30a3321230db2fc727216" dependencies = [ - "phf_generator", - "phf_shared", + "phf_generator 0.11.3", + "phf_shared 0.11.3", + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "phf_macros" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "812f032b54b1e759ccd5f8b6677695d5268c588701effba24601f6932f8269ef" +dependencies = [ + "phf_generator 0.13.1", + "phf_shared 0.13.1", "proc-macro2", "quote", "syn 2.0.117", @@ -9590,23 +9599,32 @@ version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5" dependencies = [ - "siphasher 1.0.1", + "siphasher 1.0.3", +] + +[[package]] +name = "phf_shared" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e57fef6bc5981e38c2ce2d63bfa546861309f875b8a75f092d1d54ae2d64f266" +dependencies = [ + "siphasher 1.0.3", ] [[package]] name = "pin-project" -version = "1.1.10" +version = "1.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677f1add503faace112b9f1373e43e9e054bfdd22ff1a63c1bc485eaec6a6a8a" +checksum = "2466b2336ed02bcdca6b294417127b90ec92038d1d5c4fbeac971a922e0e0924" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.10" +version = "1.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" +checksum = "c96395f0a926bc13b1c17622aaddda1ecb55d49c8f1bf9777e4d877800a43f8b" dependencies = [ "proc-macro2", "quote", @@ -9615,9 +9633,9 @@ dependencies = [ [[package]] name = "pin-project-lite" -version = "0.2.16" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" +checksum = "a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd" [[package]] name = "pin-utils" @@ -9669,9 +9687,9 @@ dependencies = [ [[package]] name = "pkg-config" -version = "0.3.32" +version = "0.3.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" +checksum = "19f132c84eca552bf34cab8ec81f1c1dcc229b811638f9d283dceabe58c5569e" [[package]] name = "plain" @@ -9774,42 +9792,42 @@ dependencies = [ [[package]] name = "portable-atomic" -version = "1.11.1" +version = "1.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483" +checksum = "c33a9471896f1c69cecef8d20cbe2f7accd12527ce60845ff44c153bb2a21b49" [[package]] name = "portable-atomic-util" -version = "0.2.4" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8a2f0d8d040d7848a709caf78912debcc3f33ee4b3cac47d73d1e1069e83507" +checksum = "c2a106d1259c23fac8e543272398ae0e3c0b8d33c88ed73d0cc71b0f1d902618" dependencies = [ "portable-atomic", ] [[package]] name = "postgres-protocol" -version = "0.6.8" +version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76ff0abab4a9b844b93ef7b81f1efc0a366062aaef2cd702c76256b5dc075c54" +checksum = "56201207dac53e2f38e848e31b4b91616a6bb6e0c7205b77718994a7f49e70fc" dependencies = [ "base64 0.22.1", "byteorder", "bytes", "fallible-iterator", - "hmac", - "md-5", + "hmac 0.13.0", + "md-5 0.11.0", "memchr", - "rand 0.9.2", - "sha2 0.10.9", + "rand 0.10.1", + "sha2 0.11.0", "stringprep", ] [[package]] name = "postgres-types" -version = "0.2.9" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613283563cd90e1dfc3518d548caee47e0e725455ed619881f5cf21f36de4b48" +checksum = "8dc729a129e682e8d24170cd30ae1aa01b336b096cbb56df6d534ffec133d186" dependencies = [ "bytes", "fallible-iterator", @@ -9818,9 +9836,9 @@ dependencies = [ [[package]] name = "potential_utf" -version = "0.1.2" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5a7c30837279ca13e7c867e9e40053bc68740f988cb07f7ca6df43cc734b585" +checksum = "0103b1cef7ec0cf76490e969665504990193874ea05c85ff9bab8b911d0a0564" dependencies = [ "zerovec", ] @@ -9888,11 +9906,11 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "3.3.0" +version = "3.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edce586971a4dfaa28950c6f18ed55e0406c1ab88bbce2c6f6293a7aaba73d35" +checksum = "e67ba7e9b2b56446f1d419b1d807906278ffa1a658a8a5d8a39dcb1f5a78614f" dependencies = [ - "toml_edit 0.22.27", + "toml_edit 0.25.12+spec-1.1.0", ] [[package]] @@ -10027,9 +10045,9 @@ dependencies = [ [[package]] name = "psl" -version = "2.1.126" +version = "2.1.212" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45f621acfbd2ca5670eee9a95270747dfa9a29e63e1937d7e6a1ac6994331966" +checksum = "e9f6415ab1b08394487005d41ae7ee69e69903efa1ace538f3b274db605bf8ec" dependencies = [ "psl-types", ] @@ -10058,9 +10076,9 @@ checksum = "a993555f31e5a609f617c12db6250dedcac1b0a85076912c436e6fc9b2c8e6a3" [[package]] name = "quinn" -version = "0.11.8" +version = "0.11.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "626214629cda6781b6dc1d316ba307189c85ba657213ce642d9c77670f8202c8" +checksum = "b9e20a958963c291dc322d98411f541009df2ced7b5a4f2bd52337638cfccf20" dependencies = [ "bytes", "cfg_aliases", @@ -10068,8 +10086,8 @@ dependencies = [ "quinn-proto", "quinn-udp", "rustc-hash", - "rustls 0.23.37", - "socket2 0.5.10", + "rustls 0.23.40", + "socket2 0.6.4", "thiserror 2.0.18", "tokio", "tracing", @@ -10089,7 +10107,7 @@ dependencies = [ "rand 0.9.2", "ring", "rustc-hash", - "rustls 0.23.37", + "rustls 0.23.40", "rustls-pki-types", "slab", "thiserror 2.0.18", @@ -10100,16 +10118,16 @@ dependencies = [ [[package]] name = "quinn-udp" -version = "0.5.13" +version = "0.5.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcebb1209ee276352ef14ff8732e24cc2b02bbac986cd74a4c81bcb2f9881970" +checksum = "addec6a0dcad8a8d96a771f815f0eaf55f9d1805756410b39f5fa81332574cbd" dependencies = [ "cfg_aliases", "libc", "once_cell", - "socket2 0.5.10", + "socket2 0.6.4", "tracing", - "windows-sys 0.59.0", + "windows-sys 0.60.2", ] [[package]] @@ -10127,6 +10145,12 @@ version = "5.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" +[[package]] +name = "r-efi" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf" + [[package]] name = "radium" version = "0.7.0" @@ -10151,7 +10175,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1" dependencies = [ "rand_chacha 0.9.0", - "rand_core 0.9.3", + "rand_core 0.9.5", ] [[package]] @@ -10161,7 +10185,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d2e8e8bcc7961af1fdac401278c6a831614941f6164ee3bf4ce61b7edb162207" dependencies = [ "chacha20 0.10.0", - "getrandom 0.4.1", + "getrandom 0.4.2", "rand_core 0.10.1", ] @@ -10182,7 +10206,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" dependencies = [ "ppv-lite86", - "rand_core 0.9.3", + "rand_core 0.9.5", ] [[package]] @@ -10191,14 +10215,14 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom 0.2.16", + "getrandom 0.2.17", ] [[package]] name = "rand_core" -version = "0.9.3" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38" +checksum = "76afc826de14238e6e8c374ddcc1fa19e374fd8dd986b0d2af0d02377261d83c" dependencies = [ "getrandom 0.3.3", ] @@ -10221,9 +10245,9 @@ dependencies = [ [[package]] name = "rayon" -version = "1.10.0" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" +checksum = "fb39b166781f92d482534ef4b4b1b2568f42613b53e5b6c160e24cfbfa30926d" dependencies = [ "either", "rayon-core", @@ -10231,9 +10255,9 @@ dependencies = [ [[package]] name = "rayon-core" -version = "1.12.1" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" +checksum = "22e18b0f0062d30d4230b2e85ff77fdfe4326feb054b9783a3460d8435c8ab91" dependencies = [ "crossbeam-deque", "crossbeam-utils", @@ -10241,11 +10265,20 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.5.15" +version = "0.5.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e8af0dde094006011e6a740d4879319439489813bd0bcdc7d821beaeeff48ec" +checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.12.1", +] + +[[package]] +name = "redox_syscall" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b44b894f2a6e36457d665d1e08c3866add6ed5e70050c1b4ba8a8ddedb02ce7" +dependencies = [ + "bitflags 2.12.1", ] [[package]] @@ -10254,25 +10287,25 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4e608c6638b9c18977b00b475ac1f28d14e84b27d8d42f70e0bf1e3dec127ac" dependencies = [ - "getrandom 0.2.16", + "getrandom 0.2.17", "libredox", "thiserror 2.0.18", ] [[package]] name = "ref-cast" -version = "1.0.24" +version = "1.0.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a0ae411dbe946a674d89546582cea4ba2bb8defac896622d6496f14c23ba5cf" +checksum = "f354300ae66f76f1c85c5f84693f0ce81d747e2c3f21a45fef496d89c960bf7d" dependencies = [ "ref-cast-impl", ] [[package]] name = "ref-cast-impl" -version = "1.0.24" +version = "1.0.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1165225c21bff1f3bbce98f5a1f889949bc902d3575308cc7b0de30b4f6d27c7" +checksum = "b7186006dcb21920990093f30e3dea63b7d6e977bf1256be20c3563a5db070da" dependencies = [ "proc-macro2", "quote", @@ -10304,9 +10337,9 @@ dependencies = [ [[package]] name = "regex-syntax" -version = "0.8.5" +version = "0.8.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" +checksum = "dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a" [[package]] name = "reqwest" @@ -10351,38 +10384,36 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.12.22" +version = "0.12.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbc931937e6ca3a06e3b6c0aa7841849b160a90351d6ab467a8b9b9959767531" +checksum = "eddd3ca559203180a307f12d114c268abf583f59b03cb906fd0b3ff8646c1147" dependencies = [ - "async-compression", "base64 0.22.1", "bytes", "futures-channel", "futures-core", "futures-util", - "h2 0.4.11", + "h2 0.4.14", "http 1.4.1", "http-body 1.0.1", "http-body-util", - "hyper 1.9.0", - "hyper-rustls 0.27.7", + "hyper 1.10.1", + "hyper-rustls 0.27.9", "hyper-util", "js-sys", "log", "percent-encoding", "pin-project-lite", "quinn", - "rustls 0.23.37", - "rustls-native-certs 0.8.3", + "rustls 0.23.40", + "rustls-native-certs 0.8.4", "rustls-pki-types", "serde", "serde_json", "serde_urlencoded", "sync_wrapper 1.0.2", "tokio", - "tokio-rustls 0.26.2", - "tokio-util", + "tokio-rustls 0.26.4", "tower", "tower-http", "tower-service", @@ -10390,14 +10421,14 @@ dependencies = [ "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "webpki-roots 1.0.2", + "webpki-roots 1.0.7", ] [[package]] name = "reqwest" -version = "0.13.1" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04e9018c9d814e5f30cc16a0f03271aeab3571e609612d9fe78c1aa8d11c2f62" +checksum = "219c5811de6525e5416c7d5d53bb656d3afdbc6c5af816e0802bcfa42dbdc1c3" dependencies = [ "base64 0.22.1", "bytes", @@ -10406,15 +10437,15 @@ dependencies = [ "http 1.4.1", "http-body 1.0.1", "http-body-util", - "hyper 1.9.0", - "hyper-rustls 0.27.7", + "hyper 1.10.1", + "hyper-rustls 0.27.9", "hyper-util", "js-sys", "log", "percent-encoding", "pin-project-lite", "quinn", - "rustls 0.23.37", + "rustls 0.23.40", "rustls-pki-types", "rustls-platform-verifier", "serde", @@ -10422,7 +10453,7 @@ dependencies = [ "serde_urlencoded", "sync_wrapper 1.0.2", "tokio", - "tokio-rustls 0.26.2", + "tokio-rustls 0.26.4", "tokio-util", "tower", "tower-http", @@ -10445,9 +10476,9 @@ dependencies = [ [[package]] name = "resolv-conf" -version = "0.7.4" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95325155c684b1c89f7765e30bc1c42e4a6da51ca513615660cb8a62ef9a88e3" +checksum = "1e061d1b48cb8d38042de4ae0a7a6401009d6143dc80d2e2d6f31f0bdd6470c7" [[package]] name = "rfc6979" @@ -10455,7 +10486,7 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" dependencies = [ - "hmac", + "hmac 0.12.1", "subtle 2.6.1", ] @@ -10467,7 +10498,7 @@ checksum = "a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7" dependencies = [ "cc", "cfg-if", - "getrandom 0.2.16", + "getrandom 0.2.17", "libc", "untrusted", "windows-sys 0.52.0", @@ -10484,22 +10515,19 @@ dependencies = [ [[package]] name = "rmp" -version = "0.8.14" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "228ed7c16fa39782c3b3468e974aec2795e9089153cd08ee2e9aefb3613334c4" +checksum = "4ba8be72d372b2c9b35542551678538b562e7cf86c3315773cae48dfbfe7790c" dependencies = [ - "byteorder", "num-traits", - "paste", ] [[package]] name = "rmp-serde" -version = "1.3.0" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52e599a477cf9840e92f2cde9a7189e67b42c57532749bf90aea6ec10facd4db" +checksum = "72f81bee8c8ef9b577d1681a70ebbc962c232461e397b22c208c43c04b67a155" dependencies = [ - "byteorder", "rmp", "serde", ] @@ -10536,9 +10564,9 @@ dependencies = [ [[package]] name = "rust-embed" -version = "8.7.2" +version = "8.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "025908b8682a26ba8d12f6f2d66b987584a4a87bc024abc5bbc12553a8cd178a" +checksum = "04113cb9355a377d83f06ef1f0a45b8ab8cd7d8b1288160717d66df5c7988d27" dependencies = [ "rust-embed-impl", "rust-embed-utils", @@ -10547,9 +10575,9 @@ dependencies = [ [[package]] name = "rust-embed-impl" -version = "8.7.2" +version = "8.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6065f1a4392b71819ec1ea1df1120673418bf386f50de1d6f54204d836d4349c" +checksum = "da0902e4c7c8e997159ab384e6d0fc91c221375f6894346ae107f47dd0f3ccaa" dependencies = [ "proc-macro2", "quote", @@ -10560,9 +10588,9 @@ dependencies = [ [[package]] name = "rust-embed-utils" -version = "8.7.2" +version = "8.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6cc0c81648b20b70c491ff8cce00c1c3b223bb8ed2b5d41f0e54c6c4c0a3594" +checksum = "5bcdef0be6fe7f6fa333b1073c949729274b05f123a0ad7efcb8efd878e5c3b1" dependencies = [ "sha2 0.10.9", "walkdir", @@ -10585,9 +10613,9 @@ dependencies = [ [[package]] name = "rustc-hash" -version = "2.1.1" +version = "2.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" +checksum = "94300abf3f1ae2e2b8ffb7b58043de3d399c73fa6f4b73826402a5c457614dbe" [[package]] name = "rustc-stable-hash" @@ -10610,33 +10638,20 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" dependencies = [ - "semver 1.0.27", + "semver 1.0.28", ] [[package]] name = "rustix" -version = "0.38.44" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154" +checksum = "b6fe4565b9518b83ef4f91bb47ce29620ca828bd32cb7e408f0062e9930ba190" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.12.1", "errno", "libc", - "linux-raw-sys 0.4.15", - "windows-sys 0.59.0", -] - -[[package]] -name = "rustix" -version = "1.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11181fbabf243db407ef8df94a6ce0b2f9a733bd8be4ad02b4eda9602296cac8" -dependencies = [ - "bitflags 2.9.1", - "errno", - "libc", - "linux-raw-sys 0.9.4", - "windows-sys 0.60.2", + "linux-raw-sys", + "windows-sys 0.61.2", ] [[package]] @@ -10667,16 +10682,16 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.37" +version = "0.23.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "758025cb5fccfd3bc2fd74708fd4682be41d99e5dff73c377c0646c6012c73a4" +checksum = "ef86cd5876211988985292b91c96a8f2d298df24e75989a43a3c73f2d4d8168b" dependencies = [ "aws-lc-rs", "log", "once_cell", "ring", "rustls-pki-types", - "rustls-webpki 0.103.9", + "rustls-webpki 0.103.13", "subtle 2.6.1", "zeroize", ] @@ -10708,14 +10723,14 @@ dependencies = [ [[package]] name = "rustls-native-certs" -version = "0.8.3" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "612460d5f7bea540c490b2b6395d8e34a953e52b491accd6c86c8164c5932a63" +checksum = "dab5152771c58876a2146916e53e35057e1a4dfa2b9df0f0305b07f611fdea4d" dependencies = [ "openssl-probe 0.2.1", "rustls-pki-types", "schannel", - "security-framework 3.6.0", + "security-framework 3.7.0", ] [[package]] @@ -10738,9 +10753,9 @@ dependencies = [ [[package]] name = "rustls-pki-types" -version = "1.12.0" +version = "1.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "229a4a4c221013e7e1f1a043678c5cc39fe5171437c88fb47151a21e6f5b5c79" +checksum = "30a7197ae7eb376e574fe940d068c30fe0462554a3ddbe4eca7838e049c937a9" dependencies = [ "web-time", "zeroize", @@ -10748,20 +10763,20 @@ dependencies = [ [[package]] name = "rustls-platform-verifier" -version = "0.6.2" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d99feebc72bae7ab76ba994bb5e121b8d83d910ca40b36e0921f53becc41784" +checksum = "26d1e2536ce4f35f4846aa13bff16bd0ff40157cdb14cc056c7b14ba41233ba0" dependencies = [ "core-foundation 0.10.1", "core-foundation-sys", - "jni 0.21.1", + "jni", "log", "once_cell", - "rustls 0.23.37", - "rustls-native-certs 0.8.3", + "rustls 0.23.40", + "rustls-native-certs 0.8.4", "rustls-platform-verifier-android", - "rustls-webpki 0.103.9", - "security-framework 3.6.0", + "rustls-webpki 0.103.13", + "security-framework 3.7.0", "security-framework-sys", "webpki-root-certs", "windows-sys 0.61.2", @@ -10782,19 +10797,19 @@ dependencies = [ "aead", "aes-gcm", "chacha20poly1305", - "crypto-common 0.1.6", + "crypto-common 0.1.7", "der 0.7.10", "digest 0.10.7", "ecdsa", "ed25519-dalek", - "hmac", + "hmac 0.12.1", "p256", "p384", "paste", "pkcs8 0.10.2", "rand_core 0.6.4", "rsa", - "rustls 0.23.37", + "rustls 0.23.40", "rustls-pki-types", "rustls-webpki 0.102.8", "sec1", @@ -10826,9 +10841,9 @@ dependencies = [ [[package]] name = "rustls-webpki" -version = "0.103.9" +version = "0.103.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7df23109aa6c1567d1c575b9952556388da57401e4ace1d15f79eedad0d8f53" +checksum = "61c429a8649f110dddef65e2a5ad240f747e85f7758a6bccc7e5777bd33f756e" dependencies = [ "aws-lc-rs", "ring", @@ -10838,15 +10853,15 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.21" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a0d197bd2c9dc6e53b84da9556a69ba4cdfab8619eb41a8bd1cc2027a0f6b1d" +checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" [[package]] name = "ryu" -version = "1.0.20" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" +checksum = "9774ba4a74de5f7b1c1451ed6cd5285a32eddb5cccb8cc655a4e50009e06477f" [[package]] name = "same-file" @@ -10859,11 +10874,11 @@ dependencies = [ [[package]] name = "schannel" -version = "0.1.27" +version = "0.1.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d" +checksum = "91c1b7e4904c873ef0710c1f407dde2e6287de2bebc1bbbf7d430bb7cbffd939" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -10894,9 +10909,9 @@ dependencies = [ [[package]] name = "schemars" -version = "1.0.4" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82d20c4491bc164fa2f6c5d44565947a52ad80b9505d8e36f8d54c27c739fcd0" +checksum = "a2b42f36aa1cd011945615b92222f6bf73c599a102a300334cd7f8dbeec726cc" dependencies = [ "dyn-clone", "ref-cast", @@ -10916,12 +10931,6 @@ dependencies = [ "syn 2.0.117", ] -[[package]] -name = "scoped-tls" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" - [[package]] name = "scopeguard" version = "1.2.0" @@ -11008,7 +11017,7 @@ version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.12.1", "core-foundation 0.9.4", "core-foundation-sys", "libc", @@ -11017,11 +11026,11 @@ dependencies = [ [[package]] name = "security-framework" -version = "3.6.0" +version = "3.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d17b898a6d6948c3a8ee4372c17cb384f90d2e6e912ef00895b14fd7ab54ec38" +checksum = "b7f4bc775c73d9a02cde8bf7b2ec4c9d12743edf609006c7facc23998404cd1d" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.12.1", "core-foundation 0.10.1", "core-foundation-sys", "libc", @@ -11030,9 +11039,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.16.0" +version = "2.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "321c8673b092a9a42605034a9879d73cb79101ed5fd117bc9a597b89b4e9e61a" +checksum = "6ce2691df843ecc5d231c0b14ece2acc3efb62c0a398c7e1d875f3983ce020e3" dependencies = [ "core-foundation-sys", "libc", @@ -11049,9 +11058,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.27" +version = "1.0.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2" +checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd" dependencies = [ "serde", "serde_core", @@ -11082,28 +11091,6 @@ dependencies = [ "serde", ] -[[package]] -name = "serde-untagged" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9faf48a4a2d2693be24c6289dbe26552776eb7737074e6722891fadbe6c5058" -dependencies = [ - "erased-serde", - "serde", - "serde_core", - "typeid", -] - -[[package]] -name = "serde-value" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3a1a3341211875ef120e117ea7fd5228530ae7e7036a779fdc9117be6b3282c" -dependencies = [ - "ordered-float", - "serde", -] - [[package]] name = "serde-wasm-bindgen" version = "0.5.0" @@ -11128,11 +11115,12 @@ dependencies = [ [[package]] name = "serde_bytes" -version = "0.11.17" +version = "0.11.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8437fd221bde2d4ca316d61b90e337e9e702b3820b87d63caa9ba6c02bd06d96" +checksum = "a5d440709e79d88e51ac01c4b72fc6cb7314017bb7da9eeff678aa94c10e3ea8" dependencies = [ "serde", + "serde_core", ] [[package]] @@ -11242,12 +11230,13 @@ dependencies = [ [[package]] name = "serde_path_to_error" -version = "0.1.17" +version = "0.1.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59fab13f937fa393d08645bf3a84bdfe86e296747b506ada67bb15f10f218b2a" +checksum = "10a9ff822e371bb5403e391ecd83e182e0e77ba7f6fe0160b795797109d1b457" dependencies = [ "itoa", "serde", + "serde_core", ] [[package]] @@ -11281,9 +11270,9 @@ dependencies = [ [[package]] name = "serde_spanned" -version = "1.0.4" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8bbf91e5a4d6315eee45e704372590b30e260ee83af6639d64557f51b067776" +checksum = "6662b5879511e06e8999a8a235d848113e942c9124f211511b16466ee2995f26" dependencies = [ "serde_core", ] @@ -11302,19 +11291,19 @@ dependencies = [ [[package]] name = "serde_with" -version = "3.14.0" +version = "3.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2c45cd61fefa9db6f254525d46e392b852e0e61d9a1fd36e5bd183450a556d5" +checksum = "e72c1c2cb7b223fafb600a619537a871c2818583d619401b785e7c0b746ccde2" dependencies = [ "base64 0.22.1", + "bs58", "chrono", "hex", "indexmap 1.9.3", - "indexmap 2.13.0", + "indexmap 2.14.0", "schemars 0.9.0", - "schemars 1.0.4", - "serde", - "serde_derive", + "schemars 1.2.1", + "serde_core", "serde_json", "serde_with_macros", "time", @@ -11322,11 +11311,11 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.14.0" +version = "3.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de90945e6565ce0d9a25098082ed4ee4002e047cb59892c318d66821e14bb30f" +checksum = "b90c488738ecb4fb0262f41f43bc40efc5868d9fb744319ddf5f5317f417bfac" dependencies = [ - "darling", + "darling 0.23.0", "proc-macro2", "quote", "syn 2.0.117", @@ -11338,7 +11327,7 @@ version = "0.9.34+deprecated" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" dependencies = [ - "indexmap 2.13.0", + "indexmap 2.14.0", "itoa", "ryu", "serde", @@ -11401,10 +11390,21 @@ dependencies = [ ] [[package]] -name = "sha3" -version = "0.10.8" +name = "sha2" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" +checksum = "446ba717509524cb3f22f17ecc096f10f4822d76ab5c0b9822c5f9c284e825f4" +dependencies = [ + "cfg-if", + "cpufeatures 0.3.0", + "digest 0.11.3", +] + +[[package]] +name = "sha3" +version = "0.10.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77fd7028345d415a4034cf8777cd4f8ab1851274233b45f84e3d955502d93874" dependencies = [ "digest 0.10.7", "keccak 0.1.6", @@ -11431,9 +11431,9 @@ dependencies = [ [[package]] name = "shlex" -version = "1.3.0" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" +checksum = "f8fadd59c855ef2080decdef8ff161eb6661b86933c9d82e5ba29dc602a55aba" [[package]] name = "si-scale" @@ -11453,9 +11453,9 @@ dependencies = [ [[package]] name = "signal-hook-mio" -version = "0.2.4" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34db1a06d485c9142248b7a054f034b349b212551f3dfd19c94d45a754a217cd" +checksum = "b75a19a7a740b25bc7944bdee6172368f988763b744e3d4dfe753f6b4ece40cc" dependencies = [ "libc", "mio 0.8.11", @@ -11464,10 +11464,11 @@ dependencies = [ [[package]] name = "signal-hook-registry" -version = "1.4.5" +version = "1.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9203b8055f63a2a00e2f593bb0510367fe707d7ff1e5c872de2f537b339e5410" +checksum = "c4db69cba1110affc0e9f7bcd48bbf87b3f4fc7c61fc9155afd4c469eb3d6c1b" dependencies = [ + "errno", "libc", ] @@ -11493,9 +11494,9 @@ dependencies = [ [[package]] name = "simd-adler32" -version = "0.3.7" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" +checksum = "703d5c7ef118737c72f1af64ad2f6f8c5e1921f818cdcb97b8fe6fc69bf66214" [[package]] name = "simd_cesu8" @@ -11521,15 +11522,15 @@ checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" [[package]] name = "siphasher" -version = "1.0.1" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d" +checksum = "8ee5873ec9cce0195efcb7a4e9507a04cd49aec9c83d0389df45b1ef7ba2e649" [[package]] name = "slab" -version = "0.4.11" +version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a2ae44ef20feb57a68b23d846850f861394c2e02dc425a50098ae8c90267589" +checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5" [[package]] name = "smallvec" @@ -11564,17 +11565,17 @@ dependencies = [ "hickory-proto", "hickory-resolver", "http-body-util", - "hyper 1.9.0", + "hyper 1.10.1", "hyper-util", "nym-bin-common", "nym-ip-packet-requests", "nym-sdk", - "reqwest 0.13.1", - "rustls 0.23.37", + "reqwest 0.13.4", + "rustls 0.23.40", "smoltcp", "thiserror 2.0.18", "tokio", - "tokio-rustls 0.26.2", + "tokio-rustls 0.26.4", "tokio-smoltcp", "tokio-tungstenite", "tracing", @@ -11589,12 +11590,12 @@ dependencies = [ "bytes", "futures", "futures-rustls", - "getrandom 0.2.16", - "getrandom 0.4.1", + "getrandom 0.2.17", + "getrandom 0.4.2", "hickory-proto", "http 1.4.1", "http-body-util", - "hyper 1.9.0", + "hyper 1.10.1", "js-sys", "nym-bin-common", "nym-ip-packet-requests", @@ -11603,10 +11604,10 @@ dependencies = [ "nym-wasm-client-core", "nym-wasm-utils", "rand 0.8.6", - "rustls 0.23.37", + "rustls 0.23.40", "rustls-pki-types", "rustls-rustcrypto", - "semver 1.0.27", + "semver 1.0.28", "serde", "serde-wasm-bindgen 0.6.5", "smoltcp", @@ -11686,9 +11687,9 @@ dependencies = [ [[package]] name = "socket2" -version = "0.6.3" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a766e1110788c36f4fa1c2b71b387a7815aa65f88ce0229841826633d93723e" +checksum = "52d1cfed4120b4d927bf7c0f86d2087a4a7d6027c906d9f9d525a80573b9be51" dependencies = [ "libc", "windows-sys 0.61.2", @@ -11710,7 +11711,7 @@ dependencies = [ "curve25519-dalek", "digest 0.10.7", "hkdf", - "hmac", + "hmac 0.12.1", "lioness", "rand 0.8.6", "rand_distr", @@ -11779,14 +11780,14 @@ dependencies = [ "futures-intrusive", "futures-io", "futures-util", - "hashbrown 0.15.4", + "hashbrown 0.15.5", "hashlink", - "indexmap 2.13.0", + "indexmap 2.14.0", "log", "memchr", "once_cell", "percent-encoding", - "rustls 0.23.37", + "rustls 0.23.40", "serde", "serde_json", "sha2 0.10.9", @@ -11846,7 +11847,7 @@ checksum = "aa003f0038df784eb8fecbbac13affe3da23b45194bd57dba231c8f48199c526" dependencies = [ "atoi", "base64 0.22.1", - "bitflags 2.9.1", + "bitflags 2.12.1", "byteorder", "bytes", "chrono", @@ -11861,10 +11862,10 @@ dependencies = [ "generic-array 0.14.7", "hex", "hkdf", - "hmac", + "hmac 0.12.1", "itoa", "log", - "md-5", + "md-5 0.10.6", "memchr", "once_cell", "percent-encoding", @@ -11879,7 +11880,7 @@ dependencies = [ "thiserror 2.0.18", "time", "tracing", - "whoami", + "whoami 1.6.1", ] [[package]] @@ -11890,7 +11891,7 @@ checksum = "db58fcd5a53cf07c184b154801ff91347e4c30d17a3562a635ff028ad5deda46" dependencies = [ "atoi", "base64 0.22.1", - "bitflags 2.9.1", + "bitflags 2.12.1", "byteorder", "chrono", "crc", @@ -11901,11 +11902,11 @@ dependencies = [ "futures-util", "hex", "hkdf", - "hmac", + "hmac 0.12.1", "home", "itoa", "log", - "md-5", + "md-5 0.10.6", "memchr", "once_cell", "rand 0.8.6", @@ -11918,7 +11919,7 @@ dependencies = [ "thiserror 2.0.18", "time", "tracing", - "whoami", + "whoami 1.6.1", ] [[package]] @@ -11959,9 +11960,9 @@ dependencies = [ [[package]] name = "stable_deref_trait" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" +checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596" [[package]] name = "static_assertions" @@ -11977,7 +11978,7 @@ checksum = "bf776ba3fa74f83bf4b63c3dcbbf82173db2632ed8452cb2d891d33f459de70f" dependencies = [ "new_debug_unreachable", "parking_lot", - "phf_shared", + "phf_shared 0.11.3", "precomputed-hash", "serde", ] @@ -11988,8 +11989,8 @@ version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c711928715f1fe0fe509c53b43e993a9a557babc2d0a3567d0a3006f1ac931a0" dependencies = [ - "phf_generator", - "phf_shared", + "phf_generator 0.11.3", + "phf_shared 0.11.3", "proc-macro2", "quote", ] @@ -12088,7 +12089,7 @@ checksum = "efc6310a69b44420f3bf53d518077615b7d466cc57df7a80e404e7feb8c510f7" dependencies = [ "aes-gcm", "aes-keywrap", - "getrandom 0.2.16", + "getrandom 0.2.17", "hmac-sha256", "hmac-sha512", "ml-dsa", @@ -12146,9 +12147,9 @@ dependencies = [ [[package]] name = "sysinfo" -version = "0.37.0" +version = "0.37.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07cec4dc2d2e357ca1e610cfb07de2fa7a10fc3e9fe89f72545f3d244ea87753" +checksum = "16607d5caffd1c07ce073528f9ed972d88db15dd44023fa57142963be3feb11f" dependencies = [ "libc", "memchr", @@ -12175,7 +12176,7 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a13f3d0daba03132c0aa9767f98351b3488edc2c100cda2d2ec2b04f3d8d3c8b" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.12.1", "core-foundation 0.9.4", "system-configuration-sys 0.6.0", ] @@ -12220,9 +12221,9 @@ dependencies = [ "libc", "memchr", "rayon", - "reqwest 0.12.22", + "reqwest 0.12.28", "rustc-stable-hash", - "semver 1.0.27", + "semver 1.0.28", "serde", "serde_json", "sha2 0.10.9", @@ -12241,9 +12242,9 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "tar" -version = "0.4.45" +version = "0.4.46" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22692a6476a21fa75fdfc11d452fda482af402c008cdbaf3476414e122040973" +checksum = "3f6221d9a6003c78398e3b239969f352578258df48c8eb051caadae0015bc840" dependencies = [ "filetime", "libc", @@ -12252,15 +12253,15 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.20.0" +version = "3.27.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8a64e3985349f2441a1a9ef0b853f869006c3855f2cda6862a94d26ebb9d6a1" +checksum = "32497e9a4c7b38532efcdebeef879707aa9f794296a4f0244f6f69e9bc8574bd" dependencies = [ "fastrand", - "getrandom 0.3.3", + "getrandom 0.4.2", "once_cell", - "rustix 1.0.8", - "windows-sys 0.59.0", + "rustix", + "windows-sys 0.61.2", ] [[package]] @@ -12333,12 +12334,12 @@ dependencies = [ "bytes", "flex-error", "futures", - "getrandom 0.2.16", + "getrandom 0.2.17", "peg", "pin-project", "rand 0.8.6", "reqwest 0.11.27", - "semver 1.0.27", + "semver 1.0.28", "serde", "serde_bytes", "serde_json", @@ -12378,19 +12379,19 @@ dependencies = [ [[package]] name = "terminal_size" -version = "0.4.3" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60b8cb979cb11c32ce1603f8137b22262a9d131aaa5c37b5678025f22b8becd0" +checksum = "230a1b821ccbd75b185820a1f1ff7b14d21da1e442e22c0863ea5f08771a8874" dependencies = [ - "rustix 1.0.8", - "windows-sys 0.60.2", + "rustix", + "windows-sys 0.61.2", ] [[package]] name = "test-with" -version = "0.15.4" +version = "0.15.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0f370b9efbfbbc5f057cbce9888373eaeb146a3095bb8cc869b199c94d15559" +checksum = "27838d769fa9bf364bf4a352ec88862b6e6cb96a8e6705cc78fbb16ff26ee8b9" dependencies = [ "proc-macro-error2", "proc-macro2", @@ -12459,9 +12460,9 @@ dependencies = [ [[package]] name = "time" -version = "0.3.41" +version = "0.3.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a7619e19bc266e0f9c5e6686659d394bc57973859340060a69221e57dbc0c40" +checksum = "743bd48c283afc0388f9b8827b976905fb217ad9e647fae3a379a9283c4def2c" dependencies = [ "deranged", "itoa", @@ -12470,22 +12471,22 @@ dependencies = [ "num-conv", "num_threads", "powerfmt", - "serde", + "serde_core", "time-core", "time-macros", ] [[package]] name = "time-core" -version = "0.1.4" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9e9a38711f559d9e3ce1cdb06dd7c5b8ea546bc90052da6d06bb76da74bb07c" +checksum = "7694e1cfe791f8d31026952abf09c69ca6f6fa4e1a1229e18988f06a04a12dca" [[package]] name = "time-macros" -version = "0.2.22" +version = "0.2.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3526739392ec93fd8b359c8e98514cb3e8e021beb4e5f597b00a0221f8ed8a49" +checksum = "2e70e4c5a0e0a8a4823ad65dfe1a6930e4f4d756dcd9dd7939022b5e8c501215" dependencies = [ "num-conv", "time-core", @@ -12493,9 +12494,9 @@ dependencies = [ [[package]] name = "tinystr" -version = "0.8.1" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d4f6d1145dcb577acf783d4e601bc1d76a13337bb54e6233add580b07344c8b" +checksum = "c8323304221c2a851516f22236c5722a72eaa19749016521d6dff0824447d96d" dependencies = [ "displaydoc", "zerovec", @@ -12513,9 +12514,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.9.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09b3661f17e86524eccd4371ab0429194e0d7c008abb45f7a7495b1719463c71" +checksum = "3e61e67053d25a4e82c844e8424039d9745781b3fc4f32b8d55ed50f5f667ef3" dependencies = [ "tinyvec_macros", ] @@ -12555,11 +12556,11 @@ checksum = "8fc7f01b389ac15039e4dc9531aa973a135d7a4135281b12d7c1bc79fd57fffe" dependencies = [ "bytes", "libc", - "mio 1.2.0", + "mio 1.2.1", "parking_lot", "pin-project-lite", "signal-hook-registry", - "socket2 0.6.3", + "socket2 0.6.4", "tokio-macros", "tracing", "windows-sys 0.61.2", @@ -12578,9 +12579,9 @@ dependencies = [ [[package]] name = "tokio-postgres" -version = "0.7.13" +version = "0.7.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c95d533c83082bb6490e0189acaa0bbeef9084e60471b696ca6988cd0541fb0" +checksum = "4dd8df5ef180f6364759a6f00f7aadda4fbbac86cdee37480826a6ff9f3574ce" dependencies = [ "async-trait", "byteorder", @@ -12591,15 +12592,15 @@ dependencies = [ "log", "parking_lot", "percent-encoding", - "phf", + "phf 0.13.1", "pin-project-lite", "postgres-protocol", "postgres-types", - "rand 0.9.2", - "socket2 0.5.10", + "rand 0.10.1", + "socket2 0.6.4", "tokio", "tokio-util", - "whoami", + "whoami 2.1.2", ] [[package]] @@ -12625,11 +12626,11 @@ dependencies = [ [[package]] name = "tokio-rustls" -version = "0.26.2" +version = "0.26.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e727b36a1a0e8b74c376ac2211e40c2c8af09fb4013c60d910495810f008e9b" +checksum = "1729aa945f29d91ba541258c8df89027d5792d85a8841fb65e8bf0f4ede4ef61" dependencies = [ - "rustls 0.23.37", + "rustls 0.23.40", "tokio", ] @@ -12649,9 +12650,9 @@ dependencies = [ [[package]] name = "tokio-stream" -version = "0.1.17" +version = "0.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eca58d7bba4a75707817a2c44174253f9236b2d5fbd055602e9d5c07c139a047" +checksum = "32da49809aab5c3bc678af03902d4ccddea2a87d028d86392a4b1560c6906c70" dependencies = [ "futures-core", "pin-project-lite", @@ -12661,12 +12662,10 @@ dependencies = [ [[package]] name = "tokio-test" -version = "0.4.4" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2468baabc3311435b55dd935f702f42cd1b8abb7e754fb7dfb16bd36aa88f9f7" +checksum = "3f6d24790a10a7af737693a3e8f1d03faef7e6ca0cc99aae5066f533766de545" dependencies = [ - "async-stream", - "bytes", "futures-core", "tokio", "tokio-stream", @@ -12701,15 +12700,14 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.15" +version = "0.7.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66a539a9ad6d5d281510d5bd368c973d636c02dbf8a67300bfb6b950696ad7df" +checksum = "9ae9cec805b01e8fc3fd2fe289f89149a9b66dd16786abd8b19cfa7b48cb0098" dependencies = [ "bytes", "futures-core", "futures-sink", "futures-util", - "hashbrown 0.15.4", "pin-project-lite", "slab", "tokio", @@ -12717,9 +12715,9 @@ dependencies = [ [[package]] name = "tokio_with_wasm" -version = "0.8.7" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4dfba9b946459940fb564dcf576631074cdfb0bfe4c962acd4c31f0dca7897e6" +checksum = "34e40fbbbd95441133fe9483f522db15dbfd26dc636164ebd8f2dd28759a6aa6" dependencies = [ "js-sys", "tokio", @@ -12731,9 +12729,9 @@ dependencies = [ [[package]] name = "tokio_with_wasm_proc" -version = "0.8.7" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37e04c1865c281139e5ccf633cb9f76ffdaabeebfe53b703984cf82878e2aabb" +checksum = "d01145a2c788d6aae4cd653afec1e8332534d7d783d01897cefcafe4428de992" dependencies = [ "quote", "syn 2.0.117", @@ -12766,13 +12764,28 @@ version = "0.9.12+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cf92845e79fc2e2def6a5d828f0801e29a2f8acc037becc5ab08595c7d5e9863" dependencies = [ - "indexmap 2.13.0", + "indexmap 2.14.0", "serde_core", - "serde_spanned 1.0.4", + "serde_spanned 1.1.1", "toml_datetime 0.7.5+spec-1.1.0", "toml_parser", "toml_writer", - "winnow", + "winnow 0.7.15", +] + +[[package]] +name = "toml" +version = "1.1.2+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81f3d15e84cbcd896376e6730314d59fb5a87f31e4b038454184435cd57defee" +dependencies = [ + "indexmap 2.14.0", + "serde_core", + "serde_spanned 1.1.1", + "toml_datetime 1.1.1+spec-1.1.0", + "toml_parser", + "toml_writer", + "winnow 1.0.3", ] [[package]] @@ -12802,40 +12815,49 @@ dependencies = [ "serde_core", ] +[[package]] +name = "toml_datetime" +version = "1.1.1+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3165f65f62e28e0115a00b2ebdd37eb6f3b641855f9d636d3cd4103767159ad7" +dependencies = [ + "serde_core", +] + [[package]] name = "toml_edit" version = "0.22.27" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" dependencies = [ - "indexmap 2.13.0", + "indexmap 2.14.0", "serde", "serde_spanned 0.6.9", "toml_datetime 0.6.11", "toml_write", - "winnow", + "winnow 0.7.15", ] [[package]] name = "toml_edit" -version = "0.23.10+spec-1.0.0" +version = "0.25.12+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84c8b9f757e028cee9fa244aea147aab2a9ec09d5325a9b01e0a49730c2b5269" +checksum = "d2153edc6955a6c354fad8f5efd38b6a8769bdccf9fe50f8e1329f81b0baa5d7" dependencies = [ - "indexmap 2.13.0", - "toml_datetime 0.7.5+spec-1.1.0", + "indexmap 2.14.0", + "toml_datetime 1.1.1+spec-1.1.0", "toml_parser", "toml_writer", - "winnow", + "winnow 1.0.3", ] [[package]] name = "toml_parser" -version = "1.0.9+spec-1.1.0" +version = "1.1.2+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "702d4415e08923e7e1ef96cd5727c0dfed80b4d2fa25db9647fe5eb6f7c5a4c4" +checksum = "a2abe9b86193656635d2411dc43050282ca48aa31c2451210f4202550afb7526" dependencies = [ - "winnow", + "winnow 1.0.3", ] [[package]] @@ -12846,9 +12868,9 @@ checksum = "5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801" [[package]] name = "toml_writer" -version = "1.0.6+spec-1.1.0" +version = "1.1.1+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab16f14aed21ee8bfd8ec22513f7287cd4a91aa92e44edfe2c17ddd004e92607" +checksum = "756daf9b1013ebe47a8776667b466417e2d4c5679d441c26230efd9ef78692db" [[package]] name = "tonic" @@ -12859,11 +12881,11 @@ dependencies = [ "async-trait", "base64 0.22.1", "bytes", - "h2 0.4.11", + "h2 0.4.14", "http 1.4.1", "http-body 1.0.1", "http-body-util", - "hyper 1.9.0", + "hyper 1.10.1", "hyper-timeout", "hyper-util", "percent-encoding", @@ -12880,28 +12902,28 @@ dependencies = [ [[package]] name = "tonic" -version = "0.14.4" +version = "0.14.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f32a6f80051a4111560201420c7885d0082ba9efe2ab61875c587bb6b18b9a0" +checksum = "ac2a5518c70fa84342385732db33fb3f44bc4cc748936eb5833d2df34d6445ef" dependencies = [ "async-trait", "axum", "base64 0.22.1", "bytes", - "h2 0.4.11", + "h2 0.4.14", "http 1.4.1", "http-body 1.0.1", "http-body-util", - "hyper 1.9.0", + "hyper 1.10.1", "hyper-timeout", "hyper-util", "percent-encoding", "pin-project", - "rustls-native-certs 0.8.3", - "socket2 0.6.3", + "rustls-native-certs 0.8.4", + "socket2 0.6.4", "sync_wrapper 1.0.2", "tokio", - "tokio-rustls 0.26.2", + "tokio-rustls 0.26.4", "tokio-stream", "tower", "tower-layer", @@ -12911,13 +12933,13 @@ dependencies = [ [[package]] name = "tonic-prost" -version = "0.14.4" +version = "0.14.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f86539c0089bfd09b1f8c0ab0239d80392af74c21bc9e0f15e1b4aca4c1647f" +checksum = "50849f68853be452acf590cde0b146665b8d507b3b8af17261df47e02c209ea0" dependencies = [ "bytes", "prost 0.14.3", - "tonic 0.14.4", + "tonic 0.14.6", ] [[package]] @@ -12928,7 +12950,7 @@ checksum = "ebe5ef63511595f1344e2d5cfa636d973292adc0eec1f0ad45fae9f0851ab1d4" dependencies = [ "futures-core", "futures-util", - "indexmap 2.13.0", + "indexmap 2.14.0", "pin-project-lite", "slab", "sync_wrapper 1.0.2", @@ -12941,12 +12963,12 @@ dependencies = [ [[package]] name = "tower-http" -version = "0.6.8" +version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4e6559d53cc268e5031cd8429d05415bc4cb4aefc4aa5d6cc35fbf5b924a1f8" +checksum = "4cfcf7e2740e6fc6d4d688b4ef00650406bb94adf4731e43c096c3a19fe40840" dependencies = [ "async-compression", - "bitflags 2.9.1", + "bitflags 2.12.1", "bytes", "futures-core", "futures-util", @@ -12955,7 +12977,6 @@ dependencies = [ "http-body-util", "http-range-header", "httpdate", - "iri-string", "mime", "mime_guess", "percent-encoding", @@ -12966,6 +12987,7 @@ dependencies = [ "tower-layer", "tower-service", "tracing", + "url", ] [[package]] @@ -13015,9 +13037,9 @@ dependencies = [ [[package]] name = "tracing-indicatif" -version = "0.3.11" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c714cc8fc46db04fcfddbd274c6ef59bebb1b435155984e7c6e89c3ce66f200" +checksum = "e1ef6990e0438749f0080573248e96631171a0b5ddfddde119aa5ba8c3a9c47e" dependencies = [ "indicatif", "tracing", @@ -13054,9 +13076,9 @@ dependencies = [ [[package]] name = "tracing-subscriber" -version = "0.3.22" +version = "0.3.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f30143827ddab0d256fd843b7a66d164e9f271cfa0dde49142c5ca0ca291f1e" +checksum = "cb7f578e5945fb242538965c2d0b04418d38ec25c79d160cd279bf0731c8d319" dependencies = [ "matchers", "nu-ansi-term", @@ -13072,9 +13094,9 @@ dependencies = [ [[package]] name = "tracing-test" -version = "0.2.5" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "557b891436fe0d5e0e363427fc7f217abf9ccd510d5136549847bdcbcd011d68" +checksum = "19a4c448db514d4f24c5ddb9f73f2ee71bfb24c526cf0c570ba142d1119e0051" dependencies = [ "tracing-core", "tracing-subscriber", @@ -13083,9 +13105,9 @@ dependencies = [ [[package]] name = "tracing-test-macro" -version = "0.2.5" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04659ddb06c87d233c566112c1c9c5b9e98256d9af50ec3bc9c8327f873a7568" +checksum = "ad06847b7afb65c7866a36664b75c40b895e318cea4f71299f013fb22965329d" dependencies = [ "quote", "syn 2.0.117", @@ -13239,18 +13261,18 @@ checksum = "9ea3136b675547379c4bd395ca6b938e5ad3c3d20fad76e7fe85f9e0d011419c" [[package]] name = "typed-builder" -version = "0.23.0" +version = "0.23.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d0dd654273fc253fde1df4172c31fb6615cf8b041d3a4008a028ef8b1119e66" +checksum = "31aa81521b70f94402501d848ccc0ecaa8f93c8eb6999eb9747e72287757ffda" dependencies = [ "typed-builder-macro", ] [[package]] name = "typed-builder-macro" -version = "0.23.0" +version = "0.23.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "016c26257f448222014296978b2c8456e2cad4de308c35bdb1e383acd569ef5b" +checksum = "076a02dc54dd46795c2e9c8282ed40bcfb1e22747e955de9389a1de28190fb26" dependencies = [ "proc-macro2", "quote", @@ -13265,9 +13287,9 @@ checksum = "bc7d623258602320d5c55d1bc22793b57daff0ec7efc270ea7d55ce1d5f5471c" [[package]] name = "typenum" -version = "1.20.0" +version = "1.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40ce102ab67701b8526c123c1bab5cbe42d7040ccfd0f64af1a385808d2f43de" +checksum = "b6f5e870be6c3b371b77fe0ee0bafb859fa4964b4404c27de1d380043c4dda20" [[package]] name = "typetag" @@ -13301,9 +13323,9 @@ checksum = "2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971" [[package]] name = "unicase" -version = "2.8.1" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75b844d17643ee918803943289730bec8aac480150456169e647ed0b576ba539" +checksum = "dbc4bc3a9f746d862c45cb89d705aa10f187bb96c76001afab07a0d35ce60142" [[package]] name = "unicode-bidi" @@ -13313,30 +13335,30 @@ checksum = "5c1cb5db39152898a79168971543b1cb5020dff7fe43c8dc468b0885f5e29df5" [[package]] name = "unicode-ident" -version = "1.0.18" +version = "1.0.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" +checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" [[package]] name = "unicode-normalization" -version = "0.1.24" +version = "0.1.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956" +checksum = "5fd4f6878c9cb28d874b009da9e8d183b5abc80117c40bbd187a1fde336be6e8" dependencies = [ "tinyvec", ] [[package]] name = "unicode-properties" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e70f2a8b45122e719eb623c01822704c4e0907e7e426a05927e1a1cfff5b75d0" +checksum = "7df058c713841ad818f1dc5d3fd88063241cc61f49f5fbea4b951e8cf5a8d71d" [[package]] name = "unicode-segmentation" -version = "1.12.0" +version = "1.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" +checksum = "c6f5d3c3b1bf09027a88a6bc961fc00497d651009560b5463668dc81b0fa87a8" [[package]] name = "unicode-width" @@ -13346,9 +13368,9 @@ checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" [[package]] name = "unicode-width" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a1a07cc7db3810833284e8d372ccdc6da29741639ecc70c9ec107df0fa6154c" +checksum = "b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254" [[package]] name = "unicode-xid" @@ -13358,43 +13380,43 @@ checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" [[package]] name = "uniffi" -version = "0.29.3" +version = "0.29.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b334fd69b3cf198b63616c096aabf9820ab21ed9b2aa1367ddd4b411068bf520" +checksum = "3291800a6b06569f7d3e15bdb6dc235e0f0c8bd3eb07177f430057feb076415f" dependencies = [ "anyhow", "camino", "cargo_metadata 0.19.2", "clap", - "uniffi_bindgen 0.29.3", - "uniffi_build 0.29.3", - "uniffi_core 0.29.3", - "uniffi_macros 0.29.3", - "uniffi_pipeline 0.29.3", + "uniffi_bindgen 0.29.5", + "uniffi_build 0.29.5", + "uniffi_core 0.29.5", + "uniffi_macros 0.29.5", + "uniffi_pipeline 0.29.5", ] [[package]] name = "uniffi" -version = "0.31.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8c6dec3fc6645f71a16a3fa9ff57991028153bd194ca97f4b55e610c73ce66a" +checksum = "dc5f2297ee5b893405bed1a6929faec4713a061df158ecf5198089f23910d470" dependencies = [ "anyhow", "camino", "cargo_metadata 0.19.2", "clap", - "uniffi_bindgen 0.31.0", - "uniffi_build 0.31.0", - "uniffi_core 0.31.0", - "uniffi_macros 0.31.0", - "uniffi_pipeline 0.31.0", + "uniffi_bindgen 0.31.1", + "uniffi_build 0.31.1", + "uniffi_core 0.31.1", + "uniffi_macros 0.31.1", + "uniffi_pipeline 0.31.1", ] [[package]] name = "uniffi_bindgen" -version = "0.29.3" +version = "0.29.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ff0132b533483cf19abb30bba5c72c24d9f3e4d9a2ff71cb3e22e73899fd46e" +checksum = "a04b99fa7796eaaa7b87976a0dbdd1178dc1ee702ea00aca2642003aef9b669e" dependencies = [ "anyhow", "askama 0.13.1", @@ -13404,23 +13426,23 @@ dependencies = [ "glob", "goblin", "heck 0.5.0", - "indexmap 2.13.0", + "indexmap 2.14.0", "once_cell", "serde", "tempfile", "textwrap", "toml 0.5.11", - "uniffi_internal_macros 0.29.3", - "uniffi_meta 0.29.3", - "uniffi_pipeline 0.29.3", - "uniffi_udl 0.29.3", + "uniffi_internal_macros 0.29.5", + "uniffi_meta 0.29.5", + "uniffi_pipeline 0.29.5", + "uniffi_udl 0.29.5", ] [[package]] name = "uniffi_bindgen" -version = "0.31.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ed0150801958d4825da56a41c71f000a457ac3a4613fa9647df78ac4b6b6881" +checksum = "8bc0c60a9607e7ab77a2ad47ec5530178015014839db25af7512447d2238016c" dependencies = [ "anyhow", "askama 0.14.0", @@ -13430,45 +13452,45 @@ dependencies = [ "glob", "goblin", "heck 0.5.0", - "indexmap 2.13.0", + "indexmap 2.14.0", "once_cell", "serde", "tempfile", "textwrap", "toml 0.9.12+spec-1.1.0", - "uniffi_internal_macros 0.31.0", - "uniffi_meta 0.31.0", - "uniffi_pipeline 0.31.0", - "uniffi_udl 0.31.0", + "uniffi_internal_macros 0.31.1", + "uniffi_meta 0.31.1", + "uniffi_pipeline 0.31.1", + "uniffi_udl 0.31.1", ] [[package]] name = "uniffi_build" -version = "0.29.3" +version = "0.29.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d84d607076008df3c32dd2100ee4e727269f11d3faa35691af70d144598f666" +checksum = "025a05cba02ee22b6624ac3d257e59c7395319ea8fe1aae33a7cdb4e2a3016cc" dependencies = [ "anyhow", "camino", - "uniffi_bindgen 0.29.3", + "uniffi_bindgen 0.29.5", ] [[package]] name = "uniffi_build" -version = "0.31.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b78fd9271a4c2e85bd2c266c5a9ede1fac676eb39fd77f636c27eaf67426fd5f" +checksum = "4c39413c43b955e4aa8a4e2b34bbd1b6b5ff6bd85532b52f9eb92fbe88c14458" dependencies = [ "anyhow", "camino", - "uniffi_bindgen 0.31.0", + "uniffi_bindgen 0.31.1", ] [[package]] name = "uniffi_core" -version = "0.29.3" +version = "0.29.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53e3b997192dc15ef1778c842001811ec7f241a093a693ac864e1fc938e64fa9" +checksum = "f38a9a27529ccff732f8efddb831b65b1e07f7dea3fd4cacd4a35a8c4b253b98" dependencies = [ "anyhow", "bytes", @@ -13478,9 +13500,9 @@ dependencies = [ [[package]] name = "uniffi_core" -version = "0.31.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0ef62e69762fbb9386dcb6c87cd3dd05d525fa8a3a579a290892e60ddbda47e" +checksum = "77baf5d539fe2e1ad6805e942dbc5dbdeb2b83eb5f2b3a6535d422ca4b02a12f" dependencies = [ "anyhow", "bytes", @@ -13490,12 +13512,12 @@ dependencies = [ [[package]] name = "uniffi_internal_macros" -version = "0.29.3" +version = "0.29.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f64bec2f3a33f2f08df8150e67fa45ba59a2ca740bf20c1beb010d4d791f9a1b" +checksum = "09acd2ce09c777dd65ee97c251d33c8a972afc04873f1e3b21eb3492ade16933" dependencies = [ "anyhow", - "indexmap 2.13.0", + "indexmap 2.14.0", "proc-macro2", "quote", "syn 2.0.117", @@ -13503,12 +13525,12 @@ dependencies = [ [[package]] name = "uniffi_internal_macros" -version = "0.31.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98f51ebca0d9a4b2aa6c644d5ede45c56f73906b96403c08a1985e75ccb64a01" +checksum = "b4b42137524f4be6400fcaca9d02c1d4ecb6ad917e4013c0b93235526d8396e5" dependencies = [ "anyhow", - "indexmap 2.13.0", + "indexmap 2.14.0", "proc-macro2", "quote", "syn 2.0.117", @@ -13516,9 +13538,9 @@ dependencies = [ [[package]] name = "uniffi_macros" -version = "0.29.3" +version = "0.29.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d8708716d2582e4f3d7e9f320290b5966eb951ca421d7630571183615453efc" +checksum = "5596f178c4f7aafa1a501c4e0b96236a96bc2ef92bdb453d83e609dad0040152" dependencies = [ "camino", "fs-err", @@ -13528,14 +13550,14 @@ dependencies = [ "serde", "syn 2.0.117", "toml 0.5.11", - "uniffi_meta 0.29.3", + "uniffi_meta 0.29.5", ] [[package]] name = "uniffi_macros" -version = "0.31.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db9d12529f1223d014fd501e5f29ca0884d15d6ed5ddddd9f506e55350327dc3" +checksum = "d9273ec45330d8fe9a3701b7b983cea7a4e218503359831967cb95d26b873561" dependencies = [ "camino", "fs-err", @@ -13545,88 +13567,88 @@ dependencies = [ "serde", "syn 2.0.117", "toml 0.9.12+spec-1.1.0", - "uniffi_meta 0.31.0", + "uniffi_meta 0.31.1", ] [[package]] name = "uniffi_meta" -version = "0.29.3" +version = "0.29.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d226fc167754ce548c5ece9828c8a06f03bf1eea525d2659ba6bd648bd8e2f3" +checksum = "beadc1f460eb2e209263c49c4f5b19e9a02e00a3b2b393f78ad10d766346ecff" dependencies = [ "anyhow", "siphasher 0.3.11", - "uniffi_internal_macros 0.29.3", - "uniffi_pipeline 0.29.3", + "uniffi_internal_macros 0.29.5", + "uniffi_pipeline 0.29.5", ] [[package]] name = "uniffi_meta" -version = "0.31.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9df6d413db2827c68588f8149d30d49b71d540d46539e435b23a7f7dbd4d4f86" +checksum = "431d2f443e7828a6c29d188de98b6771a6491ee98bba2d4372643bf93f988a18" dependencies = [ "anyhow", - "siphasher 1.0.1", - "uniffi_internal_macros 0.31.0", - "uniffi_pipeline 0.31.0", + "siphasher 1.0.3", + "uniffi_internal_macros 0.31.1", + "uniffi_pipeline 0.31.1", ] [[package]] name = "uniffi_pipeline" -version = "0.29.3" +version = "0.29.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b925b6421df15cf4bedee27714022cd9626fb4d7eee0923522a608b274ba4371" +checksum = "dd76b3ac8a2d964ca9fce7df21c755afb4c77b054a85ad7a029ad179cc5abb8a" dependencies = [ "anyhow", "heck 0.5.0", - "indexmap 2.13.0", + "indexmap 2.14.0", "tempfile", - "uniffi_internal_macros 0.29.3", + "uniffi_internal_macros 0.29.5", ] [[package]] name = "uniffi_pipeline" -version = "0.31.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a806dddc8208f22efd7e95a5cdf88ed43d0f3271e8f63b47e757a8bbdb43b63a" +checksum = "761ef74f6175e15603d0424cc5f98854c5baccfe7bf4ccb08e5816f9ab8af689" dependencies = [ "anyhow", "heck 0.5.0", - "indexmap 2.13.0", + "indexmap 2.14.0", "tempfile", - "uniffi_internal_macros 0.31.0", + "uniffi_internal_macros 0.31.1", ] [[package]] name = "uniffi_udl" -version = "0.29.3" +version = "0.29.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c42649b721df759d9d4692a376b82b62ce3028ec9fc466f4780fb8cdf728996" +checksum = "4319cf905911d70d5b97ce0f46f101619a22e9a189c8c46d797a9955e9233716" dependencies = [ "anyhow", "textwrap", - "uniffi_meta 0.29.3", + "uniffi_meta 0.29.5", "weedle2", ] [[package]] name = "uniffi_udl" -version = "0.31.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d1a7339539bf6f6fa3e9b534dece13f778bda2d54b1a6d4e40b4d6090ac26e7" +checksum = "68773ec0e1c067b6505a73bbf6a5782f31a7f9209333a0df97b87565c46bf370" dependencies = [ "anyhow", "textwrap", - "uniffi_meta 0.31.0", + "uniffi_meta 0.31.1", "weedle2", ] [[package]] name = "unit-prefix" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "323402cff2dd658f39ca17c789b502021b3f18707c91cdf22e3838e1b4023817" +checksum = "81e544489bf3d8ef66c953931f56617f423cd4b5494be343d9b9d3dda037b9a3" [[package]] name = "universal-hash" @@ -13634,7 +13656,7 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea" dependencies = [ - "crypto-common 0.1.6", + "crypto-common 0.1.7", "subtle 2.6.1", ] @@ -13683,11 +13705,11 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "utoipa" -version = "5.4.0" +version = "5.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fcc29c80c21c31608227e0912b2d7fddba57ad76b606890627ba8ee7964e993" +checksum = "8bde15df68e80b16c7d16b9616e80770ad158988daa56a27dccd1e55558b0160" dependencies = [ - "indexmap 2.13.0", + "indexmap 2.14.0", "serde", "serde_json", "utoipa-gen", @@ -13695,9 +13717,9 @@ dependencies = [ [[package]] name = "utoipa-gen" -version = "5.4.0" +version = "5.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d79d08d92ab8af4c5e8a6da20c47ae3f61a0f1dabc1997cdf2d082b757ca08b" +checksum = "6ba0b99ee52df3028635d93840c797102da61f8a7bb3cf751032455895b52ef8" dependencies = [ "proc-macro2", "quote", @@ -13758,11 +13780,11 @@ dependencies = [ [[package]] name = "uuid" -version = "1.23.1" +version = "1.23.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddd74a9687298c6858e9b88ec8935ec45d22e8fd5e6394fa1bd4e99a87789c76" +checksum = "d258b83ceec21034727ecee8c382cfa6c3e133699b0742c64571814fb420c9f7" dependencies = [ - "getrandom 0.4.1", + "getrandom 0.4.2", "js-sys", "serde_core", "wasm-bindgen", @@ -13816,18 +13838,18 @@ dependencies = [ [[package]] name = "vergen" -version = "9.0.6" +version = "9.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b2bf58be11fc9414104c6d3a2e464163db5ef74b12296bda593cac37b6e4777" +checksum = "b849a1f6d8639e8de261e81ee0fc881e3e3620db1af9f2e0da015d4382ceaf75" dependencies = [ "anyhow", - "cargo_metadata 0.19.2", + "cargo_metadata 0.23.1", "derive_builder", "regex", "rustc_version 0.4.1", "rustversion", "time", - "vergen-lib", + "vergen-lib 9.1.0", ] [[package]] @@ -13840,8 +13862,8 @@ dependencies = [ "derive_builder", "rustversion", "time", - "vergen 9.0.6", - "vergen-lib", + "vergen 9.1.0", + "vergen-lib 0.1.6", ] [[package]] @@ -13855,6 +13877,17 @@ dependencies = [ "rustversion", ] +[[package]] +name = "vergen-lib" +version = "9.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b34a29ba7e9c59e62f229ae1932fb1b8fb8a6fdcc99215a641913f5f5a59a569" +dependencies = [ + "anyhow", + "derive_builder", + "rustversion", +] + [[package]] name = "version_check" version = "0.9.5" @@ -13863,35 +13896,23 @@ checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" [[package]] name = "vt100" -version = "0.15.2" +version = "0.16.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84cd863bf0db7e392ba3bd04994be3473491b31e66340672af5d11943c6274de" +checksum = "054ff75fb8fa83e609e685106df4faeffdf3a735d3c74ebce97ec557d5d36fd9" dependencies = [ "itoa", - "log", - "unicode-width 0.1.14", + "unicode-width 0.2.2", "vte", ] [[package]] name = "vte" -version = "0.11.1" +version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5022b5fbf9407086c180e9557be968742d839e68346af7792b8592489732197" +checksum = "a5924018406ce0063cd67f8e008104968b74b563ee1b85dde3ed1f7cb87d3dbd" dependencies = [ "arrayvec", - "utf8parse", - "vte_generate_state_changes", -] - -[[package]] -name = "vte_generate_state_changes" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e369bee1b05d510a7b4ed645f5faa90619e05437111783ea5848f28d97d3c2e" -dependencies = [ - "proc-macro2", - "quote", + "memchr", ] [[package]] @@ -13921,20 +13942,20 @@ checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" [[package]] name = "wasi" -version = "0.14.2+wasi-0.2.4" +version = "0.14.7+wasi-0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3" +checksum = "883478de20367e224c0090af9cf5f9fa85bed63a95c1abf3afc5c083ebc06e8c" dependencies = [ - "wit-bindgen-rt", + "wasip2", ] [[package]] name = "wasip2" -version = "1.0.2+wasi-0.2.9" +version = "1.0.3+wasi-0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9517f9239f02c069db75e65f174b3da828fe5f5b945c4dd26bd25d89c03ebcf5" +checksum = "20064672db26d7cdc89c7798c48a0fdfac8213434a1186e5ef29fd560ae223d6" dependencies = [ - "wit-bindgen", + "wit-bindgen 0.57.1", ] [[package]] @@ -13943,7 +13964,7 @@ version = "0.4.0+wasi-0.3.0-rc-2026-01-06" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5428f8bf88ea5ddc08faddef2ac4a67e390b88186c703ce6dbd955e1c145aca5" dependencies = [ - "wit-bindgen", + "wit-bindgen 0.51.0", ] [[package]] @@ -13952,6 +13973,15 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b8dad83b4f25e74f184f64c43b150b91efe7647395b42289f38e50566d82855b" +[[package]] +name = "wasite" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66fe902b4a6b8028a753d5424909b764ccf79b7a209eac9bf97e59cda9f71a42" +dependencies = [ + "wasi 0.14.7+wasi-0.2.4", +] + [[package]] name = "wasix" version = "0.13.1" @@ -13963,48 +13993,32 @@ dependencies = [ [[package]] name = "wasm-bindgen" -version = "0.2.100" +version = "0.2.122" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5" +checksum = "3ed04576f974d2b2fba0f38c51dbc5518011e38c36bf1143164be765528fd409" dependencies = [ "cfg-if", "once_cell", "rustversion", "wasm-bindgen-macro", -] - -[[package]] -name = "wasm-bindgen-backend" -version = "0.2.100" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6" -dependencies = [ - "bumpalo", - "log", - "proc-macro2", - "quote", - "syn 2.0.117", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.50" +version = "0.4.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "555d470ec0bc3bb57890405e5d4322cc9ea83cebb085523ced7be4144dac1e61" +checksum = "9473dbd2991ae90b6291c3c32c30c6187ac49aa32f9905d1cce280ec1e110b0f" dependencies = [ - "cfg-if", "js-sys", - "once_cell", "wasm-bindgen", - "web-sys", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.100" +version = "0.2.122" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407" +checksum = "916151b09da36bd82f6615cbf3a419e2f0ba23a03c6160e8e92eb6bd4aa1dec6" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -14012,50 +14026,65 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.100" +version = "0.2.122" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" +checksum = "299047362ccbfce148b67ab7e73349f77748e00c8296f9542adfad2ad82c5c5e" dependencies = [ + "bumpalo", "proc-macro2", "quote", "syn 2.0.117", - "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.100" +version = "0.2.122" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d" +checksum = "9a929b2c61f11ba3e9bc35b50c1f25cb38e0e892c0c231ae2b8cf78d5dad4437" dependencies = [ "unicode-ident", ] [[package]] name = "wasm-bindgen-test" -version = "0.3.50" +version = "0.3.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66c8d5e33ca3b6d9fa3b4676d774c5778031d27a578c2b007f905acf816152c3" +checksum = "74fde991ccdc895cb7fbaa14b137d62af74d9011be67b71c694bfc40edd3119c" dependencies = [ + "async-trait", + "cast", "js-sys", + "libm", "minicov", + "nu-ansi-term", + "num-traits", + "oorandom", + "serde", + "serde_json", "wasm-bindgen", "wasm-bindgen-futures", "wasm-bindgen-test-macro", + "wasm-bindgen-test-shared", ] [[package]] name = "wasm-bindgen-test-macro" -version = "0.3.50" +version = "0.3.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17d5042cc5fa009658f9a7333ef24291b1291a25b6382dd68862a7f3b969f69b" +checksum = "e925354648d2a4d1bf205412e36d520a800280622eef4719678d268e5d40e978" dependencies = [ "proc-macro2", "quote", "syn 2.0.117", ] +[[package]] +name = "wasm-bindgen-test-shared" +version = "0.2.122" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "684365b586a9a6256c1cc3544eee8680de48d6041142f581776ec7b139622ae9" + [[package]] name = "wasm-encoder" version = "0.244.0" @@ -14073,16 +14102,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bb0e353e6a2fbdc176932bbaab493762eb1255a7900fe0fea1a2f96c296cc909" dependencies = [ "anyhow", - "indexmap 2.13.0", + "indexmap 2.14.0", "wasm-encoder", "wasmparser", ] [[package]] name = "wasm-streams" -version = "0.4.2" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15053d8d85c7eccdbefef60f06769760a563c7f0a9d6902a13d35c7800b0ad65" +checksum = "9d1ec4f6517c9e11ae630e200b2b65d193279042e28edd4a2cda233e46670bbb" dependencies = [ "futures-util", "js-sys", @@ -14097,17 +14126,17 @@ version = "0.244.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "47b807c72e1bac69382b3a6fb3dbe8ea4c0ed87ff5629b8685ae6b9a611028fe" dependencies = [ - "bitflags 2.9.1", - "hashbrown 0.15.4", - "indexmap 2.13.0", - "semver 1.0.27", + "bitflags 2.12.1", + "hashbrown 0.15.5", + "indexmap 2.14.0", + "semver 1.0.28", ] [[package]] name = "wasmtimer" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8d49b5d6c64e8558d9b1b065014426f35c18de636895d24893dbbd329743446" +checksum = "1c598d6b99ea013e35844697fc4670d08339d5cda15588f193c6beedd12f644b" dependencies = [ "futures", "js-sys", @@ -14119,9 +14148,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.77" +version = "0.3.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2" +checksum = "6d621441cfc37b84979402712047321980c178f299193a3589d05b99e8763436" dependencies = [ "js-sys", "wasm-bindgen", @@ -14143,7 +14172,7 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "57ffde1dc01240bdf9992e3205668b235e59421fd085e8a317ed98da0178d414" dependencies = [ - "phf", + "phf 0.11.3", "phf_codegen", "string_cache", "string_cache_codegen", @@ -14151,9 +14180,9 @@ dependencies = [ [[package]] name = "webpki-root-certs" -version = "1.0.6" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "804f18a4ac2676ffb4e8b5b5fa9ae38af06df08162314f96a68d2a363e21a8ca" +checksum = "f31141ce3fc3e300ae89b78c0dd67f9708061d1d2eda54b8209346fd6be9a92c" dependencies = [ "rustls-pki-types", ] @@ -14179,14 +14208,14 @@ version = "0.26.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "521bc38abb08001b01866da9f51eb7c5d647a19260e00054a8c7fd5f9e57f7a9" dependencies = [ - "webpki-roots 1.0.2", + "webpki-roots 1.0.7", ] [[package]] name = "webpki-roots" -version = "1.0.2" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e8983c3ab33d6fb807cfcdad2491c4ea8cbc8ed839181c7dfd9c67c83e261b2" +checksum = "52f5ee44c96cf55f1b349600768e3ece3a8f26010c05265ab73f945bb1a2eb9d" dependencies = [ "rustls-pki-types", ] @@ -14202,12 +14231,24 @@ dependencies = [ [[package]] name = "whoami" -version = "1.6.0" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6994d13118ab492c3c80c1f81928718159254c53c472bf9ce36f8dae4add02a7" +checksum = "5d4a4db5077702ca3015d3d02d74974948aba2ad9e12ab7df718ee64ccd7e97d" dependencies = [ - "redox_syscall", - "wasite", + "libredox", + "wasite 0.1.0", +] + +[[package]] +name = "whoami" +version = "2.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "998767ef88740d1f5b0682a9c53c24431453923962269c2db68ee43788c5a40d" +dependencies = [ + "libc", + "libredox", + "objc2-system-configuration", + "wasite 1.0.2", "web-sys", ] @@ -14219,9 +14260,9 @@ checksum = "c168940144dd21fd8046987c16a46a33d5fc84eec29ef9dcddc2ac9e31526b7c" [[package]] name = "widestring" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd7cf3379ca1aac9eea11fba24fd7e315d621f8dfe35c8d7d2be8b793726e07d" +checksum = "72069c3113ab32ab29e5584db3c6ec55d416895e60715417b5b883a357c3e471" [[package]] name = "winapi" @@ -14241,11 +14282,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.9" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" +checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -14399,6 +14440,17 @@ dependencies = [ "windows-link 0.2.1", ] +[[package]] +name = "windows-registry" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02752bf7fbdcce7f2a27a742f798510f3e5ad88dbe84871e5168e2120c3d5720" +dependencies = [ + "windows-link 0.2.1", + "windows-result 0.4.1", + "windows-strings 0.5.1", +] + [[package]] name = "windows-result" version = "0.3.4" @@ -14477,7 +14529,7 @@ version = "0.60.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" dependencies = [ - "windows-targets 0.53.2", + "windows-targets 0.53.5", ] [[package]] @@ -14537,18 +14589,19 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.53.2" +version = "0.53.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c66f69fcc9ce11da9966ddb31a40968cad001c5bedeb5c2b82ede4253ab48aef" +checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3" dependencies = [ - "windows_aarch64_gnullvm 0.53.0", - "windows_aarch64_msvc 0.53.0", - "windows_i686_gnu 0.53.0", - "windows_i686_gnullvm 0.53.0", - "windows_i686_msvc 0.53.0", - "windows_x86_64_gnu 0.53.0", - "windows_x86_64_gnullvm 0.53.0", - "windows_x86_64_msvc 0.53.0", + "windows-link 0.2.1", + "windows_aarch64_gnullvm 0.53.1", + "windows_aarch64_msvc 0.53.1", + "windows_i686_gnu 0.53.1", + "windows_i686_gnullvm 0.53.1", + "windows_i686_msvc 0.53.1", + "windows_x86_64_gnu 0.53.1", + "windows_x86_64_gnullvm 0.53.1", + "windows_x86_64_msvc 0.53.1", ] [[package]] @@ -14589,9 +14642,9 @@ checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" [[package]] name = "windows_aarch64_gnullvm" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" +checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53" [[package]] name = "windows_aarch64_msvc" @@ -14613,9 +14666,9 @@ checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" [[package]] name = "windows_aarch64_msvc" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" +checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006" [[package]] name = "windows_i686_gnu" @@ -14637,9 +14690,9 @@ checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" [[package]] name = "windows_i686_gnu" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3" +checksum = "960e6da069d81e09becb0ca57a65220ddff016ff2d6af6a223cf372a506593a3" [[package]] name = "windows_i686_gnullvm" @@ -14649,9 +14702,9 @@ checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" [[package]] name = "windows_i686_gnullvm" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" +checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c" [[package]] name = "windows_i686_msvc" @@ -14673,9 +14726,9 @@ checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" [[package]] name = "windows_i686_msvc" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" +checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2" [[package]] name = "windows_x86_64_gnu" @@ -14697,9 +14750,9 @@ checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" [[package]] name = "windows_x86_64_gnu" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" +checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499" [[package]] name = "windows_x86_64_gnullvm" @@ -14721,9 +14774,9 @@ checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" [[package]] name = "windows_x86_64_gnullvm" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" +checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1" [[package]] name = "windows_x86_64_msvc" @@ -14745,9 +14798,9 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "windows_x86_64_msvc" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" +checksum = "d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650" [[package]] name = "winnow" @@ -14758,6 +14811,15 @@ dependencies = [ "memchr", ] +[[package]] +name = "winnow" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0592e1c9d151f854e6fd382574c3a0855250e1d9b2f99d9281c6e6391af352f1" +dependencies = [ + "memchr", +] + [[package]] name = "winreg" version = "0.50.0" @@ -14774,8 +14836,8 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "22b4dbcc6c93786cf22e420ef96e8976bfb92a455070282302b74de5848191f4" dependencies = [ - "bitflags 2.9.1", - "getrandom 0.2.16", + "bitflags 2.12.1", + "getrandom 0.2.17", "ipnet", "libloading", "log", @@ -14793,6 +14855,12 @@ dependencies = [ "wit-bindgen-rust-macro", ] +[[package]] +name = "wit-bindgen" +version = "0.57.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ebf944e87a7c253233ad6766e082e3cd714b5d03812acc24c318f549614536e" + [[package]] name = "wit-bindgen-core" version = "0.51.0" @@ -14804,15 +14872,6 @@ dependencies = [ "wit-parser", ] -[[package]] -name = "wit-bindgen-rt" -version = "0.39.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" -dependencies = [ - "bitflags 2.9.1", -] - [[package]] name = "wit-bindgen-rust" version = "0.51.0" @@ -14821,7 +14880,7 @@ checksum = "b7c566e0f4b284dd6561c786d9cb0142da491f46a9fbed79ea69cdad5db17f21" dependencies = [ "anyhow", "heck 0.5.0", - "indexmap 2.13.0", + "indexmap 2.14.0", "prettyplease", "syn 2.0.117", "wasm-metadata", @@ -14851,8 +14910,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d66ea20e9553b30172b5e831994e35fbde2d165325bec84fc43dbf6f4eb9cb2" dependencies = [ "anyhow", - "bitflags 2.9.1", - "indexmap 2.13.0", + "bitflags 2.12.1", + "indexmap 2.14.0", "log", "serde", "serde_derive", @@ -14871,9 +14930,9 @@ checksum = "ecc8ac4bc1dc3381b7f59c34f00b67e18f910c2c0f50015669dde7def656a736" dependencies = [ "anyhow", "id-arena", - "indexmap 2.13.0", + "indexmap 2.14.0", "log", - "semver 1.0.27", + "semver 1.0.28", "serde", "serde_derive", "serde_json", @@ -14883,9 +14942,9 @@ dependencies = [ [[package]] name = "writeable" -version = "0.6.1" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea2f10b9bb0928dfb1b42b65e1f9e36f7f54dbdf08457afefb38afcdec4fa2bb" +checksum = "1ffae5123b2d3fc086436f8834ae3ab053a283cfac8fe0a0b8eaae044768a4c4" [[package]] name = "wyz" @@ -14910,12 +14969,12 @@ dependencies = [ [[package]] name = "xattr" -version = "1.5.1" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af3a19837351dc82ba89f8a125e22a3c475f05aba604acc023d62b2739ae2909" +checksum = "32e45ad4206f6d2479085147f02bc2ef834ac85886624a23575ae137c8aa8156" dependencies = [ "libc", - "rustix 1.0.8", + "rustix", ] [[package]] @@ -14926,11 +14985,10 @@ checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" [[package]] name = "yoke" -version = "0.8.0" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f41bb01b8226ef4bfd589436a297c53d118f65921786300e427be8d487695cc" +checksum = "abe8c5fda708d9ca3df187cae8bfb9ceda00dd96231bed36e445a1a48e66f9ca" dependencies = [ - "serde", "stable_deref_trait", "yoke-derive", "zerofrom", @@ -14938,9 +14996,9 @@ dependencies = [ [[package]] name = "yoke-derive" -version = "0.8.0" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6" +checksum = "de844c262c8848816172cef550288e7dc6c7b7814b4ee56b3e1553f275f1858e" dependencies = [ "proc-macro2", "quote", @@ -14950,18 +15008,18 @@ dependencies = [ [[package]] name = "zerocopy" -version = "0.8.26" +version = "0.8.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1039dd0d3c310cf05de012d8a39ff557cb0d23087fd44cad61df08fc31907a2f" +checksum = "3b065d4f0e55f82fae73202e189638116a87c55ab6b8e6c2721e13dd9d854ad1" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.26" +version = "0.8.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ecf5b4cc5364572d7f4c329661bcc82724222973f2cab6f050a4e5c22f75181" +checksum = "0b631b19d36a892ab55420c92dbc83ccd79274f25be714855d3074aa71cab639" dependencies = [ "proc-macro2", "quote", @@ -14970,18 +15028,18 @@ dependencies = [ [[package]] name = "zerofrom" -version = "0.1.6" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50cc42e0333e05660c3587f3bf9d0478688e15d870fab3346451ce7f8c9fbea5" +checksum = "0ec05a11813ea801ff6d75110ad09cd0824ddba17dfe17128ea0d5f68e6c5272" dependencies = [ "zerofrom-derive", ] [[package]] name = "zerofrom-derive" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" +checksum = "11532158c46691caf0f2593ea8358fed6bbf68a0315e80aae9bd41fbade684a1" dependencies = [ "proc-macro2", "quote", @@ -15000,9 +15058,9 @@ dependencies = [ [[package]] name = "zeroize_derive" -version = "1.4.2" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" +checksum = "85a5b4158499876c763cb03bc4e49185d3cccbabb15b33c627f7884f43db852e" dependencies = [ "proc-macro2", "quote", @@ -15011,9 +15069,9 @@ dependencies = [ [[package]] name = "zerotrie" -version = "0.2.2" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36f0bbd478583f79edad978b407914f61b2972f5af6fa089686016be8f9af595" +checksum = "0f9152d31db0792fa83f70fb2f83148effb5c1f5b8c7686c3459e361d9bc20bf" dependencies = [ "displaydoc", "yoke", @@ -15022,9 +15080,9 @@ dependencies = [ [[package]] name = "zerovec" -version = "0.11.2" +version = "0.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a05eb080e015ba39cc9e23bbe5e7fb04d5fb040350f99f34e338d5fdd294428" +checksum = "90f911cbc359ab6af17377d242225f4d75119aec87ea711a880987b18cd7b239" dependencies = [ "yoke", "zerofrom", @@ -15033,9 +15091,9 @@ dependencies = [ [[package]] name = "zerovec-derive" -version = "0.11.1" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f" +checksum = "625dc425cab0dca6dc3c3319506e6593dcb08a9f387ea3b284dbd52a92c40555" dependencies = [ "proc-macro2", "quote", @@ -15051,7 +15109,7 @@ dependencies = [ "arbitrary", "crc32fast", "flate2", - "indexmap 2.13.0", + "indexmap 2.14.0", "memchr", "zopfli", ] @@ -15077,9 +15135,9 @@ dependencies = [ [[package]] name = "zlib-rs" -version = "0.5.5" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40990edd51aae2c2b6907af74ffb635029d5788228222c4bb811e9351c0caad3" +checksum = "3be3d40e40a133f9c916ee3f9f4fa2d9d63435b5fbe1bfc6d9dae0aa0ada1513" [[package]] name = "zmij" @@ -15089,9 +15147,9 @@ checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa" [[package]] name = "zopfli" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edfc5ee405f504cd4984ecc6f14d02d55cfda60fa4b689434ef4102aae150cd7" +checksum = "f05cd8797d63865425ff89b5c4a48804f35ba0ce8d125800027ad6017d2b5249" dependencies = [ "bumpalo", "crc32fast", @@ -15119,9 +15177,9 @@ dependencies = [ [[package]] name = "zstd-sys" -version = "2.0.15+zstd.1.5.7" +version = "2.0.16+zstd.1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb81183ddd97d0c74cedf1d50d85c8d08c1b8b68ee863bdee9e706eedba1a237" +checksum = "91e19ebc2adc8f83e43039e79776e3fda8ca919132d68a1fed6a5faca2683748" dependencies = [ "cc", "pkg-config", @@ -15134,7 +15192,7 @@ dependencies = [ "itertools 0.14.0", "nym-bin-common", "nym-http-api-client", - "reqwest 0.13.1", + "reqwest 0.13.4", "serde", "serde_json", "thiserror 2.0.18", diff --git a/contracts/Cargo.lock b/contracts/Cargo.lock index 76e96899ba..d8b1d4c894 100644 --- a/contracts/Cargo.lock +++ b/contracts/Cargo.lock @@ -4,9 +4,9 @@ version = 4 [[package]] name = "ahash" -version = "0.8.11" +version = "0.8.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" +checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75" dependencies = [ "cfg-if", "once_cell", @@ -16,24 +16,18 @@ dependencies = [ [[package]] name = "aho-corasick" -version = "1.1.3" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301" dependencies = [ "memchr", ] -[[package]] -name = "allocator-api2" -version = "0.2.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" - [[package]] name = "anyhow" -version = "1.0.98" +version = "1.0.102" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487" +checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c" [[package]] name = "ark-bls12-381" @@ -158,9 +152,9 @@ dependencies = [ [[package]] name = "autocfg" -version = "1.2.0" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80" +checksum = "f2032f911046de80f0a198e0901378627c33f59ea0ac00e363d481118bd70a53" [[package]] name = "base16ct" @@ -188,15 +182,15 @@ checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" [[package]] name = "base64ct" -version = "1.6.0" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" +checksum = "2af50177e190e07a26ab74f8b1efbfe2ef87da2116221318cb1c2e82baf7de06" [[package]] name = "bech32" -version = "0.11.0" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d965446196e3b7decd44aa7ee49e31d630118f90ef12f97900f262eb915c951d" +checksum = "32637268377fc7b10a8c6d51de3e7fba1ce5dd371a96e342b34e6078db558e7f" [[package]] name = "block-buffer" @@ -222,12 +216,6 @@ dependencies = [ "tinyvec", ] -[[package]] -name = "byteorder" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" - [[package]] name = "bytes" version = "1.11.1" @@ -236,18 +224,18 @@ checksum = "1e748733b7cbc798e1434b6ac524f0c1ff2ab456fe201501e6497c8417a4fc33" [[package]] name = "camino" -version = "1.1.7" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0ec6b951b160caa93cc0c7b209e5a3bff7aae9062213451ac99493cd844c239" +checksum = "e629a66d692cb9ff1a1c664e41771b3dcaf961985a9774c0eb0bd1b51cf60a48" dependencies = [ - "serde", + "serde_core", ] [[package]] name = "cargo-platform" -version = "0.1.8" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24b1f0365a6c6bb4020cd05806fd0d33c44d38046b8bd7f0e40814b9763cabfc" +checksum = "e35af189006b9c0f00a064685c727031e3ed2d8020f7ba284d78cc2671bd36ea" dependencies = [ "serde", ] @@ -263,7 +251,7 @@ dependencies = [ "semver", "serde", "serde_json", - "thiserror 1.0.64", + "thiserror 1.0.69", ] [[package]] @@ -277,14 +265,14 @@ dependencies = [ "semver", "serde", "serde_json", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] name = "cfg-if" -version = "1.0.0" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" [[package]] name = "const-oid" @@ -294,24 +282,27 @@ checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" [[package]] name = "const_panic" -version = "0.2.8" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6051f239ecec86fde3410901ab7860d458d160371533842974fc61f96d15879b" +checksum = "e262cdaac42494e3ae34c43969f9cdeb7da178bdb4b66fa6a1ea2edb4c8ae652" +dependencies = [ + "typewit", +] [[package]] name = "convert_case" -version = "0.6.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" +checksum = "baaaa0ecca5b51987b9423ccdc971514dd8b0bb7b4060b983d3664dad3f1f89f" dependencies = [ "unicode-segmentation", ] [[package]] name = "cosmwasm-core" -version = "2.2.2" +version = "2.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35b6dc17e7fd89d0a0a58f12ef33f0bbdf09a6a14c3dfb383eae665e5889250e" +checksum = "fac5ed3671399bdaa500eeeaacdc9c11ddb93b4a30662c09b845722186748c13" [[package]] name = "cosmwasm-crypto" @@ -334,7 +325,7 @@ dependencies = [ "rand_core", "rayon", "sha2", - "thiserror 1.0.64", + "thiserror 1.0.69", ] [[package]] @@ -345,7 +336,7 @@ checksum = "a782b93fae93e57ca8ad3e9e994e784583f5933aeaaa5c80a545c4b437be2047" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.117", ] [[package]] @@ -358,7 +349,7 @@ dependencies = [ "schemars", "serde", "serde_json", - "thiserror 1.0.64", + "thiserror 1.0.69", ] [[package]] @@ -369,7 +360,7 @@ checksum = "e01c9214319017f6ebd8e299036e1f717fa9bb6724e758f7d6fb2477599d1a29" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.117", ] [[package]] @@ -393,14 +384,14 @@ dependencies = [ "serde-json-wasm", "sha2", "static_assertions", - "thiserror 1.0.64", + "thiserror 1.0.69", ] [[package]] name = "cpufeatures" -version = "0.2.12" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504" +checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" dependencies = [ "libc", ] @@ -476,7 +467,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.117", ] [[package]] @@ -491,7 +482,7 @@ dependencies = [ "cw-utils", "schemars", "serde", - "thiserror 1.0.64", + "thiserror 1.0.69", ] [[package]] @@ -511,7 +502,7 @@ dependencies = [ "schemars", "serde", "sha2", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -535,7 +526,7 @@ dependencies = [ "cosmwasm-std", "schemars", "serde", - "thiserror 1.0.64", + "thiserror 1.0.69", ] [[package]] @@ -550,7 +541,7 @@ dependencies = [ "schemars", "semver", "serde", - "thiserror 1.0.64", + "thiserror 1.0.69", ] [[package]] @@ -580,7 +571,7 @@ dependencies = [ "schemars", "semver", "serde", - "thiserror 1.0.64", + "thiserror 1.0.69", ] [[package]] @@ -595,7 +586,7 @@ dependencies = [ "cw20", "schemars", "serde", - "thiserror 1.0.64", + "thiserror 1.0.69", ] [[package]] @@ -612,7 +603,7 @@ dependencies = [ "cw3", "schemars", "serde", - "thiserror 1.0.64", + "thiserror 1.0.69", ] [[package]] @@ -635,7 +626,7 @@ dependencies = [ "nym-contracts-common", "nym-contracts-common-testing", "nym-group-contract-common", - "nym-multisig-contract-common 1.21.0 (registry+https://github.com/rust-lang/crates.io-index)", + "nym-multisig-contract-common 1.21.0", ] [[package]] @@ -668,14 +659,14 @@ dependencies = [ "nym-group-contract-common", "schemars", "serde", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] name = "der" -version = "0.7.9" +version = "0.7.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0" +checksum = "e7c1832837b905bbfb5101e07cc24c8deddf52f93225eee6ead5f4d63d53ddcb" dependencies = [ "const-oid", "zeroize", @@ -683,9 +674,9 @@ dependencies = [ [[package]] name = "deranged" -version = "0.4.1" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28cfac68e08048ae1883171632c2aef3ebc555621ae56fbccce1cbf22dd7f058" +checksum = "7cd812cc2bc1d69d4764bd80df88b4317eaef9e773c75226407d9bc0876b211c" dependencies = [ "powerfmt", ] @@ -718,7 +709,7 @@ checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.117", "unicode-xid", ] @@ -736,17 +727,17 @@ dependencies = [ [[package]] name = "dyn-clone" -version = "1.0.17" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" +checksum = "d0881ea181b1df73ff77ffaaf9c7544ecc11e82fba9b5f27b262a3c73a332555" [[package]] name = "easy-addr" -version = "1.21.0" +version = "1.21.1" dependencies = [ "cosmwasm-std", "quote", - "syn 2.0.98", + "syn 2.0.117", ] [[package]] @@ -774,9 +765,9 @@ dependencies = [ [[package]] name = "ed25519-dalek" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871" +checksum = "70e796c081cee67dc755e1a36a0a172b897fab85fc3f6bc48307991f64e4eca9" dependencies = [ "curve25519-dalek", "ed25519", @@ -789,24 +780,23 @@ dependencies = [ [[package]] name = "ed25519-zebra" -version = "4.0.3" +version = "4.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d9ce6874da5d4415896cd45ffbc4d1cfc0c4f9c079427bd870742c30f2f65a9" +checksum = "775765289f7c6336c18d3d66127527820dd45ffd9eb3b6b8ee4708590e6c20f5" dependencies = [ "curve25519-dalek", "ed25519", - "hashbrown 0.14.5", - "hex", "rand_core", "sha2", + "subtle", "zeroize", ] [[package]] name = "either" -version = "1.11.0" +version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2" +checksum = "91622ff5e7162018101f2fea40d6ebf4a78bbe5a49736a2020649edf9693679e" [[package]] name = "elliptic-curve" @@ -828,15 +818,15 @@ dependencies = [ [[package]] name = "equivalent" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "ff" -version = "0.13.0" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" +checksum = "c0b50bfb653653f9ca9095b427bed08ab8d75a137839d9ad64eb11810d5b6393" dependencies = [ "rand_core", "subtle", @@ -844,15 +834,15 @@ dependencies = [ [[package]] name = "fiat-crypto" -version = "0.2.7" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c007b1ae3abe1cb6f85a16305acd418b7ca6343b953633fee2b76d8f108b830f" +checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" [[package]] name = "generic-array" -version = "0.14.7" +version = "0.14.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +checksum = "4bb6743198531e02858aeaea5398fcc883e71851fcbcb5a2f773e2fb6cb1edf2" dependencies = [ "typenum", "version_check", @@ -861,9 +851,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.14" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c" +checksum = "ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0" dependencies = [ "cfg-if", "libc", @@ -892,19 +882,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.14.5" +version = "0.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" -dependencies = [ - "ahash", - "allocator-api2", -] - -[[package]] -name = "hashbrown" -version = "0.15.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" +checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a" [[package]] name = "hex" @@ -923,9 +903,9 @@ dependencies = [ [[package]] name = "humantime" -version = "2.1.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" +checksum = "135b12329e5e3ce057a9f972339ea52bc954fe1e9358ef27f95e89716fbc5424" [[package]] name = "humantime-serde" @@ -939,12 +919,12 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.7.1" +version = "2.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c9c992b02b5b4c94ea26e32fe5bccb7aa7d9f390ab5c1221ff895bc7ea8b652" +checksum = "d466e9454f08e4a911e14806c24e16fba1b4c121d1ea474396f396069cf949d9" dependencies = [ "equivalent", - "hashbrown 0.15.2", + "hashbrown 0.17.1", ] [[package]] @@ -956,15 +936,6 @@ dependencies = [ "either", ] -[[package]] -name = "itertools" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" -dependencies = [ - "either", -] - [[package]] name = "itertools" version = "0.14.0" @@ -976,15 +947,15 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.11" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" +checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682" [[package]] name = "k256" -version = "0.13.3" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "956ff9b67e26e1a6a866cb758f12c6f8746208489e3e4a4b5580802f2f0a587b" +checksum = "f6e3919bbaa2945715f0bb6d3934a173d1e9a59ac23767fbaaef277265a7411b" dependencies = [ "cfg-if", "ecdsa", @@ -994,9 +965,9 @@ dependencies = [ [[package]] name = "konst" -version = "0.3.16" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4381b9b00c55f251f2ebe9473aef7c117e96828def1a7cb3bd3f0f903c6894e9" +checksum = "97feab15b395d1860944abe6a8dd8ed9f8eadfae01750fada8427abda531d887" dependencies = [ "const_panic", "konst_kernel", @@ -1021,15 +992,15 @@ checksum = "00af7901ba50898c9e545c24d5c580c96a982298134e8037d8978b6594782c07" [[package]] name = "libc" -version = "0.2.180" +version = "0.2.186" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bcc35a38544a891a5f7c865aca548a982ccb3b8650a5b06d0fd33a10283c56fc" +checksum = "68ab91017fe16c622486840e4c83c9a37afeff978bd239b5293d61ece587de66" [[package]] name = "memchr" -version = "2.7.2" +version = "2.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" +checksum = "6b947ae49db0d222b1dbc6b113ce7248a3fc3a6ca21b696717bfc000ba4484d8" [[package]] name = "network-monitors" @@ -1094,9 +1065,9 @@ dependencies = [ [[package]] name = "num-traits" -version = "0.2.18" +version = "0.2.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" dependencies = [ "autocfg", ] @@ -1129,7 +1100,7 @@ dependencies = [ "nym-contracts-common", "nym-contracts-common-testing", "nym-group-contract-common", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -1144,12 +1115,12 @@ dependencies = [ "cw2", "cw4", "nym-contracts-common", - "nym-multisig-contract-common 1.21.0 (registry+https://github.com/rust-lang/crates.io-index)", + "nym-multisig-contract-common 1.21.0", ] [[package]] name = "nym-contracts-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bs58", "cosmwasm-schema", @@ -1157,13 +1128,13 @@ dependencies = [ "cw-storage-plus", "schemars", "serde", - "thiserror 2.0.12", + "thiserror 2.0.18", "vergen", ] [[package]] name = "nym-contracts-common-testing" -version = "1.21.0" +version = "1.21.1" dependencies = [ "anyhow", "cosmwasm-std", @@ -1177,7 +1148,7 @@ dependencies = [ [[package]] name = "nym-crypto" -version = "1.21.0" +version = "1.21.1" dependencies = [ "base64 0.22.1", "bs58", @@ -1187,7 +1158,7 @@ dependencies = [ "rand", "sha2", "subtle-encoding", - "thiserror 2.0.12", + "thiserror 2.0.18", "x25519-dalek", "zeroize", ] @@ -1211,18 +1182,18 @@ dependencies = [ "nym-contracts-common-testing", "nym-crypto", "nym-ecash-contract-common", - "nym-multisig-contract-common 1.21.0 (registry+https://github.com/rust-lang/crates.io-index)", + "nym-multisig-contract-common 1.21.0", "nym-network-defaults", "schemars", "semver", "serde", "sylvia", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] name = "nym-ecash-contract-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bs58", "cosmwasm-schema", @@ -1230,8 +1201,8 @@ dependencies = [ "cw-controllers", "cw-utils", "cw2", - "nym-multisig-contract-common 1.21.0", - "thiserror 2.0.12", + "nym-multisig-contract-common 1.21.1", + "thiserror 2.0.18", ] [[package]] @@ -1274,7 +1245,7 @@ dependencies = [ [[package]] name = "nym-mixnet-contract-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "bs58", "cosmwasm-schema", @@ -1288,25 +1259,10 @@ dependencies = [ "semver", "serde", "serde_repr", - "thiserror 2.0.12", + "thiserror 2.0.18", "time", ] -[[package]] -name = "nym-multisig-contract-common" -version = "1.21.0" -dependencies = [ - "cosmwasm-schema", - "cosmwasm-std", - "cw-storage-plus", - "cw-utils", - "cw3", - "cw4", - "schemars", - "serde", - "thiserror 2.0.12", -] - [[package]] name = "nym-multisig-contract-common" version = "1.21.0" @@ -1321,12 +1277,27 @@ dependencies = [ "cw4", "schemars", "serde", - "thiserror 2.0.12", + "thiserror 2.0.18", +] + +[[package]] +name = "nym-multisig-contract-common" +version = "1.21.1" +dependencies = [ + "cosmwasm-schema", + "cosmwasm-std", + "cw-storage-plus", + "cw-utils", + "cw3", + "cw4", + "schemars", + "serde", + "thiserror 2.0.18", ] [[package]] name = "nym-network-defaults" -version = "1.21.0" +version = "1.21.1" dependencies = [ "cargo_metadata 0.19.2", "regex", @@ -1334,19 +1305,19 @@ dependencies = [ [[package]] name = "nym-network-monitors-contract-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "cosmwasm-schema", "cosmwasm-std", "cw-controllers", "schemars", "serde", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] name = "nym-node-families-contract-common" -version = "1.21.0" +version = "1.21.1" dependencies = [ "cosmwasm-schema", "cosmwasm-std", @@ -1356,12 +1327,12 @@ dependencies = [ "nym-mixnet-contract-common", "schemars", "serde", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] name = "nym-pemstore" -version = "1.21.0" +version = "1.21.1" dependencies = [ "pem", "tracing", @@ -1401,7 +1372,7 @@ dependencies = [ "nym-contracts-common", "schemars", "serde", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -1430,7 +1401,7 @@ dependencies = [ "cw-controllers", "schemars", "serde", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -1451,7 +1422,7 @@ dependencies = [ "rand_chacha", "serde", "serde_json", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -1466,14 +1437,14 @@ dependencies = [ "nym-contracts-common", "nym-mixnet-contract-common", "serde", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] name = "once_cell" -version = "1.19.0" +version = "1.21.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" +checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50" [[package]] name = "p256" @@ -1506,9 +1477,9 @@ dependencies = [ [[package]] name = "pin-project-lite" -version = "0.2.16" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" +checksum = "a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd" [[package]] name = "pkcs8" @@ -1528,9 +1499,12 @@ checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" [[package]] name = "ppv-lite86" -version = "0.2.17" +version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" +checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" +dependencies = [ + "zerocopy", +] [[package]] name = "primeorder" @@ -1543,9 +1517,9 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "3.2.0" +version = "3.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" +checksum = "e67ba7e9b2b56446f1d419b1d807906278ffa1a658a8a5d8a39dcb1f5a78614f" dependencies = [ "toml_edit", ] @@ -1576,9 +1550,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.93" +version = "1.0.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60946a68e5f9d28b0dc1c21bb8a97ee7d018a8b322fa57838ba31cc878e22d99" +checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934" dependencies = [ "unicode-ident", ] @@ -1603,14 +1577,14 @@ dependencies = [ "itertools 0.14.0", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.117", ] [[package]] name = "quote" -version = "1.0.38" +version = "1.0.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc" +checksum = "41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924" dependencies = [ "proc-macro2", ] @@ -1647,9 +1621,9 @@ dependencies = [ [[package]] name = "rayon" -version = "1.10.0" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" +checksum = "fb39b166781f92d482534ef4b4b1b2568f42613b53e5b6c160e24cfbfa30926d" dependencies = [ "either", "rayon-core", @@ -1657,9 +1631,9 @@ dependencies = [ [[package]] name = "rayon-core" -version = "1.12.1" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" +checksum = "22e18b0f0062d30d4230b2e85ff77fdfe4326feb054b9783a3460d8435c8ab91" dependencies = [ "crossbeam-deque", "crossbeam-utils", @@ -1667,9 +1641,9 @@ dependencies = [ [[package]] name = "regex" -version = "1.11.1" +version = "1.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" +checksum = "e10754a14b9137dd7b1e3e5b0493cc9171fdd105e0ab477f51b72e7f3ac0e276" dependencies = [ "aho-corasick", "memchr", @@ -1679,9 +1653,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.9" +version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908" +checksum = "6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f" dependencies = [ "aho-corasick", "memchr", @@ -1690,9 +1664,9 @@ dependencies = [ [[package]] name = "regex-syntax" -version = "0.8.5" +version = "0.8.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" +checksum = "dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a" [[package]] name = "rfc6979" @@ -1706,46 +1680,37 @@ dependencies = [ [[package]] name = "rmp" -version = "0.8.14" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "228ed7c16fa39782c3b3468e974aec2795e9089153cd08ee2e9aefb3613334c4" +checksum = "4ba8be72d372b2c9b35542551678538b562e7cf86c3315773cae48dfbfe7790c" dependencies = [ - "byteorder", "num-traits", - "paste", ] [[package]] name = "rmp-serde" -version = "1.3.0" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52e599a477cf9840e92f2cde9a7189e67b42c57532749bf90aea6ec10facd4db" +checksum = "72f81bee8c8ef9b577d1681a70ebbc962c232461e397b22c208c43c04b67a155" dependencies = [ - "byteorder", "rmp", "serde", ] [[package]] name = "rustc_version" -version = "0.4.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" +checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" dependencies = [ "semver", ] [[package]] name = "rustversion" -version = "1.0.15" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80af6f9131f277a45a3fba6ce8e2258037bb0477a67e610d3c1fe046ab31de47" - -[[package]] -name = "ryu" -version = "1.0.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1" +checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" [[package]] name = "schemars" @@ -1768,7 +1733,7 @@ dependencies = [ "proc-macro2", "quote", "serde_derive_internals", - "syn 2.0.98", + "syn 2.0.117", ] [[package]] @@ -1786,19 +1751,21 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.26" +version = "1.0.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0" +checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd" dependencies = [ "serde", + "serde_core", ] [[package]] name = "serde" -version = "1.0.219" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" +checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" dependencies = [ + "serde_core", "serde_derive", ] @@ -1821,14 +1788,23 @@ dependencies = [ ] [[package]] -name = "serde_derive" -version = "1.0.219" +name = "serde_core" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" +checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.117", ] [[package]] @@ -1839,37 +1815,38 @@ checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.117", ] [[package]] name = "serde_json" -version = "1.0.128" +version = "1.0.150" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8" +checksum = "e8014e44b4736ed0538adeecded0fce2a272f22dc9578a7eb6b2d9993c74cfb9" dependencies = [ "itoa", "memchr", - "ryu", "serde", + "serde_core", + "zmij", ] [[package]] name = "serde_repr" -version = "0.1.19" +version = "0.1.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" +checksum = "175ee3e80ae9982737ca543e96133087cbd9a485eecc3bc4de9c1a37b47ea59c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.117", ] [[package]] name = "sha2" -version = "0.10.8" +version = "0.10.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" +checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" dependencies = [ "cfg-if", "cpufeatures", @@ -1904,9 +1881,9 @@ checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" [[package]] name = "subtle" -version = "2.4.1" +version = "2.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" +checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" [[package]] name = "subtle-encoding" @@ -1919,9 +1896,9 @@ dependencies = [ [[package]] name = "sylvia" -version = "1.3.3" +version = "1.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6af3b8ce8e43dee3c919b23c720b1da1c3020ebebf421d0d1927ce9bfa51a15d" +checksum = "967a2aceb034b72e9ec106f6f889a45cebd8a93e831ceafb490ec8a0fb2fdb13" dependencies = [ "anyhow", "cosmwasm-schema", @@ -1938,17 +1915,17 @@ dependencies = [ [[package]] name = "sylvia-derive" -version = "1.3.3" +version = "1.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00fd9377878e7c47e9a04f6ee79663c808914584cc7bb3a9f2371b3eef91455a" +checksum = "c4a9f6b6ef457c685c596939baeb4e1c7257e949d690fa89be1aaea27963183e" dependencies = [ "convert_case", - "itertools 0.13.0", + "itertools 0.14.0", "proc-macro-crate", "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.117", ] [[package]] @@ -1964,9 +1941,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.98" +version = "2.0.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36147f1a48ae0ec2b5b3bc5b537d267457555a10dc06f3dbc8cb11ba3006d3b1" +checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99" dependencies = [ "proc-macro2", "quote", @@ -1975,49 +1952,49 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.64" +version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84" +checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" dependencies = [ - "thiserror-impl 1.0.64", + "thiserror-impl 1.0.69", ] [[package]] name = "thiserror" -version = "2.0.12" +version = "2.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" +checksum = "4288b5bcbc7920c07a1149a35cf9590a2aa808e0bc1eafaade0b80947865fbc4" dependencies = [ - "thiserror-impl 2.0.12", + "thiserror-impl 2.0.18", ] [[package]] name = "thiserror-impl" -version = "1.0.64" +version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3" +checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.117", ] [[package]] name = "thiserror-impl" -version = "2.0.12" +version = "2.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" +checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.117", ] [[package]] name = "time" -version = "0.3.41" +version = "0.3.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a7619e19bc266e0f9c5e6686659d394bc57973859340060a69221e57dbc0c40" +checksum = "f9e442fc33d7fdb45aa9bfeb312c095964abdf596f7567261062b2a7107aaabd" dependencies = [ "deranged", "itoa", @@ -2025,22 +2002,22 @@ dependencies = [ "num-conv", "num_threads", "powerfmt", - "serde", + "serde_core", "time-core", "time-macros", ] [[package]] name = "time-core" -version = "0.1.4" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9e9a38711f559d9e3ce1cdb06dd7c5b8ea546bc90052da6d06bb76da74bb07c" +checksum = "8b36ee98fd31ec7426d599183e8fe26932a8dc1fb76ddb6214d05493377d34ca" [[package]] name = "time-macros" -version = "0.2.22" +version = "0.2.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3526739392ec93fd8b359c8e98514cb3e8e021beb4e5f597b00a0221f8ed8a49" +checksum = "71e552d1249bf61ac2a52db88179fd0673def1e1ad8243a00d9ec9ed71fee3dd" dependencies = [ "num-conv", "time-core", @@ -2048,9 +2025,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.6.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" +checksum = "3e61e67053d25a4e82c844e8424039d9745781b3fc4f32b8d55ed50f5f667ef3" dependencies = [ "tinyvec_macros", ] @@ -2063,26 +2040,39 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "toml_datetime" -version = "0.6.8" +version = "1.1.1+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" +checksum = "3165f65f62e28e0115a00b2ebdd37eb6f3b641855f9d636d3cd4103767159ad7" +dependencies = [ + "serde_core", +] [[package]] name = "toml_edit" -version = "0.22.24" +version = "0.25.12+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17b4795ff5edd201c7cd6dca065ae59972ce77d1b80fa0a84d94950ece7d1474" +checksum = "d2153edc6955a6c354fad8f5efd38b6a8769bdccf9fe50f8e1329f81b0baa5d7" dependencies = [ "indexmap", "toml_datetime", + "toml_parser", + "winnow", +] + +[[package]] +name = "toml_parser" +version = "1.1.2+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2abe9b86193656635d2411dc43050282ca48aa31c2451210f4202550afb7526" +dependencies = [ "winnow", ] [[package]] name = "tracing" -version = "0.1.41" +version = "0.1.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" +checksum = "63e71662fa4b2a2c3a26f570f037eb95bb1f85397f3cd8076caed2f026a6d100" dependencies = [ "pin-project-lite", "tracing-attributes", @@ -2091,35 +2081,35 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.28" +version = "0.1.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" +checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.117", ] [[package]] name = "tracing-core" -version = "0.1.33" +version = "0.1.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c" +checksum = "db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a" dependencies = [ "once_cell", ] [[package]] name = "typenum" -version = "1.17.0" +version = "1.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" +checksum = "b6f5e870be6c3b371b77fe0ee0bafb859fa4964b4404c27de1d380043c4dda20" [[package]] name = "typewit" -version = "1.9.0" +version = "1.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6fb9ae6a3cafaf0a5d14c2302ca525f9ae8e07a0f0e6949de88d882c37a6e24" +checksum = "214ca0b2191785cbc06209b9ca1861e048e39b5ba33574b3cedd58363d5bb5f6" dependencies = [ "typewit_proc_macros", ] @@ -2132,15 +2122,15 @@ checksum = "e36a83ea2b3c704935a01b4642946aadd445cea40b10935e3f8bd8052b8193d6" [[package]] name = "unicode-ident" -version = "1.0.12" +version = "1.0.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" +checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" [[package]] name = "unicode-segmentation" -version = "1.11.0" +version = "1.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202" +checksum = "c6f5d3c3b1bf09027a88a6bc961fc00497d651009560b5463668dc81b0fa87a8" [[package]] name = "unicode-xid" @@ -2165,21 +2155,21 @@ dependencies = [ [[package]] name = "version_check" -version = "0.9.4" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" +checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" [[package]] name = "wasi" -version = "0.11.0+wasi-snapshot-preview1" +version = "0.11.1+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" [[package]] name = "winnow" -version = "0.7.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59690dea168f2198d1a3b0cac23b8063efcd11012f10ae4698f284808c8ef603" +checksum = "0592e1c9d151f854e6fd382574c3a0855250e1d9b2f99d9281c6e6391af352f1" dependencies = [ "memchr", ] @@ -2198,40 +2188,46 @@ dependencies = [ [[package]] name = "zerocopy" -version = "0.7.35" +version = "0.8.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" +checksum = "3b065d4f0e55f82fae73202e189638116a87c55ab6b8e6c2721e13dd9d854ad1" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.7.35" +version = "0.8.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" +checksum = "0b631b19d36a892ab55420c92dbc83ccd79274f25be714855d3074aa71cab639" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.117", ] [[package]] name = "zeroize" -version = "1.7.0" +version = "1.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d" +checksum = "b97154e67e32c85465826e8bcc1c59429aaaf107c1e4a9e53c8d8ccd5eff88d0" dependencies = [ "zeroize_derive", ] [[package]] name = "zeroize_derive" -version = "1.4.2" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" +checksum = "85a5b4158499876c763cb03bc4e49185d3cccbabb15b33c627f7884f43db852e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.117", ] + +[[package]] +name = "zmij" +version = "1.0.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa" From 8de781f750b779794a366c68dc2b7db429e4c98f Mon Sep 17 00:00:00 2001 From: benedettadavico Date: Wed, 3 Jun 2026 13:08:25 +0200 Subject: [PATCH 04/12] fix ci builds --- Cargo.lock | 132 ++--------------------------------- Cargo.toml | 1 - nym-gateway-probe/Cargo.toml | 6 +- nym-gateway-probe/build.rs | 15 ++-- 4 files changed, 17 insertions(+), 137 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index fab6eec072..bf2f23f01b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2226,38 +2226,14 @@ dependencies = [ "serde", ] -[[package]] -name = "darling" -version = "0.20.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee" -dependencies = [ - "darling_core 0.20.11", - "darling_macro 0.20.11", -] - [[package]] name = "darling" version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "25ae13da2f202d56bd7f91c25fba009e7717a1e4a1cc98a76d844b65ae912e9d" dependencies = [ - "darling_core 0.23.0", - "darling_macro 0.23.0", -] - -[[package]] -name = "darling_core" -version = "0.20.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d00b9596d185e565c2207a0b01f8bd1a135483d02d9b7b0a54b11da8d53412e" -dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim", - "syn 2.0.117", + "darling_core", + "darling_macro", ] [[package]] @@ -2273,24 +2249,13 @@ dependencies = [ "syn 2.0.117", ] -[[package]] -name = "darling_macro" -version = "0.20.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" -dependencies = [ - "darling_core 0.20.11", - "quote", - "syn 2.0.117", -] - [[package]] name = "darling_macro" version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ac3984ec7bd6cfa798e62b4a642426a5be0e68f9401cfc2a01e3fa9ea2fcdb8d" dependencies = [ - "darling_core 0.23.0", + "darling_core", "quote", "syn 2.0.117", ] @@ -2475,37 +2440,6 @@ dependencies = [ "syn 2.0.117", ] -[[package]] -name = "derive_builder" -version = "0.20.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "507dfb09ea8b7fa618fcf76e953f4f5e192547945816d5358edffe39f6f94947" -dependencies = [ - "derive_builder_macro", -] - -[[package]] -name = "derive_builder_core" -version = "0.20.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d5bcf7b024d6835cfb3d473887cd966994907effbe9227e8c8219824d06c4e8" -dependencies = [ - "darling 0.20.11", - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "derive_builder_macro" -version = "0.20.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c" -dependencies = [ - "derive_builder_core", - "syn 2.0.117", -] - [[package]] name = "derive_more" version = "1.0.0" @@ -6012,7 +5946,7 @@ dependencies = [ "tracing-opentelemetry", "tracing-subscriber", "utoipa", - "vergen 8.3.1", + "vergen", ] [[package]] @@ -6399,7 +6333,7 @@ dependencies = [ "serde_json", "thiserror 2.0.18", "utoipa", - "vergen 8.3.1", + "vergen", ] [[package]] @@ -6982,7 +6916,7 @@ dependencies = [ "tracing-subscriber", "url", "utoipa", - "vergen-gitcl", + "vergen", ] [[package]] @@ -11315,7 +11249,7 @@ version = "3.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b90c488738ecb4fb0262f41f43bc40efc5868d9fb744319ddf5f5317f417bfac" dependencies = [ - "darling 0.23.0", + "darling", "proc-macro2", "quote", "syn 2.0.117", @@ -13836,58 +13770,6 @@ dependencies = [ "time", ] -[[package]] -name = "vergen" -version = "9.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b849a1f6d8639e8de261e81ee0fc881e3e3620db1af9f2e0da015d4382ceaf75" -dependencies = [ - "anyhow", - "cargo_metadata 0.23.1", - "derive_builder", - "regex", - "rustc_version 0.4.1", - "rustversion", - "time", - "vergen-lib 9.1.0", -] - -[[package]] -name = "vergen-gitcl" -version = "1.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9dfc1de6eb2e08a4ddf152f1b179529638bedc0ea95e6d667c014506377aefe" -dependencies = [ - "anyhow", - "derive_builder", - "rustversion", - "time", - "vergen 9.1.0", - "vergen-lib 0.1.6", -] - -[[package]] -name = "vergen-lib" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b07e6010c0f3e59fcb164e0163834597da68d1f864e2b8ca49f74de01e9c166" -dependencies = [ - "anyhow", - "derive_builder", - "rustversion", -] - -[[package]] -name = "vergen-lib" -version = "9.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b34a29ba7e9c59e62f229ae1932fb1b8fb8a6fdcc99215a641913f5f5a59a569" -dependencies = [ - "anyhow", - "derive_builder", - "rustversion", -] - [[package]] name = "version_check" version = "0.9.5" diff --git a/Cargo.toml b/Cargo.toml index 7029cbb322..8362d96700 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -407,7 +407,6 @@ utoipa-swagger-ui = "9.0.2" utoipauto = "0.2" uuid = "1.19.0" vergen = { version = "=8.3.1", default-features = false } -vergen-gitcl = { version = "1.0.8", default-features = false } walkdir = "2" x25519-dalek = "2.0.0" zeroize = "1.7.0" diff --git a/nym-gateway-probe/Cargo.toml b/nym-gateway-probe/Cargo.toml index d7db904a5c..d731935b18 100644 --- a/nym-gateway-probe/Cargo.toml +++ b/nym-gateway-probe/Cargo.toml @@ -75,11 +75,7 @@ test-utils = [] [build-dependencies] anyhow = { workspace = true } -vergen-gitcl = { workspace = true, default-features = false, features = [ - "build", - "cargo", - "rustc", -] } +vergen = { workspace = true, features = ["build", "git", "gitcl", "rustc", "cargo"] } [package.metadata.cargo-machete] ignored = ["vergen", "nym-http-api-client"] diff --git a/nym-gateway-probe/build.rs b/nym-gateway-probe/build.rs index e1947f2277..50468ee8cc 100644 --- a/nym-gateway-probe/build.rs +++ b/nym-gateway-probe/build.rs @@ -5,18 +5,21 @@ use anyhow::{Context, bail}; use std::{path::PathBuf, process::Command}; -use vergen_gitcl::{BuildBuilder, CargoBuilder, Emitter, GitclBuilder, RustcBuilder}; +use vergen::EmitBuilder; fn main() -> anyhow::Result<()> { build_go()?; generate_exit_policy_ports()?; - Emitter::default() - .add_instructions(&BuildBuilder::all_build()?)? - .add_instructions(&CargoBuilder::all_cargo()?)? - .add_instructions(&GitclBuilder::all_git()?)? - .add_instructions(&RustcBuilder::all_rustc()?)? + EmitBuilder::builder() + .all_build() + .all_git() + .all_rustc() + .all_cargo() .emit() + .context("failed to extract build metadata")?; + + Ok(()) } /// Parse PORT_MAPPINGS from network-tunnel-manager.sh and generate a sorted From e8410b230204077a8242d9b0ae48bd01c09be308 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Stuczy=C5=84ski?= Date: Fri, 5 Jun 2026 16:37:12 +0100 Subject: [PATCH 05/12] feat: disable Nagle's algorithm for LP between nym-nodes (#6857) --- .../src/node/lp/control/ingress/client_handler.rs | 12 +++++++++++- nym-node/src/node/lp/control/ingress/listener.rs | 8 ++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/nym-node/src/node/lp/control/ingress/client_handler.rs b/nym-node/src/node/lp/control/ingress/client_handler.rs index 1613795601..aad0ce88b8 100644 --- a/nym-node/src/node/lp/control/ingress/client_handler.rs +++ b/nym-node/src/node/lp/control/ingress/client_handler.rs @@ -404,7 +404,7 @@ where }; // Connect to target gateway with timeout - let stream = match timeout(Duration::from_secs(5), S::connect(target_addr)).await { + let mut stream = match timeout(Duration::from_secs(5), S::connect(target_addr)).await { Ok(Ok(stream)) => stream, Ok(Err(e)) => { inc!("lp_forward_failed"); @@ -422,6 +422,16 @@ where } }; + // Disable Nagle's algorithm: the forward stream carries small request/response + // handshake packets, so we want them sent immediately rather than coalesced. + if let Err(e) = stream.set_no_delay(true) { + inc!("lp_forward_failed"); + return Err(LpHandlerError::ConnectionFailure { + egress: target_addr, + reason: format!("failed to set TCP_NODELAY: {e}"), + }); + } + debug!("Opened persistent exit connection to {target_addr} for forwarding"); self.exit_stream = Some((stream, target_addr)); diff --git a/nym-node/src/node/lp/control/ingress/listener.rs b/nym-node/src/node/lp/control/ingress/listener.rs index 3d038abebe..15377a546f 100644 --- a/nym-node/src/node/lp/control/ingress/listener.rs +++ b/nym-node/src/node/lp/control/ingress/listener.rs @@ -171,6 +171,14 @@ impl LpControlListener { } fn handle_connection(&self, stream: tokio::net::TcpStream, remote_addr: SocketAddr) { + // Disable Nagle's algorithm on the accepted socket so our responses are flushed + // immediately rather than coalesced. This is the write side of every reply we send, + // including handshake replies forwarded back to an entry gateway. Non-fatal: a valid + // connection should still be served if the option can't be set. + if let Err(e) = stream.set_nodelay(true) { + warn!("failed to set TCP_NODELAY on accepted LP connection from {remote_addr}: {e}"); + } + if let Some(initiator_details) = self .nodes_handler_state .nodes From b6202b5a6b26dadb5be6f22606dbb2869707b991 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Stuczy=C5=84ski?= Date: Mon, 8 Jun 2026 08:37:41 +0100 Subject: [PATCH 06/12] chore: minor nym-node improvements (#6850) * set TCP_NODELAY for mixnet connections * bugfix: correctly compute count deferral threshold * bugfix: make sure to flush pending packets waiting for bloomfilter check * implement batch sending into mixnet connection * adjust default nym-node connection settings --- .../client-libs/mixnet-client/src/client.rs | 40 ++++++- nym-node/src/config/mod.rs | 13 ++- nym-node/src/node/mixnet/handler.rs | 109 +++++++++++++++++- nym-node/src/node/mixnet/shared/mod.rs | 8 +- 4 files changed, 158 insertions(+), 12 deletions(-) diff --git a/common/client-libs/mixnet-client/src/client.rs b/common/client-libs/mixnet-client/src/client.rs index 9cef37e2d2..bc44bc1e35 100644 --- a/common/client-libs/mixnet-client/src/client.rs +++ b/common/client-libs/mixnet-client/src/client.rs @@ -218,6 +218,11 @@ impl ManagedConnection { "Managed to establish connection to {}", self.address ); + // disable Nagle: mix packets are latency-sensitive and flushed one at a time. + if let Err(err) = stream.set_nodelay(true) { + warn!(peer = %address, error = %err, "failed to set TCP_NODELAY on outbound mixnet connection"); + } + // 3. perform noise handshake (if applicable) let noise_start = tokio::time::Instant::now(); let noise_stream = match upgrade_noise_initiator(stream, &self.noise_config).await { @@ -246,25 +251,42 @@ impl ManagedConnection { noise_handshake_ms, "Noise initiator handshake completed for {:?}", address ); - let conn = Framed::new(noise_stream, NymCodec); + let mut conn = Framed::new(noise_stream, NymCodec); + // let the write buffer accumulate several packets before flushing (see run_io_loop) + conn.set_backpressure_boundary(OUTBOUND_WRITE_BUFFER); // 4. start handling the framed stream run_io_loop(conn, self.message_receiver, address).await; } } +/// Upper bound on how many already-queued packets we drain into a single flush. +/// Bounds the per-batch allocation and how often we re-check the read side; the actual +/// write coalescing is governed by the Framed backpressure boundary below. +const OUTBOUND_FLUSH_BATCH: usize = 1024; + +/// Write-buffer high-water mark for the egress `Framed`: packets are coalesced up to +/// roughly this many bytes before a flush, trading a larger write burst for far fewer +/// syscalls (and noise frames) under load. Kept under the ~64KiB noise frame ceiling so +/// a flush is usually a single frame. +const OUTBOUND_WRITE_BUFFER: usize = 32 * 1024; + // The connection is unidirectional (send-only); we read from it solely to // notice peer FIN/RST while idle so we can evict the cache entry before the // next outbound send finds it stale. async fn run_io_loop( conn: Framed, - mut receiver: ReceiverStream, + receiver: ReceiverStream, address: SocketAddr, ) where T: AsyncRead + AsyncWrite + Unpin, { let (mut sink, mut stream) = conn.split(); + // drain all currently-queued packets into one flush rather than flushing per packet, + // which otherwise caps egress throughput and backs up the per-connection queue under load + let mut receiver = receiver.ready_chunks(OUTBOUND_FLUSH_BATCH); + loop { tokio::select! { msg = stream.next() => { @@ -305,14 +327,22 @@ async fn run_io_loop( ); break; } - Some(packet) => { - if let Err(err) = sink.send(packet).await { + Some(batch) => { + // feed the whole ready batch, then flush once + let res = async { + for packet in batch { + sink.feed(packet).await?; + } + sink.flush().await + } + .await; + if let Err(err) = res { debug!( event = "connection.forward_error", peer = %address, error = %err, exit_reason = "forward_error", - "Failed to forward packet to {address}: {err}" + "failed to forward packet batch to {address}: {err}" ); break; } diff --git a/nym-node/src/config/mod.rs b/nym-node/src/config/mod.rs index 963f1bf5dd..ebec39e2c5 100644 --- a/nym-node/src/config/mod.rs +++ b/nym-node/src/config/mod.rs @@ -693,7 +693,12 @@ pub struct MixnetDebug { #[serde(with = "humantime_serde")] pub initial_connection_timeout: Duration, - /// Maximum number of packets that can be stored waiting to get sent to a particular connection. + /// Maximum number of packets buffered per egress connection awaiting a socket write. + /// This is a short-term burst absorber, not a queue: buffer depth converts directly into + /// added latency (roughly `depth / per-peer send rate`), so an oversized value is just + /// bufferbloat. Once it fills, further packets for that peer are dropped rather than + /// delayed, which is preferable in a mixnet where a packet held that long has already + /// missed its usefulness window. Keep worst-case queuing well under the per-hop mix delay. pub maximum_connection_buffer_size: usize, /// Specify whether any framed packets between nodes should use the legacy format (v7) @@ -882,9 +887,11 @@ impl MixnetDebug { // which for all intents and purposes will never happen const DEFAULT_MAXIMUM_FORWARD_PACKET_DELAY: Duration = Duration::from_secs(10); const DEFAULT_PACKET_FORWARDING_INITIAL_BACKOFF: Duration = Duration::from_millis(10_000); - const DEFAULT_PACKET_FORWARDING_MAXIMUM_BACKOFF: Duration = Duration::from_millis(300_000); + const DEFAULT_PACKET_FORWARDING_MAXIMUM_BACKOFF: Duration = Duration::from_secs(16); const DEFAULT_INITIAL_CONNECTION_TIMEOUT: Duration = Duration::from_millis(1_500); - const DEFAULT_MAXIMUM_CONNECTION_BUFFER_SIZE: usize = 2000; + // small enough to keep worst-case egress queuing in the tens-of-ms range at a few thousand + // pps per peer (vs. the old 2000, which was hundreds of ms of bufferbloat) + const DEFAULT_MAXIMUM_CONNECTION_BUFFER_SIZE: usize = 192; } impl Default for MixnetDebug { diff --git a/nym-node/src/node/mixnet/handler.rs b/nym-node/src/node/mixnet/handler.rs index bd70892686..9fa565fc22 100644 --- a/nym-node/src/node/mixnet/handler.rs +++ b/nym-node/src/node/mixnet/handler.rs @@ -18,6 +18,7 @@ use nym_sphinx_types::{Delay, REPLAY_TAG_SIZE}; use std::collections::HashMap; use std::mem; use std::net::SocketAddr; +use std::time::Duration; use tokio::net::TcpStream; use tokio::time::Instant; use tokio_util::codec::Framed; @@ -59,6 +60,11 @@ impl PendingReplayCheckPackets { self.packets.values().map(|v| v.len()).sum() } + /// Instant at which the currently-deferred batch must be flushed, or `None` if nothing is pending. + fn flush_deadline(&self, deferral: Duration) -> Option { + (self.total_count() > 0).then(|| self.last_acquired_mutex + deferral) + } + fn replay_tags(&self) -> HashMap> { let mut replay_tags = HashMap::with_capacity(self.packets.len()); 'outer: for (rotation_id, packets) in &self.packets { @@ -289,7 +295,7 @@ impl ConnectionHandler { .processing_config .maximum_replay_detection_deferral; - let count_threshold = self.pending_packets.packets.len() + let count_threshold = self.pending_packets.total_count() < self .shared .processing_config @@ -706,13 +712,23 @@ impl ConnectionHandler { ) { let mut packets_processed: u64 = 0; loop { + // make sure pending packets are not stuck in the queue if we don't get any more packets + // from this sender + let flush_deadline = self.pending_packets.flush_deadline( + self.shared + .processing_config + .maximum_replay_detection_deferral, + ); + tokio::select! { biased; + // 1. check for cancellation _ = self.shared.shutdown_token.cancelled() => { trace!("connection handler: received shutdown"); Span::current().record("exit_reason", "shutdown"); break } + // 2. handle any incoming packet maybe_framed_nym_packet = mixnet_connection.next() => { match maybe_framed_nym_packet { Some(Ok(packet)) => { @@ -732,7 +748,7 @@ impl ConnectionHandler { ); Span::current().record("exit_reason", "corrupted"); Span::current().record("packets_processed", packets_processed); - return + break } None => { debug!( @@ -742,14 +758,101 @@ impl ConnectionHandler { ); Span::current().record("exit_reason", "closed_by_remote"); Span::current().record("packets_processed", packets_processed); - return + break } } } + // 3. check for the deferred pending packets + _ = async move { + match flush_deadline { + Some(d) => tokio::time::sleep_until(d).await, + None => std::future::pending::<()>().await, + } + } => { + self.handle_pending_packets_batch(Instant::now()).await; + } } } + // drain any packets still deferred for replay-checking so they are forwarded + // rather than silently dropped when the connection closes, errors, or shuts down + self.handle_pending_packets_batch(Instant::now()).await; + Span::current().record("packets_processed", packets_processed); debug!("exiting and closing connection"); } } + +#[cfg(test)] +#[allow(clippy::unwrap_used, clippy::expect_used)] +mod tests { + use super::*; + use nym_sphinx_params::{PacketSize, PacketType}; + use nym_sphinx_types::{ + DESTINATION_ADDRESS_LENGTH, Destination, DestinationAddressBytes, IDENTIFIER_LENGTH, + NODE_ADDRESS_LENGTH, Node, NodeAddressBytes, NymPacket, PrivateKey, PublicKey, + }; + + fn random_pubkey() -> PublicKey { + (&PrivateKey::random()).into() + } + + // Build a real sphinx packet whose first hop validates against `key`, then partially + // unwrap it - enough to land one entry in the pending replay-check batch. + fn pending_packet(key: &PrivateKey) -> PartialyUnwrappedPacketWithKeyRotation { + let route = [ + Node::new( + NodeAddressBytes::from_bytes([1u8; NODE_ADDRESS_LENGTH]), + key.into(), + ), + Node::new( + NodeAddressBytes::from_bytes([2u8; NODE_ADDRESS_LENGTH]), + random_pubkey(), + ), + ]; + let destination = Destination::new( + DestinationAddressBytes::from_bytes([3u8; DESTINATION_ADDRESS_LENGTH]), + [4u8; IDENTIFIER_LENGTH], + ); + let delays: Vec = std::iter::repeat_with(|| Delay::new_from_nanos(0)) + .take(route.len()) + .collect(); + let packet = NymPacket::sphinx_build( + true, + PacketSize::RegularPacket.payload_size(), + b"x", + &route, + &destination, + &delays, + ) + .expect("failed to build test sphinx packet"); + let framed = + FramedNymPacket::new(packet, PacketType::Mix, SphinxKeyRotation::Unknown, true); + + PartiallyUnwrappedPacket::new(framed, key) + .map_err(|(_, err)| err) + .expect("failed to partially unwrap test packet") + .with_key_rotation(0) + } + + #[test] + fn no_flush_deadline_when_nothing_pending() { + let pending = PendingReplayCheckPackets::new(); + assert!(pending.flush_deadline(Duration::from_millis(50)).is_none()); + } + + #[test] + fn flush_deadline_is_batch_start_plus_deferral() { + let key = PrivateKey::random(); + let mut pending = PendingReplayCheckPackets::new(); + + let batch_start = Instant::now(); + pending.push(batch_start, pending_packet(&key)); + + let deferral = Duration::from_millis(50); + assert_eq!( + pending.flush_deadline(deferral), + Some(batch_start + deferral) + ); + } +} diff --git a/nym-node/src/node/mixnet/shared/mod.rs b/nym-node/src/node/mixnet/shared/mod.rs index cbe3418d6a..2f68da5211 100644 --- a/nym-node/src/node/mixnet/shared/mod.rs +++ b/nym-node/src/node/mixnet/shared/mod.rs @@ -24,7 +24,7 @@ use std::time::Duration; use tokio::net::TcpStream; use tokio::task::JoinHandle; use tokio::time::Instant; -use tracing::{debug, error}; +use tracing::{debug, error, warn}; pub(crate) mod final_hop; @@ -192,6 +192,12 @@ impl SharedData { match accepted { Ok((socket, remote_addr)) => { debug!("accepted incoming mixnet connection from: {remote_addr}"); + // disable Nagle: mix packets are latency-sensitive and flushed one at a time. + if let Err(err) = socket.set_nodelay(true) { + warn!( + "failed to set TCP_NODELAY on mixnet connection from {remote_addr}: {err}" + ); + } let mut handler = ConnectionHandler::new(self, remote_addr); let join_handle = tokio::spawn(async move { handler.handle_connection(socket).await }); From a9bf1954bc0dc4a9ce1db30258367f71cafbb62b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bogdan-=C8=98tefan=20Neac=C5=9Fu?= Date: Mon, 8 Jun 2026 11:19:42 +0300 Subject: [PATCH 07/12] Keep peer in wg table when updating psk (#6856) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Keep peer in wg table when updating psk * Fix unit test * update handle_update_peer_psk_request --------- Co-authored-by: Jędrzej Stuczyński --- .../tests/src/v2/peer_controller.rs | 11 ++++ common/wireguard/src/peer_controller/mock.rs | 10 ++++ common/wireguard/src/peer_controller/mod.rs | 60 +++++++++++++++++++ .../wireguard/new_peer_registration/lp.rs | 17 +----- gateway/src/node/wireguard/peer_manager.rs | 38 ++++++++++++ .../src/prometheus_wrapper.rs | 8 ++- 6 files changed, 129 insertions(+), 15 deletions(-) diff --git a/common/wireguard-private-metadata/tests/src/v2/peer_controller.rs b/common/wireguard-private-metadata/tests/src/v2/peer_controller.rs index 2b29de63c6..10f0d20ace 100644 --- a/common/wireguard-private-metadata/tests/src/v2/peer_controller.rs +++ b/common/wireguard-private-metadata/tests/src/v2/peer_controller.rs @@ -14,6 +14,7 @@ use tokio::sync::mpsc::Receiver; #[derive(Hash, PartialOrd, PartialEq, Clone, Debug, Eq, Copy)] pub enum PeerControlRequestTypeV2 { AddPeer, + UpdatePeerPsk, RemovePeer, QueryPeer, GetClientBandwidthByKey, @@ -26,6 +27,7 @@ impl From<&PeerControlRequest> for PeerControlRequestTypeV2 { fn from(req: &PeerControlRequest) -> Self { match req { PeerControlRequest::AddPeer { .. } => PeerControlRequestTypeV2::AddPeer, + PeerControlRequest::UpdatePeerPsk { .. } => PeerControlRequestTypeV2::UpdatePeerPsk, PeerControlRequest::PreAllocateIpPair { .. } => PeerControlRequestTypeV2::AddPeer, PeerControlRequest::RemovePeer { .. } => PeerControlRequestTypeV2::RemovePeer, PeerControlRequest::QueryPeer { .. } => PeerControlRequestTypeV2::QueryPeer, @@ -115,6 +117,15 @@ impl MockPeerControllerV2 { ) .unwrap(); } + PeerControlRequest::UpdatePeerPsk { response_tx, .. } => { + response_tx + .send( + *response + .downcast() + .expect("registered response has mismatched type"), + ) + .unwrap(); + } PeerControlRequest::PreAllocateIpPair { response_tx, .. } => { response_tx .send( diff --git a/common/wireguard/src/peer_controller/mock.rs b/common/wireguard/src/peer_controller/mock.rs index 37f9ba1f0a..bb6451ee43 100644 --- a/common/wireguard/src/peer_controller/mock.rs +++ b/common/wireguard/src/peer_controller/mock.rs @@ -71,6 +71,7 @@ impl From<&Key> for KeyWrapper { #[derive(Hash, PartialOrd, PartialEq, Clone, Debug, Eq)] pub enum PeerControlRequestType { AddPeer { public_key: KeyWrapper }, + UpdatePeerPsk { peer_key: KeyWrapper }, AllocatePeerIpPair {}, ReleaseIpPair { ip_pair: IpPair }, RemovePeer { key: KeyWrapper }, @@ -86,6 +87,7 @@ impl PeerControlRequestType { pub fn peer_key(&self) -> Option { match self { PeerControlRequestType::AddPeer { public_key } => Some(public_key.clone()), + PeerControlRequestType::UpdatePeerPsk { peer_key } => Some(peer_key.clone()), PeerControlRequestType::AllocatePeerIpPair {} => None, PeerControlRequestType::ReleaseIpPair { .. } => None, PeerControlRequestType::RemovePeer { key } => Some(key.clone()), @@ -109,6 +111,11 @@ impl From<&PeerControlRequest> for PeerControlRequestType { PeerControlRequest::AddPeer { peer, .. } => PeerControlRequestType::AddPeer { public_key: (&peer.public_key).into(), }, + PeerControlRequest::UpdatePeerPsk { peer_key, .. } => { + PeerControlRequestType::UpdatePeerPsk { + peer_key: peer_key.into(), + } + } PeerControlRequest::PreAllocateIpPair { .. } => { PeerControlRequestType::AllocatePeerIpPair {} } @@ -271,6 +278,9 @@ impl MockPeerController { } response_tx.send_downcasted(response.content) } + PeerControlRequest::UpdatePeerPsk { response_tx, .. } => { + response_tx.send_downcasted(response.content) + } PeerControlRequest::PreAllocateIpPair { response_tx, .. } => { response_tx.send_downcasted(response.content) } diff --git a/common/wireguard/src/peer_controller/mod.rs b/common/wireguard/src/peer_controller/mod.rs index 19f936b93b..a4fbbe2c02 100644 --- a/common/wireguard/src/peer_controller/mod.rs +++ b/common/wireguard/src/peer_controller/mod.rs @@ -76,6 +76,12 @@ pub enum PeerControlRequest { peer: Peer, response_tx: oneshot::Sender, }, + /// Update PSK for an existing peer, without changing its IP allocation + UpdatePeerPsk { + peer_key: Key, + psk: Key, + response_tx: oneshot::Sender, + }, /// Attempt to allocate an IP pair from the pool PreAllocateIpPair { response_tx: oneshot::Sender, @@ -118,6 +124,7 @@ pub enum PeerControlRequest { } pub type AddPeerControlResponse = Result<()>; +pub type UpdatePeerPskControlResponse = Result<()>; pub type AllocatePeerControlResponse = Result; pub type ReleaseIpPairControlResponse = Result<()>; pub type RemovePeerControlResponse = Result<()>; @@ -317,6 +324,50 @@ impl PeerController { Ok(()) } + async fn handle_update_peer_psk_request(&mut self, peer_key: &Key, psk: Key) -> Result<()> { + // observation will get automatically added once dropped + let _metric_timer = + PROMETHEUS_METRICS.start_timer(PrometheusMetric::WireguardDefguardPeerPskUpdate); + + nym_metrics::inc!("wg_peer_update_psk_attempts"); + + let Ok(Some(mut peer)) = self.handle_query_peer_by_key(peer_key).await else { + return Ok(()); + }; + let encoded_psk = psk.to_lower_hex(); + peer.preshared_key = Some(psk); + + // Account for bandwidth used so far *before* reconfiguring: `configure_peer` + // isn't guaranteed to preserve the kernel rx/tx counters, so fold the + // accrued bytes into the metrics first to avoid losing them on a reset. + if let Ok(host) = self.wg_api.read_interface_data() { + self.update_metrics(&host).await; + *self.host_information.write().await = host; + } + + // Try to update WireGuard peer + if let Err(e) = self.wg_api.configure_peer(&peer) { + nym_metrics::inc!("wg_peer_update_psk_failed"); + nym_metrics::inc!("wg_config_errors_total"); + return Err(e.into()); + }; + + // Persist the new PSK to disk so it survives a restart. Kernel-first: a + // failure here leaves the live session working, only risking drift on restart. + self.ecash_verifier + .storage() + .update_peer_psk(&peer_key.to_string(), Some(&encoded_psk)) + .await?; + + // Refresh again so the cached host information reflects the post-update state + if let Ok(host) = self.wg_api.read_interface_data() { + *self.host_information.write().await = host; + } + + nym_metrics::inc!("wg_peer_update_psk_success"); + Ok(()) + } + /// Allocate IP pair from pool for a new peer registration /// /// This only allocates IPs - the caller must handle database storage and @@ -513,6 +564,15 @@ impl PeerController { PeerControlRequest::AddPeer { peer, response_tx } => { response_tx.send(self.handle_add_request(&peer).await).ok(); } + PeerControlRequest::UpdatePeerPsk { + peer_key, + psk, + response_tx, + } => { + response_tx + .send(self.handle_update_peer_psk_request(&peer_key, psk).await) + .ok(); + } PeerControlRequest::PreAllocateIpPair { response_tx } => { response_tx.send(self.handle_ip_allocation_request()).ok(); } diff --git a/gateway/src/node/wireguard/new_peer_registration/lp.rs b/gateway/src/node/wireguard/new_peer_registration/lp.rs index 352e517ccf..bd547bce0e 100644 --- a/gateway/src/node/wireguard/new_peer_registration/lp.rs +++ b/gateway/src/node/wireguard/new_peer_registration/lp.rs @@ -15,25 +15,14 @@ use std::time::Instant; impl PeerRegistrator { /// In the case of an already registered WG peer, update its PSK. + /// + /// The peer controller keeps the active config and the on-disk PSK in sync. pub(super) async fn update_peer_psk( &self, peer: PeerPublicKey, psk: Key, ) -> Result<(), GatewayWireguardError> { - // 1. check if the peer is currently being handled - if self.peer_manager.check_active_peer(peer).await? { - // 2. if so, force disconnect it (as we're handling new request from the same peer) - self.peer_manager.remove_peer(peer).await?; - } - - // 3. update the on-disk PSK - let encoded_psk = psk.to_lower_hex(); - self.ecash_verifier - .storage() - .update_peer_psk(&peer.to_string(), Some(&encoded_psk)) - .await?; - - Ok(()) + self.peer_manager.update_peer_psk(peer, psk).await } fn lp_peer_to_final_response( diff --git a/gateway/src/node/wireguard/peer_manager.rs b/gateway/src/node/wireguard/peer_manager.rs index ffb25840e9..55a7445d45 100644 --- a/gateway/src/node/wireguard/peer_manager.rs +++ b/gateway/src/node/wireguard/peer_manager.rs @@ -125,6 +125,44 @@ impl PeerManager { res } + pub async fn update_peer_psk( + &self, + pub_key: PeerPublicKey, + psk: Key, + ) -> Result<(), GatewayWireguardError> { + let controller_start = Instant::now(); + let peer_key = Key::new(pub_key.to_bytes()); + let (response_tx, response_rx) = oneshot::channel(); + let msg = PeerControlRequest::UpdatePeerPsk { + peer_key, + psk, + response_tx, + }; + self.wireguard_gateway_data + .peer_tx() + .send(msg) + .await + .map_err(|_| GatewayWireguardError::PeerInteractionStopped)?; + + let res = response_rx + .await + .map_err(|_| GatewayWireguardError::internal("no response for update peer psk"))? + .map_err(|err| { + GatewayWireguardError::InternalError(format!( + "updating peer psk could not be performed: {err:?}" + )) + }); + + let latency = controller_start.elapsed().as_secs_f64(); + add_histogram_obs!( + "wg_peer_controller_channel_latency_seconds", + latency, + WG_CONTROLLER_LATENCY_BUCKETS + ); + + res + } + pub async fn remove_peer(&self, pub_key: PeerPublicKey) -> Result<(), GatewayWireguardError> { let controller_start = Instant::now(); let key = Key::new(pub_key.to_bytes()); diff --git a/nym-node/nym-node-metrics/src/prometheus_wrapper.rs b/nym-node/nym-node-metrics/src/prometheus_wrapper.rs index 72c4b2f4d0..b393c236af 100644 --- a/nym-node/nym-node-metrics/src/prometheus_wrapper.rs +++ b/nym-node/nym-node-metrics/src/prometheus_wrapper.rs @@ -157,6 +157,9 @@ pub enum PrometheusMetric { #[strum(props(help = "The distribution of defguard peer creation time"))] WireguardDefguardPeerCreation, + #[strum(props(help = "The distribution of defguard peer psk update time"))] + WireguardDefguardPeerPskUpdate, + #[strum(props( help = "The distribution of time it takes to verify a credential during peer registration" ))] @@ -320,6 +323,9 @@ impl PrometheusMetric { PrometheusMetric::WireguardDefguardPeerCreation => { Metric::new_histogram(&name, help, Some(REG_LATENCY_BUCKETS)) } + PrometheusMetric::WireguardDefguardPeerPskUpdate => { + Metric::new_histogram(&name, help, Some(REG_LATENCY_BUCKETS)) + } PrometheusMetric::DvpnAuthenticatorClientRegistrationMsg1 => { Metric::new_histogram(&name, help, Some(REG_LATENCY_BUCKETS)) } @@ -452,7 +458,7 @@ mod tests { // a sanity check for anyone adding new metrics. if this test fails, // make sure any methods on `PrometheusMetric` enum don't need updating // or require custom Display impl - assert_eq!(46, PrometheusMetric::COUNT) + assert_eq!(47, PrometheusMetric::COUNT) } #[test] From e27cf142f977c368361b9c0068c49100c69076f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Stuczy=C5=84ski?= Date: Mon, 8 Jun 2026 10:45:22 +0100 Subject: [PATCH 08/12] fix: pin ed25519-zebra to 4.0.3 in contracts workspace cosmwasm-crypto 2.2.2 targets ed25519-zebra 4.0.3 (default-features = false) and uses its `batch` module, but the lockfile had resolved to 4.2.0, which gates `batch` behind the `alloc` feature. That left cosmwasm-crypto - and therefore the whole contracts workspace - failing to compile. Pin back to 4.0.3 so it builds. --- contracts/Cargo.lock | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/contracts/Cargo.lock b/contracts/Cargo.lock index d8b1d4c894..b7d5f646e1 100644 --- a/contracts/Cargo.lock +++ b/contracts/Cargo.lock @@ -23,6 +23,12 @@ dependencies = [ "memchr", ] +[[package]] +name = "allocator-api2" +version = "0.2.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" + [[package]] name = "anyhow" version = "1.0.102" @@ -780,15 +786,16 @@ dependencies = [ [[package]] name = "ed25519-zebra" -version = "4.2.0" +version = "4.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "775765289f7c6336c18d3d66127527820dd45ffd9eb3b6b8ee4708590e6c20f5" +checksum = "7d9ce6874da5d4415896cd45ffbc4d1cfc0c4f9c079427bd870742c30f2f65a9" dependencies = [ "curve25519-dalek", "ed25519", + "hashbrown 0.14.5", + "hex", "rand_core", "sha2", - "subtle", "zeroize", ] @@ -880,6 +887,16 @@ dependencies = [ "ahash", ] +[[package]] +name = "hashbrown" +version = "0.14.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" +dependencies = [ + "ahash", + "allocator-api2", +] + [[package]] name = "hashbrown" version = "0.17.1" From c85fb161d40169c4540176802fc4fbda60c5087e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Stuczy=C5=84ski?= Date: Mon, 8 Jun 2026 10:45:30 +0100 Subject: [PATCH 09/12] feat: allow re-inviting a node whose family invitation has expired InviteToFamily previously rejected any second invitation for a (family, node) pair with PendingInvitationAlreadyExists, even once the existing invitation had expired and was left inert in the pending map. Now a still-valid invitation still blocks a duplicate, but an expired one is archived under the new terminal status FamilyInvitationStatus::Expired and superseded by the fresh invitation. Regenerated the contract JSON schema and updated the openspec capability. --- .../node-families-contract/src/types.rs | 24 +++-- .../node-families/schema/node-families.json | 98 ++++++++++++++--- ...nse_to_get_all_past_invitations_paged.json | 30 +++++- ..._to_get_all_pending_invitations_paged.json | 2 +- ...get_past_invitations_for_family_paged.json | 30 +++++- ...o_get_past_invitations_for_node_paged.json | 30 +++++- .../response_to_get_pending_invitation.json | 2 +- ..._pending_invitations_for_family_paged.json | 2 +- ...et_pending_invitations_for_node_paged.json | 2 +- contracts/node-families/src/storage/mod.rs | 100 ++++++++++++++---- contracts/node-families/src/testing.rs | 3 +- contracts/node-families/src/transactions.rs | 97 ++++++++++++++++- openspec/specs/node-families-contract/spec.md | 19 ++-- 13 files changed, 377 insertions(+), 62 deletions(-) diff --git a/common/cosmwasm-smart-contracts/node-families-contract/src/types.rs b/common/cosmwasm-smart-contracts/node-families-contract/src/types.rs index 6fefaae4ba..439e237703 100644 --- a/common/cosmwasm-smart-contracts/node-families-contract/src/types.rs +++ b/common/cosmwasm-smart-contracts/node-families-contract/src/types.rs @@ -61,9 +61,12 @@ pub struct NodeFamily { /// A pending invitation for a node to join a particular family. /// -/// Invitations are stored until they are accepted, rejected, revoked, or until the -/// chain advances past `expires_at` (in which case they remain in storage but are -/// treated as inert — there is no background process clearing expired invitations). +/// Invitations are stored until they are accepted, rejected, or revoked. Once the +/// chain advances past `expires_at` an invitation becomes inert but stays in storage +/// — there is no background process clearing expired invitations. A timed-out +/// invitation is cleared either when explicitly revoked/rejected, or when the family +/// issues a fresh invitation for the same node, which archives the stale one as +/// `Expired` and supersedes it. #[cw_serde] pub struct FamilyInvitation { /// The family that issued the invitation. @@ -107,8 +110,10 @@ pub struct PastFamilyMember { /// Terminal status for an invitation that has been moved out of the pending set. /// -/// Note: timed-out invitations are not represented here — they are simply left in -/// the pending set (see `FamilyInvitation::expires_at`). +/// Note: an invitation that merely times out is **not** archived here on its own — +/// it is left inert in the pending set (see `FamilyInvitation::expires_at`). It only +/// reaches `Expired` if the family issues a fresh invitation for the same node, which +/// supersedes and archives the stale one. #[cw_serde] pub enum FamilyInvitationStatus { /// Still awaiting a response. Recorded with a timestamp for completeness even @@ -121,11 +126,16 @@ pub enum FamilyInvitationStatus { /// The family revoked the invitation at the given timestamp before it could /// be accepted or rejected. Revoked { at: u64 }, + /// The invitation had already expired and was superseded by a fresh invitation + /// for the same node from the same family, issued at the given timestamp. This is + /// the only path that archives a timed-out invitation. + Expired { at: u64 }, } /// Historical record of an invitation that has reached a terminal state -/// (`Accepted`, `Rejected`, or `Revoked`). Timed-out invitations are **not** -/// archived here — they remain in the pending map until explicitly cleared. +/// (`Accepted`, `Rejected`, `Revoked`, or `Expired`). A timed-out invitation is +/// archived here only when a fresh invitation for the same node supersedes it +/// (status `Expired`); otherwise it stays in the pending map until explicitly cleared. #[cw_serde] pub struct PastFamilyInvitation { /// The original invitation as it was issued. diff --git a/contracts/node-families/schema/node-families.json b/contracts/node-families/schema/node-families.json index 9a731548ba..956456516a 100644 --- a/contracts/node-families/schema/node-families.json +++ b/contracts/node-families/schema/node-families.json @@ -1188,7 +1188,7 @@ "additionalProperties": false, "definitions": { "FamilyInvitation": { - "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, revoked, or until the chain advances past `expires_at` (in which case they remain in storage but are treated as inert — there is no background process clearing expired invitations).", + "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, or revoked. Once the chain advances past `expires_at` an invitation becomes inert but stays in storage — there is no background process clearing expired invitations. A timed-out invitation is cleared either when explicitly revoked/rejected, or when the family issues a fresh invitation for the same node, which archives the stale one as `Expired` and supersedes it.", "type": "object", "required": [ "expires_at", @@ -1218,7 +1218,7 @@ "additionalProperties": false }, "FamilyInvitationStatus": { - "description": "Terminal status for an invitation that has been moved out of the pending set.\n\nNote: timed-out invitations are not represented here — they are simply left in the pending set (see `FamilyInvitation::expires_at`).", + "description": "Terminal status for an invitation that has been moved out of the pending set.\n\nNote: an invitation that merely times out is **not** archived here on its own — it is left inert in the pending set (see `FamilyInvitation::expires_at`). It only reaches `Expired` if the family issues a fresh invitation for the same node, which supersedes and archives the stale one.", "oneOf": [ { "description": "Still awaiting a response. Recorded with a timestamp for completeness even though pending invitations live in a separate map.", @@ -1315,11 +1315,35 @@ } }, "additionalProperties": false + }, + { + "description": "The invitation had already expired and was superseded by a fresh invitation for the same node from the same family, issued at the given timestamp. This is the only path that archives a timed-out invitation.", + "type": "object", + "required": [ + "expired" + ], + "properties": { + "expired": { + "type": "object", + "required": [ + "at" + ], + "properties": { + "at": { + "type": "integer", + "format": "uint64", + "minimum": 0.0 + } + }, + "additionalProperties": false + } + }, + "additionalProperties": false } ] }, "PastFamilyInvitation": { - "description": "Historical record of an invitation that has reached a terminal state (`Accepted`, `Rejected`, or `Revoked`). Timed-out invitations are **not** archived here — they remain in the pending map until explicitly cleared.", + "description": "Historical record of an invitation that has reached a terminal state (`Accepted`, `Rejected`, `Revoked`, or `Expired`). A timed-out invitation is archived here only when a fresh invitation for the same node supersedes it (status `Expired`); otherwise it stays in the pending map until explicitly cleared.", "type": "object", "required": [ "invitation", @@ -1388,7 +1412,7 @@ "additionalProperties": false, "definitions": { "FamilyInvitation": { - "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, revoked, or until the chain advances past `expires_at` (in which case they remain in storage but are treated as inert — there is no background process clearing expired invitations).", + "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, or revoked. Once the chain advances past `expires_at` an invitation becomes inert but stays in storage — there is no background process clearing expired invitations. A timed-out invitation is cleared either when explicitly revoked/rejected, or when the family issues a fresh invitation for the same node, which archives the stale one as `Expired` and supersedes it.", "type": "object", "required": [ "expires_at", @@ -2073,7 +2097,7 @@ "additionalProperties": false, "definitions": { "FamilyInvitation": { - "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, revoked, or until the chain advances past `expires_at` (in which case they remain in storage but are treated as inert — there is no background process clearing expired invitations).", + "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, or revoked. Once the chain advances past `expires_at` an invitation becomes inert but stays in storage — there is no background process clearing expired invitations. A timed-out invitation is cleared either when explicitly revoked/rejected, or when the family issues a fresh invitation for the same node, which archives the stale one as `Expired` and supersedes it.", "type": "object", "required": [ "expires_at", @@ -2103,7 +2127,7 @@ "additionalProperties": false }, "FamilyInvitationStatus": { - "description": "Terminal status for an invitation that has been moved out of the pending set.\n\nNote: timed-out invitations are not represented here — they are simply left in the pending set (see `FamilyInvitation::expires_at`).", + "description": "Terminal status for an invitation that has been moved out of the pending set.\n\nNote: an invitation that merely times out is **not** archived here on its own — it is left inert in the pending set (see `FamilyInvitation::expires_at`). It only reaches `Expired` if the family issues a fresh invitation for the same node, which supersedes and archives the stale one.", "oneOf": [ { "description": "Still awaiting a response. Recorded with a timestamp for completeness even though pending invitations live in a separate map.", @@ -2200,11 +2224,35 @@ } }, "additionalProperties": false + }, + { + "description": "The invitation had already expired and was superseded by a fresh invitation for the same node from the same family, issued at the given timestamp. This is the only path that archives a timed-out invitation.", + "type": "object", + "required": [ + "expired" + ], + "properties": { + "expired": { + "type": "object", + "required": [ + "at" + ], + "properties": { + "at": { + "type": "integer", + "format": "uint64", + "minimum": 0.0 + } + }, + "additionalProperties": false + } + }, + "additionalProperties": false } ] }, "PastFamilyInvitation": { - "description": "Historical record of an invitation that has reached a terminal state (`Accepted`, `Rejected`, or `Revoked`). Timed-out invitations are **not** archived here — they remain in the pending map until explicitly cleared.", + "description": "Historical record of an invitation that has reached a terminal state (`Accepted`, `Rejected`, `Revoked`, or `Expired`). A timed-out invitation is archived here only when a fresh invitation for the same node supersedes it (status `Expired`); otherwise it stays in the pending map until explicitly cleared.", "type": "object", "required": [ "invitation", @@ -2280,7 +2328,7 @@ "additionalProperties": false, "definitions": { "FamilyInvitation": { - "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, revoked, or until the chain advances past `expires_at` (in which case they remain in storage but are treated as inert — there is no background process clearing expired invitations).", + "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, or revoked. Once the chain advances past `expires_at` an invitation becomes inert but stays in storage — there is no background process clearing expired invitations. A timed-out invitation is cleared either when explicitly revoked/rejected, or when the family issues a fresh invitation for the same node, which archives the stale one as `Expired` and supersedes it.", "type": "object", "required": [ "expires_at", @@ -2310,7 +2358,7 @@ "additionalProperties": false }, "FamilyInvitationStatus": { - "description": "Terminal status for an invitation that has been moved out of the pending set.\n\nNote: timed-out invitations are not represented here — they are simply left in the pending set (see `FamilyInvitation::expires_at`).", + "description": "Terminal status for an invitation that has been moved out of the pending set.\n\nNote: an invitation that merely times out is **not** archived here on its own — it is left inert in the pending set (see `FamilyInvitation::expires_at`). It only reaches `Expired` if the family issues a fresh invitation for the same node, which supersedes and archives the stale one.", "oneOf": [ { "description": "Still awaiting a response. Recorded with a timestamp for completeness even though pending invitations live in a separate map.", @@ -2407,11 +2455,35 @@ } }, "additionalProperties": false + }, + { + "description": "The invitation had already expired and was superseded by a fresh invitation for the same node from the same family, issued at the given timestamp. This is the only path that archives a timed-out invitation.", + "type": "object", + "required": [ + "expired" + ], + "properties": { + "expired": { + "type": "object", + "required": [ + "at" + ], + "properties": { + "at": { + "type": "integer", + "format": "uint64", + "minimum": 0.0 + } + }, + "additionalProperties": false + } + }, + "additionalProperties": false } ] }, "PastFamilyInvitation": { - "description": "Historical record of an invitation that has reached a terminal state (`Accepted`, `Rejected`, or `Revoked`). Timed-out invitations are **not** archived here — they remain in the pending map until explicitly cleared.", + "description": "Historical record of an invitation that has reached a terminal state (`Accepted`, `Rejected`, `Revoked`, or `Expired`). A timed-out invitation is archived here only when a fresh invitation for the same node supersedes it (status `Expired`); otherwise it stays in the pending map until explicitly cleared.", "type": "object", "required": [ "invitation", @@ -2634,7 +2706,7 @@ "additionalProperties": false, "definitions": { "FamilyInvitation": { - "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, revoked, or until the chain advances past `expires_at` (in which case they remain in storage but are treated as inert — there is no background process clearing expired invitations).", + "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, or revoked. Once the chain advances past `expires_at` an invitation becomes inert but stays in storage — there is no background process clearing expired invitations. A timed-out invitation is cleared either when explicitly revoked/rejected, or when the family issues a fresh invitation for the same node, which archives the stale one as `Expired` and supersedes it.", "type": "object", "required": [ "expires_at", @@ -2724,7 +2796,7 @@ "additionalProperties": false, "definitions": { "FamilyInvitation": { - "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, revoked, or until the chain advances past `expires_at` (in which case they remain in storage but are treated as inert — there is no background process clearing expired invitations).", + "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, or revoked. Once the chain advances past `expires_at` an invitation becomes inert but stays in storage — there is no background process clearing expired invitations. A timed-out invitation is cleared either when explicitly revoked/rejected, or when the family issues a fresh invitation for the same node, which archives the stale one as `Expired` and supersedes it.", "type": "object", "required": [ "expires_at", @@ -2814,7 +2886,7 @@ "additionalProperties": false, "definitions": { "FamilyInvitation": { - "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, revoked, or until the chain advances past `expires_at` (in which case they remain in storage but are treated as inert — there is no background process clearing expired invitations).", + "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, or revoked. Once the chain advances past `expires_at` an invitation becomes inert but stays in storage — there is no background process clearing expired invitations. A timed-out invitation is cleared either when explicitly revoked/rejected, or when the family issues a fresh invitation for the same node, which archives the stale one as `Expired` and supersedes it.", "type": "object", "required": [ "expires_at", diff --git a/contracts/node-families/schema/raw/response_to_get_all_past_invitations_paged.json b/contracts/node-families/schema/raw/response_to_get_all_past_invitations_paged.json index dcbb67974b..cdf9c39f48 100644 --- a/contracts/node-families/schema/raw/response_to_get_all_past_invitations_paged.json +++ b/contracts/node-families/schema/raw/response_to_get_all_past_invitations_paged.json @@ -51,7 +51,7 @@ "additionalProperties": false, "definitions": { "FamilyInvitation": { - "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, revoked, or until the chain advances past `expires_at` (in which case they remain in storage but are treated as inert — there is no background process clearing expired invitations).", + "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, or revoked. Once the chain advances past `expires_at` an invitation becomes inert but stays in storage — there is no background process clearing expired invitations. A timed-out invitation is cleared either when explicitly revoked/rejected, or when the family issues a fresh invitation for the same node, which archives the stale one as `Expired` and supersedes it.", "type": "object", "required": [ "expires_at", @@ -81,7 +81,7 @@ "additionalProperties": false }, "FamilyInvitationStatus": { - "description": "Terminal status for an invitation that has been moved out of the pending set.\n\nNote: timed-out invitations are not represented here — they are simply left in the pending set (see `FamilyInvitation::expires_at`).", + "description": "Terminal status for an invitation that has been moved out of the pending set.\n\nNote: an invitation that merely times out is **not** archived here on its own — it is left inert in the pending set (see `FamilyInvitation::expires_at`). It only reaches `Expired` if the family issues a fresh invitation for the same node, which supersedes and archives the stale one.", "oneOf": [ { "description": "Still awaiting a response. Recorded with a timestamp for completeness even though pending invitations live in a separate map.", @@ -178,11 +178,35 @@ } }, "additionalProperties": false + }, + { + "description": "The invitation had already expired and was superseded by a fresh invitation for the same node from the same family, issued at the given timestamp. This is the only path that archives a timed-out invitation.", + "type": "object", + "required": [ + "expired" + ], + "properties": { + "expired": { + "type": "object", + "required": [ + "at" + ], + "properties": { + "at": { + "type": "integer", + "format": "uint64", + "minimum": 0.0 + } + }, + "additionalProperties": false + } + }, + "additionalProperties": false } ] }, "PastFamilyInvitation": { - "description": "Historical record of an invitation that has reached a terminal state (`Accepted`, `Rejected`, or `Revoked`). Timed-out invitations are **not** archived here — they remain in the pending map until explicitly cleared.", + "description": "Historical record of an invitation that has reached a terminal state (`Accepted`, `Rejected`, `Revoked`, or `Expired`). A timed-out invitation is archived here only when a fresh invitation for the same node supersedes it (status `Expired`); otherwise it stays in the pending map until explicitly cleared.", "type": "object", "required": [ "invitation", diff --git a/contracts/node-families/schema/raw/response_to_get_all_pending_invitations_paged.json b/contracts/node-families/schema/raw/response_to_get_all_pending_invitations_paged.json index 90bffdabc9..22c0020b3a 100644 --- a/contracts/node-families/schema/raw/response_to_get_all_pending_invitations_paged.json +++ b/contracts/node-families/schema/raw/response_to_get_all_pending_invitations_paged.json @@ -39,7 +39,7 @@ "additionalProperties": false, "definitions": { "FamilyInvitation": { - "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, revoked, or until the chain advances past `expires_at` (in which case they remain in storage but are treated as inert — there is no background process clearing expired invitations).", + "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, or revoked. Once the chain advances past `expires_at` an invitation becomes inert but stays in storage — there is no background process clearing expired invitations. A timed-out invitation is cleared either when explicitly revoked/rejected, or when the family issues a fresh invitation for the same node, which archives the stale one as `Expired` and supersedes it.", "type": "object", "required": [ "expires_at", diff --git a/contracts/node-families/schema/raw/response_to_get_past_invitations_for_family_paged.json b/contracts/node-families/schema/raw/response_to_get_past_invitations_for_family_paged.json index 15e2271e61..2560e79b25 100644 --- a/contracts/node-families/schema/raw/response_to_get_past_invitations_for_family_paged.json +++ b/contracts/node-families/schema/raw/response_to_get_past_invitations_for_family_paged.json @@ -46,7 +46,7 @@ "additionalProperties": false, "definitions": { "FamilyInvitation": { - "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, revoked, or until the chain advances past `expires_at` (in which case they remain in storage but are treated as inert — there is no background process clearing expired invitations).", + "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, or revoked. Once the chain advances past `expires_at` an invitation becomes inert but stays in storage — there is no background process clearing expired invitations. A timed-out invitation is cleared either when explicitly revoked/rejected, or when the family issues a fresh invitation for the same node, which archives the stale one as `Expired` and supersedes it.", "type": "object", "required": [ "expires_at", @@ -76,7 +76,7 @@ "additionalProperties": false }, "FamilyInvitationStatus": { - "description": "Terminal status for an invitation that has been moved out of the pending set.\n\nNote: timed-out invitations are not represented here — they are simply left in the pending set (see `FamilyInvitation::expires_at`).", + "description": "Terminal status for an invitation that has been moved out of the pending set.\n\nNote: an invitation that merely times out is **not** archived here on its own — it is left inert in the pending set (see `FamilyInvitation::expires_at`). It only reaches `Expired` if the family issues a fresh invitation for the same node, which supersedes and archives the stale one.", "oneOf": [ { "description": "Still awaiting a response. Recorded with a timestamp for completeness even though pending invitations live in a separate map.", @@ -173,11 +173,35 @@ } }, "additionalProperties": false + }, + { + "description": "The invitation had already expired and was superseded by a fresh invitation for the same node from the same family, issued at the given timestamp. This is the only path that archives a timed-out invitation.", + "type": "object", + "required": [ + "expired" + ], + "properties": { + "expired": { + "type": "object", + "required": [ + "at" + ], + "properties": { + "at": { + "type": "integer", + "format": "uint64", + "minimum": 0.0 + } + }, + "additionalProperties": false + } + }, + "additionalProperties": false } ] }, "PastFamilyInvitation": { - "description": "Historical record of an invitation that has reached a terminal state (`Accepted`, `Rejected`, or `Revoked`). Timed-out invitations are **not** archived here — they remain in the pending map until explicitly cleared.", + "description": "Historical record of an invitation that has reached a terminal state (`Accepted`, `Rejected`, `Revoked`, or `Expired`). A timed-out invitation is archived here only when a fresh invitation for the same node supersedes it (status `Expired`); otherwise it stays in the pending map until explicitly cleared.", "type": "object", "required": [ "invitation", diff --git a/contracts/node-families/schema/raw/response_to_get_past_invitations_for_node_paged.json b/contracts/node-families/schema/raw/response_to_get_past_invitations_for_node_paged.json index b438371287..4b8a746278 100644 --- a/contracts/node-families/schema/raw/response_to_get_past_invitations_for_node_paged.json +++ b/contracts/node-families/schema/raw/response_to_get_past_invitations_for_node_paged.json @@ -46,7 +46,7 @@ "additionalProperties": false, "definitions": { "FamilyInvitation": { - "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, revoked, or until the chain advances past `expires_at` (in which case they remain in storage but are treated as inert — there is no background process clearing expired invitations).", + "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, or revoked. Once the chain advances past `expires_at` an invitation becomes inert but stays in storage — there is no background process clearing expired invitations. A timed-out invitation is cleared either when explicitly revoked/rejected, or when the family issues a fresh invitation for the same node, which archives the stale one as `Expired` and supersedes it.", "type": "object", "required": [ "expires_at", @@ -76,7 +76,7 @@ "additionalProperties": false }, "FamilyInvitationStatus": { - "description": "Terminal status for an invitation that has been moved out of the pending set.\n\nNote: timed-out invitations are not represented here — they are simply left in the pending set (see `FamilyInvitation::expires_at`).", + "description": "Terminal status for an invitation that has been moved out of the pending set.\n\nNote: an invitation that merely times out is **not** archived here on its own — it is left inert in the pending set (see `FamilyInvitation::expires_at`). It only reaches `Expired` if the family issues a fresh invitation for the same node, which supersedes and archives the stale one.", "oneOf": [ { "description": "Still awaiting a response. Recorded with a timestamp for completeness even though pending invitations live in a separate map.", @@ -173,11 +173,35 @@ } }, "additionalProperties": false + }, + { + "description": "The invitation had already expired and was superseded by a fresh invitation for the same node from the same family, issued at the given timestamp. This is the only path that archives a timed-out invitation.", + "type": "object", + "required": [ + "expired" + ], + "properties": { + "expired": { + "type": "object", + "required": [ + "at" + ], + "properties": { + "at": { + "type": "integer", + "format": "uint64", + "minimum": 0.0 + } + }, + "additionalProperties": false + } + }, + "additionalProperties": false } ] }, "PastFamilyInvitation": { - "description": "Historical record of an invitation that has reached a terminal state (`Accepted`, `Rejected`, or `Revoked`). Timed-out invitations are **not** archived here — they remain in the pending map until explicitly cleared.", + "description": "Historical record of an invitation that has reached a terminal state (`Accepted`, `Rejected`, `Revoked`, or `Expired`). A timed-out invitation is archived here only when a fresh invitation for the same node supersedes it (status `Expired`); otherwise it stays in the pending map until explicitly cleared.", "type": "object", "required": [ "invitation", diff --git a/contracts/node-families/schema/raw/response_to_get_pending_invitation.json b/contracts/node-families/schema/raw/response_to_get_pending_invitation.json index c9ab63d67a..8d74fa0ac7 100644 --- a/contracts/node-families/schema/raw/response_to_get_pending_invitation.json +++ b/contracts/node-families/schema/raw/response_to_get_pending_invitation.json @@ -35,7 +35,7 @@ "additionalProperties": false, "definitions": { "FamilyInvitation": { - "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, revoked, or until the chain advances past `expires_at` (in which case they remain in storage but are treated as inert — there is no background process clearing expired invitations).", + "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, or revoked. Once the chain advances past `expires_at` an invitation becomes inert but stays in storage — there is no background process clearing expired invitations. A timed-out invitation is cleared either when explicitly revoked/rejected, or when the family issues a fresh invitation for the same node, which archives the stale one as `Expired` and supersedes it.", "type": "object", "required": [ "expires_at", diff --git a/contracts/node-families/schema/raw/response_to_get_pending_invitations_for_family_paged.json b/contracts/node-families/schema/raw/response_to_get_pending_invitations_for_family_paged.json index 9dc1b084d0..dd88959532 100644 --- a/contracts/node-families/schema/raw/response_to_get_pending_invitations_for_family_paged.json +++ b/contracts/node-families/schema/raw/response_to_get_pending_invitations_for_family_paged.json @@ -34,7 +34,7 @@ "additionalProperties": false, "definitions": { "FamilyInvitation": { - "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, revoked, or until the chain advances past `expires_at` (in which case they remain in storage but are treated as inert — there is no background process clearing expired invitations).", + "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, or revoked. Once the chain advances past `expires_at` an invitation becomes inert but stays in storage — there is no background process clearing expired invitations. A timed-out invitation is cleared either when explicitly revoked/rejected, or when the family issues a fresh invitation for the same node, which archives the stale one as `Expired` and supersedes it.", "type": "object", "required": [ "expires_at", diff --git a/contracts/node-families/schema/raw/response_to_get_pending_invitations_for_node_paged.json b/contracts/node-families/schema/raw/response_to_get_pending_invitations_for_node_paged.json index 6d59be893b..a0b68a6846 100644 --- a/contracts/node-families/schema/raw/response_to_get_pending_invitations_for_node_paged.json +++ b/contracts/node-families/schema/raw/response_to_get_pending_invitations_for_node_paged.json @@ -34,7 +34,7 @@ "additionalProperties": false, "definitions": { "FamilyInvitation": { - "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, revoked, or until the chain advances past `expires_at` (in which case they remain in storage but are treated as inert — there is no background process clearing expired invitations).", + "description": "A pending invitation for a node to join a particular family.\n\nInvitations are stored until they are accepted, rejected, or revoked. Once the chain advances past `expires_at` an invitation becomes inert but stays in storage — there is no background process clearing expired invitations. A timed-out invitation is cleared either when explicitly revoked/rejected, or when the family issues a fresh invitation for the same node, which archives the stale one as `Expired` and supersedes it.", "type": "object", "required": [ "expires_at", diff --git a/contracts/node-families/src/storage/mod.rs b/contracts/node-families/src/storage/mod.rs index 371631bac9..0a06732e46 100644 --- a/contracts/node-families/src/storage/mod.rs +++ b/contracts/node-families/src/storage/mod.rs @@ -292,11 +292,17 @@ impl NodeFamiliesStorage<'_> { /// - ensuring `expires_at` is strictly in the future. /// /// As defence-in-depth, this method errors with [`FamilyNotFound`] if - /// `family_id` is unknown and with [`PendingInvitationAlreadyExists`] if - /// a pending invitation for the same `(family, node)` pair is already - /// stored — the underlying `IndexedMap` would otherwise silently + /// `family_id` is unknown and with [`PendingInvitationAlreadyExists`] if a + /// *still-valid* pending invitation for the same `(family, node)` pair is + /// already stored — the underlying `IndexedMap` would otherwise silently /// overwrite it. /// + /// If a pending invitation for the pair exists but has already expired + /// (`now >= expires_at`), it is archived in [`Self::past_family_invitations`] + /// with status [`FamilyInvitationStatus::Expired`] and the fresh invitation + /// supersedes it. Together with an explicit revoke/reject, this is the only + /// path that clears a timed-out invitation out of the pending map. + /// /// Returns the freshly persisted [`FamilyInvitation`]. /// /// [`FamilyNotFound`]: NodeFamiliesContractError::FamilyNotFound @@ -304,25 +310,37 @@ impl NodeFamiliesStorage<'_> { pub(crate) fn add_pending_invitation( &self, store: &mut dyn Storage, + env: &Env, family_id: NodeFamilyId, node_id: NodeId, expires_at: u64, ) -> Result { + let now = env.block.time.seconds(); let key: FamilyMember = (family_id, node_id); if !self.families.has(store, family_id) { return Err(NodeFamiliesContractError::FamilyNotFound { family_id }); } - if self - .pending_family_invitations - .may_load(store, key)? - .is_some() - { - return Err(NodeFamiliesContractError::PendingInvitationAlreadyExists { - family_id, - node_id, - }); + if let Some(existing) = self.pending_family_invitations.may_load(store, key)? { + // a still-valid invitation blocks a duplicate; an expired one is + // archived and superseded by the fresh invitation below. + if now < existing.expires_at { + return Err(NodeFamiliesContractError::PendingInvitationAlreadyExists { + family_id, + node_id, + }); + } + + let counter = self.next_past_invitation_counter(store, key)?; + self.past_family_invitations.save( + store, + (key, counter), + &PastFamilyInvitation { + invitation: existing, + status: FamilyInvitationStatus::Expired { at: now }, + }, + )?; } let invitation = FamilyInvitation { @@ -914,10 +932,11 @@ mod tests { let s = NodeFamiliesStorage::new(); let alice = tester.addr_make("alice"); let f = tester.make_family(&alice); - let expires_at = tester.env().block.time.seconds() + 100; + let env = tester.env(); + let expires_at = env.block.time.seconds() + 100; let inv = s - .add_pending_invitation(tester.storage_mut(), f.id, 42, expires_at) + .add_pending_invitation(tester.storage_mut(), &env, f.id, 42, expires_at) .unwrap(); assert_eq!(inv.family_id, f.id); @@ -937,7 +956,7 @@ mod tests { let env = tester.env(); let expires_at = env.block.time.seconds() + 100; - let res = s.add_pending_invitation(tester.storage_mut(), 99, 42, expires_at); + let res = s.add_pending_invitation(tester.storage_mut(), &env, 99, 42, expires_at); assert_eq!( res.unwrap_err(), NodeFamiliesContractError::FamilyNotFound { family_id: 99 } @@ -955,7 +974,7 @@ mod tests { tester.invite_to_family(f.id, 42); let expires_at = env.block.time.seconds() + 200; - let res = s.add_pending_invitation(tester.storage_mut(), f.id, 42, expires_at); + let res = s.add_pending_invitation(tester.storage_mut(), &env, f.id, 42, expires_at); assert_eq!( res.unwrap_err(), NodeFamiliesContractError::PendingInvitationAlreadyExists { @@ -965,6 +984,47 @@ mod tests { ); } + #[test] + fn add_pending_invitation_supersedes_expired() { + let mut tester = init_contract_tester(); + let s = NodeFamiliesStorage::new(); + let env = tester.env(); + let alice = tester.addr_make("alice"); + let f = tester.make_family(&alice); + + // first invitation expires at exactly `now`, so it is immediately stale + let stale_exp = env.block.time.seconds(); + s.add_pending_invitation(tester.storage_mut(), &env, f.id, 42, stale_exp) + .unwrap(); + + // re-inviting the same node supersedes the expired invitation + let fresh_exp = env.block.time.seconds() + 100; + let fresh = s + .add_pending_invitation(tester.storage_mut(), &env, f.id, 42, fresh_exp) + .unwrap(); + assert_eq!(fresh.expires_at, fresh_exp); + + // the fresh invitation is the one left pending + let pending = s + .pending_family_invitations + .load(tester.storage(), (f.id, 42)) + .unwrap(); + assert_eq!(pending.expires_at, fresh_exp); + + // the stale one is archived as Expired, stamped at `now` + let past = s + .past_family_invitations + .load(tester.storage(), ((f.id, 42), 0)) + .unwrap(); + assert_eq!( + past.status, + FamilyInvitationStatus::Expired { + at: env.block.time.seconds() + } + ); + assert_eq!(past.invitation.expires_at, stale_exp); + } + // ---- accept_invitation ---- #[test] @@ -975,7 +1035,7 @@ mod tests { let alice = tester.addr_make("alice"); let f = tester.make_family(&alice); let expires_at = env.block.time.seconds() + 100; - s.add_pending_invitation(tester.storage_mut(), f.id, 42, expires_at) + s.add_pending_invitation(tester.storage_mut(), &env, f.id, 42, expires_at) .unwrap(); let updated = s @@ -1032,7 +1092,7 @@ mod tests { let f = tester.make_family(&alice); // expires at exactly `now` — `now >= expires_at` triggers let expires_at = tester.env().block.time.seconds(); - s.add_pending_invitation(tester.storage_mut(), f.id, 42, expires_at) + s.add_pending_invitation(tester.storage_mut(), &env, f.id, 42, expires_at) .unwrap(); let res = s.accept_invitation(tester.storage_mut(), &env, f.id, 42); @@ -1087,7 +1147,7 @@ mod tests { let alice = tester.addr_make("alice"); let f = tester.make_family(&alice); let expires_at = env.block.time.seconds(); - s.add_pending_invitation(tester.storage_mut(), f.id, 42, expires_at) + s.add_pending_invitation(tester.storage_mut(), &env, f.id, 42, expires_at) .unwrap(); s.reject_pending_invitation(tester.storage_mut(), &env, f.id, 42) @@ -1205,7 +1265,7 @@ mod tests { let expires_at = env.block.time.seconds() + 100; for _ in 0..2 { - s.add_pending_invitation(tester.storage_mut(), f.id, 42, expires_at) + s.add_pending_invitation(tester.storage_mut(), &env, f.id, 42, expires_at) .unwrap(); s.accept_invitation(tester.storage_mut(), &env, f.id, 42) .unwrap(); diff --git a/contracts/node-families/src/testing.rs b/contracts/node-families/src/testing.rs index d68c357d45..f173a4b5f7 100644 --- a/contracts/node-families/src/testing.rs +++ b/contracts/node-families/src/testing.rs @@ -168,8 +168,9 @@ pub trait NodeFamiliesContractTesterExt: node: NodeId, expiration: u64, ) -> FamilyInvitation { + let env = self.env(); NodeFamiliesStorage::new() - .add_pending_invitation(self, family, node, expiration) + .add_pending_invitation(self, &env, family, node, expiration) .unwrap() } diff --git a/contracts/node-families/src/transactions.rs b/contracts/node-families/src/transactions.rs index e18f84b3d1..f53c5747b6 100644 --- a/contracts/node-families/src/transactions.rs +++ b/contracts/node-families/src/transactions.rs @@ -254,7 +254,8 @@ pub(crate) fn try_invite_to_family( ensure_node_not_in_family(&storage, deps.as_ref(), node_id)?; let expires_at = env.block.time.seconds() + validity; - let invitation = storage.add_pending_invitation(deps.storage, owned.id, node_id, expires_at)?; + let invitation = + storage.add_pending_invitation(deps.storage, &env, owned.id, node_id, expires_at)?; Ok(Response::new().add_event( Event::new(events::FAMILY_INVITATION_EVENT_NAME) @@ -1311,6 +1312,8 @@ mod tests { use super::*; use crate::testing::NodeFamiliesContractTesterExt; use mixnet_contract::testable_mixnet_contract::EmbeddedMixnetContractExt; + use nym_contracts_common_testing::ChainOpts; + use nym_node_families_contract_common::FamilyInvitationStatus; #[test] fn happy_path_persists_pending_invitation() -> anyhow::Result<()> { @@ -1469,6 +1472,98 @@ mod tests { ); Ok(()) } + + #[test] + fn allows_reinvite_once_previous_invitation_has_expired() -> anyhow::Result<()> { + let mut tester = init_contract_tester(); + let alice = tester.addr_make("alice"); + let family = tester.make_family(&alice); + let node_id = tester.bond_dummy_nymnode()?; + + // first invitation with a short, explicit validity + let first_env = tester.env(); + try_invite_to_family( + tester.deps_mut(), + first_env.clone(), + message_info(&alice, &[]), + node_id, + Some(5), + )?; + let first_expires_at = first_env.block.time.seconds() + 5; + + // let it lapse + tester.advance_time_by(10); + + // re-inviting the same node now succeeds and refreshes the expiry + let second_env = tester.env(); + try_invite_to_family( + tester.deps_mut(), + second_env.clone(), + message_info(&alice, &[]), + node_id, + Some(5), + )?; + + let storage = NodeFamiliesStorage::new(); + let pending = storage + .pending_family_invitations + .load(tester.deps().storage, (family.id, node_id))?; + assert_eq!(pending.expires_at, second_env.block.time.seconds() + 5); + + // the lapsed invitation was archived as Expired at the re-invite time + let archived = storage + .past_family_invitations + .load(tester.deps().storage, ((family.id, node_id), 0))?; + assert!(matches!( + archived.status, + FamilyInvitationStatus::Expired { at } if at == second_env.block.time.seconds() + )); + assert_eq!(archived.invitation.expires_at, first_expires_at); + Ok(()) + } + + #[test] + fn rejects_reinvite_while_previous_invitation_is_still_valid() -> anyhow::Result<()> { + let mut tester = init_contract_tester(); + let alice = tester.addr_make("alice"); + let family = tester.make_family(&alice); + let node_id = tester.bond_dummy_nymnode()?; + + let env = tester.env(); + try_invite_to_family( + tester.deps_mut(), + env, + message_info(&alice, &[]), + node_id, + Some(100), + )?; + + // some time passes, but the invitation has not yet expired + tester.advance_time_by(10); + + let env = tester.env(); + let err = try_invite_to_family( + tester.deps_mut(), + env, + message_info(&alice, &[]), + node_id, + Some(100), + ) + .unwrap_err(); + assert_eq!( + err, + NodeFamiliesContractError::PendingInvitationAlreadyExists { + family_id: family.id, + node_id, + } + ); + // nothing was archived — the still-valid invitation stays pending + assert!(NodeFamiliesStorage::new() + .past_family_invitations + .may_load(tester.deps().storage, ((family.id, node_id), 0))? + .is_none()); + Ok(()) + } } mod revoke_family_invitation { diff --git a/openspec/specs/node-families-contract/spec.md b/openspec/specs/node-families-contract/spec.md index 1d7a0ff674..6316e62f8f 100644 --- a/openspec/specs/node-families-contract/spec.md +++ b/openspec/specs/node-families-contract/spec.md @@ -214,9 +214,10 @@ The `family_members` map SHALL be keyed by `NodeId` alone; the value SHALL carry - reject `validity == 0` with `ZeroInvitationValidity`; - verify `node_id` refers to a currently-bonded, not-unbonding node in the mixnet contract via `MixnetContractQuerier::check_node_existence` (which returns `false` both when no bond exists and when the bond is in the unbonding state), failing with `NodeDoesntExist { node_id }` otherwise; - verify the node is not already in any family (see "A node belongs to at most one family"); +- reject `(family_id, node_id)` pairs that already have a **still-valid** pending invitation (`env.block.time.seconds() < existing.expires_at`) with `PendingInvitationAlreadyExists { family_id, node_id }`; +- when a pending invitation for the pair exists but has already expired (`env.block.time.seconds() >= existing.expires_at`), archive it as `PastFamilyInvitation { invitation, status: Expired { at: env.block.time.seconds() } }` using the next free per-`(family, node)` archive slot, then let the fresh invitation supersede it; - persist a `FamilyInvitation` with `expires_at = env.block.time.seconds() + validity`; -- reject `(family_id, node_id)` pairs that already have a pending invitation with `PendingInvitationAlreadyExists { family_id, node_id }`; -- emit a `family_invitation` event with `family_id`, `node_id`, `expires_at`. +- emit a `family_invitation` event with `family_id`, `node_id`, `expires_at` (the same event whether or not it superseded an expired invitation). #### Scenario: Successful invitation persists with the computed expiry - **WHEN** family owner sends `InviteToFamily { node_id, validity_secs: Some(v) }` and all preconditions hold @@ -235,9 +236,13 @@ The `family_members` map SHALL be keyed by `NodeId` alone; the value SHALL carry - **WHEN** `InviteToFamily { node_id }` targets a `node_id` for which the mixnet contract's `check_node_existence` returns `false` - **THEN** the call fails with `NodeDoesntExist { node_id }` -#### Scenario: Duplicate pending invitation is rejected -- **WHEN** family `F` already has a pending invitation for node `n` and `InviteToFamily { node_id: n }` is sent again by `F`'s owner -- **THEN** the call fails with `PendingInvitationAlreadyExists { family_id: F.id, node_id: n }` (the existing invitation is preserved) +#### Scenario: Duplicate still-valid pending invitation is rejected +- **WHEN** family `F` already has a still-valid (not yet expired) pending invitation for node `n` and `InviteToFamily { node_id: n }` is sent again by `F`'s owner +- **THEN** the call fails with `PendingInvitationAlreadyExists { family_id: F.id, node_id: n }` (the existing invitation is preserved and nothing is archived) + +#### Scenario: Re-inviting after the previous invitation expired supersedes it +- **WHEN** family `F` has a pending invitation for node `n` whose `expires_at <= env.block.time.seconds()` and `InviteToFamily { node_id: n }` is sent again by `F`'s owner +- **THEN** the call succeeds: the stale invitation is archived under `past_family_invitations` with `status = Expired { at: env.block.time.seconds() }`, and a fresh `FamilyInvitation` for `(F.id, n)` is persisted with the newly computed `expires_at` ### Requirement: Acceptance and rejection of an invitation are gated on node control @@ -288,7 +293,7 @@ A successful `AcceptFamilyInvitation` SHALL: - emit `family_invitation_rejected` or `family_invitation_revoked` respectively, with `family_id` and `node_id` attributes; - fail with `InvitationNotFound { family_id, node_id }` if no pending invitation exists. -These two paths SHALL be the only ways to clear an expired invitation out of `pending_family_invitations` — the contract performs no background sweep of expired entries. +The contract performs no background sweep of expired entries. Reject and revoke are the two *targeted* ways to clear a specific pending invitation; an expired one is additionally cleared if the family owner re-invites the same node (archiving the stale entry as `Expired { at: now }` before superseding it — see "Invitations require an existing family …") or if the family is disbanded. #### Scenario: Owner revokes a still-pending invitation - **WHEN** family owner sends `RevokeFamilyInvitation { node_id }` for a node currently in their pending invitations @@ -361,7 +366,7 @@ The auto-cleared invitations share the `Rejected` terminal state with invitation ### Requirement: Expired pending invitations remain in storage until explicitly cleared -The contract SHALL NOT run any background sweep of expired pending invitations. A `FamilyInvitation` whose `expires_at <= env.block.time.seconds()` SHALL remain in `pending_family_invitations` until either the family owner revokes it, the node controller rejects it, or the family is disbanded. Accept attempts against such entries MUST fail with `InvitationExpired`. Read queries SHALL surface a boolean `expired` flag (`now >= invitation.expires_at`) on each returned `PendingFamilyInvitationDetails` so callers can filter without doing the comparison themselves. +The contract SHALL NOT run any background sweep of expired pending invitations. A `FamilyInvitation` whose `expires_at <= env.block.time.seconds()` SHALL remain in `pending_family_invitations` until either the family owner revokes it, the node controller rejects it, the family owner re-invites the same node (which archives the stale entry as `Expired { at: now }` and replaces it), or the family is disbanded. Accept attempts against such entries MUST fail with `InvitationExpired`. Read queries SHALL surface a boolean `expired` flag (`now >= invitation.expires_at`) on each returned `PendingFamilyInvitationDetails` so callers can filter without doing the comparison themselves. #### Scenario: Expired invitation is still listed by pending queries - **WHEN** family `F` has a pending invitation for node `n` whose `expires_at` is in the past and `GetPendingInvitationsForFamilyPaged { family_id: F.id }` is queried From 34709e76a1c23ed9f2f01bbb4f851fc44bfd7c8d Mon Sep 17 00:00:00 2001 From: benedettadavico Date: Mon, 8 Jun 2026 16:29:59 +0200 Subject: [PATCH 10/12] update changelog --- CHANGELOG.md | 88 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6842a3435b..ac06badf0b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,94 @@ Post 1.0.0 release, the changelog format is based on [Keep a Changelog](https:// ## [Unreleased] +## [2026.11-xynomizithra] (2026-06-08) + +- bugfix: allow re-inviting expired members ([#6863]) +- feat: disable Nagle's algorithm for LP between nym-nodes ([#6857]) +- Keep peer in wg table when updating psk ([#6856]) +- chore: minor nym-node improvements ([#6850]) +- chore: LP registration adjustments ([#6845]) +- crates release: bump version to 1.21.1 ([#6844]) +- fix gateways being penalised for no stress testing ([#6843]) +- fix score inflation for throttled nodes ([#6842]) +- Bugfix/cherry pick/waterloo stres testing floats ([#6841]) +- bugfix: NMv3 race condition ([#6837]) +- feat: implement UpdateFamily for the node families contract ([#6834]) +- Bugfix/cherry pick/waterloo ns api ([#6833]) +- experiment: attempt to retroactively generate specs for node families and ecash contracts ([#6813]) +- moving lp packets in lp-data crate ([#6810]) +- upgrade axum to 0.8.9 (and side deps) ([#6808]) +- chore: expose admin method for migrating vesting delegations/mixnodes ([#6795]) +- [chore] fix clippy 1.95 lints for future version update ([#6794]) +- Handle Rate Limit Challenge Response ([#6786]) +- NYM-583: Avoid corrupted database on Windows. ([#6785]) +- Max/smolmix wasm ([#6784]) +- Chore/bugfixes ([#6783]) +- Switch from yarn to pnpm ([#6779]) +- feat: Node Families: expose stake information inside DVpnGateway ([#6778]) +- feat: Node Families: expose family information for NS API consumers ([#6777]) +- feat: Node Families: cache and expose family data within nym API ([#6774]) +- Re-order default API urls for network details ([#6767]) +- add ci for NM agent binary ([#6764]) +- feat/refactor: introduce shared contract caches within Nym API ([#6760]) +- chore: removed dead code for redundant mixnet-vesting integration tests ([#6759]) +- feat: Node Families: remove nodes upon unbonding ([#6752]) +- feat: Node Families: contract transactions ([#6750]) +- feat: Node Families: contract queries ([#6731]) +- feat: Node Families: initial contract storage ([#6717]) +- start node families topic branch ([#6715]) +- Bump rand from 0.8.5 to 0.8.6 in /contracts ([#6702]) +- Testing port checks in NS Agents ([#6694]) +- build(deps): bump microsoft/setup-msbuild from 2 to 3 ([#6602]) +- build(deps): bump tar from 0.4.44 to 0.4.45 ([#6595]) +- build(deps): bump quinn-proto from 0.11.12 to 0.11.14 ([#6549]) +- build(deps): bump docker/login-action from 3 to 4 ([#6518]) +- build(deps): bump actions/download-artifact from 7 to 8 ([#6497]) +- build(deps): bump actions/upload-artifact from 6 to 7 ([#6496]) + +[#6863]: https://github.com/nymtech/nym/pull/6863 +[#6857]: https://github.com/nymtech/nym/pull/6857 +[#6856]: https://github.com/nymtech/nym/pull/6856 +[#6850]: https://github.com/nymtech/nym/pull/6850 +[#6845]: https://github.com/nymtech/nym/pull/6845 +[#6844]: https://github.com/nymtech/nym/pull/6844 +[#6843]: https://github.com/nymtech/nym/pull/6843 +[#6842]: https://github.com/nymtech/nym/pull/6842 +[#6841]: https://github.com/nymtech/nym/pull/6841 +[#6837]: https://github.com/nymtech/nym/pull/6837 +[#6834]: https://github.com/nymtech/nym/pull/6834 +[#6833]: https://github.com/nymtech/nym/pull/6833 +[#6813]: https://github.com/nymtech/nym/pull/6813 +[#6810]: https://github.com/nymtech/nym/pull/6810 +[#6808]: https://github.com/nymtech/nym/pull/6808 +[#6795]: https://github.com/nymtech/nym/pull/6795 +[#6794]: https://github.com/nymtech/nym/pull/6794 +[#6786]: https://github.com/nymtech/nym/pull/6786 +[#6785]: https://github.com/nymtech/nym/pull/6785 +[#6784]: https://github.com/nymtech/nym/pull/6784 +[#6783]: https://github.com/nymtech/nym/pull/6783 +[#6779]: https://github.com/nymtech/nym/pull/6779 +[#6778]: https://github.com/nymtech/nym/pull/6778 +[#6777]: https://github.com/nymtech/nym/pull/6777 +[#6774]: https://github.com/nymtech/nym/pull/6774 +[#6767]: https://github.com/nymtech/nym/pull/6767 +[#6764]: https://github.com/nymtech/nym/pull/6764 +[#6760]: https://github.com/nymtech/nym/pull/6760 +[#6759]: https://github.com/nymtech/nym/pull/6759 +[#6752]: https://github.com/nymtech/nym/pull/6752 +[#6750]: https://github.com/nymtech/nym/pull/6750 +[#6731]: https://github.com/nymtech/nym/pull/6731 +[#6717]: https://github.com/nymtech/nym/pull/6717 +[#6715]: https://github.com/nymtech/nym/pull/6715 +[#6702]: https://github.com/nymtech/nym/pull/6702 +[#6694]: https://github.com/nymtech/nym/pull/6694 +[#6602]: https://github.com/nymtech/nym/pull/6602 +[#6595]: https://github.com/nymtech/nym/pull/6595 +[#6549]: https://github.com/nymtech/nym/pull/6549 +[#6518]: https://github.com/nymtech/nym/pull/6518 +[#6497]: https://github.com/nymtech/nym/pull/6497 +[#6496]: https://github.com/nymtech/nym/pull/6496 + ## [2026.10-waterloo] (2026-05-27) - Re-order default API urls for network details - Waterloo release ([#6799]) From a900656ec8ebff5294d0e83c447de9b5df73bd76 Mon Sep 17 00:00:00 2001 From: benedettadavico Date: Tue, 9 Jun 2026 15:04:40 +0200 Subject: [PATCH 11/12] add NF contract address --- common/network-defaults/src/mainnet.rs | 3 ++- envs/sandbox.env | 1 + nym-wallet/nym-wallet-types/src/network/sandbox.rs | 3 ++- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/common/network-defaults/src/mainnet.rs b/common/network-defaults/src/mainnet.rs index b58b078486..03e67610fe 100644 --- a/common/network-defaults/src/mainnet.rs +++ b/common/network-defaults/src/mainnet.rs @@ -25,7 +25,8 @@ pub const PERFORMANCE_CONTRACT_ADDRESS: &str = ""; pub const NETWORK_MONITORS_CONTRACT_ADDRESS: &str = "n1m3a2ltkjqud8mkmrpqvgllrtv2p4r6js6qwl7p8cqkzrq8jg6e2qwqgl8z"; // \/ TODO: this has to be updated once the contract is deployed -pub const NODE_FAMILIES_CONTRACT_ADDRESS: &str = ""; +pub const NODE_FAMILIES_CONTRACT_ADDRESS: &str = + "n1na0vys0z077hq3zrz6pfea85zgv8ks3t5zysdt6y38c87q045hnsyf2g5x"; // /\ TODO: this has to be updated once the contract is deployed pub const ECASH_CONTRACT_ADDRESS: &str = diff --git a/envs/sandbox.env b/envs/sandbox.env index cd929f8c4b..a9867a0403 100644 --- a/envs/sandbox.env +++ b/envs/sandbox.env @@ -18,6 +18,7 @@ MULTISIG_CONTRACT_ADDRESS=n1tz0setr8vkh9udp8xyxgpqc89ns27k4d0jx2h942hr0ax63yjhmq COCONUT_DKG_CONTRACT_ADDRESS=n1v3n2ly2dp3a9ng3ff6rh26yfkn0pc5hed7w2shc5u9ca5c865utqj5elvh ECASH_CONTRACT_ADDRESS=n1v3vydvs2ued84yv3khqwtgldmgwn0elljsdh08dr5s2j9x4rc5fs9jlwz9 NETWORK_MONITORS_CONTRACT_ADDRESS=n1x5krtvyqklj360x38v62ze42g8s8trfsfqzlv8c9296chcpvqadssqnem5 +NODE_FAMILIES_CONTRACT_ADDRESS=n13clyapdqk5umyynp20kqwf59rxlwlp24yf2ltzasflhsdhrxq7fsahyr6z STATISTICS_SERVICE_DOMAIN_ADDRESS="http://0.0.0.0" NYXD=https://rpc.sandbox.nymtech.net diff --git a/nym-wallet/nym-wallet-types/src/network/sandbox.rs b/nym-wallet/nym-wallet-types/src/network/sandbox.rs index 28caafa365..f022ab492c 100644 --- a/nym-wallet/nym-wallet-types/src/network/sandbox.rs +++ b/nym-wallet/nym-wallet-types/src/network/sandbox.rs @@ -32,7 +32,8 @@ pub const NETWORK_MONITORS_CONTRACT_ADDRESS: &str = "n1x5krtvyqklj360x38v62ze42g8s8trfsfqzlv8c9296chcpvqadssqnem5"; // \/ TODO: this has to be updated once the contract is deployed -pub(crate) const NODE_FAMILIES_CONTRACT_ADDRESS: &str = ""; +pub(crate) const NODE_FAMILIES_CONTRACT_ADDRESS: &str = + "n13clyapdqk5umyynp20kqwf59rxlwlp24yf2ltzasflhsdhrxq7fsahyr6z"; // /\ TODO: this has to be updated once the contract is deployed // -- Constructor functions -- From 1bc51696914134766d06872267c6f8d03e7454df Mon Sep 17 00:00:00 2001 From: benedetta davico <46782255+benedettadavico@users.noreply.github.com> Date: Tue, 9 Jun 2026 15:07:03 +0200 Subject: [PATCH 12/12] Remove TODO comments for contract addresses --- common/network-defaults/src/mainnet.rs | 3 --- 1 file changed, 3 deletions(-) diff --git a/common/network-defaults/src/mainnet.rs b/common/network-defaults/src/mainnet.rs index 03e67610fe..94ae981fdd 100644 --- a/common/network-defaults/src/mainnet.rs +++ b/common/network-defaults/src/mainnet.rs @@ -24,11 +24,8 @@ pub const PERFORMANCE_CONTRACT_ADDRESS: &str = ""; pub const NETWORK_MONITORS_CONTRACT_ADDRESS: &str = "n1m3a2ltkjqud8mkmrpqvgllrtv2p4r6js6qwl7p8cqkzrq8jg6e2qwqgl8z"; -// \/ TODO: this has to be updated once the contract is deployed pub const NODE_FAMILIES_CONTRACT_ADDRESS: &str = "n1na0vys0z077hq3zrz6pfea85zgv8ks3t5zysdt6y38c87q045hnsyf2g5x"; -// /\ TODO: this has to be updated once the contract is deployed - pub const ECASH_CONTRACT_ADDRESS: &str = "n1r7s6aksyc6pqardx88k3rkgfagwvj4z4zum9mmz2sfk3zm2mha0sd4dnun"; pub const GROUP_CONTRACT_ADDRESS: &str =