From f293f754c76f4f94de4e5b2917f591c411a31c8d Mon Sep 17 00:00:00 2001 From: Andrew Plaza Date: Mon, 10 Mar 2025 11:26:08 -0400 Subject: [PATCH 1/2] bump to 1.0.0-rc1 --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 6f3ca44f5..db6447b11 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -24,7 +24,7 @@ resolver = "2" [workspace.package] license = "MIT" -version = "0.1.0" +version = "1.0.0-rc1" [workspace.dependencies] anyhow = "1.0" From 78f237b5cfb1e8ded5d654805e46c4e999df03a1 Mon Sep 17 00:00:00 2001 From: Andrew Plaza Date: Mon, 10 Mar 2025 12:05:41 -0400 Subject: [PATCH 2/2] add suffix to commit version processing --- Cargo.lock | 28 ++++++++++++------------- xmtp_mls/src/groups/validated_commit.rs | 23 +++++++++++++++++--- 2 files changed, 34 insertions(+), 17 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 30f47b682..24ca7917a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -437,7 +437,7 @@ dependencies = [ [[package]] name = "bindings_node" -version = "0.1.0" +version = "1.0.0-rc1" dependencies = [ "futures", "hex", @@ -461,7 +461,7 @@ dependencies = [ [[package]] name = "bindings_wasm" -version = "0.1.0" +version = "1.0.0-rc1" dependencies = [ "console_error_panic_hook", "futures", @@ -7412,7 +7412,7 @@ dependencies = [ [[package]] name = "xmtp_api" -version = "0.1.0" +version = "1.0.0-rc1" dependencies = [ "async-trait", "ctor", @@ -7430,7 +7430,7 @@ dependencies = [ [[package]] name = "xmtp_api_d14n" -version = "0.1.0" +version = "1.0.0-rc1" dependencies = [ "async-trait", "derive_builder", @@ -7447,7 +7447,7 @@ dependencies = [ [[package]] name = "xmtp_api_grpc" -version = "0.1.0" +version = "1.0.0-rc1" dependencies = [ "async-stream", "async-trait", @@ -7469,7 +7469,7 @@ dependencies = [ [[package]] name = "xmtp_api_http" -version = "0.1.0" +version = "1.0.0-rc1" dependencies = [ "async-trait", "bytes", @@ -7490,7 +7490,7 @@ dependencies = [ [[package]] name = "xmtp_cli" -version = "0.1.0" +version = "1.0.0-rc1" dependencies = [ "chrono", "clap", @@ -7522,7 +7522,7 @@ dependencies = [ [[package]] name = "xmtp_common" -version = "0.1.0" +version = "1.0.0-rc1" dependencies = [ "arc-swap", "async-trait", @@ -7553,7 +7553,7 @@ dependencies = [ [[package]] name = "xmtp_content_types" -version = "0.1.0" +version = "1.0.0-rc1" dependencies = [ "hex", "libsecp256k1", @@ -7571,7 +7571,7 @@ dependencies = [ [[package]] name = "xmtp_cryptography" -version = "0.1.0" +version = "1.0.0-rc1" dependencies = [ "bincode", "curve25519-dalek", @@ -7599,7 +7599,7 @@ dependencies = [ [[package]] name = "xmtp_id" -version = "0.1.0" +version = "1.0.0-rc1" dependencies = [ "async-trait", "base64 0.22.1", @@ -7635,7 +7635,7 @@ dependencies = [ [[package]] name = "xmtp_mls" -version = "0.1.0" +version = "1.0.0-rc1" dependencies = [ "aes-gcm", "anyhow", @@ -7708,7 +7708,7 @@ dependencies = [ [[package]] name = "xmtp_proto" -version = "0.1.0" +version = "1.0.0-rc1" dependencies = [ "async-trait", "dynosaur", @@ -7732,7 +7732,7 @@ dependencies = [ [[package]] name = "xmtpv3" -version = "0.1.0" +version = "1.0.0-rc1" dependencies = [ "async-trait", "coset", diff --git a/xmtp_mls/src/groups/validated_commit.rs b/xmtp_mls/src/groups/validated_commit.rs index 4c90eb2c9..2efa1ba62 100644 --- a/xmtp_mls/src/groups/validated_commit.rs +++ b/xmtp_mls/src/groups/validated_commit.rs @@ -93,6 +93,8 @@ pub enum CommitValidationError { StorageError(#[from] StorageError), #[error("Exceeded max characters for this field. Must be under: {length}")] TooManyCharacters { length: usize }, + #[error("Version part missing")] + VersionMissing, } impl RetryableError for CommitValidationError { @@ -224,6 +226,7 @@ pub struct LibXMTPVersion { major: u32, minor: u32, patch: u32, + suffix: Option, } impl LibXMTPVersion { @@ -235,13 +238,26 @@ impl LibXMTPVersion { )); } - let major = parts[0] + let major = parts + .first() + .ok_or(CommitValidationError::VersionMissing)? .parse() .map_err(|_| CommitValidationError::InvalidVersionFormat(version_str.to_string()))?; - let minor = parts[1] + let minor = parts + .get(1) + .ok_or(CommitValidationError::VersionMissing)? .parse() .map_err(|_| CommitValidationError::InvalidVersionFormat(version_str.to_string()))?; - let patch = parts[2] + + let patch_and_suffix = parts + .get(2) + .ok_or(CommitValidationError::VersionMissing)? + .split('-') + .collect::>(); + + let patch = patch_and_suffix + .first() + .ok_or(CommitValidationError::VersionMissing)? .parse() .map_err(|_| CommitValidationError::InvalidVersionFormat(version_str.to_string()))?; @@ -249,6 +265,7 @@ impl LibXMTPVersion { major, minor, patch, + suffix: patch_and_suffix.get(1).map(ToString::to_string), }) } }