Skip to content
Draft
Show file tree
Hide file tree
Changes from 9 commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
97886b3
- standardise versions for all nym-sdk workspace dependencies
mfahampshire Dec 2, 2025
eb37d71
bring contracts into sdk global version + nym-api
mfahampshire Dec 3, 2025
62c3c17
retry versioning for cargo-release
mfahampshire Dec 4, 2025
0c081a0
first draft release file
mfahampshire Dec 4, 2025
fe0aa42
script > release.toml
mfahampshire Dec 4, 2025
52c62e6
update script
mfahampshire Dec 4, 2025
dcd3d59
Test remove nym-api from deps
mfahampshire Dec 4, 2025
c51fb20
Add oneliner to client_pool doc comments
mfahampshire Dec 4, 2025
e8cd945
Add note to commented out docs.rs link in sdk
mfahampshire Dec 4, 2025
fe94005
remove nym-api from script
mfahampshire Dec 4, 2025
7875e22
add publishing file
mfahampshire Dec 5, 2025
50aa5d3
bring non-binary / contract / tools into workspace version
mfahampshire Dec 5, 2025
88dfa9a
removed --no-publish flag from script
mfahampshire Dec 5, 2025
964f3b8
added more info to publishing.md
mfahampshire Dec 5, 2025
e5548a9
commit to remove dirty git tree err from cargo-release
mfahampshire Dec 5, 2025
bdaa7f3
commit to remove dirty git tree err from cargo-release for test script
mfahampshire Dec 5, 2025
cb8c27c
use workspace version
mfahampshire Dec 5, 2025
a5863e3
use workspace version
mfahampshire Dec 5, 2025
e7ae027
make deps workspace version
mfahampshire Dec 5, 2025
ae24289
remove default features from crate, add to monorepo root dep defintion
mfahampshire Dec 5, 2025
5a0cb84
remove uploaded sphinx-types crate from script
mfahampshire Dec 5, 2025
68d101a
remove erroueously included ignore-defaults
mfahampshire Dec 5, 2025
5c5383b
add zeroise to feature
mfahampshire Dec 5, 2025
79986d5
chore: Release
mfahampshire Dec 5, 2025
b907328
add topology to batch
mfahampshire Dec 5, 2025
c587c72
more cargo versioning
mfahampshire Dec 5, 2025
16717d8
more cargo versioning - wasm utils
mfahampshire Dec 5, 2025
39c9056
more cargo versioning - wasm utils
mfahampshire Dec 5, 2025
d07d3ad
mod script again
mfahampshire Dec 5, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
162 changes: 81 additions & 81 deletions Cargo.lock

Large diffs are not rendered by default.

