mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-13 01:11:10 +00:00
Use scale-encode and scale-decode to encode and decode based on metadata (#842)
* WIP EncodeAsType and DecodeAsType * remove silly cli experiment code * Get things finally compiling with EncodeAsType and DecodeAsType * update codegen test and WrapperKeepOpaque proper impl (in case it shows up in codegen) * fix tests * accomodate scale-value changes * starting to migrate to EncodeAsType/DecodeAsType * static event decoding and tx encoding to use DecodeAsFields/EncodeAsFields * some tidy up and add decode(skip) attrs where needed * fix root event decoding * #[codec(skip)] will do, and combine map_key stuff into storage_address since it's all specific to that * fmt and clippy * update Cargo.lock * remove patched scale-encode * bump scale-encode to 0.1 and remove unused dep in testing crate * update deps and use released scale-decode * update scale-value to latest to remove git branch * Apply suggestions from code review Co-authored-by: Alexandru Vasile <60601340+lexnv@users.noreply.github.com> * remove sorting in derives/attr generation; spit them out in order given * re-add derive sorting; it's a hashmap * StaticTxPayload and DynamicTxPayload rolled into single Payload struct * StaticStorageAddress and DynamicStorageAddress into single Address struct * Fix storage address byte retrieval * StaticConstantAddress and DynamicConstantAddress => Address * Simplify storage codegen to fix test * Add comments * Alias to RuntimeEvent rather than making another, and prep for substituting call type * remove unnecessary clone * Fix docs and failing UI test * root_bytes -> to_root_bytes * document error case in StorageClient::address_bytes() --------- Co-authored-by: Alexandru Vasile <60601340+lexnv@users.noreply.github.com>
This commit is contained in:
+5
-3
@@ -37,9 +37,10 @@ jsonrpsee-web = ["jsonrpsee/async-wasm-client", "jsonrpsee/client-web-transport"
|
||||
[dependencies]
|
||||
codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive", "full"] }
|
||||
scale-info = "2.0.0"
|
||||
scale-value = "0.6.0"
|
||||
scale-value = "0.7.0"
|
||||
scale-bits = "0.3"
|
||||
scale-decode = "0.4.0"
|
||||
scale-decode = "0.5.0"
|
||||
scale-encode = "0.1.0"
|
||||
futures = { version = "0.3.27", default-features = false, features = ["std"] }
|
||||
hex = "0.4.3"
|
||||
jsonrpsee = { version = "0.16", optional = true, features = ["jsonrpsee-types"] }
|
||||
@@ -50,13 +51,14 @@ tracing = "0.1.34"
|
||||
parking_lot = "0.12.0"
|
||||
frame-metadata = "15.0.0"
|
||||
derivative = "2.2.0"
|
||||
either = "1.8.1"
|
||||
|
||||
subxt-macro = { version = "0.27.1", path = "../macro" }
|
||||
subxt-metadata = { version = "0.27.1", path = "../metadata" }
|
||||
|
||||
# Provides some deserialization, types like U256/H256 and hashing impls like twox/blake256:
|
||||
impl-serde = { version = "0.4.0" }
|
||||
primitive-types = { version = "0.12.0", default-features = false, features = ["codec", "scale-info", "serde"] }
|
||||
primitive-types = { version = "0.12.1", default-features = false, features = ["codec", "scale-info", "serde"] }
|
||||
sp-core-hashing = "7.0.0"
|
||||
|
||||
# For ss58 encoding AccountId32 to serialize them properly:
|
||||
|
||||
Reference in New Issue
Block a user