diff --git a/rust-src/concordium_base/CHANGELOG.md b/rust-src/concordium_base/CHANGELOG.md index 826a89902..c31f191eb 100644 --- a/rust-src/concordium_base/CHANGELOG.md +++ b/rust-src/concordium_base/CHANGELOG.md @@ -9,6 +9,7 @@ together with a request anchor is `verify_presentation_with_request_anchor`. - Serialization derive macros `common::Serial`, `common::Deserial` and `common::Serialize` now supports deriving serialization on enums. +- Derived `serde::Serialize` and `serde::Deserialize` on `cbor::value::Value`. ## 9.0.0 (2025-10-29) diff --git a/rust-src/concordium_base/src/common/cbor/primitives.rs b/rust-src/concordium_base/src/common/cbor/primitives.rs index 6eb4b15ef..ed2bdbe44 100644 --- a/rust-src/concordium_base/src/common/cbor/primitives.rs +++ b/rust-src/concordium_base/src/common/cbor/primitives.rs @@ -37,7 +37,7 @@ impl CborSerialize for [u8] { /// /// Notice that this serializes different from a plain `Vec` which /// serializes to an array data item. -#[derive(Debug, Clone, Eq, PartialEq, Hash)] +#[derive(Debug, Clone, Eq, PartialEq, Hash, serde::Serialize, serde::Deserialize)] pub struct Bytes(pub Vec); impl AsRef<[u8]> for Bytes { diff --git a/rust-src/concordium_base/src/common/cbor/value.rs b/rust-src/concordium_base/src/common/cbor/value.rs index ed476e33d..cf2f66ca3 100644 --- a/rust-src/concordium_base/src/common/cbor/value.rs +++ b/rust-src/concordium_base/src/common/cbor/value.rs @@ -7,7 +7,7 @@ use ciborium_ll::simple; /// Generic CBOR data item that can represent /// any data item type. -#[derive(Debug, Clone, PartialEq)] +#[derive(Debug, Clone, PartialEq, serde::Serialize, serde::Deserialize)] pub enum Value { /// Positive integer (major type 0) Positive(u64),