70 changes: 69 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ members = [
"service-providers/common",
"service-providers/ip-packet-router",
"service-providers/network-requester",
"sqlx-pool-guard",
"nym-sqlx-pool-guard",
"tools/echo-server",
"tools/internal/contract-state-importer/importer-cli",
"tools/internal/contract-state-importer/importer-contract",
Expand Down Expand Up @@ -196,6 +196,7 @@ edition = "2024"
license = "Apache-2.0"
rust-version = "1.85"
readme = "README.md"
version = "1.20.0" # this version is used for the Rust SDK and its workspace dependencies, it is not applied globally
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

by "its workspace dependencies", do you been exlusively things that are used by rust SDK or all common crates (I think it'd be good to keep it consistent for everything, especially if we were to add an extra dep to rust sdk)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Its the crates that are used by the SDK only currently - I've added a note in the publishing.md file in the SDK re: adding workspace deps to the SDK

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

my previous comment has become moot with my previous commits making basically everything aside from the binaries/contracts/tools follow the versioning structure, sidesteps this potential issue.


[workspace.dependencies]
addr = "0.15.6"
Expand Down Expand Up @@ -373,6 +374,73 @@ zeroize = "1.7.0"

prometheus = { version = "0.14.0" }

# sdk related deps so we can pull in workspace versions of these in other crates' cargo files, and not have to define the version everywhere
# nym-api = { version = "1.2.0", path = "nym-api" }
nym-bandwidth-controller = { version = "1.2.0", path = "common/bandwidth-controller" }
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure you have to specify the version on top here (plz double check), but if not, i'd remove it so we wouldn't cause some inconsistencies if we forget to update those

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was the hacky way I found which allows us to define the workspace.version for the constituent crates. Maybe I can get rid of those.. Will experiment.

nym-bin-common = { version = "1.2.0", path = "common/bin-common" }
nym-client-core = { version = "1.2.0", path = "common/client-core" }
nym-client-core-config-types = { version = "1.2.0", path = "common/client-core/config-types" }
nym-client-core-gateways-storage = { version = "1.2.0", path = "common/client-core/gateways-storage" }
nym-client-core-surb-storage = { version = "1.2.0", path = "common/client-core/surb-storage" }
nym-compact-ecash = { version = "1.2.0", path = "common/nym_offline_compact_ecash" }
nym-config = { version = "1.2.0", path = "common/config" }
nym-contracts-common = { version = "1.2.0", path = "common/cosmwasm-smart-contracts/contracts-common" }
nym-coconut-dkg-common = { version = "1.2.0", path = "common/cosmwasm-smart-contracts/coconut-dkg" }
nym-credential-storage = { version = "1.2.0", path = "common/credential-storage" }
nym-credential-utils = { version = "1.2.0", path = "common/credential-utils" }
nym-credentials = { version = "1.2.0", path = "common/credentials" }
nym-credentials-interface = { version = "1.2.0", path = "common/credentials-interface" }
nym-crypto = { version = "1.2.0", path = "common/crypto" }
nym-ecash-contract-common = { version = "1.2.0", path = "common/cosmwasm-smart-contracts/ecash-contract" }
nym-ecash-signer-check-types = { version = "1.2.0", path = "common/ecash-signer-check-types" }
nym-ecash-time = { version = "1.2.0", path = "common/ecash-time" }
nym-exit-policy = { version = "1.2.0", path = "common/exit-policy" }
nym-gateway-client = { version = "1.2.0", path = "common/client-libs/gateway-client" }
nym-gateway-requests = { version = "1.2.0", path = "common/gateway-requests" }
nym-group-contract-common = { version = "1.2.0", path = "common/cosmwasm-smart-contracts/group-contract" }
nym-http-api-client = { version = "1.2.0", path = "common/http-api-client" }
nym-http-api-client-macro = { version = "1.2.0", path = "common/http-api-client-macro" }
nym-http-api-common = { version = "1.2.0", path = "common/http-api-common" }
nym-id = { version = "1.2.0", path = "common/nym-id" }
nym-metrics = { version = "1.2.0", path = "common/nym-metrics" }
nym-mixnet-client = { version = "1.2.0", path = "common/client-libs/mixnet-client" }
nym-mixnet-contract-common = { version = "1.2.0", path = "common/cosmwasm-smart-contracts/mixnet-contract" }
nym-multisig-contract-common = { version = "1.2.0", path = "common/cosmwasm-smart-contracts/multisig-contract" }
nym-network-defaults = { version = "1.2.0", path = "common/network-defaults" }
nym-noise = { version = "1.2.0", path = "common/nymnoise" }
nym-noise-keys = { version = "1.2.0", path = "common/nymnoise/keys" }
nym-nonexhaustive-delayqueue = { version = "1.2.0", path = "common/nonexhaustive-delayqueue" }
nym-node-requests = { version = "1.2.0", path = "nym-node/nym-node-requests" }
nym-ordered-buffer = { version = "1.2.0", path = "common/socks5/ordered-buffer" }
nym-outfox = { version = "1.2.0", path = "nym-outfox" }
nym-pemstore = { version = "1.2.0", path = "common/pemstore" }
nym-performance-contract-common = { version = "1.2.0", path = "common/cosmwasm-smart-contracts/nym-performance-contract" }
nym-serde-helpers = { version = "1.2.0", path = "common/serde-helpers" }
nym-service-providers-common = { version = "1.2.0", path = "service-providers/common" }
nym-socks5-client-core = { version = "1.2.0", path = "common/socks5-client-core" }
nym-socks5-proxy-helpers = { version = "1.2.0", path = "common/socks5/proxy-helpers" }
nym-socks5-requests = { version = "1.2.0", path = "common/socks5/requests" }
nym-sphinx = { version = "1.2.0", path = "common/nymsphinx" }
nym-sphinx-acknowledgements = { version = "1.2.0", path = "common/nymsphinx/acknowledgements" }
nym-sphinx-addressing = { version = "1.2.0", path = "common/nymsphinx/addressing" }
nym-sphinx-anonymous-replies = { version = "1.2.0", path = "common/nymsphinx/anonymous-replies" }
nym-sphinx-chunking = { version = "1.2.0", path = "common/nymsphinx/chunking" }
nym-sphinx-cover = { version = "1.2.0", path = "common/nymsphinx/cover" }
nym-sphinx-forwarding = { version = "1.2.0", path = "common/nymsphinx/forwarding" }
nym-sphinx-framing = { version = "1.2.0", path = "common/nymsphinx/framing" }
nym-sphinx-params = { version = "1.2.0", path = "common/nymsphinx/params" }
nym-sphinx-routing = { version = "1.2.0", path = "common/nymsphinx/routing" }
nym-sphinx-types = { version = "1.2.0", path = "common/nymsphinx/types" }
nym-statistics-common = { version = "1.2.0", path = "common/statistics" }
nym-task = { version = "1.2.0", path = "common/task" }
nym-ticketbooks-merkle = { version = "1.2.0", path = "common/ticketbooks-merkle" }
nym-topology = { version = "1.2.0", path = "common/topology" }
nym-upgrade-mode-check = { version = "1.2.0", path = "common/upgrade-mode-check" }
nym-validator-client = { version = "1.2.0", path = "common/client-libs/validator-client" }
nym-vesting-contract-common = { version = "1.2.0", path = "common/cosmwasm-smart-contracts/vesting-contract" }
nym-wireguard-types = { version = "1.2.0", path = "common/wireguard-types" }
nym-sqlx-pool-guard = { version = "1.2.0", path = "common/sqlx-pool-guard" }

# coconut/DKG related
# unfortunately until https://github.com/zkcrypto/bls12_381/issues/10 is resolved, we have to rely on the fork
# as we need to be able to serialize Gt so that we could create the lookup table for baby-step-giant-step algorithm
Expand Down
2 changes: 1 addition & 1 deletion common/bandwidth-controller/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-bandwidth-controller"
version = "0.1.0"
version.workspace = true
edition = "2021"
license.workspace = true

Expand Down
2 changes: 1 addition & 1 deletion common/bin-common/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-bin-common"
version = "0.6.0"
version.workspace = true
description = "Common code for nym binaries"
edition = { workspace = true }
authors = { workspace = true }
Expand Down
2 changes: 1 addition & 1 deletion common/client-core/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-client-core"
version = "1.1.15"
version.workspace = true
authors = ["Dave Hrycyszyn <futurechimp@users.noreply.github.com>"]
edition = "2021"
rust-version = "1.85"
Expand Down
2 changes: 1 addition & 1 deletion common/client-core/config-types/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-client-core-config-types"
version = "0.1.0"
version.workspace = true
edition = "2021"
license.workspace = true

Expand Down
2 changes: 1 addition & 1 deletion common/client-core/gateways-storage/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-client-core-gateways-storage"
version = "0.1.0"
version.workspace = true
edition = "2021"
license.workspace = true
rust-version.workspace = true
Expand Down
6 changes: 3 additions & 3 deletions common/client-core/surb-storage/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-client-core-surb-storage"
version = "0.1.0"
version.workspace = true
edition = "2021"
license.workspace = true

Expand All @@ -26,8 +26,8 @@ workspace = true
features = ["runtime-tokio-rustls", "sqlite", "macros", "migrate", "time"]
optional = true

[target."cfg(not(target_arch = \"wasm32\"))".dependencies.sqlx-pool-guard]
path = "../../../sqlx-pool-guard"
[target."cfg(not(target_arch = \"wasm32\"))".dependencies.nym-sqlx-pool-guard]
path = "../../../nym-sqlx-pool-guard"

[build-dependencies]
anyhow = { workspace = true }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ use std::path::Path;
use time::OffsetDateTime;
use tracing::{error, info};

use sqlx_pool_guard::SqlitePoolGuard;
use nym_sqlx_pool_guard::SqlitePoolGuard;

#[derive(Debug, Clone)]
pub struct StorageManager {
Expand Down
4 changes: 2 additions & 2 deletions common/client-libs/gateway-client/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-gateway-client"
version = "0.1.0"
version.workspace = true
authors = ["Jędrzej Stuczyński <andrew@nymtech.net>"]
edition = "2021"
license.workspace = true
Expand Down Expand Up @@ -90,4 +90,4 @@ features = ["js"]
wasm = []

[lints]
workspace = true
workspace = true
2 changes: 1 addition & 1 deletion common/client-libs/mixnet-client/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-mixnet-client"
version = "0.1.0"
version.workspace = true
authors = ["Jedrzej Stuczynski <andrew@nymtech.net>"]
edition = "2021"
license.workspace = true
Expand Down
2 changes: 1 addition & 1 deletion common/client-libs/validator-client/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-validator-client"
version = "0.1.0"
version.workspace = true
authors = ["Jędrzej Stuczyński <andrew@nymtech.net>"]
edition = "2021"
rust-version = "1.85"
Expand Down
2 changes: 1 addition & 1 deletion common/commands/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -60,5 +60,5 @@ nym-credential-utils = { path = "../../common/credential-utils" }
nym-id = { path = "../nym-id" }
nym-credential-proxy-requests = { path = "../../nym-credential-proxy/nym-credential-proxy-requests" }

nym-pemstore = { path = "../../common/pemstore", version = "0.3.0" }
nym-pemstore = { path = "../../common/pemstore" }
nym-types = { path = "../../common/types" }
2 changes: 1 addition & 1 deletion common/config/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-config"
version = "0.1.0"
version.workspace = true
authors = ["Jedrzej Stuczynski <andrew@nymtech.net>"]
edition = "2021"
license.workspace = true
Expand Down
2 changes: 1 addition & 1 deletion common/cosmwasm-smart-contracts/coconut-dkg/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-coconut-dkg-common"
version = "0.1.0"
version.workspace = true
edition = "2021"
license.workspace = true

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-contracts-common"
version = "0.5.0"
version.workspace = true
description = "Common library for Nym cosmwasm contracts"
edition = { workspace = true }
authors = { workspace = true }
Expand Down
2 changes: 1 addition & 1 deletion common/cosmwasm-smart-contracts/ecash-contract/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-ecash-contract-common"
version = "0.1.0"
version.workspace = true
edition = "2021"
license.workspace = true

Expand Down
2 changes: 1 addition & 1 deletion common/cosmwasm-smart-contracts/group-contract/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-group-contract-common"
version = "0.1.0"
version.workspace = true
edition = "2021"
license.workspace = true

Expand Down
6 changes: 3 additions & 3 deletions common/cosmwasm-smart-contracts/mixnet-contract/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-mixnet-contract-common"
version = "0.6.0"
version.workspace = true
description = "Common library for the Nym mixnet contract"
rust-version = "1.85"
edition = { workspace = true }
Expand All @@ -22,7 +22,7 @@ semver = { workspace = true, features = ["serde"] }
# we still have to preserve that import for `JsonSchema` for `Layer` type (since we can't use cw_serde macro due to custom serde impl)
schemars = { workspace = true }
thiserror = { workspace = true }
contracts-common = { path = "../contracts-common", package = "nym-contracts-common", version = "0.5.0" }
contracts-common = { path = "../contracts-common", package = "nym-contracts-common" }
humantime-serde = { workspace = true }
utoipa = { workspace = true, optional = true }

Expand All @@ -41,4 +41,4 @@ schema = ["cw2"]
generate-ts = ['ts-rs']

[lints]
workspace = true
workspace = true
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-multisig-contract-common"
version = "0.1.0"
version.workspace = true
edition = "2021"
license.workspace = true

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-performance-contract-common"
version = "0.1.0"
version.workspace = true
authors.workspace = true
repository.workspace = true
homepage.workspace = true
Expand Down
6 changes: 3 additions & 3 deletions common/cosmwasm-smart-contracts/vesting-contract/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-vesting-contract-common"
version = "0.7.0"
version.workspace = true
description = "Common library for the Nym vesting contract"
edition = { workspace = true }
authors = { workspace = true }
Expand All @@ -11,8 +11,8 @@ repository = { workspace = true }
cosmwasm-std = { workspace = true }
cosmwasm-schema = { workspace = true }
cw2 = { workspace = true, optional = true }
mixnet-contract-common = { path = "../mixnet-contract", package = "nym-mixnet-contract-common", version = "0.6.0" }
contracts-common = { path = "../contracts-common", package = "nym-contracts-common", version = "0.5.0" }
mixnet-contract-common = { path = "../mixnet-contract", package = "nym-mixnet-contract-common" }
contracts-common = { path = "../contracts-common", package = "nym-contracts-common" }
serde = { workspace = true, features = ["derive"] }
thiserror = { workspace = true }
# without this feature, cargo clippy emits a ton of incompatibility warnings
Expand Down
6 changes: 3 additions & 3 deletions common/credential-storage/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-credential-storage"
version = "0.1.0"
version.workspace = true
edition = "2021"
license.workspace = true
rust-version.workspace = true
Expand All @@ -22,8 +22,8 @@ nym-credentials = { path = "../credentials" }
nym-compact-ecash = { path = "../nym_offline_compact_ecash" }
nym-ecash-time = { path = "../ecash-time" }

[target."cfg(not(target_arch = \"wasm32\"))".dependencies.sqlx-pool-guard]
path = "../../sqlx-pool-guard"
[target."cfg(not(target_arch = \"wasm32\"))".dependencies.nym-sqlx-pool-guard]
path = "../../nym-sqlx-pool-guard"

[target."cfg(not(target_arch = \"wasm32\"))".dependencies.sqlx]
workspace = true
Expand Down
2 changes: 1 addition & 1 deletion common/credential-storage/src/backends/sqlite.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ use crate::models::{
StoredIssuedTicketbook, StoredPendingTicketbook,
};
use nym_ecash_time::Date;
use nym_sqlx_pool_guard::SqlitePoolGuard;
use sqlx::{Executor, Sqlite, Transaction};
use sqlx_pool_guard::SqlitePoolGuard;

#[derive(Clone)]
pub struct SqliteEcashTicketbookManager {
Expand Down
2 changes: 1 addition & 1 deletion common/credential-storage/src/persistent_storage/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -34,11 +34,11 @@ use nym_credentials::{
IssuanceTicketBook, IssuedTicketBook,
};
use nym_ecash_time::{ecash_today, Date, EcashTime};
use nym_sqlx_pool_guard::SqlitePoolGuard;
use sqlx::{
sqlite::{SqliteAutoVacuum, SqliteSynchronous},
ConnectOptions,
};
use sqlx_pool_guard::SqlitePoolGuard;
use std::path::Path;
use zeroize::Zeroizing;

Expand Down
4 changes: 2 additions & 2 deletions common/credential-utils/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-credential-utils"
version = "0.1.0"
version.workspace = true
edition = "2021"
license.workspace = true

Expand All @@ -19,4 +19,4 @@ nym-credential-storage = { path = "../../common/credential-storage", features =
nym-validator-client = { path = "../../common/client-libs/validator-client" }
nym-config = { path = "../../common/config" }
nym-client-core = { path = "../../common/client-core" }
nym-ecash-time = { path = "../../common/ecash-time" }
nym-ecash-time = { path = "../../common/ecash-time" }
3 changes: 1 addition & 2 deletions common/credentials-interface/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-credentials-interface"
version = "0.1.0"
version.workspace = true
authors.workspace = true
repository.workspace = true
homepage.workspace = true
Expand All @@ -24,4 +24,3 @@ nym-compact-ecash = { path = "../nym_offline_compact_ecash" }
nym-ecash-time = { path = "../ecash-time" }
nym-network-defaults = { path = "../network-defaults" }
nym-upgrade-mode-check = { path = "../upgrade-mode-check" }

3 changes: 1 addition & 2 deletions common/credentials/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nym-credentials"
version = "0.1.0"
version.workspace = true
edition = "2021"
license.workspace = true

Expand Down Expand Up @@ -30,4 +30,3 @@ nym-serde-helpers = { path = "../serde-helpers", features = ["date"] }

[dev-dependencies]
rand = { workspace = true }

Loading