diff --git a/Cargo.lock b/Cargo.lock index ef2fa31be2..f4a5eb0449 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -300,7 +300,7 @@ checksum = "a071c348a5ef6da1d3a87166b408170b46002382b1dda83992b5c2208cefb370" dependencies = [ "log", "parity-scale-codec", - "scale-info", + "scale-info 2.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde", ] @@ -999,6 +999,16 @@ dependencies = [ "percent-encoding", ] +[[package]] +name = "frame-metadata" +version = "15.0.0" +dependencies = [ + "cfg-if", + "parity-scale-codec", + "scale-info 2.3.1", + "serde", +] + [[package]] name = "frame-metadata" version = "15.0.0" @@ -1007,8 +1017,7 @@ checksum = "df6bb8542ef006ef0de09a5c4420787d79823c0ed7924225822362fd2bf2ff2d" dependencies = [ "cfg-if", "parity-scale-codec", - "scale-info", - "serde", + "scale-info 2.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1565,12 +1574,12 @@ name = "integration-tests" version = "0.27.1" dependencies = [ "assert_matches", - "frame-metadata", + "frame-metadata 15.0.0", "futures", "hex", "parity-scale-codec", "regex", - "scale-info", + "scale-info 2.3.1", "sp-core", "sp-keyring", "sp-runtime", @@ -2269,7 +2278,7 @@ dependencies = [ "fixed-hash", "impl-codec", "impl-serde", - "scale-info", + "scale-info 2.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "uint", ] @@ -2592,26 +2601,34 @@ dependencies = [ [[package]] name = "scale-bits" version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8dd7aca73785181cc41f0bbe017263e682b585ca660540ba569133901d013ecf" dependencies = [ "parity-scale-codec", - "scale-info", + "scale-info 2.3.1", "serde", ] [[package]] name = "scale-decode" version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d823d4be477fc33321f93d08fb6c2698273d044f01362dc27573a750deb7c233" dependencies = [ "parity-scale-codec", "scale-bits", - "scale-info", + "scale-info 2.3.1", "thiserror", ] +[[package]] +name = "scale-info" +version = "2.3.1" +dependencies = [ + "bitvec", + "cfg-if", + "derive_more", + "parity-scale-codec", + "scale-info-derive 2.3.1", + "serde", +] + [[package]] name = "scale-info" version = "2.3.1" @@ -2622,8 +2639,17 @@ dependencies = [ "cfg-if", "derive_more", "parity-scale-codec", - "scale-info-derive", - "serde", + "scale-info-derive 2.3.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "scale-info-derive" +version = "2.3.1" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn", ] [[package]] @@ -2641,15 +2667,13 @@ dependencies = [ [[package]] name = "scale-value" version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16a5e7810815bd295da73e4216d1dfbced3c7c7c7054d70fa5f6e4c58123fff4" dependencies = [ "either", - "frame-metadata", + "frame-metadata 15.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec", "scale-bits", "scale-decode", - "scale-info", + "scale-info 2.3.1", "serde", "thiserror", "yap", @@ -2923,7 +2947,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "65e5d5ec374fc23f4e1b87219be18e01080d8a21a2dee3b49df8befeddbf5780" dependencies = [ "parity-scale-codec", - "scale-info", + "scale-info 2.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde", "sp-core", "sp-io", @@ -2939,7 +2963,7 @@ dependencies = [ "integer-sqrt", "num-traits", "parity-scale-codec", - "scale-info", + "scale-info 2.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde", "sp-std", "static_assertions", @@ -2971,7 +2995,7 @@ dependencies = [ "primitive-types", "rand 0.8.5", "regex", - "scale-info", + "scale-info 2.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "schnorrkel", "secp256k1", "secrecy", @@ -3118,7 +3142,7 @@ dependencies = [ "parity-scale-codec", "paste", "rand 0.8.5", - "scale-info", + "scale-info 2.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde", "sp-application-crypto", "sp-arithmetic", @@ -3228,7 +3252,7 @@ dependencies = [ "nohash-hasher", "parity-scale-codec", "parking_lot", - "scale-info", + "scale-info 2.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "schnellru", "sp-core", "sp-std", @@ -3247,7 +3271,7 @@ dependencies = [ "impl-serde", "parity-scale-codec", "parity-wasm", - "scale-info", + "scale-info 2.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde", "sp-core-hashing-proc-macro", "sp-runtime", @@ -3290,7 +3314,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39c4a96e53621ae435981fb6037d8b0be7cf32fae627780094a94ef89f194715" dependencies = [ "parity-scale-codec", - "scale-info", + "scale-info 2.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde", "smallvec", "sp-arithmetic", @@ -3387,7 +3411,7 @@ dependencies = [ "bitvec", "blake2", "derivative", - "frame-metadata", + "frame-metadata 15.0.0", "futures", "getrandom 0.2.8", "hex", @@ -3398,7 +3422,7 @@ dependencies = [ "primitive-types", "scale-bits", "scale-decode", - "scale-info", + "scale-info 2.3.1", "scale-value", "serde", "serde_json", @@ -3420,7 +3444,7 @@ version = "0.27.1" dependencies = [ "clap 4.1.8", "color-eyre", - "frame-metadata", + "frame-metadata 15.0.0", "hex", "jsonrpsee", "parity-scale-codec", @@ -3438,7 +3462,7 @@ version = "0.27.1" dependencies = [ "bitvec", "darling", - "frame-metadata", + "frame-metadata 15.0.0", "heck", "hex", "jsonrpsee", @@ -3446,7 +3470,7 @@ dependencies = [ "pretty_assertions", "proc-macro2", "quote", - "scale-info", + "scale-info 2.3.1", "subxt-metadata", "syn", "thiserror", @@ -3484,9 +3508,9 @@ version = "0.27.1" dependencies = [ "bitvec", "criterion", - "frame-metadata", + "frame-metadata 15.0.0", "parity-scale-codec", - "scale-info", + "scale-info 2.3.1", "sp-core-hashing", ] @@ -3869,9 +3893,9 @@ checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba" name = "ui-tests" version = "0.27.1" dependencies = [ - "frame-metadata", + "frame-metadata 15.0.0", "parity-scale-codec", - "scale-info", + "scale-info 2.3.1", "subxt", "trybuild", ] diff --git a/artifacts/Alliance.scale b/artifacts/Alliance.scale new file mode 100644 index 0000000000..24c6447b88 Binary files /dev/null and b/artifacts/Alliance.scale differ diff --git a/artifacts/AllianceMotion.scale b/artifacts/AllianceMotion.scale new file mode 100644 index 0000000000..8330792030 Binary files /dev/null and b/artifacts/AllianceMotion.scale differ diff --git a/artifacts/AssetTxPayment.scale b/artifacts/AssetTxPayment.scale new file mode 100644 index 0000000000..b6487accaf Binary files /dev/null and b/artifacts/AssetTxPayment.scale differ diff --git a/artifacts/Assets.scale b/artifacts/Assets.scale new file mode 100644 index 0000000000..739ed93719 Binary files /dev/null and b/artifacts/Assets.scale differ diff --git a/artifacts/AuthorityDiscovery.scale b/artifacts/AuthorityDiscovery.scale new file mode 100644 index 0000000000..ca64999298 Binary files /dev/null and b/artifacts/AuthorityDiscovery.scale differ diff --git a/artifacts/Authorship.scale b/artifacts/Authorship.scale new file mode 100644 index 0000000000..18ddd5b95b Binary files /dev/null and b/artifacts/Authorship.scale differ diff --git a/artifacts/Babe.scale b/artifacts/Babe.scale new file mode 100644 index 0000000000..57ef620553 Binary files /dev/null and b/artifacts/Babe.scale differ diff --git a/artifacts/Balances.scale b/artifacts/Balances.scale new file mode 100644 index 0000000000..07a2584054 Binary files /dev/null and b/artifacts/Balances.scale differ diff --git a/artifacts/Bounties.scale b/artifacts/Bounties.scale new file mode 100644 index 0000000000..a8085fb345 Binary files /dev/null and b/artifacts/Bounties.scale differ diff --git a/artifacts/ChildBounties.scale b/artifacts/ChildBounties.scale new file mode 100644 index 0000000000..e37a39b4dc Binary files /dev/null and b/artifacts/ChildBounties.scale differ diff --git a/artifacts/Contracts.scale b/artifacts/Contracts.scale new file mode 100644 index 0000000000..550d0ded1d Binary files /dev/null and b/artifacts/Contracts.scale differ diff --git a/artifacts/ConvictionVoting.scale b/artifacts/ConvictionVoting.scale new file mode 100644 index 0000000000..bb031df4dc Binary files /dev/null and b/artifacts/ConvictionVoting.scale differ diff --git a/artifacts/Council.scale b/artifacts/Council.scale new file mode 100644 index 0000000000..690acfb1ad Binary files /dev/null and b/artifacts/Council.scale differ diff --git a/artifacts/Democracy.scale b/artifacts/Democracy.scale new file mode 100644 index 0000000000..2f18897fc9 Binary files /dev/null and b/artifacts/Democracy.scale differ diff --git a/artifacts/ElectionProviderMultiPhase.scale b/artifacts/ElectionProviderMultiPhase.scale new file mode 100644 index 0000000000..b8118f6864 Binary files /dev/null and b/artifacts/ElectionProviderMultiPhase.scale differ diff --git a/artifacts/Elections.scale b/artifacts/Elections.scale new file mode 100644 index 0000000000..0476598e6c Binary files /dev/null and b/artifacts/Elections.scale differ diff --git a/artifacts/FastUnstake.scale b/artifacts/FastUnstake.scale new file mode 100644 index 0000000000..5b1ccd9808 Binary files /dev/null and b/artifacts/FastUnstake.scale differ diff --git a/artifacts/Glutton.scale b/artifacts/Glutton.scale new file mode 100644 index 0000000000..eb717fb593 Binary files /dev/null and b/artifacts/Glutton.scale differ diff --git a/artifacts/Grandpa.scale b/artifacts/Grandpa.scale new file mode 100644 index 0000000000..2c62c7e567 Binary files /dev/null and b/artifacts/Grandpa.scale differ diff --git a/artifacts/Historical.scale b/artifacts/Historical.scale new file mode 100644 index 0000000000..7ab0bebfc9 Binary files /dev/null and b/artifacts/Historical.scale differ diff --git a/artifacts/Identity.scale b/artifacts/Identity.scale new file mode 100644 index 0000000000..ed04dcad0e Binary files /dev/null and b/artifacts/Identity.scale differ diff --git a/artifacts/ImOnline.scale b/artifacts/ImOnline.scale new file mode 100644 index 0000000000..779cbec84d Binary files /dev/null and b/artifacts/ImOnline.scale differ diff --git a/artifacts/Indices.scale b/artifacts/Indices.scale new file mode 100644 index 0000000000..735d2ba776 Binary files /dev/null and b/artifacts/Indices.scale differ diff --git a/artifacts/Lottery.scale b/artifacts/Lottery.scale new file mode 100644 index 0000000000..1b9a38b486 Binary files /dev/null and b/artifacts/Lottery.scale differ diff --git a/artifacts/MessageQueue.scale b/artifacts/MessageQueue.scale new file mode 100644 index 0000000000..779c49302b Binary files /dev/null and b/artifacts/MessageQueue.scale differ diff --git a/artifacts/Mmr.scale b/artifacts/Mmr.scale new file mode 100644 index 0000000000..a33f2a139b Binary files /dev/null and b/artifacts/Mmr.scale differ diff --git a/artifacts/Multisig.scale b/artifacts/Multisig.scale new file mode 100644 index 0000000000..c82801928a Binary files /dev/null and b/artifacts/Multisig.scale differ diff --git a/artifacts/Nfts.scale b/artifacts/Nfts.scale new file mode 100644 index 0000000000..f5e04218bb Binary files /dev/null and b/artifacts/Nfts.scale differ diff --git a/artifacts/Nis.scale b/artifacts/Nis.scale new file mode 100644 index 0000000000..2515f51683 Binary files /dev/null and b/artifacts/Nis.scale differ diff --git a/artifacts/NominationPools.scale b/artifacts/NominationPools.scale new file mode 100644 index 0000000000..e5724d2a7d Binary files /dev/null and b/artifacts/NominationPools.scale differ diff --git a/artifacts/Offences.scale b/artifacts/Offences.scale new file mode 100644 index 0000000000..a420881f02 Binary files /dev/null and b/artifacts/Offences.scale differ diff --git a/artifacts/Pov.scale b/artifacts/Pov.scale new file mode 100644 index 0000000000..2060787e62 Binary files /dev/null and b/artifacts/Pov.scale differ diff --git a/artifacts/Preimage.scale b/artifacts/Preimage.scale new file mode 100644 index 0000000000..287e44a8e3 Binary files /dev/null and b/artifacts/Preimage.scale differ diff --git a/artifacts/Proxy.scale b/artifacts/Proxy.scale new file mode 100644 index 0000000000..80117df6ae Binary files /dev/null and b/artifacts/Proxy.scale differ diff --git a/artifacts/RandomnessCollectiveFlip.scale b/artifacts/RandomnessCollectiveFlip.scale new file mode 100644 index 0000000000..3f3f336851 Binary files /dev/null and b/artifacts/RandomnessCollectiveFlip.scale differ diff --git a/artifacts/RankedCollective.scale b/artifacts/RankedCollective.scale new file mode 100644 index 0000000000..c1761df4aa Binary files /dev/null and b/artifacts/RankedCollective.scale differ diff --git a/artifacts/RankedPolls.scale b/artifacts/RankedPolls.scale new file mode 100644 index 0000000000..37978a6e03 Binary files /dev/null and b/artifacts/RankedPolls.scale differ diff --git a/artifacts/Recovery.scale b/artifacts/Recovery.scale new file mode 100644 index 0000000000..a30e0f9152 Binary files /dev/null and b/artifacts/Recovery.scale differ diff --git a/artifacts/Referenda.scale b/artifacts/Referenda.scale new file mode 100644 index 0000000000..b9fbce21d7 Binary files /dev/null and b/artifacts/Referenda.scale differ diff --git a/artifacts/Remark.scale b/artifacts/Remark.scale new file mode 100644 index 0000000000..0f3383ac4f Binary files /dev/null and b/artifacts/Remark.scale differ diff --git a/artifacts/RootTesting.scale b/artifacts/RootTesting.scale new file mode 100644 index 0000000000..94a40ff80f Binary files /dev/null and b/artifacts/RootTesting.scale differ diff --git a/artifacts/Scheduler.scale b/artifacts/Scheduler.scale new file mode 100644 index 0000000000..6e83e7f33c Binary files /dev/null and b/artifacts/Scheduler.scale differ diff --git a/artifacts/Session.scale b/artifacts/Session.scale new file mode 100644 index 0000000000..fd7a5e7889 Binary files /dev/null and b/artifacts/Session.scale differ diff --git a/artifacts/Society.scale b/artifacts/Society.scale new file mode 100644 index 0000000000..ee63c580cb Binary files /dev/null and b/artifacts/Society.scale differ diff --git a/artifacts/Staking.scale b/artifacts/Staking.scale new file mode 100644 index 0000000000..400011bcce Binary files /dev/null and b/artifacts/Staking.scale differ diff --git a/artifacts/StateTrieMigration.scale b/artifacts/StateTrieMigration.scale new file mode 100644 index 0000000000..72d7e6cb0a Binary files /dev/null and b/artifacts/StateTrieMigration.scale differ diff --git a/artifacts/Sudo.scale b/artifacts/Sudo.scale new file mode 100644 index 0000000000..5618c7715f Binary files /dev/null and b/artifacts/Sudo.scale differ diff --git a/artifacts/System.scale b/artifacts/System.scale new file mode 100644 index 0000000000..dbbc939f10 Binary files /dev/null and b/artifacts/System.scale differ diff --git a/artifacts/TechnicalCommittee.scale b/artifacts/TechnicalCommittee.scale new file mode 100644 index 0000000000..ae65084466 Binary files /dev/null and b/artifacts/TechnicalCommittee.scale differ diff --git a/artifacts/TechnicalMembership.scale b/artifacts/TechnicalMembership.scale new file mode 100644 index 0000000000..b8872493b4 Binary files /dev/null and b/artifacts/TechnicalMembership.scale differ diff --git a/artifacts/Timestamp.scale b/artifacts/Timestamp.scale new file mode 100644 index 0000000000..bfeabdca32 Binary files /dev/null and b/artifacts/Timestamp.scale differ diff --git a/artifacts/Tips.scale b/artifacts/Tips.scale new file mode 100644 index 0000000000..9e1692cdb5 Binary files /dev/null and b/artifacts/Tips.scale differ diff --git a/artifacts/TransactionPayment.scale b/artifacts/TransactionPayment.scale new file mode 100644 index 0000000000..19c7519b2d Binary files /dev/null and b/artifacts/TransactionPayment.scale differ diff --git a/artifacts/TransactionStorage.scale b/artifacts/TransactionStorage.scale new file mode 100644 index 0000000000..6dd26bde16 Binary files /dev/null and b/artifacts/TransactionStorage.scale differ diff --git a/artifacts/Treasury.scale b/artifacts/Treasury.scale new file mode 100644 index 0000000000..7d86b9d437 Binary files /dev/null and b/artifacts/Treasury.scale differ diff --git a/artifacts/Uniques.scale b/artifacts/Uniques.scale new file mode 100644 index 0000000000..fd05fd5091 Binary files /dev/null and b/artifacts/Uniques.scale differ diff --git a/artifacts/Utility.scale b/artifacts/Utility.scale new file mode 100644 index 0000000000..97507a40b9 Binary files /dev/null and b/artifacts/Utility.scale differ diff --git a/artifacts/Vesting.scale b/artifacts/Vesting.scale new file mode 100644 index 0000000000..1fdd221519 Binary files /dev/null and b/artifacts/Vesting.scale differ diff --git a/artifacts/VoterList.scale b/artifacts/VoterList.scale new file mode 100644 index 0000000000..8e5487d777 Binary files /dev/null and b/artifacts/VoterList.scale differ diff --git a/artifacts/Whitelist.scale b/artifacts/Whitelist.scale new file mode 100644 index 0000000000..10b18076c9 Binary files /dev/null and b/artifacts/Whitelist.scale differ diff --git a/cli/Cargo.toml b/cli/Cargo.toml index 7d1033126f..43847b5886 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -32,7 +32,7 @@ serde_json = "1.0.94" # hex encoded metadata to bytes hex = "0.4.3" # actual metadata types -frame-metadata = { version = "15.0.0", features = ["v14", "std"] } +frame-metadata = { version = "15.0.0", path = "/home/lexnv/workspace/frame-metadata/frame-metadata", features = ["v14", "std"] } # decode bytes into the metadata types scale = { package = "parity-scale-codec", version = "3.0.0", default-features = false } # generate the item mod for codegen diff --git a/codegen/Cargo.toml b/codegen/Cargo.toml index 9f7ad65d42..f34395712b 100644 --- a/codegen/Cargo.toml +++ b/codegen/Cargo.toml @@ -15,12 +15,12 @@ description = "Generate an API for interacting with a substrate node from FRAME [dependencies] codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive", "full"] } darling = "0.14.3" -frame-metadata = "15.0.0" +frame-metadata = { version = "15.0.0", path = "/home/lexnv/workspace/frame-metadata/frame-metadata" } heck = "0.4.1" proc-macro2 = "1.0.51" quote = "1.0.8" syn = "1.0.109" -scale-info = "2.0.0" +scale-info = { path = "/home/lexnv/workspace/scale-info" } subxt-metadata = { version = "0.27.1", path = "../metadata" } jsonrpsee = { version = "0.16.0", features = ["async-client", "client-ws-transport", "http-client"] } hex = "0.4.3" @@ -29,5 +29,5 @@ thiserror = "1.0.39" [dev-dependencies] bitvec = { version = "1.0.0", default-features = false, features = ["alloc"] } -scale-info = { version = "2.0.0", features = ["bit-vec"] } +scale-info = { path = "/home/lexnv/workspace/scale-info", features = ["bit-vec"] } pretty_assertions = "1.0.0" diff --git a/metadata/Cargo.toml b/metadata/Cargo.toml index 18a8688a41..afab93d88a 100644 --- a/metadata/Cargo.toml +++ b/metadata/Cargo.toml @@ -15,14 +15,14 @@ description = "Command line utilities for checking metadata compatibility betwee [dependencies] codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive", "full"] } -frame-metadata = "15.0.0" -scale-info = "2.0.0" +frame-metadata = { version = "15.0.0", path = "/home/lexnv/workspace/frame-metadata/frame-metadata" } +scale-info = { path = "/home/lexnv/workspace/scale-info", features = ["bit-vec"] } sp-core-hashing = "7.0.0" [dev-dependencies] bitvec = { version = "1.0.0", default-features = false, features = ["alloc"] } criterion = "0.4" -scale-info = { version = "2.0.0", features = ["bit-vec"] } +scale-info = { path = "/home/lexnv/workspace/scale-info", features = ["bit-vec"] } [lib] # Without this, libtest cli opts interfere with criteron benches: diff --git a/metadata/src/stripped.rs b/metadata/src/stripped.rs index 138f05aed4..c0ed5481b4 100644 --- a/metadata/src/stripped.rs +++ b/metadata/src/stripped.rs @@ -23,6 +23,7 @@ use std::{ any::TypeId, collections::{ BTreeSet, + HashMap, HashSet, }, }; @@ -40,14 +41,14 @@ pub enum StripError { fn collect_pallet_types(pallet: &PalletMetadata) -> BTreeSet { let mut type_ids = BTreeSet::new(); - println!("Collect"); - println!("Pallet is : {:?}", pallet); + // println!("Collect"); + // println!("Pallet is : {:?}", pallet); if let Some(storage) = &pallet.storage { - println!("storage : {:?}", storage); + // println!("storage : {:?}", storage); for entry in storage.entries.iter() { - println!("Entry : {:?}", entry); + // println!("Entry : {:?}", entry); match entry.ty { StorageEntryType::Plain(ty) => { @@ -165,30 +166,105 @@ pub fn keep_pallet>( // Collect type ids from the pallet. let mut type_ids = collect_pallet_types(pallet); - println!("TypeIDs {:#?}", type_ids); - - // println!("TypeIDs {:#?}", type_ids); + // Collect extrisic type IDs. + type_ids.insert(metadata.extrinsic.ty.id()); + for signed in &metadata.extrinsic.signed_extensions { + type_ids.insert(signed.ty.id()); + type_ids.insert(signed.additional_signed.id()); + } + // Collect runtime type ID. + type_ids.insert(metadata.ty.id()); // Extend the type IDs with their dependencies let registry = &metadata.types; - let mut result = BTreeSet::new(); let mut visited = HashSet::new(); for id in type_ids.iter() { - extend_type_id(registry, *id, &mut result, &mut visited)?; + extend_type_id(®istry, *id, &mut result, &mut visited)?; } type_ids.extend(result.iter()); - println!("TypeIDs Extended {:#?}", type_ids); + println!("TypeIDs {:#?}", type_ids); + + let mut registry = registry.clone(); + println!("old registry len: {}", registry.types().len()); + let res = registry.retain(type_ids.clone()).unwrap(); + println!("new registry len: {}", registry.types().len()); + + println!("Res is {:?}", res); + + // Modify the metadata + let mut new_metadata = metadata.clone(); + new_metadata.types = registry; + let mut pallet_metadata = pallet.clone(); + if let Some(storage) = &mut pallet_metadata.storage { + for entry in storage.entries.iter_mut() { + match &mut entry.ty { + StorageEntryType::Plain(plain) => { + let new_id = res.get(&plain.id()).expect("Expected ID to exist"); + *plain = (*new_id).into(); + } + StorageEntryType::Map { + hashers, + key, + value, + } => { + let new_id = res.get(&key.id()).expect("Expected ID to exist"); + *key = (*new_id).into(); + + let new_id = res.get(&value.id()).expect("Expected ID to exist"); + *value = (*new_id).into(); + } + } + } + } + + if let Some(calls) = &mut pallet_metadata.calls { + let new_id = res.get(&calls.ty.id()).expect("Expected ID to exist"); + calls.ty = (*new_id).into(); + } + + if let Some(event) = &mut pallet_metadata.event { + let new_id = res.get(&event.ty.id()).expect("Expected ID to exist"); + event.ty = (*new_id).into(); + } + + for constant in pallet_metadata.constants.iter_mut() { + let new_id = res.get(&constant.ty.id()).expect("Expected ID to exist"); + constant.ty = (*new_id).into(); + } + + if let Some(error) = &mut pallet_metadata.error { + let new_id = res.get(&error.ty.id()).expect("Expected ID to exist"); + error.ty = (*new_id).into(); + } + + new_metadata.pallets = vec![pallet_metadata]; + + let new_id = res + .get(&new_metadata.extrinsic.ty.id()) + .expect("Expected ID to exist"); + new_metadata.extrinsic.ty = (*new_id).into(); + + for ext in new_metadata.extrinsic.signed_extensions.iter_mut() { + let new_id = res.get(&ext.ty.id()).expect("Expected ID to exist"); + ext.ty = (*new_id).into(); + + let new_id = res + .get(&ext.additional_signed.id()) + .expect("Expected ID to exist"); + ext.additional_signed = (*new_id).into(); + } + println!( - "Pallet [{}]\n stripped {} vs full {}\n", - pallet_name.as_ref(), - type_ids.len(), - metadata.types.types().len() + "Stripped {number:>3} vs full {full} for pallet [{pallet}]", + number = type_ids.len(), + full = metadata.types.types().len(), + pallet = pallet_name.as_ref(), ); - Ok(metadata) + Ok(new_metadata) } #[cfg(test)] @@ -203,6 +279,7 @@ mod tests { use scale_info::meta_type; use std::{ fs, + io::Write, path::Path, }; @@ -221,12 +298,17 @@ mod tests { #[test] fn strip_pallet() { let metadata = load_metadata(); + use codec::Encode; - keep_pallet(metadata, "AuthorityDiscovery").unwrap(); + for pallet in metadata.pallets.iter() { + let metadata = load_metadata(); + let metadata = keep_pallet(metadata, &pallet.name).unwrap(); + let meta: RuntimeMetadataPrefixed = metadata.into(); + let bytes: Vec = meta.encode(); - // for pallet in metadata.pallets.iter() { - // let metadata = load_metadata(); - // keep_pallet(metadata, &pallet.name).unwrap(); - // } + let mut file = + fs::File::create(format!("../artifacts/{}.scale", pallet.name)).unwrap(); + file.write_all(bytes.as_slice()).unwrap(); + } } } diff --git a/subxt/Cargo.toml b/subxt/Cargo.toml index 9926db175c..8bee91cac1 100644 --- a/subxt/Cargo.toml +++ b/subxt/Cargo.toml @@ -36,10 +36,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-bits = "0.3" -scale-decode = "0.4.0" +scale-info = { path = "/home/lexnv/workspace/scale-info" } +scale-value = { version = "0.6.0", path = "/home/lexnv/workspace/scale-value" } +scale-bits = { version = "0.3.0", path = "/home/lexnv/workspace/scale-bits" } +scale-decode = {version = "0.4.0", path ="/home/lexnv/workspace/scale-decode" } futures = { version = "0.3.26", default-features = false, features = ["std"] } hex = "0.4.3" jsonrpsee = { version = "0.16", optional = true, features = ["jsonrpsee-types"] } @@ -48,7 +48,7 @@ serde_json = { version = "1.0.94", features = ["raw_value"] } thiserror = "1.0.39" tracing = "0.1.34" parking_lot = "0.12.0" -frame-metadata = "15.0.0" +frame-metadata = { version = "15.0.0", path = "/home/lexnv/workspace/frame-metadata/frame-metadata" } derivative = "2.2.0" subxt-macro = { version = "0.27.1", path = "../macro" } @@ -73,7 +73,7 @@ getrandom = { version = "0.2", features = ["js"] } [dev-dependencies] bitvec = "1" codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive", "full", "bit-vec"] } -scale-info = { version = "2.0.0", features = ["bit-vec"] } +scale-info = { path = "/home/lexnv/workspace/scale-info", features = ["bit-vec"] } tokio = { version = "1.26", features = ["macros", "time", "rt-multi-thread"] } sp-core = { version = "18.0.0", default-features = false } sp-runtime = "20.0.0" diff --git a/testing/integration-tests/Cargo.toml b/testing/integration-tests/Cargo.toml index 29a1863e4b..a6911e5666 100644 --- a/testing/integration-tests/Cargo.toml +++ b/testing/integration-tests/Cargo.toml @@ -18,11 +18,11 @@ default = ["subxt/integration-tests"] [dev-dependencies] assert_matches = "1.5.0" codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive", "full", "bit-vec"] } -frame-metadata = "15.0.0" +frame-metadata = { version = "15.0.0", path = "/home/lexnv/workspace/frame-metadata/frame-metadata" } futures = "0.3.26" hex = "0.4.3" regex = "1.5.0" -scale-info = { version = "2.0.0", features = ["bit-vec"] } +scale-info = { path = "/home/lexnv/workspace/scale-info", features = ["bit-vec"] } sp-core = { version = "18.0.0", default-features = false } sp-keyring = "20.0.0" sp-runtime = "20.0.0" diff --git a/testing/ui-tests/Cargo.toml b/testing/ui-tests/Cargo.toml index 1ce5b9979f..6cf554ebd1 100644 --- a/testing/ui-tests/Cargo.toml +++ b/testing/ui-tests/Cargo.toml @@ -10,7 +10,7 @@ publish = false [dev-dependencies] trybuild = "1.0.79" -scale-info = { version = "2.3.0", features = ["bit-vec"] } -frame-metadata = "15.0.0" +scale-info = { path = "/home/lexnv/workspace/scale-info", features = ["bit-vec"] } +frame-metadata = { version = "15.0.0", path = "/home/lexnv/workspace/frame-metadata/frame-metadata" } codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive", "full", "bit-vec"] } subxt = { path = "../../subxt" } diff --git a/tree b/tree new file mode 100644 index 0000000000..a5a075a06e --- /dev/null +++ b/tree @@ -0,0 +1,1202 @@ +integration-tests v0.27.1 (/home/lexnv/workspace/subxt/testing/integration-tests) +[dev-dependencies] +├── assert_matches v1.5.0 +├── frame-metadata v15.0.0 (/home/lexnv/workspace/frame-metadata/frame-metadata) +│ ├── cfg-if v1.0.0 +│ ├── parity-scale-codec v3.4.0 +│ │ ├── arrayvec v0.7.2 +│ │ ├── bitvec v1.0.1 +│ │ │ ├── funty v2.0.0 +│ │ │ ├── radium v0.7.0 +│ │ │ ├── tap v1.0.1 +│ │ │ └── wyz v0.5.1 +│ │ │ └── tap v1.0.1 +│ │ ├── byte-slice-cast v1.2.2 +│ │ ├── bytes v1.4.0 +│ │ ├── impl-trait-for-tuples v0.2.2 (proc-macro) +│ │ │ ├── proc-macro2 v1.0.51 +│ │ │ │ └── unicode-ident v1.0.6 +│ │ │ ├── quote v1.0.23 +│ │ │ │ └── proc-macro2 v1.0.51 (*) +│ │ │ └── syn v1.0.109 +│ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ ├── quote v1.0.23 (*) +│ │ │ └── unicode-ident v1.0.6 +│ │ ├── parity-scale-codec-derive v3.1.4 (proc-macro) +│ │ │ ├── proc-macro-crate v1.3.1 +│ │ │ │ ├── once_cell v1.17.1 +│ │ │ │ └── toml_edit v0.19.4 +│ │ │ │ ├── indexmap v1.9.2 +│ │ │ │ │ ├── hashbrown v0.12.3 +│ │ │ │ │ │ └── ahash v0.7.6 +│ │ │ │ │ │ ├── getrandom v0.2.8 +│ │ │ │ │ │ │ ├── cfg-if v1.0.0 +│ │ │ │ │ │ │ └── libc v0.2.139 +│ │ │ │ │ │ └── once_cell v1.17.1 +│ │ │ │ │ │ [build-dependencies] +│ │ │ │ │ │ └── version_check v0.9.4 +│ │ │ │ │ └── serde v1.0.152 +│ │ │ │ │ └── serde_derive v1.0.152 (proc-macro) +│ │ │ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ │ │ ├── quote v1.0.23 (*) +│ │ │ │ │ └── syn v1.0.109 (*) +│ │ │ │ │ [build-dependencies] +│ │ │ │ │ └── autocfg v1.1.0 +│ │ │ │ ├── toml_datetime v0.6.1 +│ │ │ │ └── winnow v0.3.3 +│ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ ├── quote v1.0.23 (*) +│ │ │ └── syn v1.0.109 (*) +│ │ └── serde v1.0.152 (*) +│ ├── scale-info v2.3.1 (/home/lexnv/workspace/scale-info) +│ │ ├── bitvec v1.0.1 (*) +│ │ ├── cfg-if v1.0.0 +│ │ ├── derive_more v0.99.17 (proc-macro) +│ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ ├── quote v1.0.23 (*) +│ │ │ └── syn v1.0.109 (*) +│ │ ├── parity-scale-codec v3.4.0 (*) +│ │ ├── scale-info-derive v2.3.1 (proc-macro) (/home/lexnv/workspace/scale-info/derive) +│ │ │ ├── proc-macro-crate v1.3.1 (*) +│ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ ├── quote v1.0.23 (*) +│ │ │ └── syn v1.0.109 (*) +│ │ └── serde v1.0.152 (*) +│ └── serde v1.0.152 (*) +├── futures v0.3.26 +│ ├── futures-channel v0.3.26 +│ │ ├── futures-core v0.3.26 +│ │ └── futures-sink v0.3.26 +│ ├── futures-core v0.3.26 +│ ├── futures-executor v0.3.26 +│ │ ├── futures-core v0.3.26 +│ │ ├── futures-task v0.3.26 +│ │ ├── futures-util v0.3.26 +│ │ │ ├── futures-channel v0.3.26 (*) +│ │ │ ├── futures-core v0.3.26 +│ │ │ ├── futures-io v0.3.26 +│ │ │ ├── futures-macro v0.3.26 (proc-macro) +│ │ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ │ ├── quote v1.0.23 (*) +│ │ │ │ └── syn v1.0.109 (*) +│ │ │ ├── futures-sink v0.3.26 +│ │ │ ├── futures-task v0.3.26 +│ │ │ ├── memchr v2.5.0 +│ │ │ ├── pin-project-lite v0.2.9 +│ │ │ ├── pin-utils v0.1.0 +│ │ │ └── slab v0.4.8 +│ │ │ [build-dependencies] +│ │ │ └── autocfg v1.1.0 +│ │ └── num_cpus v1.15.0 +│ │ └── libc v0.2.139 +│ ├── futures-io v0.3.26 +│ ├── futures-sink v0.3.26 +│ ├── futures-task v0.3.26 +│ └── futures-util v0.3.26 (*) +├── hex v0.4.3 +├── parity-scale-codec v3.4.0 (*) +├── regex v1.7.1 +│ ├── aho-corasick v0.7.20 +│ │ └── memchr v2.5.0 +│ ├── memchr v2.5.0 +│ └── regex-syntax v0.6.28 +├── scale-info v2.3.1 (/home/lexnv/workspace/scale-info) (*) +├── sp-core v18.0.0 +│ ├── array-bytes v4.2.0 +│ ├── base58 v0.2.0 +│ ├── bitflags v1.3.2 +│ ├── blake2 v0.10.6 +│ │ └── digest v0.10.6 +│ │ ├── block-buffer v0.10.3 +│ │ │ └── generic-array v0.14.6 +│ │ │ └── typenum v1.16.0 +│ │ │ [build-dependencies] +│ │ │ └── version_check v0.9.4 +│ │ ├── crypto-common v0.1.6 +│ │ │ ├── generic-array v0.14.6 (*) +│ │ │ └── typenum v1.16.0 +│ │ └── subtle v2.4.1 +│ ├── bounded-collections v0.1.5 +│ │ ├── log v0.4.17 +│ │ │ └── cfg-if v1.0.0 +│ │ ├── parity-scale-codec v3.4.0 (*) +│ │ ├── scale-info v2.3.1 +│ │ │ ├── bitvec v1.0.1 (*) +│ │ │ ├── cfg-if v1.0.0 +│ │ │ ├── derive_more v0.99.17 (proc-macro) (*) +│ │ │ ├── parity-scale-codec v3.4.0 (*) +│ │ │ └── scale-info-derive v2.3.1 (proc-macro) +│ │ │ ├── proc-macro-crate v1.3.1 (*) +│ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ ├── quote v1.0.23 (*) +│ │ │ └── syn v1.0.109 (*) +│ │ └── serde v1.0.152 (*) +│ ├── dyn-clonable v0.9.0 +│ │ ├── dyn-clonable-impl v0.9.0 (proc-macro) +│ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ ├── quote v1.0.23 (*) +│ │ │ └── syn v1.0.109 (*) +│ │ └── dyn-clone v1.0.11 +│ ├── ed25519-zebra v3.1.0 +│ │ ├── curve25519-dalek v3.2.0 +│ │ │ ├── byteorder v1.4.3 +│ │ │ ├── digest v0.9.0 +│ │ │ │ └── generic-array v0.14.6 (*) +│ │ │ ├── rand_core v0.5.1 +│ │ │ │ └── getrandom v0.1.16 +│ │ │ │ ├── cfg-if v1.0.0 +│ │ │ │ └── libc v0.2.139 +│ │ │ ├── subtle v2.4.1 +│ │ │ └── zeroize v1.5.7 +│ │ │ └── zeroize_derive v1.3.3 (proc-macro) +│ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ ├── quote v1.0.23 (*) +│ │ │ ├── syn v1.0.109 (*) +│ │ │ └── synstructure v0.12.6 +│ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ ├── quote v1.0.23 (*) +│ │ │ ├── syn v1.0.109 (*) +│ │ │ └── unicode-xid v0.2.4 +│ │ ├── hashbrown v0.12.3 (*) +│ │ ├── hex v0.4.3 +│ │ ├── rand_core v0.6.4 +│ │ │ └── getrandom v0.2.8 (*) +│ │ ├── sha2 v0.9.9 +│ │ │ ├── block-buffer v0.9.0 +│ │ │ │ └── generic-array v0.14.6 (*) +│ │ │ ├── cfg-if v1.0.0 +│ │ │ ├── cpufeatures v0.2.5 +│ │ │ ├── digest v0.9.0 (*) +│ │ │ └── opaque-debug v0.3.0 +│ │ └── zeroize v1.5.7 (*) +│ ├── futures v0.3.26 (*) +│ ├── hash-db v0.15.2 +│ ├── hash256-std-hasher v0.15.2 +│ │ └── crunchy v0.2.2 +│ ├── impl-serde v0.4.0 +│ │ └── serde v1.0.152 (*) +│ ├── lazy_static v1.4.0 +│ ├── libsecp256k1 v0.7.1 +│ │ ├── arrayref v0.3.6 +│ │ ├── base64 v0.13.1 +│ │ ├── digest v0.9.0 (*) +│ │ ├── hmac-drbg v0.3.0 +│ │ │ ├── digest v0.9.0 (*) +│ │ │ ├── generic-array v0.14.6 (*) +│ │ │ └── hmac v0.8.1 +│ │ │ ├── crypto-mac v0.8.0 +│ │ │ │ ├── generic-array v0.14.6 (*) +│ │ │ │ └── subtle v2.4.1 +│ │ │ └── digest v0.9.0 (*) +│ │ ├── libsecp256k1-core v0.3.0 +│ │ │ ├── crunchy v0.2.2 +│ │ │ ├── digest v0.9.0 (*) +│ │ │ └── subtle v2.4.1 +│ │ ├── rand v0.8.5 +│ │ │ ├── libc v0.2.139 +│ │ │ ├── rand_chacha v0.3.1 +│ │ │ │ ├── ppv-lite86 v0.2.17 +│ │ │ │ └── rand_core v0.6.4 (*) +│ │ │ └── rand_core v0.6.4 (*) +│ │ ├── serde v1.0.152 (*) +│ │ ├── sha2 v0.9.9 (*) +│ │ └── typenum v1.16.0 +│ │ [build-dependencies] +│ │ ├── libsecp256k1-gen-ecmult v0.3.0 +│ │ │ └── libsecp256k1-core v0.3.0 +│ │ │ ├── crunchy v0.2.2 +│ │ │ ├── digest v0.9.0 (*) +│ │ │ └── subtle v2.4.1 +│ │ └── libsecp256k1-gen-genmult v0.3.0 +│ │ └── libsecp256k1-core v0.3.0 (*) +│ ├── log v0.4.17 (*) +│ ├── merlin v2.0.1 +│ │ ├── byteorder v1.4.3 +│ │ ├── keccak v0.1.3 +│ │ ├── rand_core v0.5.1 (*) +│ │ └── zeroize v1.5.7 (*) +│ ├── parity-scale-codec v3.4.0 (*) +│ ├── parking_lot v0.12.1 +│ │ ├── lock_api v0.4.9 +│ │ │ └── scopeguard v1.1.0 +│ │ │ [build-dependencies] +│ │ │ └── autocfg v1.1.0 +│ │ └── parking_lot_core v0.9.7 +│ │ ├── cfg-if v1.0.0 +│ │ ├── libc v0.2.139 +│ │ └── smallvec v1.10.0 +│ ├── primitive-types v0.12.1 +│ │ ├── fixed-hash v0.8.0 +│ │ │ ├── byteorder v1.4.3 +│ │ │ ├── rand v0.8.5 (*) +│ │ │ ├── rustc-hex v2.1.0 +│ │ │ └── static_assertions v1.1.0 +│ │ ├── impl-codec v0.6.0 +│ │ │ └── parity-scale-codec v3.4.0 (*) +│ │ ├── impl-serde v0.4.0 (*) +│ │ ├── scale-info v2.3.1 (*) +│ │ └── uint v0.9.5 +│ │ ├── byteorder v1.4.3 +│ │ ├── crunchy v0.2.2 +│ │ ├── hex v0.4.3 +│ │ └── static_assertions v1.1.0 +│ ├── rand v0.8.5 (*) +│ ├── regex v1.7.1 (*) +│ ├── scale-info v2.3.1 (*) +│ ├── schnorrkel v0.9.1 +│ │ ├── arrayref v0.3.6 +│ │ ├── arrayvec v0.5.2 +│ │ ├── curve25519-dalek v2.1.3 +│ │ │ ├── byteorder v1.4.3 +│ │ │ ├── digest v0.8.1 +│ │ │ │ └── generic-array v0.12.4 +│ │ │ │ └── typenum v1.16.0 +│ │ │ ├── rand_core v0.5.1 (*) +│ │ │ ├── subtle v2.4.1 +│ │ │ └── zeroize v1.5.7 (*) +│ │ ├── getrandom v0.1.16 (*) +│ │ ├── merlin v2.0.1 (*) +│ │ ├── rand v0.7.3 +│ │ │ ├── getrandom v0.1.16 (*) +│ │ │ ├── libc v0.2.139 +│ │ │ ├── rand_chacha v0.2.2 +│ │ │ │ ├── ppv-lite86 v0.2.17 +│ │ │ │ └── rand_core v0.5.1 (*) +│ │ │ └── rand_core v0.5.1 (*) +│ │ ├── rand_core v0.5.1 (*) +│ │ ├── sha2 v0.8.2 +│ │ │ ├── block-buffer v0.7.3 +│ │ │ │ ├── block-padding v0.1.5 +│ │ │ │ │ └── byte-tools v0.3.1 +│ │ │ │ ├── byte-tools v0.3.1 +│ │ │ │ ├── byteorder v1.4.3 +│ │ │ │ └── generic-array v0.12.4 (*) +│ │ │ ├── digest v0.8.1 (*) +│ │ │ ├── fake-simd v0.1.2 +│ │ │ └── opaque-debug v0.2.3 +│ │ ├── subtle v2.4.1 +│ │ └── zeroize v1.5.7 (*) +│ ├── secp256k1 v0.24.3 +│ │ └── secp256k1-sys v0.6.1 +│ │ [build-dependencies] +│ │ └── cc v1.0.79 +│ ├── secrecy v0.8.0 +│ │ └── zeroize v1.5.7 (*) +│ ├── serde v1.0.152 (*) +│ ├── sp-core-hashing v7.0.0 +│ │ ├── blake2 v0.10.6 (*) +│ │ ├── byteorder v1.4.3 +│ │ ├── digest v0.10.6 (*) +│ │ ├── sha2 v0.10.6 +│ │ │ ├── cfg-if v1.0.0 +│ │ │ ├── cpufeatures v0.2.5 +│ │ │ └── digest v0.10.6 (*) +│ │ ├── sha3 v0.10.6 +│ │ │ ├── digest v0.10.6 (*) +│ │ │ └── keccak v0.1.3 +│ │ ├── sp-std v7.0.0 +│ │ └── twox-hash v1.6.3 +│ │ ├── cfg-if v1.0.0 +│ │ ├── digest v0.10.6 (*) +│ │ ├── rand v0.8.5 (*) +│ │ └── static_assertions v1.1.0 +│ ├── sp-debug-derive v7.0.0 (proc-macro) +│ │ ├── proc-macro2 v1.0.51 (*) +│ │ ├── quote v1.0.23 (*) +│ │ └── syn v1.0.109 (*) +│ ├── sp-externalities v0.18.0 +│ │ ├── environmental v1.1.4 +│ │ ├── parity-scale-codec v3.4.0 (*) +│ │ ├── sp-std v7.0.0 +│ │ └── sp-storage v12.0.0 +│ │ ├── impl-serde v0.4.0 (*) +│ │ ├── parity-scale-codec v3.4.0 (*) +│ │ ├── ref-cast v1.0.14 +│ │ │ └── ref-cast-impl v1.0.14 (proc-macro) +│ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ ├── quote v1.0.23 (*) +│ │ │ └── syn v1.0.109 (*) +│ │ ├── serde v1.0.152 (*) +│ │ ├── sp-debug-derive v7.0.0 (proc-macro) (*) +│ │ └── sp-std v7.0.0 +│ ├── sp-runtime-interface v15.0.0 +│ │ ├── bytes v1.4.0 +│ │ ├── impl-trait-for-tuples v0.2.2 (proc-macro) (*) +│ │ ├── parity-scale-codec v3.4.0 (*) +│ │ ├── primitive-types v0.12.1 (*) +│ │ ├── sp-externalities v0.18.0 (*) +│ │ ├── sp-runtime-interface-proc-macro v10.0.0 (proc-macro) +│ │ │ ├── Inflector v0.11.4 +│ │ │ │ ├── lazy_static v1.4.0 +│ │ │ │ └── regex v1.7.1 (*) +│ │ │ ├── proc-macro-crate v1.3.1 (*) +│ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ ├── quote v1.0.23 (*) +│ │ │ └── syn v1.0.109 (*) +│ │ ├── sp-std v7.0.0 +│ │ ├── sp-storage v12.0.0 (*) +│ │ ├── sp-tracing v9.0.0 +│ │ │ ├── parity-scale-codec v3.4.0 (*) +│ │ │ ├── sp-std v7.0.0 +│ │ │ ├── tracing v0.1.37 +│ │ │ │ ├── cfg-if v1.0.0 +│ │ │ │ ├── pin-project-lite v0.2.9 +│ │ │ │ ├── tracing-attributes v0.1.23 (proc-macro) +│ │ │ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ │ │ ├── quote v1.0.23 (*) +│ │ │ │ │ └── syn v1.0.109 (*) +│ │ │ │ └── tracing-core v0.1.30 +│ │ │ │ └── once_cell v1.17.1 +│ │ │ ├── tracing-core v0.1.30 (*) +│ │ │ └── tracing-subscriber v0.2.25 +│ │ │ ├── ansi_term v0.12.1 +│ │ │ ├── chrono v0.4.23 +│ │ │ │ ├── iana-time-zone v0.1.53 +│ │ │ │ ├── num-integer v0.1.45 +│ │ │ │ │ └── num-traits v0.2.15 +│ │ │ │ │ [build-dependencies] +│ │ │ │ │ └── autocfg v1.1.0 +│ │ │ │ │ [build-dependencies] +│ │ │ │ │ └── autocfg v1.1.0 +│ │ │ │ └── num-traits v0.2.15 (*) +│ │ │ ├── lazy_static v1.4.0 +│ │ │ ├── matchers v0.0.1 +│ │ │ │ └── regex-automata v0.1.10 +│ │ │ │ └── regex-syntax v0.6.28 +│ │ │ ├── regex v1.7.1 (*) +│ │ │ ├── serde v1.0.152 (*) +│ │ │ ├── serde_json v1.0.94 +│ │ │ │ ├── itoa v1.0.5 +│ │ │ │ ├── ryu v1.0.12 +│ │ │ │ └── serde v1.0.152 (*) +│ │ │ ├── sharded-slab v0.1.4 +│ │ │ │ └── lazy_static v1.4.0 +│ │ │ ├── smallvec v1.10.0 +│ │ │ ├── thread_local v1.1.7 +│ │ │ │ ├── cfg-if v1.0.0 +│ │ │ │ └── once_cell v1.17.1 +│ │ │ ├── tracing v0.1.37 (*) +│ │ │ ├── tracing-core v0.1.30 (*) +│ │ │ ├── tracing-log v0.1.3 +│ │ │ │ ├── lazy_static v1.4.0 +│ │ │ │ ├── log v0.4.17 (*) +│ │ │ │ └── tracing-core v0.1.30 (*) +│ │ │ └── tracing-serde v0.1.3 +│ │ │ ├── serde v1.0.152 (*) +│ │ │ └── tracing-core v0.1.30 (*) +│ │ ├── sp-wasm-interface v12.0.0 +│ │ │ ├── anyhow v1.0.69 +│ │ │ ├── impl-trait-for-tuples v0.2.2 (proc-macro) (*) +│ │ │ ├── log v0.4.17 (*) +│ │ │ ├── parity-scale-codec v3.4.0 (*) +│ │ │ ├── sp-std v7.0.0 +│ │ │ ├── wasmi v0.13.2 +│ │ │ │ ├── parity-wasm v0.45.0 +│ │ │ │ ├── wasmi-validation v0.5.0 +│ │ │ │ │ └── parity-wasm v0.45.0 +│ │ │ │ └── wasmi_core v0.2.1 +│ │ │ │ ├── downcast-rs v1.2.0 +│ │ │ │ ├── libm v0.2.6 +│ │ │ │ ├── memory_units v0.4.0 +│ │ │ │ ├── num-rational v0.4.1 +│ │ │ │ │ ├── num-bigint v0.4.3 +│ │ │ │ │ │ ├── num-integer v0.1.45 (*) +│ │ │ │ │ │ └── num-traits v0.2.15 (*) +│ │ │ │ │ │ [build-dependencies] +│ │ │ │ │ │ └── autocfg v1.1.0 +│ │ │ │ │ ├── num-integer v0.1.45 (*) +│ │ │ │ │ └── num-traits v0.2.15 (*) +│ │ │ │ │ [build-dependencies] +│ │ │ │ │ └── autocfg v1.1.0 +│ │ │ │ └── num-traits v0.2.15 (*) +│ │ │ └── wasmtime v6.0.0 +│ │ │ ├── anyhow v1.0.69 +│ │ │ ├── bincode v1.3.3 +│ │ │ │ └── serde v1.0.152 (*) +│ │ │ ├── cfg-if v1.0.0 +│ │ │ ├── indexmap v1.9.2 (*) +│ │ │ ├── libc v0.2.139 +│ │ │ ├── log v0.4.17 (*) +│ │ │ ├── object v0.29.0 +│ │ │ │ ├── crc32fast v1.3.2 +│ │ │ │ │ └── cfg-if v1.0.0 +│ │ │ │ ├── hashbrown v0.12.3 (*) +│ │ │ │ ├── indexmap v1.9.2 (*) +│ │ │ │ └── memchr v2.5.0 +│ │ │ ├── once_cell v1.17.1 +│ │ │ ├── paste v1.0.11 (proc-macro) +│ │ │ ├── psm v0.1.21 +│ │ │ │ [build-dependencies] +│ │ │ │ └── cc v1.0.79 +│ │ │ ├── serde v1.0.152 (*) +│ │ │ ├── target-lexicon v0.12.6 +│ │ │ ├── wasmparser v0.100.0 +│ │ │ │ ├── indexmap v1.9.2 (*) +│ │ │ │ └── url v2.3.1 +│ │ │ │ ├── form_urlencoded v1.1.0 +│ │ │ │ │ └── percent-encoding v2.2.0 +│ │ │ │ ├── idna v0.3.0 +│ │ │ │ │ ├── unicode-bidi v0.3.10 +│ │ │ │ │ └── unicode-normalization v0.1.22 +│ │ │ │ │ └── tinyvec v1.6.0 +│ │ │ │ │ └── tinyvec_macros v0.1.1 +│ │ │ │ └── percent-encoding v2.2.0 +│ │ │ ├── wasmtime-environ v6.0.0 +│ │ │ │ ├── anyhow v1.0.69 +│ │ │ │ ├── cranelift-entity v0.93.0 +│ │ │ │ │ └── serde v1.0.152 (*) +│ │ │ │ ├── gimli v0.26.2 +│ │ │ │ │ ├── fallible-iterator v0.2.0 +│ │ │ │ │ └── stable_deref_trait v1.2.0 +│ │ │ │ ├── indexmap v1.9.2 (*) +│ │ │ │ ├── log v0.4.17 (*) +│ │ │ │ ├── object v0.29.0 (*) +│ │ │ │ ├── serde v1.0.152 (*) +│ │ │ │ ├── target-lexicon v0.12.6 +│ │ │ │ ├── thiserror v1.0.39 +│ │ │ │ │ └── thiserror-impl v1.0.39 (proc-macro) +│ │ │ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ │ │ ├── quote v1.0.23 (*) +│ │ │ │ │ └── syn v1.0.109 (*) +│ │ │ │ ├── wasmparser v0.100.0 (*) +│ │ │ │ └── wasmtime-types v6.0.0 +│ │ │ │ ├── cranelift-entity v0.93.0 (*) +│ │ │ │ ├── serde v1.0.152 (*) +│ │ │ │ ├── thiserror v1.0.39 (*) +│ │ │ │ └── wasmparser v0.100.0 (*) +│ │ │ ├── wasmtime-jit v6.0.0 +│ │ │ │ ├── addr2line v0.17.0 +│ │ │ │ │ └── gimli v0.26.2 (*) +│ │ │ │ ├── anyhow v1.0.69 +│ │ │ │ ├── bincode v1.3.3 (*) +│ │ │ │ ├── cfg-if v1.0.0 +│ │ │ │ ├── cpp_demangle v0.3.5 +│ │ │ │ │ └── cfg-if v1.0.0 +│ │ │ │ ├── gimli v0.26.2 (*) +│ │ │ │ ├── log v0.4.17 (*) +│ │ │ │ ├── object v0.29.0 (*) +│ │ │ │ ├── rustc-demangle v0.1.21 +│ │ │ │ ├── serde v1.0.152 (*) +│ │ │ │ ├── target-lexicon v0.12.6 +│ │ │ │ ├── wasmtime-environ v6.0.0 (*) +│ │ │ │ ├── wasmtime-jit-icache-coherence v6.0.0 +│ │ │ │ │ ├── cfg-if v1.0.0 +│ │ │ │ │ └── libc v0.2.139 +│ │ │ │ └── wasmtime-runtime v6.0.0 +│ │ │ │ ├── anyhow v1.0.69 +│ │ │ │ ├── cfg-if v1.0.0 +│ │ │ │ ├── indexmap v1.9.2 (*) +│ │ │ │ ├── libc v0.2.139 +│ │ │ │ ├── log v0.4.17 (*) +│ │ │ │ ├── memfd v0.6.2 +│ │ │ │ │ └── rustix v0.36.8 +│ │ │ │ │ ├── bitflags v1.3.2 +│ │ │ │ │ ├── io-lifetimes v1.0.5 +│ │ │ │ │ │ └── libc v0.2.139 +│ │ │ │ │ ├── libc v0.2.139 +│ │ │ │ │ └── linux-raw-sys v0.1.4 +│ │ │ │ ├── memoffset v0.6.5 +│ │ │ │ │ [build-dependencies] +│ │ │ │ │ └── autocfg v1.1.0 +│ │ │ │ ├── paste v1.0.11 (proc-macro) +│ │ │ │ ├── rand v0.8.5 (*) +│ │ │ │ ├── rustix v0.36.8 (*) +│ │ │ │ ├── wasmtime-asm-macros v6.0.0 +│ │ │ │ │ └── cfg-if v1.0.0 +│ │ │ │ ├── wasmtime-environ v6.0.0 (*) +│ │ │ │ └── wasmtime-jit-debug v6.0.0 +│ │ │ │ └── once_cell v1.17.1 +│ │ │ │ [build-dependencies] +│ │ │ │ └── cc v1.0.79 +│ │ │ └── wasmtime-runtime v6.0.0 (*) +│ │ └── static_assertions v1.1.0 +│ ├── sp-std v7.0.0 +│ ├── sp-storage v12.0.0 (*) +│ ├── ss58-registry v1.39.0 +│ │ └── num-format v0.4.4 +│ │ ├── arrayvec v0.7.2 +│ │ └── itoa v1.0.5 +│ │ [build-dependencies] +│ │ ├── Inflector v0.11.4 (*) +│ │ ├── proc-macro2 v1.0.51 (*) +│ │ ├── quote v1.0.23 (*) +│ │ ├── serde v1.0.152 (*) +│ │ ├── serde_json v1.0.94 (*) +│ │ └── unicode-xid v0.2.4 +│ ├── substrate-bip39 v0.4.4 +│ │ ├── hmac v0.11.0 +│ │ │ ├── crypto-mac v0.11.1 +│ │ │ │ ├── generic-array v0.14.6 (*) +│ │ │ │ └── subtle v2.4.1 +│ │ │ └── digest v0.9.0 (*) +│ │ ├── pbkdf2 v0.8.0 +│ │ │ └── crypto-mac v0.11.1 (*) +│ │ ├── schnorrkel v0.9.1 (*) +│ │ ├── sha2 v0.9.9 (*) +│ │ └── zeroize v1.5.7 (*) +│ ├── thiserror v1.0.39 (*) +│ ├── tiny-bip39 v1.0.0 +│ │ ├── anyhow v1.0.69 +│ │ ├── hmac v0.12.1 +│ │ │ └── digest v0.10.6 (*) +│ │ ├── once_cell v1.17.1 +│ │ ├── pbkdf2 v0.11.0 +│ │ │ └── digest v0.10.6 (*) +│ │ ├── rand v0.8.5 (*) +│ │ ├── rustc-hash v1.1.0 +│ │ ├── sha2 v0.10.6 (*) +│ │ ├── thiserror v1.0.39 (*) +│ │ ├── unicode-normalization v0.1.22 (*) +│ │ └── zeroize v1.5.7 (*) +│ └── zeroize v1.5.7 (*) +├── sp-keyring v20.0.0 +│ ├── lazy_static v1.4.0 +│ ├── sp-core v18.0.0 (*) +│ ├── sp-runtime v20.0.0 +│ │ ├── either v1.8.1 +│ │ ├── hash256-std-hasher v0.15.2 (*) +│ │ ├── impl-trait-for-tuples v0.2.2 (proc-macro) (*) +│ │ ├── log v0.4.17 (*) +│ │ ├── parity-scale-codec v3.4.0 (*) +│ │ ├── paste v1.0.11 (proc-macro) +│ │ ├── rand v0.8.5 (*) +│ │ ├── scale-info v2.3.1 (*) +│ │ ├── serde v1.0.152 (*) +│ │ ├── sp-application-crypto v19.0.0 +│ │ │ ├── parity-scale-codec v3.4.0 (*) +│ │ │ ├── scale-info v2.3.1 (*) +│ │ │ ├── serde v1.0.152 (*) +│ │ │ ├── sp-core v18.0.0 (*) +│ │ │ ├── sp-io v19.0.0 +│ │ │ │ ├── bytes v1.4.0 +│ │ │ │ ├── ed25519 v1.5.3 +│ │ │ │ │ └── signature v1.6.4 +│ │ │ │ ├── ed25519-dalek v1.0.1 +│ │ │ │ │ ├── curve25519-dalek v3.2.0 (*) +│ │ │ │ │ ├── ed25519 v1.5.3 (*) +│ │ │ │ │ ├── sha2 v0.9.9 (*) +│ │ │ │ │ └── zeroize v1.5.7 (*) +│ │ │ │ ├── futures v0.3.26 (*) +│ │ │ │ ├── libsecp256k1 v0.7.1 (*) +│ │ │ │ ├── log v0.4.17 (*) +│ │ │ │ ├── parity-scale-codec v3.4.0 (*) +│ │ │ │ ├── secp256k1 v0.24.3 (*) +│ │ │ │ ├── sp-core v18.0.0 (*) +│ │ │ │ ├── sp-externalities v0.18.0 (*) +│ │ │ │ ├── sp-keystore v0.24.0 +│ │ │ │ │ ├── async-trait v0.1.64 (proc-macro) +│ │ │ │ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ │ │ │ ├── quote v1.0.23 (*) +│ │ │ │ │ │ └── syn v1.0.109 (*) +│ │ │ │ │ ├── futures v0.3.26 (*) +│ │ │ │ │ ├── merlin v2.0.1 (*) +│ │ │ │ │ ├── parity-scale-codec v3.4.0 (*) +│ │ │ │ │ ├── parking_lot v0.12.1 (*) +│ │ │ │ │ ├── schnorrkel v0.9.1 (*) +│ │ │ │ │ ├── sp-core v18.0.0 (*) +│ │ │ │ │ ├── sp-externalities v0.18.0 (*) +│ │ │ │ │ └── thiserror v1.0.39 (*) +│ │ │ │ ├── sp-runtime-interface v15.0.0 (*) +│ │ │ │ ├── sp-state-machine v0.24.0 +│ │ │ │ │ ├── hash-db v0.15.2 +│ │ │ │ │ ├── log v0.4.17 (*) +│ │ │ │ │ ├── parity-scale-codec v3.4.0 (*) +│ │ │ │ │ ├── parking_lot v0.12.1 (*) +│ │ │ │ │ ├── rand v0.8.5 (*) +│ │ │ │ │ ├── smallvec v1.10.0 +│ │ │ │ │ ├── sp-core v18.0.0 (*) +│ │ │ │ │ ├── sp-externalities v0.18.0 (*) +│ │ │ │ │ ├── sp-panic-handler v7.0.0 +│ │ │ │ │ │ ├── backtrace v0.3.67 +│ │ │ │ │ │ │ ├── addr2line v0.19.0 +│ │ │ │ │ │ │ │ └── gimli v0.27.2 +│ │ │ │ │ │ │ ├── cfg-if v1.0.0 +│ │ │ │ │ │ │ ├── libc v0.2.139 +│ │ │ │ │ │ │ ├── miniz_oxide v0.6.2 +│ │ │ │ │ │ │ │ └── adler v1.0.2 +│ │ │ │ │ │ │ ├── object v0.30.3 +│ │ │ │ │ │ │ │ └── memchr v2.5.0 +│ │ │ │ │ │ │ └── rustc-demangle v0.1.21 +│ │ │ │ │ │ │ [build-dependencies] +│ │ │ │ │ │ │ └── cc v1.0.79 +│ │ │ │ │ │ ├── lazy_static v1.4.0 +│ │ │ │ │ │ └── regex v1.7.1 (*) +│ │ │ │ │ ├── sp-std v7.0.0 +│ │ │ │ │ ├── sp-trie v18.0.0 +│ │ │ │ │ │ ├── ahash v0.8.3 +│ │ │ │ │ │ │ ├── cfg-if v1.0.0 +│ │ │ │ │ │ │ ├── getrandom v0.2.8 (*) +│ │ │ │ │ │ │ └── once_cell v1.17.1 +│ │ │ │ │ │ │ [build-dependencies] +│ │ │ │ │ │ │ └── version_check v0.9.4 +│ │ │ │ │ │ ├── hash-db v0.15.2 +│ │ │ │ │ │ ├── hashbrown v0.12.3 (*) +│ │ │ │ │ │ ├── lazy_static v1.4.0 +│ │ │ │ │ │ ├── memory-db v0.31.0 +│ │ │ │ │ │ │ ├── hash-db v0.15.2 +│ │ │ │ │ │ │ └── hashbrown v0.12.3 (*) +│ │ │ │ │ │ ├── nohash-hasher v0.2.0 +│ │ │ │ │ │ ├── parity-scale-codec v3.4.0 (*) +│ │ │ │ │ │ ├── parking_lot v0.12.1 (*) +│ │ │ │ │ │ ├── scale-info v2.3.1 (*) +│ │ │ │ │ │ ├── schnellru v0.2.1 +│ │ │ │ │ │ │ ├── ahash v0.8.3 (*) +│ │ │ │ │ │ │ ├── cfg-if v1.0.0 +│ │ │ │ │ │ │ └── hashbrown v0.13.2 +│ │ │ │ │ │ │ └── ahash v0.8.3 (*) +│ │ │ │ │ │ ├── sp-core v18.0.0 (*) +│ │ │ │ │ │ ├── sp-std v7.0.0 +│ │ │ │ │ │ ├── thiserror v1.0.39 (*) +│ │ │ │ │ │ ├── tracing v0.1.37 (*) +│ │ │ │ │ │ ├── trie-db v0.25.1 +│ │ │ │ │ │ │ ├── hash-db v0.15.2 +│ │ │ │ │ │ │ ├── hashbrown v0.13.2 (*) +│ │ │ │ │ │ │ ├── log v0.4.17 (*) +│ │ │ │ │ │ │ ├── rustc-hex v2.1.0 +│ │ │ │ │ │ │ └── smallvec v1.10.0 +│ │ │ │ │ │ └── trie-root v0.17.0 +│ │ │ │ │ │ └── hash-db v0.15.2 +│ │ │ │ │ ├── thiserror v1.0.39 (*) +│ │ │ │ │ └── tracing v0.1.37 (*) +│ │ │ │ ├── sp-std v7.0.0 +│ │ │ │ ├── sp-tracing v9.0.0 (*) +│ │ │ │ ├── sp-trie v18.0.0 (*) +│ │ │ │ ├── tracing v0.1.37 (*) +│ │ │ │ └── tracing-core v0.1.30 (*) +│ │ │ └── sp-std v7.0.0 +│ │ ├── sp-arithmetic v13.0.0 +│ │ │ ├── integer-sqrt v0.1.5 +│ │ │ │ └── num-traits v0.2.15 (*) +│ │ │ ├── num-traits v0.2.15 (*) +│ │ │ ├── parity-scale-codec v3.4.0 (*) +│ │ │ ├── scale-info v2.3.1 (*) +│ │ │ ├── serde v1.0.152 (*) +│ │ │ ├── sp-std v7.0.0 +│ │ │ └── static_assertions v1.1.0 +│ │ ├── sp-core v18.0.0 (*) +│ │ ├── sp-io v19.0.0 (*) +│ │ ├── sp-std v7.0.0 +│ │ └── sp-weights v16.0.0 +│ │ ├── parity-scale-codec v3.4.0 (*) +│ │ ├── scale-info v2.3.1 (*) +│ │ ├── serde v1.0.152 (*) +│ │ ├── smallvec v1.10.0 +│ │ ├── sp-arithmetic v13.0.0 (*) +│ │ ├── sp-core v18.0.0 (*) +│ │ ├── sp-debug-derive v7.0.0 (proc-macro) (*) +│ │ └── sp-std v7.0.0 +│ └── strum v0.24.1 +│ └── strum_macros v0.24.3 (proc-macro) +│ ├── heck v0.4.1 +│ ├── proc-macro2 v1.0.51 (*) +│ ├── quote v1.0.23 (*) +│ ├── rustversion v1.0.11 (proc-macro) +│ └── syn v1.0.109 (*) +├── sp-runtime v20.0.0 (*) +├── subxt v0.27.1 (/home/lexnv/workspace/subxt/subxt) +│ ├── base58 v0.2.0 +│ ├── blake2 v0.10.6 (*) +│ ├── derivative v2.2.0 (proc-macro) +│ │ ├── proc-macro2 v1.0.51 (*) +│ │ ├── quote v1.0.23 (*) +│ │ └── syn v1.0.109 (*) +│ ├── frame-metadata v15.0.0 (/home/lexnv/workspace/frame-metadata/frame-metadata) (*) +│ ├── futures v0.3.26 (*) +│ ├── hex v0.4.3 +│ ├── impl-serde v0.4.0 (*) +│ ├── jsonrpsee v0.16.2 +│ │ ├── jsonrpsee-client-transport v0.16.2 +│ │ │ ├── futures-util v0.3.26 (*) +│ │ │ ├── http v0.2.9 +│ │ │ │ ├── bytes v1.4.0 +│ │ │ │ ├── fnv v1.0.7 +│ │ │ │ └── itoa v1.0.5 +│ │ │ ├── jsonrpsee-core v0.16.2 +│ │ │ │ ├── anyhow v1.0.69 +│ │ │ │ ├── async-lock v2.6.0 +│ │ │ │ │ ├── event-listener v2.5.3 +│ │ │ │ │ └── futures-lite v1.12.0 +│ │ │ │ │ ├── fastrand v1.9.0 +│ │ │ │ │ ├── futures-core v0.3.26 +│ │ │ │ │ ├── futures-io v0.3.26 +│ │ │ │ │ ├── memchr v2.5.0 +│ │ │ │ │ ├── parking v2.0.0 +│ │ │ │ │ ├── pin-project-lite v0.2.9 +│ │ │ │ │ └── waker-fn v1.1.0 +│ │ │ │ ├── async-trait v0.1.64 (proc-macro) (*) +│ │ │ │ ├── beef v0.5.2 +│ │ │ │ │ └── serde v1.0.152 (*) +│ │ │ │ ├── futures-channel v0.3.26 (*) +│ │ │ │ ├── futures-timer v3.0.2 +│ │ │ │ ├── futures-util v0.3.26 (*) +│ │ │ │ ├── hyper v0.14.24 +│ │ │ │ │ ├── bytes v1.4.0 +│ │ │ │ │ ├── futures-channel v0.3.26 (*) +│ │ │ │ │ ├── futures-core v0.3.26 +│ │ │ │ │ ├── futures-util v0.3.26 (*) +│ │ │ │ │ ├── h2 v0.3.16 +│ │ │ │ │ │ ├── bytes v1.4.0 +│ │ │ │ │ │ ├── fnv v1.0.7 +│ │ │ │ │ │ ├── futures-core v0.3.26 +│ │ │ │ │ │ ├── futures-sink v0.3.26 +│ │ │ │ │ │ ├── futures-util v0.3.26 (*) +│ │ │ │ │ │ ├── http v0.2.9 (*) +│ │ │ │ │ │ ├── indexmap v1.9.2 (*) +│ │ │ │ │ │ ├── slab v0.4.8 (*) +│ │ │ │ │ │ ├── tokio v1.26.0 +│ │ │ │ │ │ │ ├── bytes v1.4.0 +│ │ │ │ │ │ │ ├── libc v0.2.139 +│ │ │ │ │ │ │ ├── memchr v2.5.0 +│ │ │ │ │ │ │ ├── mio v0.8.6 +│ │ │ │ │ │ │ │ ├── libc v0.2.139 +│ │ │ │ │ │ │ │ └── log v0.4.17 (*) +│ │ │ │ │ │ │ ├── num_cpus v1.15.0 (*) +│ │ │ │ │ │ │ ├── pin-project-lite v0.2.9 +│ │ │ │ │ │ │ ├── socket2 v0.4.7 +│ │ │ │ │ │ │ │ └── libc v0.2.139 +│ │ │ │ │ │ │ └── tokio-macros v1.8.2 (proc-macro) +│ │ │ │ │ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ │ │ │ │ ├── quote v1.0.23 (*) +│ │ │ │ │ │ │ └── syn v1.0.109 (*) +│ │ │ │ │ │ │ [build-dependencies] +│ │ │ │ │ │ │ └── autocfg v1.1.0 +│ │ │ │ │ │ ├── tokio-util v0.7.7 +│ │ │ │ │ │ │ ├── bytes v1.4.0 +│ │ │ │ │ │ │ ├── futures-core v0.3.26 +│ │ │ │ │ │ │ ├── futures-io v0.3.26 +│ │ │ │ │ │ │ ├── futures-sink v0.3.26 +│ │ │ │ │ │ │ ├── pin-project-lite v0.2.9 +│ │ │ │ │ │ │ ├── tokio v1.26.0 (*) +│ │ │ │ │ │ │ └── tracing v0.1.37 (*) +│ │ │ │ │ │ └── tracing v0.1.37 (*) +│ │ │ │ │ ├── http v0.2.9 (*) +│ │ │ │ │ ├── http-body v0.4.5 +│ │ │ │ │ │ ├── bytes v1.4.0 +│ │ │ │ │ │ ├── http v0.2.9 (*) +│ │ │ │ │ │ └── pin-project-lite v0.2.9 +│ │ │ │ │ ├── httparse v1.8.0 +│ │ │ │ │ ├── httpdate v1.0.2 +│ │ │ │ │ ├── itoa v1.0.5 +│ │ │ │ │ ├── pin-project-lite v0.2.9 +│ │ │ │ │ ├── socket2 v0.4.7 (*) +│ │ │ │ │ ├── tokio v1.26.0 (*) +│ │ │ │ │ ├── tower-service v0.3.2 +│ │ │ │ │ ├── tracing v0.1.37 (*) +│ │ │ │ │ └── want v0.3.0 +│ │ │ │ │ ├── log v0.4.17 (*) +│ │ │ │ │ └── try-lock v0.2.4 +│ │ │ │ ├── jsonrpsee-types v0.16.2 +│ │ │ │ │ ├── anyhow v1.0.69 +│ │ │ │ │ ├── beef v0.5.2 (*) +│ │ │ │ │ ├── serde v1.0.152 (*) +│ │ │ │ │ ├── serde_json v1.0.94 (*) +│ │ │ │ │ ├── thiserror v1.0.39 (*) +│ │ │ │ │ └── tracing v0.1.37 (*) +│ │ │ │ ├── rustc-hash v1.1.0 +│ │ │ │ ├── serde v1.0.152 (*) +│ │ │ │ ├── serde_json v1.0.94 (*) +│ │ │ │ ├── thiserror v1.0.39 (*) +│ │ │ │ ├── tokio v1.26.0 (*) +│ │ │ │ └── tracing v0.1.37 (*) +│ │ │ ├── jsonrpsee-types v0.16.2 (*) +│ │ │ ├── pin-project v1.0.12 +│ │ │ │ └── pin-project-internal v1.0.12 (proc-macro) +│ │ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ │ ├── quote v1.0.23 (*) +│ │ │ │ └── syn v1.0.109 (*) +│ │ │ ├── rustls-native-certs v0.6.2 +│ │ │ │ ├── openssl-probe v0.1.5 +│ │ │ │ └── rustls-pemfile v1.0.2 +│ │ │ │ └── base64 v0.21.0 +│ │ │ ├── soketto v0.7.1 +│ │ │ │ ├── base64 v0.13.1 +│ │ │ │ ├── bytes v1.4.0 +│ │ │ │ ├── futures v0.3.26 (*) +│ │ │ │ ├── httparse v1.8.0 +│ │ │ │ ├── log v0.4.17 (*) +│ │ │ │ ├── rand v0.8.5 (*) +│ │ │ │ └── sha-1 v0.9.8 +│ │ │ │ ├── block-buffer v0.9.0 (*) +│ │ │ │ ├── cfg-if v1.0.0 +│ │ │ │ ├── cpufeatures v0.2.5 +│ │ │ │ ├── digest v0.9.0 (*) +│ │ │ │ └── opaque-debug v0.3.0 +│ │ │ ├── thiserror v1.0.39 (*) +│ │ │ ├── tokio v1.26.0 (*) +│ │ │ ├── tokio-rustls v0.23.4 +│ │ │ │ ├── rustls v0.20.8 +│ │ │ │ │ ├── log v0.4.17 (*) +│ │ │ │ │ ├── ring v0.16.20 +│ │ │ │ │ │ ├── libc v0.2.139 +│ │ │ │ │ │ ├── once_cell v1.17.1 +│ │ │ │ │ │ ├── spin v0.5.2 +│ │ │ │ │ │ └── untrusted v0.7.1 +│ │ │ │ │ │ [build-dependencies] +│ │ │ │ │ │ └── cc v1.0.79 +│ │ │ │ │ ├── sct v0.7.0 +│ │ │ │ │ │ ├── ring v0.16.20 (*) +│ │ │ │ │ │ └── untrusted v0.7.1 +│ │ │ │ │ └── webpki v0.22.0 +│ │ │ │ │ ├── ring v0.16.20 (*) +│ │ │ │ │ └── untrusted v0.7.1 +│ │ │ │ ├── tokio v1.26.0 (*) +│ │ │ │ └── webpki v0.22.0 (*) +│ │ │ ├── tokio-util v0.7.7 (*) +│ │ │ ├── tracing v0.1.37 (*) +│ │ │ └── webpki-roots v0.22.6 +│ │ │ └── webpki v0.22.0 (*) +│ │ ├── jsonrpsee-core v0.16.2 (*) +│ │ ├── jsonrpsee-http-client v0.16.2 +│ │ │ ├── async-trait v0.1.64 (proc-macro) (*) +│ │ │ ├── hyper v0.14.24 (*) +│ │ │ ├── hyper-rustls v0.23.2 +│ │ │ │ ├── http v0.2.9 (*) +│ │ │ │ ├── hyper v0.14.24 (*) +│ │ │ │ ├── log v0.4.17 (*) +│ │ │ │ ├── rustls v0.20.8 (*) +│ │ │ │ ├── rustls-native-certs v0.6.2 (*) +│ │ │ │ ├── tokio v1.26.0 (*) +│ │ │ │ ├── tokio-rustls v0.23.4 (*) +│ │ │ │ └── webpki-roots v0.22.6 (*) +│ │ │ ├── jsonrpsee-core v0.16.2 (*) +│ │ │ ├── jsonrpsee-types v0.16.2 (*) +│ │ │ ├── rustc-hash v1.1.0 +│ │ │ ├── serde v1.0.152 (*) +│ │ │ ├── serde_json v1.0.94 (*) +│ │ │ ├── thiserror v1.0.39 (*) +│ │ │ ├── tokio v1.26.0 (*) +│ │ │ └── tracing v0.1.37 (*) +│ │ └── jsonrpsee-types v0.16.2 (*) +│ ├── parity-scale-codec v3.4.0 (*) +│ ├── parking_lot v0.12.1 (*) +│ ├── primitive-types v0.12.1 (*) +│ ├── scale-bits v0.3.0 +│ │ ├── parity-scale-codec v3.4.0 (*) +│ │ ├── scale-info v2.3.1 (*) +│ │ └── serde v1.0.152 (*) +│ ├── scale-decode v0.4.0 +│ │ ├── parity-scale-codec v3.4.0 (*) +│ │ ├── scale-bits v0.3.0 (*) +│ │ ├── scale-info v2.3.1 (*) +│ │ └── thiserror v1.0.39 (*) +│ ├── scale-info v2.3.1 (/home/lexnv/workspace/scale-info) (*) +│ ├── scale-value v0.6.0 +│ │ ├── either v1.8.1 +│ │ ├── frame-metadata v15.0.0 +│ │ │ ├── cfg-if v1.0.0 +│ │ │ ├── parity-scale-codec v3.4.0 (*) +│ │ │ └── scale-info v2.3.1 (*) +│ │ ├── parity-scale-codec v3.4.0 (*) +│ │ ├── scale-bits v0.3.0 (*) +│ │ ├── scale-decode v0.4.0 (*) +│ │ ├── scale-info v2.3.1 (*) +│ │ ├── serde v1.0.152 (*) +│ │ ├── thiserror v1.0.39 (*) +│ │ └── yap v0.7.2 +│ ├── serde v1.0.152 (*) +│ ├── serde_json v1.0.94 (*) +│ ├── sp-core v18.0.0 (*) +│ ├── sp-core-hashing v7.0.0 (*) +│ ├── sp-runtime v20.0.0 (*) +│ ├── subxt-macro v0.27.1 (proc-macro) (/home/lexnv/workspace/subxt/macro) +│ │ ├── darling v0.14.3 +│ │ │ ├── darling_core v0.14.3 +│ │ │ │ ├── fnv v1.0.7 +│ │ │ │ ├── ident_case v1.0.1 +│ │ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ │ ├── quote v1.0.23 (*) +│ │ │ │ ├── strsim v0.10.0 +│ │ │ │ └── syn v1.0.109 (*) +│ │ │ └── darling_macro v0.14.3 (proc-macro) +│ │ │ ├── darling_core v0.14.3 (*) +│ │ │ ├── quote v1.0.23 (*) +│ │ │ └── syn v1.0.109 (*) +│ │ ├── proc-macro-error v1.0.4 +│ │ │ ├── proc-macro-error-attr v1.0.4 (proc-macro) +│ │ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ │ └── quote v1.0.23 (*) +│ │ │ │ [build-dependencies] +│ │ │ │ └── version_check v0.9.4 +│ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ ├── quote v1.0.23 (*) +│ │ │ └── syn v1.0.109 (*) +│ │ │ [build-dependencies] +│ │ │ └── version_check v0.9.4 +│ │ ├── subxt-codegen v0.27.1 (/home/lexnv/workspace/subxt/codegen) +│ │ │ ├── darling v0.14.3 (*) +│ │ │ ├── frame-metadata v15.0.0 (/home/lexnv/workspace/frame-metadata/frame-metadata) (*) +│ │ │ ├── heck v0.4.1 +│ │ │ ├── hex v0.4.3 +│ │ │ ├── jsonrpsee v0.16.2 (*) +│ │ │ ├── parity-scale-codec v3.4.0 +│ │ │ │ ├── arrayvec v0.7.2 +│ │ │ │ ├── bitvec v1.0.1 (*) +│ │ │ │ ├── byte-slice-cast v1.2.2 +│ │ │ │ ├── bytes v1.4.0 +│ │ │ │ ├── impl-trait-for-tuples v0.2.2 (proc-macro) (*) +│ │ │ │ ├── parity-scale-codec-derive v3.1.4 (proc-macro) (*) +│ │ │ │ └── serde v1.0.152 (*) +│ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ ├── quote v1.0.23 (*) +│ │ │ ├── scale-info v2.3.1 (/home/lexnv/workspace/scale-info) (*) +│ │ │ ├── subxt-metadata v0.27.1 (/home/lexnv/workspace/subxt/metadata) +│ │ │ │ ├── frame-metadata v15.0.0 (/home/lexnv/workspace/frame-metadata/frame-metadata) (*) +│ │ │ │ ├── parity-scale-codec v3.4.0 (*) +│ │ │ │ ├── scale-info v2.3.1 (/home/lexnv/workspace/scale-info) (*) +│ │ │ │ └── sp-core-hashing v7.0.0 (*) +│ │ │ │ [dev-dependencies] +│ │ │ │ ├── bitvec v1.0.1 (*) +│ │ │ │ ├── criterion v0.4.0 +│ │ │ │ │ ├── anes v0.1.6 +│ │ │ │ │ ├── atty v0.2.14 +│ │ │ │ │ │ └── libc v0.2.139 +│ │ │ │ │ ├── cast v0.3.0 +│ │ │ │ │ ├── ciborium v0.2.0 +│ │ │ │ │ │ ├── ciborium-io v0.2.0 +│ │ │ │ │ │ ├── ciborium-ll v0.2.0 +│ │ │ │ │ │ │ ├── ciborium-io v0.2.0 +│ │ │ │ │ │ │ └── half v1.8.2 +│ │ │ │ │ │ └── serde v1.0.152 (*) +│ │ │ │ │ ├── clap v3.2.23 +│ │ │ │ │ │ ├── bitflags v1.3.2 +│ │ │ │ │ │ ├── clap_lex v0.2.4 +│ │ │ │ │ │ │ └── os_str_bytes v6.4.1 +│ │ │ │ │ │ ├── indexmap v1.9.2 (*) +│ │ │ │ │ │ └── textwrap v0.16.0 +│ │ │ │ │ ├── criterion-plot v0.5.0 +│ │ │ │ │ │ ├── cast v0.3.0 +│ │ │ │ │ │ └── itertools v0.10.5 +│ │ │ │ │ │ └── either v1.8.1 +│ │ │ │ │ ├── itertools v0.10.5 (*) +│ │ │ │ │ ├── lazy_static v1.4.0 +│ │ │ │ │ ├── num-traits v0.2.15 (*) +│ │ │ │ │ ├── oorandom v11.1.3 +│ │ │ │ │ ├── plotters v0.3.4 +│ │ │ │ │ │ ├── num-traits v0.2.15 (*) +│ │ │ │ │ │ ├── plotters-backend v0.3.4 +│ │ │ │ │ │ └── plotters-svg v0.3.3 +│ │ │ │ │ │ └── plotters-backend v0.3.4 +│ │ │ │ │ ├── rayon v1.6.1 +│ │ │ │ │ │ ├── either v1.8.1 +│ │ │ │ │ │ └── rayon-core v1.10.2 +│ │ │ │ │ │ ├── crossbeam-channel v0.5.6 +│ │ │ │ │ │ │ ├── cfg-if v1.0.0 +│ │ │ │ │ │ │ └── crossbeam-utils v0.8.14 +│ │ │ │ │ │ │ └── cfg-if v1.0.0 +│ │ │ │ │ │ ├── crossbeam-deque v0.8.2 +│ │ │ │ │ │ │ ├── cfg-if v1.0.0 +│ │ │ │ │ │ │ ├── crossbeam-epoch v0.9.13 +│ │ │ │ │ │ │ │ ├── cfg-if v1.0.0 +│ │ │ │ │ │ │ │ ├── crossbeam-utils v0.8.14 (*) +│ │ │ │ │ │ │ │ ├── memoffset v0.7.1 +│ │ │ │ │ │ │ │ │ [build-dependencies] +│ │ │ │ │ │ │ │ │ └── autocfg v1.1.0 +│ │ │ │ │ │ │ │ └── scopeguard v1.1.0 +│ │ │ │ │ │ │ │ [build-dependencies] +│ │ │ │ │ │ │ │ └── autocfg v1.1.0 +│ │ │ │ │ │ │ └── crossbeam-utils v0.8.14 (*) +│ │ │ │ │ │ ├── crossbeam-utils v0.8.14 (*) +│ │ │ │ │ │ └── num_cpus v1.15.0 (*) +│ │ │ │ │ ├── regex v1.7.1 (*) +│ │ │ │ │ ├── serde v1.0.152 (*) +│ │ │ │ │ ├── serde_derive v1.0.152 (proc-macro) (*) +│ │ │ │ │ ├── serde_json v1.0.94 (*) +│ │ │ │ │ ├── tinytemplate v1.2.1 +│ │ │ │ │ │ ├── serde v1.0.152 (*) +│ │ │ │ │ │ └── serde_json v1.0.94 (*) +│ │ │ │ │ └── walkdir v2.3.2 +│ │ │ │ │ └── same-file v1.0.6 +│ │ │ │ └── scale-info v2.3.1 (/home/lexnv/workspace/scale-info) (*) +│ │ │ ├── syn v1.0.109 (*) +│ │ │ ├── thiserror v1.0.39 (*) +│ │ │ └── tokio v1.26.0 (*) +│ │ │ [dev-dependencies] +│ │ │ ├── bitvec v1.0.1 (*) +│ │ │ ├── pretty_assertions v1.3.0 +│ │ │ │ ├── diff v0.1.13 +│ │ │ │ └── yansi v0.5.1 +│ │ │ └── scale-info v2.3.1 (/home/lexnv/workspace/scale-info) (*) +│ │ └── syn v1.0.109 (*) +│ ├── subxt-metadata v0.27.1 (/home/lexnv/workspace/subxt/metadata) (*) +│ ├── thiserror v1.0.39 (*) +│ └── tracing v0.1.37 (*) +│ [dev-dependencies] +│ ├── bitvec v1.0.1 (*) +│ ├── parity-scale-codec v3.4.0 (*) +│ ├── scale-info v2.3.1 (/home/lexnv/workspace/scale-info) (*) +│ ├── sp-core v18.0.0 (*) +│ ├── sp-keyring v20.0.0 (*) +│ ├── sp-runtime v20.0.0 (*) +│ ├── sp-version v18.0.0 +│ │ ├── impl-serde v0.4.0 (*) +│ │ ├── parity-scale-codec v3.4.0 (*) +│ │ ├── parity-wasm v0.45.0 +│ │ ├── scale-info v2.3.1 (*) +│ │ ├── serde v1.0.152 (*) +│ │ ├── sp-core-hashing-proc-macro v7.0.0 (proc-macro) +│ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ ├── quote v1.0.23 (*) +│ │ │ ├── sp-core-hashing v7.0.0 (*) +│ │ │ └── syn v1.0.109 (*) +│ │ ├── sp-runtime v20.0.0 (*) +│ │ ├── sp-std v7.0.0 +│ │ ├── sp-version-proc-macro v7.0.0 (proc-macro) +│ │ │ ├── parity-scale-codec v3.4.0 (*) +│ │ │ ├── proc-macro2 v1.0.51 (*) +│ │ │ ├── quote v1.0.23 (*) +│ │ │ └── syn v1.0.109 (*) +│ │ └── thiserror v1.0.39 (*) +│ └── tokio v1.26.0 (*) +├── subxt-codegen v0.27.1 (/home/lexnv/workspace/subxt/codegen) (*) +├── syn v1.0.109 +│ ├── proc-macro2 v1.0.51 (*) +│ ├── quote v1.0.23 (*) +│ └── unicode-ident v1.0.6 +├── test-runtime v0.27.1 (/home/lexnv/workspace/subxt/testing/test-runtime) +│ ├── parity-scale-codec v3.4.0 (*) +│ ├── sp-runtime v20.0.0 (*) +│ └── subxt v0.27.1 (/home/lexnv/workspace/subxt/subxt) (*) +│ [build-dependencies] +│ ├── jsonrpsee v0.16.2 (*) +│ ├── subxt v0.27.1 (/home/lexnv/workspace/subxt/subxt) +│ │ ├── base58 v0.2.0 +│ │ ├── blake2 v0.10.6 (*) +│ │ ├── derivative v2.2.0 (proc-macro) (*) +│ │ ├── frame-metadata v15.0.0 (/home/lexnv/workspace/frame-metadata/frame-metadata) (*) +│ │ ├── futures v0.3.26 (*) +│ │ ├── hex v0.4.3 +│ │ ├── impl-serde v0.4.0 (*) +│ │ ├── jsonrpsee v0.16.2 (*) +│ │ ├── parity-scale-codec v3.4.0 (*) +│ │ ├── parking_lot v0.12.1 (*) +│ │ ├── primitive-types v0.12.1 (*) +│ │ ├── scale-bits v0.3.0 (*) +│ │ ├── scale-decode v0.4.0 (*) +│ │ ├── scale-info v2.3.1 (/home/lexnv/workspace/scale-info) (*) +│ │ ├── scale-value v0.6.0 (*) +│ │ ├── serde v1.0.152 (*) +│ │ ├── serde_json v1.0.94 (*) +│ │ ├── sp-core v18.0.0 (*) +│ │ ├── sp-core-hashing v7.0.0 (*) +│ │ ├── sp-runtime v20.0.0 (*) +│ │ ├── subxt-macro v0.27.1 (proc-macro) (/home/lexnv/workspace/subxt/macro) (*) +│ │ ├── subxt-metadata v0.27.1 (/home/lexnv/workspace/subxt/metadata) (*) +│ │ ├── thiserror v1.0.39 (*) +│ │ └── tracing v0.1.37 (*) +│ │ [dev-dependencies] +│ │ ├── bitvec v1.0.1 (*) +│ │ ├── parity-scale-codec v3.4.0 (*) +│ │ ├── scale-info v2.3.1 (/home/lexnv/workspace/scale-info) (*) +│ │ ├── sp-core v18.0.0 (*) +│ │ ├── sp-keyring v20.0.0 (*) +│ │ ├── sp-runtime v20.0.0 (*) +│ │ ├── sp-version v18.0.0 (*) +│ │ └── tokio v1.26.0 (*) +│ ├── tokio v1.26.0 (*) +│ └── which v4.4.0 +│ ├── either v1.8.1 +│ └── libc v0.2.139 +├── tokio v1.26.0 (*) +├── tracing v0.1.37 (*) +├── tracing-subscriber v0.3.16 +│ ├── nu-ansi-term v0.46.0 +│ │ └── overload v0.1.1 +│ ├── sharded-slab v0.1.4 (*) +│ ├── smallvec v1.10.0 +│ ├── thread_local v1.1.7 (*) +│ ├── tracing-core v0.1.30 (*) +│ └── tracing-log v0.1.3 (*) +├── wabt v0.10.0 +│ ├── serde v1.0.152 (*) +│ ├── serde_derive v1.0.152 (proc-macro) (*) +│ ├── serde_json v1.0.94 (*) +│ └── wabt-sys v0.8.0 +│ [build-dependencies] +│ ├── cc v1.0.79 +│ └── cmake v0.1.49 +│ └── cc v1.0.79 +└── which v4.4.0 (*) + +subxt v0.27.1 (/home/lexnv/workspace/subxt/subxt) (*) + +subxt v0.27.1 (/home/lexnv/workspace/subxt/subxt) (*) + +subxt-cli v0.27.1 (/home/lexnv/workspace/subxt/cli) +├── clap v4.1.8 +│ ├── bitflags v1.3.2 +│ ├── clap_derive v4.1.8 (proc-macro) +│ │ ├── heck v0.4.1 +│ │ ├── proc-macro-error v1.0.4 (*) +│ │ ├── proc-macro2 v1.0.51 (*) +│ │ ├── quote v1.0.23 (*) +│ │ └── syn v1.0.109 (*) +│ ├── clap_lex v0.3.2 +│ │ └── os_str_bytes v6.4.1 +│ ├── is-terminal v0.4.4 +│ │ ├── io-lifetimes v1.0.5 (*) +│ │ └── rustix v0.36.8 (*) +│ ├── once_cell v1.17.1 +│ ├── strsim v0.10.0 +│ └── termcolor v1.2.0 +├── color-eyre v0.6.2 +│ ├── backtrace v0.3.67 (*) +│ ├── color-spantrace v0.2.0 +│ │ ├── once_cell v1.17.1 +│ │ ├── owo-colors v3.5.0 +│ │ ├── tracing-core v0.1.30 (*) +│ │ └── tracing-error v0.2.0 +│ │ ├── tracing v0.1.37 (*) +│ │ └── tracing-subscriber v0.3.16 (*) +│ ├── eyre v0.6.8 +│ │ ├── indenter v0.3.3 +│ │ └── once_cell v1.17.1 +│ ├── indenter v0.3.3 +│ ├── once_cell v1.17.1 +│ ├── owo-colors v3.5.0 +│ └── tracing-error v0.2.0 (*) +├── frame-metadata v15.0.0 (/home/lexnv/workspace/frame-metadata/frame-metadata) (*) +├── hex v0.4.3 +├── jsonrpsee v0.16.2 (*) +├── parity-scale-codec v3.4.0 (*) +├── serde v1.0.152 (*) +├── serde_json v1.0.94 (*) +├── subxt-codegen v0.27.1 (/home/lexnv/workspace/subxt/codegen) (*) +├── subxt-metadata v0.27.1 (/home/lexnv/workspace/subxt/metadata) (*) +├── syn v1.0.109 (*) +└── tokio v1.26.0 (*) + +subxt-codegen v0.27.1 (/home/lexnv/workspace/subxt/codegen) (*) + +subxt-examples v0.27.1 (/home/lexnv/workspace/subxt/examples) +[dev-dependencies] +├── futures v0.3.26 (*) +├── hex v0.4.3 +├── parity-scale-codec v3.4.0 (*) +├── sp-core v18.0.0 (*) +├── sp-keyring v20.0.0 (*) +├── sp-runtime v20.0.0 (*) +├── subxt v0.27.1 (/home/lexnv/workspace/subxt/subxt) (*) +├── tokio v1.26.0 (*) +└── tracing-subscriber v0.3.16 (*) + +subxt-macro v0.27.1 (proc-macro) (/home/lexnv/workspace/subxt/macro) (*) + +subxt-metadata v0.27.1 (/home/lexnv/workspace/subxt/metadata) (*) + +test-runtime v0.27.1 (/home/lexnv/workspace/subxt/testing/test-runtime) (*) + +ui-tests v0.27.1 (/home/lexnv/workspace/subxt/testing/ui-tests) +[dev-dependencies] +├── frame-metadata v15.0.0 (/home/lexnv/workspace/frame-metadata/frame-metadata) (*) +├── parity-scale-codec v3.4.0 (*) +├── scale-info v2.3.1 (/home/lexnv/workspace/scale-info) (*) +├── subxt v0.27.1 (/home/lexnv/workspace/subxt/subxt) (*) +└── trybuild v1.0.79 + ├── basic-toml v0.1.1 + │ └── serde v1.0.152 (*) + ├── glob v0.3.1 + ├── once_cell v1.17.1 + ├── serde v1.0.152 (*) + ├── serde_derive v1.0.152 (proc-macro) (*) + ├── serde_json v1.0.94 (*) + └── termcolor v1.2.0 diff --git a/types.json b/types.json new file mode 100644 index 0000000000..b3a118f929 --- /dev/null +++ b/types.json @@ -0,0 +1,658 @@ + +running 1 test +TypeIDs { + 0, + 1, + 2, + 4, + 6, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 31, + 37, + 40, + 41, + 42, + 46, + 47, + 48, + 53, + 54, + 55, + 59, + 60, + 65, + 66, + 71, + 72, + 76, + 80, + 83, + 87, + 92, + 93, + 95, + 102, + 104, + 105, + 106, + 107, + 109, + 110, + 111, + 112, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331, + 332, + 333, + 334, + 335, + 336, + 337, + 338, + 339, + 340, + 341, + 342, + 343, + 344, + 345, + 346, + 347, + 348, + 349, + 350, + 351, + 352, + 353, + 354, + 355, + 356, + 357, + 358, + 359, + 360, + 361, + 362, + 363, + 364, + 365, + 366, + 367, + 368, + 369, + 370, + 371, + 372, + 373, + 374, + 375, + 376, + 377, + 378, + 379, + 380, + 381, + 542, + 543, + 744, + 745, + 746, + 747, + 748, + 749, + 750, + 751, + 752, + 753, + 754, + 755, +} +New Mappings { + 288: 206, + 139: 44, + 209: 113, + 337: 264, + 172: 72, + 320: 243, + 182: 82, + 259: 176, + 124: 23, + 222: 139, + 313: 232, + 315: 235, + 106: 237, + 356: 283, + 135: 36, + 59: 109, + 48: 115, + 310: 229, + 153: 58, + 338: 265, + 381: 133, + 278: 196, + 257: 174, + 543: 312, + 753: 308, + 207: 108, + 341: 268, + 334: 261, + 200: 100, + 104: 239, + 238: 156, + 47: 114, + 253: 170, + 109: 253, + 330: 254, + 155: 4, + 307: 225, + 224: 142, + 132: 31, + 148: 15, + 225: 143, + 301: 217, + 344: 271, + 369: 296, + 234: 152, + 142: 48, + 361: 288, + 303: 220, + 219: 131, + 194: 94, + 294: 212, + 292: 210, + 362: 289, + 187: 87, + 184: 84, + 350: 277, + 193: 93, + 214: 123, + 324: 247, + 266: 183, + 748: 315, + 72: 45, + 1: 12, + 223: 141, + 186: 86, + 195: 95, + 273: 190, + 287: 205, + 171: 71, + 306: 224, + 53: 134, + 340: 267, + 215: 124, + 159: 6, + 125: 24, + 248: 165, + 197: 97, + 297: 213, + 332: 256, + 206: 107, + 296: 17, + 243: 161, + 367: 294, + 179: 79, + 263: 180, + 298: 214, + 311: 230, + 8: 33, + 304: 221, + 317: 240, + 351: 278, + 754: 319, + 241: 159, + 9: 34, + 236: 154, + 175: 75, + 245: 18, + 141: 47, + 203: 104, + 331: 255, + 102: 233, + 10: 21, + 314: 234, + 333: 257, + 178: 78, + 279: 197, + 359: 286, + 126: 25, + 198: 98, + 249: 166, + 328: 251, + 168: 68, + 254: 171, + 95: 226, + 218: 130, + 121: 19, + 120: 132, + 325: 248, + 110: 258, + 379: 306, + 127: 26, + 157: 0, + 364: 291, + 177: 77, + 230: 148, + 174: 74, + 216: 125, + 229: 147, + 380: 307, + 309: 228, + 210: 117, + 185: 85, + 212: 121, + 373: 300, + 261: 178, + 358: 285, + 283: 201, + 188: 88, + 205: 106, + 226: 144, + 346: 273, + 295: 8, + 755: 320, + 154: 59, + 165: 65, + 12: 14, + 377: 304, + 167: 67, + 180: 80, + 244: 162, + 80: 191, + 237: 155, + 122: 20, + 131: 30, + 213: 122, + 147: 10, + 183: 83, + 16: 43, + 192: 92, + 83: 119, + 352: 279, + 326: 249, + 138: 1, + 750: 317, + 291: 209, + 65: 127, + 335: 262, + 262: 179, + 376: 303, + 107: 238, + 246: 163, + 129: 28, + 233: 151, + 158: 3, + 170: 70, + 146: 52, + 227: 145, + 137: 38, + 329: 252, + 752: 309, + 290: 208, + 31: 321, + 201: 101, + 327: 250, + 217: 126, + 285: 203, + 319: 242, + 60: 110, + 191: 91, + 220: 136, + 371: 298, + 323: 246, + 15: 42, + 232: 150, + 156: 60, + 274: 192, + 173: 73, + 282: 200, + 749: 316, + 181: 81, + 264: 181, + 164: 64, + 281: 199, + 339: 266, + 6: 9, + 300: 216, + 0: 11, + 308: 227, + 747: 314, + 267: 184, + 123: 22, + 276: 194, + 286: 204, + 145: 51, + 363: 290, + 746: 310, + 150: 55, + 14: 41, + 151: 56, + 336: 263, + 4: 2, + 275: 193, + 196: 96, + 136: 37, + 277: 195, + 342: 269, + 111: 259, + 247: 164, + 343: 270, + 42: 103, + 354: 281, + 11: 39, + 189: 89, + 133: 32, + 211: 118, + 144: 50, + 105: 120, + 221: 138, + 235: 153, + 252: 169, + 190: 90, + 751: 318, + 130: 29, + 318: 241, + 93: 5, + 260: 177, + 270: 187, + 366: 293, + 160: 7, + 348: 275, + 199: 99, + 284: 202, + 368: 295, + 162: 62, + 378: 305, + 128: 27, + 176: 76, + 40: 140, + 55: 137, + 293: 211, + 13: 40, + 256: 173, + 542: 311, + 744: 322, + 365: 292, + 163: 63, + 316: 236, + 268: 185, + 239: 157, + 305: 222, + 372: 299, + 375: 302, + 745: 313, + 2: 13, + 169: 69, + 208: 112, + 251: 168, + 231: 149, + 112: 260, + 357: 284, + 71: 129, + 149: 53, + 204: 105, + 242: 160, + 240: 158, + 289: 207, + 370: 297, + 302: 219, + 76: 54, + 92: 223, + 255: 172, + 345: 272, + 66: 128, + 349: 276, + 228: 146, + 272: 189, + 322: 245, + 46: 116, + 54: 135, + 140: 46, + 143: 49, + 134: 35, + 258: 175, + 321: 244, + 374: 301, + 41: 16, + 166: 66, + 312: 231, + 202: 102, + 360: 287, + 353: 280, + 152: 57, + 161: 61, + 355: 282, + 250: 167, + 269: 186, + 299: 215, + 87: 218, + 280: 198, + 271: 188, + 37: 111, + 265: 182, + 347: 274, +} +Res is Ok({288: 206, 139: 44, 209: 113, 337: 264, 172: 72, 320: 243, 182: 82, 259: 176, 124: 23, 222: 139, 313: 232, 315: 235, 106: 237, 356: 283, 135: 36, 59: 109, 48: 115, 310: 229, 153: 58, 338: 265, 381: 133, 278: 196, 257: 174, 543: 312, 753: 308, 207: 108, 341: 268, 334: 261, 200: 100, 104: 239, 238: 156, 47: 114, 253: 170, 109: 253, 330: 254, 155: 4, 307: 225, 224: 142, 132: 31, 148: 15, 225: 143, 301: 217, 344: 271, 369: 296, 234: 152, 142: 48, 361: 288, 303: 220, 219: 131, 194: 94, 294: 212, 292: 210, 362: 289, 187: 87, 184: 84, 350: 277, 193: 93, 214: 123, 324: 247, 266: 183, 748: 315, 72: 45, 1: 12, 223: 141, 186: 86, 195: 95, 273: 190, 287: 205, 171: 71, 306: 224, 53: 134, 340: 267, 215: 124, 159: 6, 125: 24, 248: 165, 197: 97, 297: 213, 332: 256, 206: 107, 296: 17, 243: 161, 367: 294, 179: 79, 263: 180, 298: 214, 311: 230, 8: 33, 304: 221, 317: 240, 351: 278, 754: 319, 241: 159, 9: 34, 236: 154, 175: 75, 245: 18, 141: 47, 203: 104, 331: 255, 102: 233, 10: 21, 314: 234, 333: 257, 178: 78, 279: 197, 359: 286, 126: 25, 198: 98, 249: 166, 328: 251, 168: 68, 254: 171, 95: 226, 218: 130, 121: 19, 120: 132, 325: 248, 110: 258, 379: 306, 127: 26, 157: 0, 364: 291, 177: 77, 230: 148, 174: 74, 216: 125, 229: 147, 380: 307, 309: 228, 210: 117, 185: 85, 212: 121, 373: 300, 261: 178, 358: 285, 283: 201, 188: 88, 205: 106, 226: 144, 346: 273, 295: 8, 755: 320, 154: 59, 165: 65, 12: 14, 377: 304, 167: 67, 180: 80, 244: 162, 80: 191, 237: 155, 122: 20, 131: 30, 213: 122, 147: 10, 183: 83, 16: 43, 192: 92, 83: 119, 352: 279, 326: 249, 138: 1, 750: 317, 291: 209, 65: 127, 335: 262, 262: 179, 376: 303, 107: 238, 246: 163, 129: 28, 233: 151, 158: 3, 170: 70, 146: 52, 227: 145, 137: 38, 329: 252, 752: 309, 290: 208, 31: 321, 201: 101, 327: 250, 217: 126, 285: 203, 319: 242, 60: 110, 191: 91, 220: 136, 371: 298, 323: 246, 15: 42, 232: 150, 156: 60, 274: 192, 173: 73, 282: 200, 749: 316, 181: 81, 264: 181, 164: 64, 281: 199, 339: 266, 6: 9, 300: 216, 0: 11, 308: 227, 747: 314, 267: 184, 123: 22, 276: 194, 286: 204, 145: 51, 363: 290, 746: 310, 150: 55, 14: 41, 151: 56, 336: 263, 4: 2, 275: 193, 196: 96, 136: 37, 277: 195, 342: 269, 111: 259, 247: 164, 343: 270, 42: 103, 354: 281, 11: 39, 189: 89, 133: 32, 211: 118, 144: 50, 105: 120, 221: 138, 235: 153, 252: 169, 190: 90, 751: 318, 130: 29, 318: 241, 93: 5, 260: 177, 270: 187, 366: 293, 160: 7, 348: 275, 199: 99, 284: 202, 368: 295, 162: 62, 378: 305, 128: 27, 176: 76, 40: 140, 55: 137, 293: 211, 13: 40, 256: 173, 542: 311, 744: 322, 365: 292, 163: 63, 316: 236, 268: 185, 239: 157, 305: 222, 372: 299, 375: 302, 745: 313, 2: 13, 169: 69, 208: 112, 251: 168, 231: 149, 112: 260, 357: 284, 71: 129, 149: 53, 204: 105, 242: 160, 240: 158, 289: 207, 370: 297, 302: 219, 76: 54, 92: 223, 255: 172, 345: 272, 66: 128, 349: 276, 228: 146, 272: 189, 322: 245, 46: 116, 54: 135, 140: 46, 143: 49, 134: 35, 258: 175, 321: 244, 374: 301, 41: 16, 166: 66, 312: 231, 202: 102, 360: 287, 353: 280, 152: 57, 161: 61, 355: 282, 250: 167, 269: 186, 299: 215, 87: 218, 280: 198, 271: 188, 37: 111, 265: 182, 347: 274}) +Stripped 323 vs full 756 for pallet [AuthorityDiscovery] +test stripped::tests::strip_pallet ... ok + +test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 6 filtered out; finished in 0.01s +