From ba2c7d200136d2c732c710e19b452c073672ff91 Mon Sep 17 00:00:00 2001 From: Yaroslav Bolyukin Date: Fri, 28 Oct 2022 10:29:04 +0000 Subject: [PATCH] fix: runtime api versioning for TokenData --- --- a/client/rpc/src/lib.rs +++ b/client/rpc/src/lib.rs @@ -545,13 +545,16 @@ keys: Option> ) -> Vec, unique_api); - pass_method!(token_data( - collection: CollectionId, - token_id: TokenId, + pass_method!( + token_data( + collection: CollectionId, + token_id: TokenId, - #[map(|keys| string_keys_to_bytes_keys(keys))] - keys: Option>, - ) -> TokenData, unique_api); + #[map(|keys| string_keys_to_bytes_keys(keys))] + keys: Option>, + ) -> TokenData, unique_api; + changed_in 3, token_data_before_version_3(collection, token_id, string_keys_to_bytes_keys(keys)) => |value| value.into() + ); pass_method!(adminlist(collection: CollectionId) -> Vec, unique_api); pass_method!(allowlist(collection: CollectionId) -> Vec, unique_api); --- a/primitives/data-structs/src/lib.rs +++ b/primitives/data-structs/src/lib.rs @@ -221,6 +221,7 @@ } /// Token data. +#[struct_versioning::versioned(version = 2, upper)] #[derive(Encode, Decode, Clone, PartialEq, TypeInfo)] #[cfg_attr(feature = "serde1", derive(Serialize, Deserialize))] pub struct TokenData { @@ -231,6 +232,7 @@ pub owner: Option, /// Token pieces. + #[version(2.., upper(0))] pub pieces: u128, } --- a/primitives/rpc/src/lib.rs +++ b/primitives/rpc/src/lib.rs @@ -20,7 +20,7 @@ use up_data_structs::{ CollectionId, TokenId, RpcCollection, CollectionStats, CollectionLimits, Property, - PropertyKeyPermission, TokenData, TokenChild, RpcCollectionVersion1, + PropertyKeyPermission, TokenData, TokenChild, RpcCollectionVersion1, TokenDataVersion1, }; use sp_std::vec::Vec; @@ -77,6 +77,13 @@ keys: Option>> ) -> Result>; + #[changed_in(3)] + fn token_data( + collection: CollectionId, + token_id: TokenId, + keys: Option>> + ) -> Result>; + /// Total number of tokens in collection. fn total_supply(collection: CollectionId) -> Result; -- gitstuff