difftreelog
Stable build: 2.0.0-alpha.6, no smart contracts and last changes removed
in: master
13 files changed
.dockerignorediffbeforeafterboth--- a/.dockerignore
+++ b/.dockerignore
@@ -1,2 +1,6 @@
+.git/
+.github/
+doc/
target/
-chain-data/
\ No newline at end of file
+chain-data/
+smart_contract/
\ No newline at end of file
Cargo.lockdiffbeforeafterboth--- a/Cargo.lock
+++ b/Cargo.lock
@@ -906,16 +906,16 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4f2fc91a6a976ce87b105722d8d9cdc44d4cb03ad24493d34cbfb64bbaacb7ee"
dependencies = [
- "frame-support 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "frame-system 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "frame-support",
+ "frame-system",
"linregress",
"parity-scale-codec",
"paste",
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-io 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime-interface 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-api",
+ "sp-io",
+ "sp-runtime",
+ "sp-runtime-interface",
+ "sp-std",
]
[[package]]
@@ -924,23 +924,12 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2941cd59682f596645d54b0e84c02e98f9be53a346841c720ead60cdbadb3463"
dependencies = [
- "frame-support 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "frame-system 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "frame-support",
+ "frame-system",
"parity-scale-codec",
"serde",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "frame-metadata"
-version = "11.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "parity-scale-codec",
- "serde",
- "sp-core 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-std 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
+ "sp-runtime",
+ "sp-std",
]
[[package]]
@@ -951,32 +940,8 @@
dependencies = [
"parity-scale-codec",
"serde",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "frame-support"
-version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "bitmask",
- "frame-metadata 11.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "frame-support-procedural 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "impl-trait-for-tuples",
- "log",
- "once_cell",
- "parity-scale-codec",
- "paste",
- "serde",
- "sp-arithmetic 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-core 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-inherents 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-io 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-runtime 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-state-machine 0.8.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-std 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "tracing",
+ "sp-core",
+ "sp-std",
]
[[package]]
@@ -986,33 +951,22 @@
checksum = "a4058dce75ae1d45b469a8cbbe0c9dc3083e5546936b60e4647e73584e0f7ba7"
dependencies = [
"bitmask",
- "frame-metadata 11.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "frame-support-procedural 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "frame-metadata",
+ "frame-support-procedural",
"impl-trait-for-tuples",
"log",
"once_cell",
"parity-scale-codec",
"paste",
"serde",
- "sp-arithmetic 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-inherents 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-io 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-state-machine 0.8.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-arithmetic",
+ "sp-core",
+ "sp-inherents",
+ "sp-io",
+ "sp-runtime",
+ "sp-state-machine",
+ "sp-std",
"tracing",
-]
-
-[[package]]
-name = "frame-support-procedural"
-version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "frame-support-procedural-tools 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "proc-macro2",
- "quote 1.0.3",
- "syn 1.0.17",
]
[[package]]
@@ -1021,19 +975,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eefa7eb42406f732f87f8331aaaa787a65abe0f5f681a59fac1737ba4e81d89e"
dependencies = [
- "frame-support-procedural-tools 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "proc-macro2",
- "quote 1.0.3",
- "syn 1.0.17",
-]
-
-[[package]]
-name = "frame-support-procedural-tools"
-version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "frame-support-procedural-tools-derive 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "proc-macro-crate",
+ "frame-support-procedural-tools",
"proc-macro2",
"quote 1.0.3",
"syn 1.0.17",
@@ -1045,18 +987,8 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0d0fce760be3b164dd44ba5826f6a504c485020f6813604d4c73b42b50797d71"
dependencies = [
- "frame-support-procedural-tools-derive 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "frame-support-procedural-tools-derive",
"proc-macro-crate",
- "proc-macro2",
- "quote 1.0.3",
- "syn 1.0.17",
-]
-
-[[package]]
-name = "frame-support-procedural-tools-derive"
-version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
"proc-macro2",
"quote 1.0.3",
"syn 1.0.17",
@@ -1076,34 +1008,18 @@
[[package]]
name = "frame-system"
version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "frame-support 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "impl-trait-for-tuples",
- "parity-scale-codec",
- "serde",
- "sp-core 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-io 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-runtime 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-std 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-version 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
-]
-
-[[package]]
-name = "frame-system"
-version = "2.0.0-alpha.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f9c97e7168ca4cd7b2358ca30da4c5aba4a2b9b5eef45df67ca85b3dd59069a5"
dependencies = [
- "frame-support 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "frame-support",
"impl-trait-for-tuples",
"parity-scale-codec",
"serde",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-io 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-version 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-io",
+ "sp-runtime",
+ "sp-std",
+ "sp-version",
]
[[package]]
@@ -2614,10 +2530,10 @@
"sc-transaction-pool",
"sp-consensus",
"sp-consensus-aura",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
"sp-finality-grandpa",
- "sp-inherents 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-inherents",
+ "sp-runtime",
"sp-transaction-pool",
"structopt",
"substrate-build-script-utils",
@@ -2628,13 +2544,10 @@
version = "2.0.0-alpha.6"
dependencies = [
"frame-executive",
- "frame-support 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "frame-system 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "frame-support",
+ "frame-system",
"pallet-aura",
"pallet-balances",
- "pallet-contracts",
- "pallet-contracts-primitives",
- "pallet-contracts-rpc-runtime-api",
"pallet-grandpa",
"pallet-nft",
"pallet-randomness-collective-flip",
@@ -2643,18 +2556,18 @@
"pallet-transaction-payment",
"parity-scale-codec",
"serde",
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-api",
"sp-block-builder",
"sp-consensus-aura",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-inherents 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-io 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-inherents",
+ "sp-io",
"sp-offchain",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-runtime",
"sp-session",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-std",
"sp-transaction-pool",
- "sp-version 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-version",
"substrate-wasm-builder-runner",
]
@@ -2820,19 +2733,19 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9757d44df3ff0372ea313703736e69ba361b158a58b7c9677b54be11a777da81"
dependencies = [
- "frame-support 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "frame-system 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "frame-support",
+ "frame-system",
"pallet-session",
"pallet-timestamp",
"parity-scale-codec",
"serde",
- "sp-application-crypto 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-application-crypto",
"sp-consensus-aura",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-inherents 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-io 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-inherents",
+ "sp-io",
+ "sp-runtime",
+ "sp-std",
"sp-timestamp",
]
@@ -2843,55 +2756,13 @@
checksum = "b9ef08001886d3747220630337f7afbb8f1d7cbfacaa3a8a13317e1cb3e8e366"
dependencies = [
"frame-benchmarking",
- "frame-support 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "frame-system 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "parity-scale-codec",
- "serde",
- "sp-io 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "pallet-contracts"
-version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "frame-support 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "frame-system 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "pallet-contracts-primitives",
+ "frame-support",
+ "frame-system",
"parity-scale-codec",
- "parity-wasm",
- "pwasm-utils",
"serde",
- "sp-core 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-io 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-runtime 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-sandbox",
- "sp-std 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "wasmi-validation",
-]
-
-[[package]]
-name = "pallet-contracts-primitives"
-version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "parity-scale-codec",
- "sp-runtime 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-std 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
-]
-
-[[package]]
-name = "pallet-contracts-rpc-runtime-api"
-version = "0.8.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "pallet-contracts-primitives",
- "parity-scale-codec",
- "sp-api 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-runtime 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-std 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
+ "sp-io",
+ "sp-runtime",
+ "sp-std",
]
[[package]]
@@ -2900,15 +2771,15 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "09d89d58fe723cc05bdfc5f237a51e275bf58dcafb493ad68211c27ecd8f1afd"
dependencies = [
- "frame-support 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "frame-system 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "frame-support",
+ "frame-system",
"impl-trait-for-tuples",
"parity-scale-codec",
"serde",
"sp-finality-tracker",
- "sp-inherents 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-inherents",
+ "sp-runtime",
+ "sp-std",
]
[[package]]
@@ -2917,30 +2788,30 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6ed9f0fe5149552a1f1f26f4ed8999d692e0e209c54314c4f28a9bd8a1a1161d"
dependencies = [
- "frame-support 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "frame-system 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "frame-support",
+ "frame-system",
"pallet-finality-tracker",
"pallet-session",
"parity-scale-codec",
"serde",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
"sp-finality-grandpa",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-runtime",
"sp-staking",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-std",
]
[[package]]
name = "pallet-nft"
version = "2.0.0-alpha.6"
dependencies = [
- "frame-support 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "frame-system 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "frame-support",
+ "frame-system",
"parity-scale-codec",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-io 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-io",
+ "sp-runtime",
+ "sp-std",
]
[[package]]
@@ -2949,12 +2820,12 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1139a9bf489b947a677574ee8ade27c7b710ce25a07f1630b80c20af8f682f91"
dependencies = [
- "frame-support 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "frame-system 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "frame-support",
+ "frame-system",
"parity-scale-codec",
"safe-mix",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-runtime",
+ "sp-std",
]
[[package]]
@@ -2963,17 +2834,17 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4fdeb41738a79d3247b2a7fd9ce8ae5a7d9e92ca2de198e006f891240c8dcacc"
dependencies = [
- "frame-support 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "frame-system 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "frame-support",
+ "frame-system",
"impl-trait-for-tuples",
"pallet-timestamp",
"parity-scale-codec",
"serde",
- "sp-io 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-io",
+ "sp-runtime",
"sp-staking",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-trie 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-std",
+ "sp-trie",
]
[[package]]
@@ -2982,13 +2853,13 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "70b15e01796c9d2791cbd9ae2d7c9b59c8eccc3682afbb1189f6ebe7b07f4d71"
dependencies = [
- "frame-support 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "frame-system 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "frame-support",
+ "frame-system",
"parity-scale-codec",
"serde",
- "sp-io 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-io",
+ "sp-runtime",
+ "sp-std",
]
[[package]]
@@ -2998,14 +2869,14 @@
checksum = "4d9de9af5f5ed3377a6108eed436791bfe18bc3e4e2e416854d0074d31b1be00"
dependencies = [
"frame-benchmarking",
- "frame-support 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "frame-system 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "frame-support",
+ "frame-system",
"impl-trait-for-tuples",
"parity-scale-codec",
"serde",
- "sp-inherents 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-inherents",
+ "sp-runtime",
+ "sp-std",
"sp-timestamp",
]
@@ -3015,12 +2886,12 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "54768f5959e0bef53218b91f289d6807c0786d93fb90a3c7e39ab7ff9f018f23"
dependencies = [
- "frame-support 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "frame-system 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "frame-support",
+ "frame-system",
"pallet-transaction-payment-rpc-runtime-api",
"parity-scale-codec",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-runtime",
+ "sp-std",
]
[[package]]
@@ -3029,12 +2900,12 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7323ef565470b51bb79fc65d3c3a1bff0ecb317485acc66a64406309c25f1b77"
dependencies = [
- "frame-support 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "frame-support",
"parity-scale-codec",
"serde",
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-api",
+ "sp-runtime",
+ "sp-std",
]
[[package]]
@@ -3468,17 +3339,6 @@
version = "2.14.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8e86d370532557ae7573551a1ec8235a0f8d6cb276c7c9e6aa490b511c447485"
-
-[[package]]
-name = "pwasm-utils"
-version = "0.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4f7a12f176deee919f4ba55326ee17491c8b707d0987aed822682c821b660192"
-dependencies = [
- "byteorder",
- "log",
- "parity-wasm",
-]
[[package]]
name = "quick-error"
@@ -3914,12 +3774,12 @@
"sc-block-builder",
"sc-client-api",
"sc-telemetry",
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-api",
"sp-blockchain",
"sp-consensus",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-inherents 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-inherents",
+ "sp-runtime",
"sp-transaction-pool",
"tokio-executor 0.2.0-alpha.6",
]
@@ -3932,13 +3792,13 @@
dependencies = [
"parity-scale-codec",
"sc-client-api",
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-api",
"sp-block-builder",
"sp-blockchain",
"sp-consensus",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-state-machine 0.8.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-runtime",
+ "sp-state-machine",
]
[[package]]
@@ -3954,8 +3814,8 @@
"serde",
"serde_json",
"sp-chain-spec",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-runtime",
]
[[package]]
@@ -4000,13 +3860,13 @@
"sc-tracing",
"serde_json",
"sp-blockchain",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
"sp-keyring",
- "sp-panic-handler 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-state-machine 0.8.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-panic-handler",
+ "sp-runtime",
+ "sp-state-machine",
"sp-utils",
- "sp-version 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-version",
"structopt",
"substrate-prometheus-endpoint",
"time",
@@ -4032,19 +3892,19 @@
"sc-client-api",
"sc-executor",
"sc-telemetry",
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-api",
"sp-blockchain",
"sp-consensus",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-externalities 0.8.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-inherents 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-externalities",
+ "sp-inherents",
"sp-keyring",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-state-machine 0.8.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-trie 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-runtime",
+ "sp-state-machine",
+ "sp-std",
+ "sp-trie",
"sp-utils",
- "sp-version 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-version",
"substrate-prometheus-endpoint",
"tracing",
]
@@ -4067,21 +3927,21 @@
"parking_lot 0.10.2",
"sc-executor",
"sc-telemetry",
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-api",
"sp-blockchain",
"sp-consensus",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-externalities 0.8.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-inherents 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-externalities",
+ "sp-inherents",
"sp-keyring",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-state-machine 0.8.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-storage 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-runtime",
+ "sp-state-machine",
+ "sp-std",
+ "sp-storage",
"sp-transaction-pool",
- "sp-trie 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-trie",
"sp-utils",
- "sp-version 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-version",
]
[[package]]
@@ -4105,10 +3965,10 @@
"sc-state-db",
"sp-blockchain",
"sp-consensus",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-state-machine 0.8.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-trie 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-runtime",
+ "sp-state-machine",
+ "sp-trie",
"substrate-prometheus-endpoint",
]
@@ -4130,18 +3990,18 @@
"sc-consensus-slots",
"sc-keystore",
"sc-telemetry",
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-application-crypto 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-api",
+ "sp-application-crypto",
"sp-block-builder",
"sp-blockchain",
"sp-consensus",
"sp-consensus-aura",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-inherents 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-io 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-inherents",
+ "sp-io",
+ "sp-runtime",
"sp-timestamp",
- "sp-version 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-version",
]
[[package]]
@@ -4157,13 +4017,13 @@
"parking_lot 0.10.2",
"sc-client-api",
"sc-telemetry",
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-api",
"sp-blockchain",
"sp-consensus",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-inherents 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-state-machine 0.8.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-inherents",
+ "sp-runtime",
+ "sp-state-machine",
]
[[package]]
@@ -4181,15 +4041,15 @@
"parking_lot 0.10.2",
"sc-executor-common",
"sc-executor-wasmi",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-externalities 0.8.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-io 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-panic-handler 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime-interface 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-externalities",
+ "sp-io",
+ "sp-panic-handler",
+ "sp-runtime-interface",
"sp-serializer",
- "sp-trie 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-version 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-wasm-interface 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-trie",
+ "sp-version",
+ "sp-wasm-interface",
"wasmi",
]
@@ -4204,10 +4064,10 @@
"parity-scale-codec",
"parity-wasm",
"sp-allocator",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime-interface 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-runtime-interface",
"sp-serializer",
- "sp-wasm-interface 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-wasm-interface",
"wasmi",
]
@@ -4221,9 +4081,9 @@
"parity-scale-codec",
"sc-executor-common",
"sp-allocator",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime-interface 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-wasm-interface 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-runtime-interface",
+ "sp-wasm-interface",
"wasmi",
]
@@ -4251,15 +4111,15 @@
"sc-network-gossip",
"sc-telemetry",
"serde_json",
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-arithmetic 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-api",
+ "sp-arithmetic",
"sp-blockchain",
"sp-consensus",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
"sp-finality-grandpa",
"sp-finality-tracker",
- "sp-inherents 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-inherents",
+ "sp-runtime",
"sp-utils",
"substrate-prometheus-endpoint",
]
@@ -4278,7 +4138,7 @@
"sc-network",
"sc-service",
"sp-blockchain",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-runtime",
"wasm-timer",
]
@@ -4293,8 +4153,8 @@
"parking_lot 0.10.2",
"rand 0.7.3",
"serde_json",
- "sp-application-crypto 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-application-crypto",
+ "sp-core",
"subtle 2.2.2",
]
@@ -4336,12 +4196,12 @@
"slog",
"slog_derive",
"smallvec 0.6.13",
- "sp-arithmetic 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-arithmetic",
"sp-blockchain",
"sp-consensus",
"sp-consensus-babe",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-runtime",
"sp-utils",
"substrate-prometheus-endpoint",
"thiserror",
@@ -4363,7 +4223,7 @@
"log",
"lru",
"sc-network",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-runtime",
"sp-utils",
"wasm-timer",
]
@@ -4388,10 +4248,10 @@
"sc-client-api",
"sc-keystore",
"sc-network",
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-api",
+ "sp-core",
"sp-offchain",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-runtime",
"sp-utils",
"threadpool",
]
@@ -4430,18 +4290,18 @@
"sc-keystore",
"sc-rpc-api",
"serde_json",
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-api",
"sp-blockchain",
"sp-chain-spec",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
"sp-offchain",
"sp-rpc",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-runtime",
"sp-session",
- "sp-state-machine 0.8.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-state-machine",
"sp-transaction-pool",
"sp-utils",
- "sp-version 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-version",
]
[[package]]
@@ -4462,11 +4322,11 @@
"serde",
"serde_json",
"sp-chain-spec",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
"sp-rpc",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-runtime",
"sp-transaction-pool",
- "sp-version 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-version",
]
[[package]]
@@ -4482,7 +4342,7 @@
"log",
"serde",
"serde_json",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-runtime",
]
[[package]]
@@ -4521,13 +4381,13 @@
"serde",
"serde_json",
"slog",
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-application-crypto 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-api",
+ "sp-application-crypto",
"sp-blockchain",
"sp-consensus",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-io 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-io",
+ "sp-runtime",
"sp-session",
"sp-transaction-pool",
"sp-utils",
@@ -4549,7 +4409,7 @@
"parity-util-mem-derive",
"parking_lot 0.10.2",
"sc-client-api",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
]
[[package]]
@@ -4605,8 +4465,8 @@
"parking_lot 0.10.2",
"serde",
"sp-blockchain",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-runtime",
"sp-transaction-pool",
"sp-utils",
"wasm-timer",
@@ -4628,10 +4488,10 @@
"parking_lot 0.10.2",
"sc-client-api",
"sc-transaction-graph",
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-api",
"sp-blockchain",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-runtime",
"sp-transaction-pool",
"sp-utils",
"wasm-timer",
@@ -4936,24 +4796,9 @@
dependencies = [
"derive_more",
"log",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-wasm-interface 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "sp-api"
-version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "hash-db",
- "parity-scale-codec",
- "sp-api-proc-macro 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-core 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-runtime 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-state-machine 0.8.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-std 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-version 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
+ "sp-core",
+ "sp-std",
+ "sp-wasm-interface",
]
[[package]]
@@ -4964,24 +4809,12 @@
dependencies = [
"hash-db",
"parity-scale-codec",
- "sp-api-proc-macro 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-state-machine 0.8.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-version 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "sp-api-proc-macro"
-version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "blake2-rfc",
- "proc-macro-crate",
- "proc-macro2",
- "quote 1.0.3",
- "syn 1.0.17",
+ "sp-api-proc-macro",
+ "sp-core",
+ "sp-runtime",
+ "sp-state-machine",
+ "sp-std",
+ "sp-version",
]
[[package]]
@@ -4995,18 +4828,6 @@
"proc-macro2",
"quote 1.0.3",
"syn 1.0.17",
-]
-
-[[package]]
-name = "sp-application-crypto"
-version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "parity-scale-codec",
- "serde",
- "sp-core 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-io 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-std 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
]
[[package]]
@@ -5017,23 +4838,9 @@
dependencies = [
"parity-scale-codec",
"serde",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-io 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "sp-arithmetic"
-version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "integer-sqrt",
- "num-traits 0.2.11",
- "parity-scale-codec",
- "primitive-types",
- "serde",
- "sp-debug-derive 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-std 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
+ "sp-core",
+ "sp-io",
+ "sp-std",
]
[[package]]
@@ -5047,8 +4854,8 @@
"parity-scale-codec",
"primitive-types",
"serde",
- "sp-debug-derive 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-debug-derive",
+ "sp-std",
]
[[package]]
@@ -5058,10 +4865,10 @@
checksum = "70049c389c66c4c9207149e2579ce6d752788dee8c596fbda76059f2ddde968f"
dependencies = [
"parity-scale-codec",
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-inherents 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-api",
+ "sp-inherents",
+ "sp-runtime",
+ "sp-std",
]
[[package]]
@@ -5077,8 +4884,8 @@
"parking_lot 0.10.2",
"sp-block-builder",
"sp-consensus",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-state-machine 0.8.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-runtime",
+ "sp-state-machine",
]
[[package]]
@@ -5106,13 +4913,13 @@
"parity-scale-codec",
"parking_lot 0.10.2",
"serde",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-inherents 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-state-machine 0.8.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-inherents",
+ "sp-runtime",
+ "sp-state-machine",
+ "sp-std",
"sp-utils",
- "sp-version 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-version",
]
[[package]]
@@ -5122,11 +4929,11 @@
checksum = "0a5ffbc4aca29fe7a0f0c419445e34758210dba6418eeb101d60c1e15b27797a"
dependencies = [
"parity-scale-codec",
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-application-crypto 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-inherents 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-api",
+ "sp-application-crypto",
+ "sp-inherents",
+ "sp-runtime",
+ "sp-std",
"sp-timestamp",
]
@@ -5137,13 +4944,13 @@
checksum = "ac6108fbecddd95ce8151f09e8ecb0941b3eddcfeefb4c996f27a8a8b4827abd"
dependencies = [
"parity-scale-codec",
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-application-crypto 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-api",
+ "sp-application-crypto",
"sp-consensus",
"sp-consensus-vrf",
- "sp-inherents 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-inherents",
+ "sp-runtime",
+ "sp-std",
"sp-timestamp",
]
@@ -5152,52 +4959,12 @@
version = "0.8.0-alpha.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6ba3eef8ab960eb88307f1c4eda1c36dfd95dc933bd6a277d2e26a503a6e5a71"
-dependencies = [
- "parity-scale-codec",
- "schnorrkel",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "sp-core"
-version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
dependencies = [
- "base58",
- "blake2-rfc",
- "byteorder",
- "ed25519-dalek",
- "futures 0.3.4",
- "hash-db",
- "hash256-std-hasher",
- "hex",
- "impl-serde 0.3.0",
- "lazy_static",
- "libsecp256k1",
- "log",
- "num-traits 0.2.11",
"parity-scale-codec",
- "parity-util-mem",
- "parking_lot 0.10.2",
- "primitive-types",
- "rand 0.7.3",
- "regex",
"schnorrkel",
- "serde",
- "sha2",
- "sp-debug-derive 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-externalities 0.8.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-runtime-interface 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-std 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-storage 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "substrate-bip39",
- "tiny-bip39",
- "tiny-keccak",
- "twox-hash",
- "wasmi",
- "zeroize",
+ "sp-core",
+ "sp-runtime",
+ "sp-std",
]
[[package]]
@@ -5228,11 +4995,11 @@
"schnorrkel",
"serde",
"sha2",
- "sp-debug-derive 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-externalities 0.8.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime-interface 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-storage 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-debug-derive",
+ "sp-externalities",
+ "sp-runtime-interface",
+ "sp-std",
+ "sp-storage",
"substrate-bip39",
"tiny-bip39",
"tiny-keccak",
@@ -5244,16 +5011,6 @@
[[package]]
name = "sp-debug-derive"
version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "proc-macro2",
- "quote 1.0.3",
- "syn 1.0.17",
-]
-
-[[package]]
-name = "sp-debug-derive"
-version = "2.0.0-alpha.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "df968a922a9d3b3f65d37e91e30904876efce88d017d4448c4babc990a738134"
dependencies = [
@@ -5265,22 +5022,12 @@
[[package]]
name = "sp-externalities"
version = "0.8.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "environmental",
- "sp-std 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-storage 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
-]
-
-[[package]]
-name = "sp-externalities"
-version = "0.8.0-alpha.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b06b8ac80a03205205426ae9ef3200133a8ffab4f4f0eeecd3b858034f9e5b02"
dependencies = [
"environmental",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-storage 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-std",
+ "sp-storage",
]
[[package]]
@@ -5291,10 +5038,10 @@
dependencies = [
"parity-scale-codec",
"serde",
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-application-crypto 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-api",
+ "sp-application-crypto",
+ "sp-runtime",
+ "sp-std",
]
[[package]]
@@ -5304,20 +5051,8 @@
checksum = "a5f718fb1e75fd137b01b539a200cf5e3cd1e0f1d21dc55a03341d7e25c81624"
dependencies = [
"parity-scale-codec",
- "sp-inherents 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "sp-inherents"
-version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "derive_more",
- "parity-scale-codec",
- "parking_lot 0.10.2",
- "sp-core 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-std 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
+ "sp-inherents",
+ "sp-std",
]
[[package]]
@@ -5329,26 +5064,8 @@
"derive_more",
"parity-scale-codec",
"parking_lot 0.10.2",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "sp-io"
-version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "hash-db",
- "libsecp256k1",
- "log",
- "parity-scale-codec",
- "sp-core 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-externalities 0.8.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-runtime-interface 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-state-machine 0.8.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-std 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-trie 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-wasm-interface 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
+ "sp-core",
+ "sp-std",
]
[[package]]
@@ -5361,13 +5078,13 @@
"libsecp256k1",
"log",
"parity-scale-codec",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-externalities 0.8.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime-interface 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-state-machine 0.8.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-trie 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-wasm-interface 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-externalities",
+ "sp-runtime-interface",
+ "sp-state-machine",
+ "sp-std",
+ "sp-trie",
+ "sp-wasm-interface",
]
[[package]]
@@ -5377,8 +5094,8 @@
checksum = "9f71e65eb13d8a4d320d3785558ac8fc12f8b2bdbfc5268c0e8a5a143d68686e"
dependencies = [
"lazy_static",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-runtime",
"strum",
]
@@ -5388,17 +5105,8 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6dfc02ea51f7abe7e8999658a8a41693426f14e66cff6cc5af989888289ad0fc"
dependencies = [
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "sp-panic-handler"
-version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "backtrace",
- "log",
+ "sp-api",
+ "sp-runtime",
]
[[package]]
@@ -5418,28 +5126,7 @@
checksum = "9d29a58ef51317f96eec408b40c604ccfe8c7c3b9ecc2636e2a9c84a79fae53a"
dependencies = [
"serde",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "sp-runtime"
-version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "hash256-std-hasher",
- "impl-trait-for-tuples",
- "log",
- "parity-scale-codec",
- "parity-util-mem",
- "paste",
- "rand 0.7.3",
- "serde",
- "sp-application-crypto 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-arithmetic 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-core 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-inherents 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-io 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-std 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
+ "sp-core",
]
[[package]]
@@ -5456,26 +5143,12 @@
"paste",
"rand 0.7.3",
"serde",
- "sp-application-crypto 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-arithmetic 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-inherents 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-io 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "sp-runtime-interface"
-version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "parity-scale-codec",
- "primitive-types",
- "sp-externalities 0.8.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-runtime-interface-proc-macro 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-std 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-wasm-interface 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "static_assertions",
+ "sp-application-crypto",
+ "sp-arithmetic",
+ "sp-core",
+ "sp-inherents",
+ "sp-io",
+ "sp-std",
]
[[package]]
@@ -5486,28 +5159,16 @@
dependencies = [
"parity-scale-codec",
"primitive-types",
- "sp-externalities 0.8.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime-interface-proc-macro 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-wasm-interface 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-externalities",
+ "sp-runtime-interface-proc-macro",
+ "sp-std",
+ "sp-wasm-interface",
"static_assertions",
]
[[package]]
name = "sp-runtime-interface-proc-macro"
version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "Inflector",
- "proc-macro-crate",
- "proc-macro2",
- "quote 1.0.3",
- "syn 1.0.17",
-]
-
-[[package]]
-name = "sp-runtime-interface-proc-macro"
-version = "2.0.0-alpha.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "609529717f6c9cdd5bb6329c4ca9ddb1d36f698bd1f5dd2bdf0e94c064d7cc5b"
dependencies = [
@@ -5516,19 +5177,6 @@
"proc-macro2",
"quote 1.0.3",
"syn 1.0.17",
-]
-
-[[package]]
-name = "sp-sandbox"
-version = "0.8.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "parity-scale-codec",
- "sp-core 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-io 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-std 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-wasm-interface 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "wasmi",
]
[[package]]
@@ -5547,10 +5195,10 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6fca3ff8ddd14c5928536483d4b393bb795d55dcb5b576b1dceb3f5829216c76"
dependencies = [
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-api",
+ "sp-core",
+ "sp-runtime",
+ "sp-std",
]
[[package]]
@@ -5560,27 +5208,8 @@
checksum = "61d7105e78848b8a8f6af3539a0cf7d9627b78a8776f61f43769da6406937ea9"
dependencies = [
"parity-scale-codec",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "sp-state-machine"
-version = "0.8.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "hash-db",
- "log",
- "num-traits 0.2.11",
- "parity-scale-codec",
- "parking_lot 0.10.2",
- "rand 0.7.3",
- "sp-core 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-externalities 0.8.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-panic-handler 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-trie 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "trie-db",
- "trie-root",
+ "sp-runtime",
+ "sp-std",
]
[[package]]
@@ -5595,10 +5224,10 @@
"parity-scale-codec",
"parking_lot 0.10.2",
"rand 0.7.3",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-externalities 0.8.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-panic-handler 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-trie 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-externalities",
+ "sp-panic-handler",
+ "sp-trie",
"trie-db",
"trie-root",
]
@@ -5606,24 +5235,8 @@
[[package]]
name = "sp-std"
version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-
-[[package]]
-name = "sp-std"
-version = "2.0.0-alpha.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eca806523d5df8082c89da042e31292f0c8f6e6ad9c3cfc312edfffde6a08490"
-
-[[package]]
-name = "sp-storage"
-version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "impl-serde 0.2.3",
- "serde",
- "sp-debug-derive 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-std 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
-]
[[package]]
name = "sp-storage"
@@ -5633,8 +5246,8 @@
dependencies = [
"impl-serde 0.2.3",
"serde",
- "sp-debug-derive 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-debug-derive",
+ "sp-std",
]
[[package]]
@@ -5645,10 +5258,10 @@
dependencies = [
"impl-trait-for-tuples",
"parity-scale-codec",
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-inherents 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-api",
+ "sp-inherents",
+ "sp-runtime",
+ "sp-std",
"wasm-timer",
]
@@ -5663,36 +5276,22 @@
"log",
"parity-scale-codec",
"serde",
- "sp-api 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-api",
+ "sp-runtime",
"sp-utils",
]
[[package]]
name = "sp-trie"
version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "hash-db",
- "memory-db",
- "parity-scale-codec",
- "sp-core 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-std 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "trie-db",
- "trie-root",
-]
-
-[[package]]
-name = "sp-trie"
-version = "2.0.0-alpha.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4194817027eb92525e9279ec651160d709340d74b707f7648654c8eb2a626be3"
dependencies = [
"hash-db",
"memory-db",
"parity-scale-codec",
- "sp-core 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-core",
+ "sp-std",
"trie-db",
"trie-root",
]
@@ -5707,18 +5306,6 @@
"futures-core",
"lazy_static",
"prometheus",
-]
-
-[[package]]
-name = "sp-version"
-version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "impl-serde 0.2.3",
- "parity-scale-codec",
- "serde",
- "sp-runtime 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "sp-std 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
]
[[package]]
@@ -5730,19 +5317,8 @@
"impl-serde 0.2.3",
"parity-scale-codec",
"serde",
- "sp-runtime 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "sp-wasm-interface"
-version = "2.0.0-alpha.6"
-source = "git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6#67f354f57e738fa575775f7fa0fb903e8972182b"
-dependencies = [
- "impl-trait-for-tuples",
- "parity-scale-codec",
- "sp-std 2.0.0-alpha.6 (git+https://github.com/paritytech/substrate.git?tag=v2.0.0-alpha.6)",
- "wasmi",
+ "sp-runtime",
+ "sp-std",
]
[[package]]
@@ -5753,7 +5329,7 @@
dependencies = [
"impl-trait-for-tuples",
"parity-scale-codec",
- "sp-std 2.0.0-alpha.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sp-std",
"wasmi",
]
Dockerfilediffbeforeafterboth--- a/Dockerfile
+++ b/Dockerfile
@@ -3,7 +3,7 @@
FROM phusion/baseimage:0.10.2 as builder
LABEL maintainer="gz@usetech.com"
-ENV WASM_TOOLCHAIN=nightly
+ENV WASM_TOOLCHAIN=nightly-2020-05-01
ARG PROFILE=release
@@ -19,9 +19,10 @@
RUN curl https://sh.rustup.rs -sSf | sh -s -- -y && \
export PATH="$PATH:$HOME/.cargo/bin" && \
+ rustup toolchain uninstall $(rustup toolchain list) && \
+ rustup default 1.44.0 && \
rustup toolchain install $WASM_TOOLCHAIN && \
rustup target add wasm32-unknown-unknown --toolchain $WASM_TOOLCHAIN && \
- rustup default stable && \
rustup target list --installed && \
rustup show && \
cargo build "--$PROFILE"
README.mddiffbeforeafterboth--- a/README.md
+++ b/README.md
@@ -8,31 +8,39 @@
## Building
-Install Rust:
+Building NFT chain requires special versions of Rust and toolchain. We don't use the most recent versions of everything so that we can keep the builds stable.
+
+1. Install Rust:
```bash
curl https://sh.rustup.rs -sSf | sh
-rustup default nightly
sudo apt-get install libssl-dev pkg-config libclang-dev clang
+```
+
+2. Remove all installed toolchains with `rustup toolchain list` and `rustup toolchain uninstall <toolchain>`.
+
+3. Install Rust Toolchain 1.44.0:
+```bash
+rustup install 1.44.0
```
-Install required tools:
-
+4. Make it default (actual toochain version may be different, so do a `rustup toolchain list` first)
```bash
-./scripts/init.sh
+rustup toolchain list
+rustup default 1.44.0-x86_64-unknown-linux-gnu
```
-Build the WebAssembly binary:
+5. Install nightly toolchain and add wasm target for it:
```bash
-./scripts/build.sh
+rustup toolchain install nightly-2020-05-01
+rustup target add wasm32-unknown-unknown --toolchain nightly-2020-05-01-x86_64-unknown-linux-gnu
```
-
-Build all native code:
+6. Build:
```bash
-cargo build --release
+cargo build
```
## Run
node/Cargo.tomldiffbeforeafterboth--- a/node/Cargo.toml
+++ b/node/Cargo.toml
@@ -1,7 +1,7 @@
[package]
authors = ['Anonymous']
build = 'build.rs'
-description = 'Substrate Node template'
+description = 'Substrate Node nft'
edition = '2018'
homepage = 'https://substrate.dev'
license = 'Unlicense'
@@ -71,7 +71,6 @@
[dependencies.sp-transaction-pool]
version = '2.0.0-alpha.6'
-
[build-dependencies.substrate-build-script-utils]
version = '2.0.0-alpha.6'
node/src/chain_spec.rsdiffbeforeafterboth--- a/node/src/chain_spec.rs
+++ b/node/src/chain_spec.rs
@@ -8,8 +8,6 @@
use sp_runtime::traits::{Verify, IdentifyAccount};
use sc_service::ChainType;
-use nft_runtime::{ContractsConfig, ContractsSchedule};
-
// Note this is the URL for the telemetry server
//const STAGING_TELEMETRY_URL: &str = "wss://telemetry.polkadot.io/submit/";
@@ -113,12 +111,6 @@
balances: Some(BalancesConfig {
balances: endowed_accounts.iter().cloned().map(|k|(k, 1 << 60)).collect(),
}),
- contracts: Some(ContractsConfig {
- current_schedule: ContractsSchedule {
- // enable_println,
- ..Default::default()
- },
- }),
aura: Some(AuraConfig {
authorities: initial_authorities.iter().map(|x| (x.0.clone())).collect(),
}),
node/src/service.rsdiffbeforeafterboth--- a/node/src/service.rs
+++ b/node/src/service.rs
@@ -30,7 +30,7 @@
let inherent_data_providers = sp_inherents::InherentDataProviders::new();
let builder = sc_service::ServiceBuilder::new_full::<
- nft_runtime::opaque::Block, nft_runtime::RuntimeApi, crate::service::Executor
+ nft_runtime::opaque::Block, nft_runtime::RuntimeApi, crate::service::Executor
>($config)?
.with_select_chain(|_config, backend| {
Ok(sc_client::LongestChain::new(backend.clone()))
pallets/nft/Cargo.tomldiffbeforeafterboth--- a/pallets/nft/Cargo.toml
+++ b/pallets/nft/Cargo.toml
@@ -1,11 +1,11 @@
[package]
-authors = ['https://usetech.com/blockchain']
-description = 'NFT pallet'
+authors = ['Anonymous']
+description = 'FRAME pallet nft'
edition = '2018'
-homepage = 'https://usetech.com/blockchain'
+homepage = 'https://substrate.dev'
license = 'Unlicense'
name = 'pallet-nft'
-repository = 'https://github.com/usetech-llc/nft_parachain/'
+repository = 'https://github.com/paritytech/substrate/'
version = '2.0.0-alpha.6'
[package.metadata.docs.rs]
@@ -32,7 +32,6 @@
[dependencies.frame-system]
default-features = false
version = '2.0.0-alpha.6'
-
[dev-dependencies.sp-core]
default-features = false
version = '2.0.0-alpha.6'
@@ -41,6 +40,8 @@
default-features = false
version = '2.0.0-alpha.6'
+
+
[features]
default = ['std']
std = [
pallets/nft/src/lib.rsdiffbeforeafterboth--- a/pallets/nft/src/lib.rs
+++ b/pallets/nft/src/lib.rs
@@ -1,5 +1,6 @@
#![cfg_attr(not(feature = "std"), no_std)]
+use codec::{Decode, Encode};
/// A FRAME pallet template with necessary imports
/// Feel free to remove or edit this file as needed.
@@ -8,10 +9,7 @@
/// For more guidance on Substrate FRAME, see the example pallet
/// https://github.com/paritytech/substrate/blob/master/frame/example/src/lib.rs
-
-use codec::{Decode, Encode};
-
-use frame_support::{decl_module, decl_storage, decl_event, decl_error, dispatch::DispatchResult, ensure};
+use frame_support::{decl_event, decl_module, decl_storage, dispatch::DispatchResult, ensure};
use frame_system::{self as system, ensure_signed};
use sp_runtime::sp_std::prelude::Vec;
@@ -26,9 +24,6 @@
pub struct CollectionType<AccountId> {
pub owner: AccountId,
pub next_item_id: u64,
- pub name: Vec<u16>, // 64 include null escape char
- pub description: Vec<u16>, // 256 include null escape char
- pub token_prefix: Vec<u8>, // 16 include null escape char
pub custom_data_size: u32,
}
@@ -49,32 +44,35 @@
/// The pallet's configuration trait.
pub trait Trait: system::Trait {
- // Add other types and constants required to configure this pallet.
+ // Add other types and constants required to configure this pallet.
- /// The overarching event type.
- type Event: From<Event<Self>> + Into<<Self as system::Trait>::Event>;
+ /// The overarching event type.
+ type Event: From<Event<Self>> + Into<<Self as system::Trait>::Event>;
}
// This pallet's storage items.
decl_storage! {
- // It is important to update your storage name so that your pallet's
- // storage items are isolated from other pallets.
+ // It is important to update your storage name so that your pallet's
+ // storage items are isolated from other pallets.
trait Store for Module<T: Trait> as Nft {
/// Next available collection ID
pub NextCollectionID get(fn next_collection_id): u64;
- pub Collection get(fn collection): map hasher(identity) u64 => CollectionType<T::AccountId>;
- pub AdminList get(fn admin_list_collection): map hasher(identity) u64 => Vec<T::AccountId>;
+ pub Collection get(collection): map hasher(identity) u64 => CollectionType<T::AccountId>;
+ //pub Collection get(collection): map hasher(identity) u64 => CollectionType<T::AccountId>;
+
+ pub AdminList get(admin_list_collection): map hasher(identity) u64 => Vec<T::AccountId>;
+
/// Balance owner per collection map
- pub Balance get(fn balance_count): map hasher(blake2_128_concat) (u64, T::AccountId) => u64;
- pub ApprovedList get(fn approved): map hasher(blake2_128_concat) (u64, u64) => Vec<T::AccountId>;
+ pub Balance get(balance_count): map hasher(blake2_128_concat) (u64, T::AccountId) => u64;
+ pub ApprovedList get(approved): map hasher(blake2_128_concat) (u64, u64) => Vec<T::AccountId>;
- pub ItemList get(fn item_id): map hasher(blake2_128_concat) (u64, u64) => NftItemType<T::AccountId>;
- pub ItemListIndex get(fn item_index): map hasher(blake2_128_concat) u64 => u64;
+ pub ItemList get(item_id): map hasher(blake2_128_concat) (u64, u64) => NftItemType<T::AccountId>;
+ // pub ItemList get(item_id): map hasher(blake2_128_concat) (u64, u64) => NftItemType<T::AccountId>;
- pub AddressTokens get(fn address_tokens): map hasher(blake2_128_concat) (u64, T::AccountId) => Vec<u64>;
-
+ pub ItemListIndex get(item_index): map hasher(blake2_128_concat) u64 => u64;
+ // pub ItemListIndex get(item_index): map hasher(blake2_128_concat) u64 => u64;
}
}
@@ -84,21 +82,9 @@
where
AccountId = <T as system::Trait>::AccountId,
{
- Created(u64, AccountId),
- ItemCreated(u64),
- ItemDestroyed(u64, u64),
+ Created(u32, AccountId),
}
);
-
-// The pallet's errors
-decl_error! {
- pub enum Error for Module<T: Trait> {
- /// Value was None
- NoneValue,
- /// Value reached maximum and cannot be incremented further
- StorageOverflow,
- }
-}
// The pallet's dispatchable functions.
decl_module! {
@@ -109,6 +95,10 @@
// this is needed only if you are using events in your pallet
fn deposit_event() = default;
+ // Initializing events
+ // this is needed only if you are using events in your module
+ // fn deposit_event<T>() = default;
+
// Create collection of NFT with given parameters
//
// @param customDataSz size of custom data in each collection item
@@ -118,43 +108,19 @@
//
// @param customDataSz size of custom data in each collection item
// returns collection ID
- // TODO: later versions use "#[weight = 0]"
#[weight = frame_support::weights::SimpleDispatchInfo::default()]
- pub fn create_collection( origin,
- collection_name: Vec<u16>,
- collection_description: Vec<u16>,
- token_prefix: Vec<u8>,
- custom_data_sz: u32) -> DispatchResult {
-
+ pub fn create_collection(origin, custom_data_sz: u32) -> DispatchResult {
// Anyone can create a collection
let who = ensure_signed(origin)?;
-
- // check params
- let mut name = collection_name.to_vec();
- name.push(0);
- ensure!(name.len() <= 64, "Collection name can not be longer than 63 char");
-
- let mut description = collection_description.to_vec();
- description.push(0);
- ensure!(name.len() <= 256, "Collection description can not be longer than 255 char");
-
- let mut prefix = token_prefix.to_vec();
- prefix.push(0);
- ensure!(prefix.len() <= 16, "Token prefix can not be longer than 15 char");
// Generate next collection ID
- let next_id = NextCollectionID::get()
- .checked_add(1)
- .expect("collection id error");
+ let next_id = NextCollectionID::get();
NextCollectionID::put(next_id);
// Create new collection
let new_collection = CollectionType {
- owner: who.clone(),
- name: name,
- description: description,
- token_prefix: prefix,
+ owner: who,
next_item_id: next_id,
custom_data_size: custom_data_sz,
};
@@ -162,9 +128,6 @@
// Add new collection to map
<Collection<T>>::insert(next_id, new_collection);
- // call event
- Self::deposit_event(RawEvent::Created(next_id, who.clone()));
-
Ok(())
}
@@ -283,20 +246,11 @@
owner: sender,
data: properties,
};
-
- let current_index = <ItemListIndex>::get(collection_id)
- .checked_add(1)
- .expect("Item list index id error");
-
- Self::add_token_index(collection_id, current_index, new_item.owner.clone())?;
-
+ let current_index = <ItemListIndex>::get(collection_id);
<ItemListIndex>::insert(collection_id, current_index);
<ItemList<T>>::insert((collection_id, current_index), new_item);
- // call event
- Self::deposit_event(RawEvent::ItemCreated(collection_id));
-
Ok(())
}
@@ -324,16 +278,11 @@
}
}
<ItemList<T>>::remove((collection_id, item_id));
-
- Self::remove_token_index(collection_id, item_id, item.owner.clone())?;
// update balance
let new_balance = <Balance<T>>::get((collection_id, item.owner.clone())) - 1;
<Balance<T>>::insert((collection_id, item.owner.clone()), new_balance);
- // call event
- Self::deposit_event(RawEvent::ItemDestroyed(collection_id, item_id));
-
Ok(())
}
@@ -370,13 +319,9 @@
<Balance<T>>::insert((collection_id, new_owner.clone()), balance_new_owner);
// change owner
- let old_owner = item.owner.clone();
- item.owner = new_owner.clone();
+ item.owner = new_owner;
<ItemList<T>>::insert((collection_id, item_id), item);
- // update index collection
- Self::move_token_index(collection_id, item_id, old_owner, new_owner.clone())?;
-
// reset approved list
let itm: Vec<T::AccountId> = Vec::new();
<ApprovedList<T>>::insert((collection_id, item_id), itm);
@@ -454,56 +399,5 @@
Ok(())
}
- }
-}
-
-impl<T: Trait> Module<T> {
- fn add_token_index(collection_id: u64, item_index: u64, owner: T::AccountId) -> DispatchResult {
-
- let list_exists = <AddressTokens<T>>::contains_key((collection_id, owner.clone()));
- if list_exists {
-
- let mut list = <AddressTokens<T>>::get((collection_id, owner.clone()));
- let item_contains = list.contains(&item_index.clone());
-
- if !item_contains {
- list.push(item_index.clone());
- }
-
- <AddressTokens<T>>::insert((collection_id, owner.clone()), list);
-
- } else {
-
- let mut itm = Vec::new();
- itm.push(item_index.clone());
- <AddressTokens<T>>::insert((collection_id, owner), itm);
- }
-
- Ok(())
- }
-
- fn remove_token_index(collection_id: u64, item_index: u64, owner: T::AccountId) -> DispatchResult {
-
- let list_exists = <AddressTokens<T>>::contains_key((collection_id, owner.clone()));
- if list_exists {
-
- let mut list = <AddressTokens<T>>::get((collection_id, owner.clone()));
- let item_contains = list.contains(&item_index.clone());
-
- if item_contains {
- list.retain(|&item| item != item_index);
- <AddressTokens<T>>::insert((collection_id, owner), list);
- }
- }
-
- Ok(())
- }
-
- fn move_token_index(collection_id: u64, item_index: u64, old_owner: T::AccountId, new_owner: T::AccountId) -> DispatchResult {
-
- Self::remove_token_index(collection_id, item_index, old_owner)?;
- Self::add_token_index(collection_id, item_index, new_owner)?;
-
- Ok(())
}
}
pallets/nft/src/mock.rsdiffbeforeafterboth--- a/pallets/nft/src/mock.rs
+++ b/pallets/nft/src/mock.rs
@@ -1,12 +1,7 @@
// Creating mock runtime here
use crate::{Module, Trait};
-use frame_support::{
- impl_outer_origin, parameter_types,
- weights::{
- Weight,
- constants::{ BlockExecutionWeight, ExtrinsicBaseWeight, RocksDbWeight, WEIGHT_PER_SECOND },
- }};
+use frame_support::{impl_outer_origin, parameter_types, weights::Weight};
use frame_system as system;
use sp_core::H256;
use sp_runtime::{
@@ -16,8 +11,7 @@
};
impl_outer_origin! {
- pub enum Origin for Test {
- }
+ pub enum Origin for Test {}
}
// For testing the pallet, we construct most of a mock runtime. This means
@@ -26,50 +20,42 @@
#[derive(Clone, Eq, PartialEq)]
pub struct Test;
parameter_types! {
- pub const BlockHashCount: u64 = 250;
- pub const MaximumBlockWeight: Weight = 1024;
- pub const MaximumBlockLength: u32 = 2 * 1024;
- pub const AvailableBlockRatio: Perbill = Perbill::from_percent(75);
- pub const MaximumExtrinsicWeight: Weight = 10 * WEIGHT_PER_SECOND;
+ pub const BlockHashCount: u64 = 250;
+ pub const MaximumBlockWeight: Weight = 1024;
+ pub const MaximumBlockLength: u32 = 2 * 1024;
+ pub const AvailableBlockRatio: Perbill = Perbill::from_percent(75);
}
-
impl system::Trait for Test {
- type Origin = Origin;
- type Call = ();
- type Index = u64;
- type BlockNumber = u64;
- type BaseCallFilter = ();
- type DbWeight = RocksDbWeight;
- type BlockExecutionWeight = BlockExecutionWeight;
- type Hash = H256;
- type Hashing = BlakeTwo256;
- type AccountId = u64;
- type Lookup = IdentityLookup<Self::AccountId>;
- type Header = Header;
- type Event = ();
- type BlockHashCount = BlockHashCount;
- type ExtrinsicBaseWeight = ExtrinsicBaseWeight;
- type MaximumBlockWeight = MaximumBlockWeight;
- type MaximumBlockLength = MaximumBlockLength;
- type AvailableBlockRatio = AvailableBlockRatio;
- type Version = ();
- type ModuleToIndex = ();
- type AccountData = ();
- type OnNewAccount = ();
- type OnKilledAccount = ();
+ type Origin = Origin;
+ type Call = ();
+ type Index = u64;
+ type BlockNumber = u64;
+ type Hash = H256;
+ type Hashing = BlakeTwo256;
+ type AccountId = u64;
+ type Lookup = IdentityLookup<Self::AccountId>;
+ type Header = Header;
+ type Event = ();
+ type BlockHashCount = BlockHashCount;
+ type MaximumBlockWeight = MaximumBlockWeight;
+ type MaximumBlockLength = MaximumBlockLength;
+ type AvailableBlockRatio = AvailableBlockRatio;
+ type Version = ();
+ type ModuleToIndex = ();
+ type AccountData = ();
+ type OnNewAccount = ();
+ type OnKilledAccount = ();
}
-
impl Trait for Test {
- type Event = ();
+ type Event = ();
}
-
pub type TemplateModule = Module<Test>;
// This function basically just builds a genesis storage key/value store according to
// our desired mockup.
pub fn new_test_ext() -> sp_io::TestExternalities {
- system::GenesisConfig::default()
- .build_storage::<Test>()
- .unwrap()
- .into()
+ system::GenesisConfig::default()
+ .build_storage::<Test>()
+ .unwrap()
+ .into()
}
pallets/nft/src/tests.rsdiffbeforeafterboth--- a/pallets/nft/src/tests.rs
+++ b/pallets/nft/src/tests.rs
@@ -1,19 +1,13 @@
// Tests to be written here
-
-use crate::{Error, mock::*};
-use frame_support::{assert_ok, assert_noop};
+use crate::mock::*;
+use frame_support::{assert_noop, assert_ok};
#[test]
fn create_collection_test() {
new_test_ext().execute_with(|| {
-
- let col_name1: Vec<u16> = "Test1\0".encode_utf16().collect::<Vec<u16>>();
- let col_desc1: Vec<u16> = "TestDescription1\0".encode_utf16().collect::<Vec<u16>>();
- let token_prefix1: Vec<u8> = b"token_prefix1\0".to_vec();
-
let size = 1024;
let origin1 = Origin::signed(1);
- assert_ok!(TemplateModule::create_collection(origin1.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin1.clone(), size));
assert_eq!(TemplateModule::collection(1).owner, 1);
});
}
@@ -21,15 +15,10 @@
#[test]
fn change_collection_owner() {
new_test_ext().execute_with(|| {
-
- let col_name1: Vec<u16> = "Test1\0".encode_utf16().collect::<Vec<u16>>();
- let col_desc1: Vec<u16> = "TestDescription1\0".encode_utf16().collect::<Vec<u16>>();
- let token_prefix1: Vec<u8> = b"token_prefix1\0".to_vec();
-
let size = 1024;
let origin1 = Origin::signed(1);
- assert_ok!(TemplateModule::create_collection(origin1.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin1.clone(), size));
assert_ok!(TemplateModule::change_collection_owner(
origin1.clone(),
1,
@@ -42,14 +31,10 @@
#[test]
fn destroy_collection() {
new_test_ext().execute_with(|| {
-
- let col_name1: Vec<u16> = "Test1\0".encode_utf16().collect::<Vec<u16>>();
- let col_desc1: Vec<u16> = "TestDescription1\0".encode_utf16().collect::<Vec<u16>>();
- let token_prefix1: Vec<u8> = b"token_prefix1\0".to_vec();
let size = 1024;
let origin1 = Origin::signed(1);
- assert_ok!(TemplateModule::create_collection(origin1.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin1.clone(), size));
assert_ok!(TemplateModule::destroy_collection(origin1.clone(), 1));
});
}
@@ -57,16 +42,11 @@
#[test]
fn create_item() {
new_test_ext().execute_with(|| {
-
- let col_name1: Vec<u16> = "Test1\0".encode_utf16().collect::<Vec<u16>>();
- let col_desc1: Vec<u16> = "TestDescription1\0".encode_utf16().collect::<Vec<u16>>();
- let token_prefix1: Vec<u8> = b"token_prefix1\0".to_vec();
-
let size = 1024;
let origin1 = Origin::signed(1);
let origin2 = Origin::signed(2);
- assert_ok!(TemplateModule::create_collection(origin1.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin1.clone(), size));
assert_ok!(TemplateModule::add_collection_admin(origin1.clone(), 1, 2));
assert_ok!(TemplateModule::create_item(
origin2.clone(),
@@ -82,16 +62,11 @@
#[test]
fn burn_item() {
new_test_ext().execute_with(|| {
-
- let col_name1: Vec<u16> = "Test1\0".encode_utf16().collect::<Vec<u16>>();
- let col_desc1: Vec<u16> = "TestDescription1\0".encode_utf16().collect::<Vec<u16>>();
- let token_prefix1: Vec<u8> = b"token_prefix1\0".to_vec();
-
let size = 1024;
let origin1 = Origin::signed(1);
let origin2 = Origin::signed(2);
- assert_ok!(TemplateModule::create_collection(origin1.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin1.clone(), size));
assert_ok!(TemplateModule::add_collection_admin(origin1.clone(), 1, 2));
assert_ok!(TemplateModule::create_item(
origin2.clone(),
@@ -116,19 +91,14 @@
#[test]
fn add_collection_admin() {
new_test_ext().execute_with(|| {
-
- let col_name1: Vec<u16> = "Test1\0".encode_utf16().collect::<Vec<u16>>();
- let col_desc1: Vec<u16> = "TestDescription1\0".encode_utf16().collect::<Vec<u16>>();
- let token_prefix1: Vec<u8> = b"token_prefix1\0".to_vec();
-
let size = 1024;
let origin1 = Origin::signed(1);
let origin2 = Origin::signed(2);
let origin3 = Origin::signed(3);
- assert_ok!(TemplateModule::create_collection(origin1.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
- assert_ok!(TemplateModule::create_collection(origin2.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
- assert_ok!(TemplateModule::create_collection(origin3.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin1.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin2.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin3.clone(), size));
assert_eq!(TemplateModule::collection(1).owner, 1);
assert_eq!(TemplateModule::collection(2).owner, 2);
@@ -146,19 +116,14 @@
#[test]
fn remove_collection_admin() {
new_test_ext().execute_with(|| {
-
- let col_name1: Vec<u16> = "Test1\0".encode_utf16().collect::<Vec<u16>>();
- let col_desc1: Vec<u16> = "TestDescription1\0".encode_utf16().collect::<Vec<u16>>();
- let token_prefix1: Vec<u8> = b"token_prefix1\0".to_vec();
-
let size = 1024;
let origin1 = Origin::signed(1);
let origin2 = Origin::signed(2);
let origin3 = Origin::signed(3);
- assert_ok!(TemplateModule::create_collection(origin1.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
- assert_ok!(TemplateModule::create_collection(origin2.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
- assert_ok!(TemplateModule::create_collection(origin3.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin1.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin2.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin3.clone(), size));
assert_eq!(TemplateModule::collection(1).owner, 1);
assert_eq!(TemplateModule::collection(2).owner, 2);
@@ -184,19 +149,14 @@
#[test]
fn balance_of() {
new_test_ext().execute_with(|| {
-
- let col_name1: Vec<u16> = "Test1\0".encode_utf16().collect::<Vec<u16>>();
- let col_desc1: Vec<u16> = "TestDescription1\0".encode_utf16().collect::<Vec<u16>>();
- let token_prefix1: Vec<u8> = b"token_prefix1\0".to_vec();
-
let size = 1024;
let origin1 = Origin::signed(1);
let origin2 = Origin::signed(2);
let origin3 = Origin::signed(3);
- assert_ok!(TemplateModule::create_collection(origin1.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
- assert_ok!(TemplateModule::create_collection(origin2.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
- assert_ok!(TemplateModule::create_collection(origin3.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin1.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin2.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin3.clone(), size));
assert_eq!(TemplateModule::collection(1).owner, 1);
assert_eq!(TemplateModule::collection(2).owner, 2);
@@ -221,19 +181,14 @@
#[test]
fn transfer() {
new_test_ext().execute_with(|| {
-
- let col_name1: Vec<u16> = "Test1\0".encode_utf16().collect::<Vec<u16>>();
- let col_desc1: Vec<u16> = "TestDescription1\0".encode_utf16().collect::<Vec<u16>>();
- let token_prefix1: Vec<u8> = b"token_prefix1\0".to_vec();
-
let size = 1024;
let origin1 = Origin::signed(1);
let origin2 = Origin::signed(2);
let origin3 = Origin::signed(3);
- assert_ok!(TemplateModule::create_collection(origin1.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
- assert_ok!(TemplateModule::create_collection(origin2.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
- assert_ok!(TemplateModule::create_collection(origin3.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin1.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin2.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin3.clone(), size));
assert_eq!(TemplateModule::collection(1).owner, 1);
assert_eq!(TemplateModule::collection(2).owner, 2);
@@ -259,19 +214,14 @@
#[test]
fn approve() {
new_test_ext().execute_with(|| {
-
- let col_name1: Vec<u16> = "Test1\0".encode_utf16().collect::<Vec<u16>>();
- let col_desc1: Vec<u16> = "TestDescription1\0".encode_utf16().collect::<Vec<u16>>();
- let token_prefix1: Vec<u8> = b"token_prefix1\0".to_vec();
-
let size = 1024;
let origin1 = Origin::signed(1);
let origin2 = Origin::signed(2);
let origin3 = Origin::signed(3);
- assert_ok!(TemplateModule::create_collection(origin1.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
- assert_ok!(TemplateModule::create_collection(origin2.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
- assert_ok!(TemplateModule::create_collection(origin3.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin1.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin2.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin3.clone(), size));
assert_eq!(TemplateModule::collection(1).owner, 1);
assert_eq!(TemplateModule::collection(2).owner, 2);
@@ -293,19 +243,14 @@
#[test]
fn get_approved() {
new_test_ext().execute_with(|| {
-
- let col_name1: Vec<u16> = "Test1\0".encode_utf16().collect::<Vec<u16>>();
- let col_desc1: Vec<u16> = "TestDescription1\0".encode_utf16().collect::<Vec<u16>>();
- let token_prefix1: Vec<u8> = b"token_prefix1\0".to_vec();
-
let size = 1024;
let origin1 = Origin::signed(1);
let origin2 = Origin::signed(2);
let origin3 = Origin::signed(3);
- assert_ok!(TemplateModule::create_collection(origin1.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
- assert_ok!(TemplateModule::create_collection(origin2.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
- assert_ok!(TemplateModule::create_collection(origin3.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin1.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin2.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin3.clone(), size));
assert_eq!(TemplateModule::collection(1).owner, 1);
assert_eq!(TemplateModule::collection(2).owner, 2);
@@ -327,19 +272,14 @@
#[test]
fn transfer_from() {
new_test_ext().execute_with(|| {
-
- let col_name1: Vec<u16> = "Test1\0".encode_utf16().collect::<Vec<u16>>();
- let col_desc1: Vec<u16> = "TestDescription1\0".encode_utf16().collect::<Vec<u16>>();
- let token_prefix1: Vec<u8> = b"token_prefix1\0".to_vec();
-
let size = 1024;
let origin1 = Origin::signed(1);
let origin2 = Origin::signed(2);
let origin3 = Origin::signed(3);
- assert_ok!(TemplateModule::create_collection(origin1.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
- assert_ok!(TemplateModule::create_collection(origin2.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
- assert_ok!(TemplateModule::create_collection(origin3.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin1.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin2.clone(), size));
+ assert_ok!(TemplateModule::create_collection(origin3.clone(), size));
assert_eq!(TemplateModule::collection(1).owner, 1);
assert_eq!(TemplateModule::collection(2).owner, 2);
@@ -357,55 +297,3 @@
assert_ok!(TemplateModule::transfer_from(origin1.clone(), 1, 1, 2));
});
}
-
-#[test]
-fn index_list() {
- new_test_ext().execute_with(|| {
-
- let col_name1: Vec<u16> = "Test1\0".encode_utf16().collect::<Vec<u16>>();
- let col_desc1: Vec<u16> = "TestDescription1\0".encode_utf16().collect::<Vec<u16>>();
- let token_prefix1: Vec<u8> = b"token_prefix1\0".to_vec();
-
- let size = 1024;
- let origin1 = Origin::signed(1);
- let origin2 = Origin::signed(2);
- let origin3 = Origin::signed(3);
-
- assert_ok!(TemplateModule::create_collection(origin1.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
- assert_ok!(TemplateModule::create_collection(origin2.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
- assert_ok!(TemplateModule::create_collection(origin3.clone(), col_name1.clone(), col_desc1.clone(), token_prefix1.clone(), size));
-
- assert_eq!(TemplateModule::collection(1).owner, 1);
- assert_eq!(TemplateModule::collection(2).owner, 2);
- assert_eq!(TemplateModule::collection(3).owner, 3);
-
- // create items
- assert_ok!(TemplateModule::create_item(
- origin1.clone(),
- 1,
- [1, 1, 1].to_vec()
- ));
-
- assert_ok!(TemplateModule::create_item(
- origin1.clone(),
- 1,
- [1, 1, 2].to_vec()
- ));
-
- assert_ok!(TemplateModule::create_item(
- origin1.clone(),
- 1,
- [1, 2, 3].to_vec()
- ));
-
- assert_eq!(TemplateModule::address_tokens((1, 1)).len(), 3);
-
- // burn one
- assert_ok!(TemplateModule::burn_item(origin1.clone(), 1, 2));
- assert_eq!(TemplateModule::address_tokens((1, 1)).len(), 2);
-
- // burn another one
- assert_ok!(TemplateModule::burn_item(origin1.clone(), 1, 3));
- assert_eq!(TemplateModule::address_tokens((1, 1))[0], 1);
- });
-}
\ No newline at end of file
runtime/Cargo.tomldiffbeforeafterboth--- a/runtime/Cargo.toml
+++ b/runtime/Cargo.toml
@@ -1,36 +1,3 @@
-[features]
-default = ['std']
-std = [
- 'aura/std',
- 'balances/std',
- 'codec/std',
- 'contracts/std',
- 'contracts-primitives/std',
- 'contracts-rpc-runtime-api/std',
- 'frame-executive/std',
- 'frame-support/std',
- 'grandpa/std',
- 'randomness-collective-flip/std',
- 'serde',
- 'sp-api/std',
- 'sp-block-builder/std',
- 'sp-consensus-aura/std',
- 'sp-core/std',
- 'sp-inherents/std',
- 'sp-io/std',
- 'sp-offchain/std',
- 'sp-runtime/std',
- 'sp-session/std',
- 'sp-std/std',
- 'sp-transaction-pool/std',
- 'sp-version/std',
- 'sudo/std',
- 'system/std',
- 'timestamp/std',
- 'transaction-payment/std',
- 'nft/std',
-]
-
[dependencies.aura]
default-features = false
package = 'pallet-aura'
@@ -46,27 +13,6 @@
features = ['derive']
package = 'parity-scale-codec'
version = '1.3.0'
-
-[dependencies.contracts]
-git = 'https://github.com/paritytech/substrate.git'
-default-features = false
-package = 'pallet-contracts'
-tag = 'v2.0.0-alpha.6'
-version = '2.0.0-alpha.6'
-
-[dependencies.contracts-primitives]
-git = 'https://github.com/paritytech/substrate.git'
-default-features = false
-package = 'pallet-contracts-primitives'
-tag = 'v2.0.0-alpha.6'
-version = '2.0.0-alpha.6'
-
-[dependencies.contracts-rpc-runtime-api]
-git = 'https://github.com/paritytech/substrate.git'
-default-features = false
-package = 'pallet-contracts-rpc-runtime-api'
-tag = 'v2.0.0-alpha.6'
-version = '0.8.0-alpha.6'
[dependencies.frame-executive]
default-features = false
@@ -165,18 +111,48 @@
package = 'pallet-transaction-payment'
version = '2.0.0-alpha.6'
+[build-dependencies.wasm-builder-runner]
+package = 'substrate-wasm-builder-runner'
+version = '1.0.5'
+
[package]
-authors = ['UseTech']
+authors = ['Anonymous']
edition = '2018'
-homepage = 'https://usetech.com/blockchain'
+homepage = 'https://substrate.dev'
license = 'Unlicense'
name = 'nft-runtime'
-repository = 'https://github.com/usetech-llc/nft_parachain/'
+repository = 'https://github.com/paritytech/substrate/'
version = '2.0.0-alpha.6'
[package.metadata.docs.rs]
targets = ['x86_64-unknown-linux-gnu']
-[build-dependencies.wasm-builder-runner]
-package = 'substrate-wasm-builder-runner'
-version = '1.0.5'
+[features]
+default = ['std']
+std = [
+ 'aura/std',
+ 'balances/std',
+ 'codec/std',
+ 'frame-executive/std',
+ 'frame-support/std',
+ 'grandpa/std',
+ 'randomness-collective-flip/std',
+ 'serde',
+ 'sp-api/std',
+ 'sp-block-builder/std',
+ 'sp-consensus-aura/std',
+ 'sp-core/std',
+ 'sp-inherents/std',
+ 'sp-io/std',
+ 'sp-offchain/std',
+ 'sp-runtime/std',
+ 'sp-session/std',
+ 'sp-std/std',
+ 'sp-transaction-pool/std',
+ 'sp-version/std',
+ 'sudo/std',
+ 'system/std',
+ 'timestamp/std',
+ 'transaction-payment/std',
+ 'nft/std',
+]
runtime/src/lib.rsdiffbeforeafterboth1//! The Substrate Node Template runtime. This can be compiled with `#[no_std]`, ready for Wasm.23#![cfg_attr(not(feature = "std"), no_std)]4// `construct_runtime!` does a lot of recursion and requires us to increase the limit to 256.5#![recursion_limit="256"]67// Make the WASM binary available.8#[cfg(feature = "std")]9include!(concat!(env!("OUT_DIR"), "/wasm_binary.rs"));1011use sp_std::prelude::*;12use sp_core::OpaqueMetadata;13use sp_runtime::{14 ApplyExtrinsicResult, generic, create_runtime_str, impl_opaque_keys, MultiSignature,15 transaction_validity::{TransactionValidity, TransactionSource},16};17use sp_runtime::traits::{18 BlakeTwo256, Block as BlockT, IdentityLookup, Verify, ConvertInto, IdentifyAccount19};20use sp_api::impl_runtime_apis;21use sp_consensus_aura::sr25519::AuthorityId as AuraId;22use grandpa::AuthorityList as GrandpaAuthorityList;23use grandpa::fg_primitives;24use sp_version::RuntimeVersion;25#[cfg(feature = "std")]26use sp_version::NativeVersion;27use contracts_rpc_runtime_api::ContractExecResult;2829// A few exports that help ease life for downstream crates.30#[cfg(any(feature = "std", test))]31pub use sp_runtime::BuildStorage;32pub use timestamp::Call as TimestampCall;33// pub use staking::Call as StakingCall;34pub use balances::Call as BalancesCall;35pub use sp_runtime::{Permill, Perbill};36pub use contracts::Schedule as ContractsSchedule;37pub use frame_support::{38 construct_runtime, parameter_types, traits::Randomness, weights::Weight, StorageValue,39};4041/// Importing a template pallet42pub use nft;4344/// An index to a block.45pub type BlockNumber = u32;4647/// Alias to 512-bit hash when used in the context of a transaction signature on the chain.48pub type Signature = MultiSignature;4950/// Some way of identifying an account on the chain. We intentionally make it equivalent51/// to the public key of our transaction signing scheme.52pub type AccountId = <<Signature as Verify>::Signer as IdentifyAccount>::AccountId;5354/// The type for looking up accounts. We don't expect more than 4 billion of them, but you55/// never know...56pub type AccountIndex = u32;5758/// Balance of an account.59pub type Balance = u128;6061/// Index of a transaction in the chain.62pub type Index = u32;6364/// A hash of some data used by the chain.65pub type Hash = sp_core::H256;6667/// Digest item type.68pub type DigestItem = generic::DigestItem<Hash>;6970pub const MILLICENTS: Balance = 1_000_000_000;71pub const CENTS: Balance = 1_000 * MILLICENTS;72pub const DOLLARS: Balance = 100 * CENTS;7374/// Opaque types. These are used by the CLI to instantiate machinery that don't need to know75/// the specifics of the runtime. They can then be made to be agnostic over specific formats76/// of data like extrinsics, allowing for them to continue syncing the network through upgrades77/// to even the core data structures.78pub mod opaque {79 use super::*;8081 pub use sp_runtime::OpaqueExtrinsic as UncheckedExtrinsic;8283 /// Opaque block header type.84 pub type Header = generic::Header<BlockNumber, BlakeTwo256>;85 /// Opaque block type.86 pub type Block = generic::Block<Header, UncheckedExtrinsic>;87 /// Opaque block identifier type.88 pub type BlockId = generic::BlockId<Block>;8990 impl_opaque_keys! {91 pub struct SessionKeys {92 pub aura: Aura,93 pub grandpa: Grandpa,94 }95 }96}9798/// This runtime version.99pub const VERSION: RuntimeVersion = RuntimeVersion {100 spec_name: create_runtime_str!("nft"),101 impl_name: create_runtime_str!("nft"),102 authoring_version: 1,103 spec_version: 1,104 impl_version: 1,105 apis: RUNTIME_API_VERSIONS,106 transaction_version: 1,107};108109pub const MILLISECS_PER_BLOCK: u64 = 6000;110111pub const SLOT_DURATION: u64 = MILLISECS_PER_BLOCK;112113// These time units are defined in number of blocks.114pub const MINUTES: BlockNumber = 60_000 / (MILLISECS_PER_BLOCK as BlockNumber);115pub const HOURS: BlockNumber = MINUTES * 60;116pub const DAYS: BlockNumber = HOURS * 24;117118/// The version information used to identify this runtime when compiled natively.119#[cfg(feature = "std")]120pub fn native_version() -> NativeVersion {121 NativeVersion {122 runtime_version: VERSION,123 can_author_with: Default::default(),124 }125}126127parameter_types! {128 pub const BlockHashCount: BlockNumber = 2400;129 /// We allow for 2 seconds of compute with a 6 second average block time.130 // pub const MaximumBlockWeight: Weight = 2 * WEIGHT_PER_SECOND;131 pub const MaximumBlockWeight: Weight = 1_000_000_000;132 pub const AvailableBlockRatio: Perbill = Perbill::from_percent(75);133 /// Assume 10% of weight for average on_initialize calls.134 // pub MaximumExtrinsicWeight: Weight = AvailableBlockRatio::get()135 // .saturating_sub(Perbill::from_percent(10)) * MaximumBlockWeight::get();136 pub const MaximumBlockLength: u32 = 5 * 1024 * 1024;137 pub const Version: RuntimeVersion = VERSION;138}139140impl system::Trait for Runtime {141 /// The identifier used to distinguish between accounts.142 type AccountId = AccountId;143 /// The aggregated dispatch type that is available for extrinsics.144 type Call = Call;145 /// The lookup mechanism to get account ID from whatever is passed in dispatchers.146 type Lookup = IdentityLookup<AccountId>;147 /// The index type for storing how many extrinsics an account has signed.148 type Index = Index;149 /// The index type for blocks.150 type BlockNumber = BlockNumber;151 /// The type for hashing blocks and tries.152 type Hash = Hash;153 /// The hashing algorithm used.154 type Hashing = BlakeTwo256;155 /// The header type.156 type Header = generic::Header<BlockNumber, BlakeTwo256>;157 /// The ubiquitous event type.158 type Event = Event;159 /// The ubiquitous origin type.160 type Origin = Origin;161 /// Maximum number of block number to block hash mappings to keep (oldest pruned first).162 type BlockHashCount = BlockHashCount;163 /// Maximum weight of each block.164 type MaximumBlockWeight = MaximumBlockWeight;165 /// Maximum size of all encoded transactions (in bytes) that are allowed in one block.166 type MaximumBlockLength = MaximumBlockLength;167 /// Portion of the block weight that is available to all normal transactions.168 type AvailableBlockRatio = AvailableBlockRatio;169 /// Version of the runtime.170 type Version = Version;171 /// Converts a module to the index of the module in `construct_runtime!`.172 ///173 /// This type is being generated by `construct_runtime!`.174 type ModuleToIndex = ModuleToIndex;175 /// What to do if a new account is created.176 type OnNewAccount = ();177 /// What to do if an account is fully reaped from the system.178 type OnKilledAccount = ();179 /// The data to be stored in an account.180 type AccountData = balances::AccountData<Balance>;181}182183impl aura::Trait for Runtime {184 type AuthorityId = AuraId;185}186187impl grandpa::Trait for Runtime {188 type Event = Event;189}190191parameter_types! {192 pub const MinimumPeriod: u64 = SLOT_DURATION / 2;193}194195impl timestamp::Trait for Runtime {196 /// A timestamp: milliseconds since the unix epoch.197 type Moment = u64;198 type OnTimestampSet = Aura;199 type MinimumPeriod = MinimumPeriod;200}201202impl contracts::Trait for Runtime {203 type Time = Timestamp;204 type Randomness = RandomnessCollectiveFlip;205 type Currency = Balances;206 type Event = Event;207 type DetermineContractAddress = contracts::SimpleAddressDeterminer<Runtime>;208 type TrieIdGenerator = contracts::TrieIdFromParentCounter<Runtime>;209 type RentPayment = ();210 type SignedClaimHandicap = contracts::DefaultSignedClaimHandicap;211 // type TombstoneDeposit = TombstoneDeposit;212 type StorageSizeOffset = contracts::DefaultStorageSizeOffset;213 // type RentByteFee = RentByteFee;214 // type RentDepositOffset = RentDepositOffset;215 // type SurchargeReward = SurchargeReward;216 type MaxDepth = contracts::DefaultMaxDepth;217 type MaxValueSize = contracts::DefaultMaxValueSize;218 // type WeightPrice = transaction_payment::Module<Self>;219}220221parameter_types! {222 pub const ExistentialDeposit: u128 = 500;223}224225impl balances::Trait for Runtime {226 /// The type for recording an account's balance.227 type Balance = Balance;228 /// The ubiquitous event type.229 type Event = Event;230 type DustRemoval = ();231 type ExistentialDeposit = ExistentialDeposit;232 type AccountStore = System;233}234235parameter_types! {236 pub const TransactionBaseFee: Balance = 0;237 pub const TransactionByteFee: Balance = 1;238}239240impl transaction_payment::Trait for Runtime {241 type Currency = balances::Module<Runtime>;242 type OnTransactionPayment = ();243 type TransactionBaseFee = TransactionBaseFee;244 type TransactionByteFee = TransactionByteFee;245 type WeightToFee = ConvertInto;246 type FeeMultiplierUpdate = ();247}248249impl sudo::Trait for Runtime {250 type Event = Event;251 type Call = Call;252}253254/// Used for the module template in `./template.rs`255impl nft::Trait for Runtime {256 type Event = Event;257}258259construct_runtime!(260 pub enum Runtime where261 Block = Block,262 NodeBlock = opaque::Block,263 UncheckedExtrinsic = UncheckedExtrinsic264 {265 System: system::{Module, Call, Config, Storage, Event<T>},266 RandomnessCollectiveFlip: randomness_collective_flip::{Module, Call, Storage},267 Contracts: contracts::{Module, Call, Config, Storage, Event<T>},268 Timestamp: timestamp::{Module, Call, Storage, Inherent},269 Aura: aura::{Module, Config<T>, Inherent(Timestamp)},270 Grandpa: grandpa::{Module, Call, Storage, Config, Event},271 Balances: balances::{Module, Call, Storage, Config<T>, Event<T>},272 TransactionPayment: transaction_payment::{Module, Storage},273 Sudo: sudo::{Module, Call, Config<T>, Storage, Event<T>},274 // Used for the module template in `./template.rs`275 Nft: nft::{Module, Call, Storage, Event<T>},276 }277);278279/// The address format for describing accounts.280pub type Address = AccountId;281/// Block header type as expected by this runtime.282pub type Header = generic::Header<BlockNumber, BlakeTwo256>;283/// Block type as expected by this runtime.284pub type Block = generic::Block<Header, UncheckedExtrinsic>;285/// A Block signed with a Justification286pub type SignedBlock = generic::SignedBlock<Block>;287/// BlockId type as expected by this runtime.288pub type BlockId = generic::BlockId<Block>;289/// The SignedExtension to the basic transaction logic.290pub type SignedExtra = (291 system::CheckVersion<Runtime>,292 system::CheckGenesis<Runtime>,293 system::CheckEra<Runtime>,294 system::CheckNonce<Runtime>,295 system::CheckWeight<Runtime>,296 transaction_payment::ChargeTransactionPayment<Runtime>297);298/// Unchecked extrinsic type as expected by this runtime.299pub type UncheckedExtrinsic = generic::UncheckedExtrinsic<Address, Call, Signature, SignedExtra>;300/// Extrinsic type that has already been checked.301pub type CheckedExtrinsic = generic::CheckedExtrinsic<AccountId, Call, SignedExtra>;302/// Executive: handles dispatch to the various modules.303pub type Executive = frame_executive::Executive<Runtime, Block, system::ChainContext<Runtime>, Runtime, AllModules>;304305impl_runtime_apis! {306 impl sp_api::Core<Block> for Runtime {307 fn version() -> RuntimeVersion {308 VERSION309 }310311 fn execute_block(block: Block) {312 Executive::execute_block(block)313 }314315 fn initialize_block(header: &<Block as BlockT>::Header) {316 Executive::initialize_block(header)317 }318 }319320 impl sp_api::Metadata<Block> for Runtime {321 fn metadata() -> OpaqueMetadata {322 Runtime::metadata().into()323 }324 }325326 impl sp_block_builder::BlockBuilder<Block> for Runtime {327 fn apply_extrinsic(extrinsic: <Block as BlockT>::Extrinsic) -> ApplyExtrinsicResult {328 Executive::apply_extrinsic(extrinsic)329 }330331 fn finalize_block() -> <Block as BlockT>::Header {332 Executive::finalize_block()333 }334335 fn inherent_extrinsics(data: sp_inherents::InherentData) -> Vec<<Block as BlockT>::Extrinsic> {336 data.create_extrinsics()337 }338339 fn check_inherents(340 block: Block,341 data: sp_inherents::InherentData,342 ) -> sp_inherents::CheckInherentsResult {343 data.check_extrinsics(&block)344 }345346 fn random_seed() -> <Block as BlockT>::Hash {347 RandomnessCollectiveFlip::random_seed()348 }349 }350351 impl sp_transaction_pool::runtime_api::TaggedTransactionQueue<Block> for Runtime {352 fn validate_transaction(353 source: TransactionSource,354 tx: <Block as BlockT>::Extrinsic,355 ) -> TransactionValidity {356 Executive::validate_transaction(source, tx)357 }358 }359360 impl sp_offchain::OffchainWorkerApi<Block> for Runtime {361 fn offchain_worker(header: &<Block as BlockT>::Header) {362 Executive::offchain_worker(header)363 }364 }365366 impl sp_consensus_aura::AuraApi<Block, AuraId> for Runtime {367 fn slot_duration() -> u64 {368 Aura::slot_duration()369 }370371 fn authorities() -> Vec<AuraId> {372 Aura::authorities()373 }374 }375376 impl sp_session::SessionKeys<Block> for Runtime {377 fn generate_session_keys(seed: Option<Vec<u8>>) -> Vec<u8> {378 opaque::SessionKeys::generate(seed)379 }380381 fn decode_session_keys(382 encoded: Vec<u8>,383 ) -> Option<Vec<(Vec<u8>, sp_core::crypto::KeyTypeId)>> {384 opaque::SessionKeys::decode_into_raw_public_keys(&encoded)385 }386 }387388 impl fg_primitives::GrandpaApi<Block> for Runtime {389 fn grandpa_authorities() -> GrandpaAuthorityList {390 Grandpa::grandpa_authorities()391 }392 }393394 impl contracts_rpc_runtime_api::ContractsApi<Block, AccountId, Balance, BlockNumber>395 for Runtime396 {397 fn call(398 origin: AccountId,399 dest: AccountId,400 value: Balance,401 gas_limit: u64,402 input_data: Vec<u8>,403 ) -> ContractExecResult {404 let exec_result =405 Contracts::bare_call(origin, dest.into(), value, gas_limit, input_data);406 match exec_result {407 Ok(v) => ContractExecResult::Success {408 status: v.status,409 data: v.data,410 },411 Err(_) => ContractExecResult::Error,412 }413 }414415 fn get_storage(416 address: AccountId,417 key: [u8; 32],418 ) -> contracts_primitives::GetStorageResult {419 Contracts::get_storage(address, key)420 }421422 fn rent_projection(423 address: AccountId,424 ) -> contracts_primitives::RentProjectionResult<BlockNumber> {425 Contracts::rent_projection(address)426 }427 }428429}1//! The Substrate Node Template runtime. This can be compiled with `#[no_std]`, ready for Wasm.23#![cfg_attr(not(feature = "std"), no_std)]4// `construct_runtime!` does a lot of recursion and requires us to increase the limit to 256.5#![recursion_limit = "256"]67// Make the WASM binary available.8#[cfg(feature = "std")]9include!(concat!(env!("OUT_DIR"), "/wasm_binary.rs"));1011use grandpa::fg_primitives;12use grandpa::AuthorityList as GrandpaAuthorityList;13use sp_api::impl_runtime_apis;14use sp_consensus_aura::sr25519::AuthorityId as AuraId;15use sp_core::OpaqueMetadata;16use sp_runtime::traits::{17 BlakeTwo256, Block as BlockT, ConvertInto, IdentifyAccount, IdentityLookup, Verify,18};19use sp_runtime::{20 create_runtime_str, generic, impl_opaque_keys,21 transaction_validity::{TransactionSource, TransactionValidity},22 ApplyExtrinsicResult, MultiSignature,23};24use sp_std::prelude::*;25#[cfg(feature = "std")]26use sp_version::NativeVersion;27use sp_version::RuntimeVersion;2829// A few exports that help ease life for downstream crates.30pub use balances::Call as BalancesCall;31pub use frame_support::{32 construct_runtime, parameter_types, traits::Randomness, weights::Weight, StorageValue,33};34#[cfg(any(feature = "std", test))]35pub use sp_runtime::BuildStorage;36pub use sp_runtime::{Perbill, Permill};37pub use timestamp::Call as TimestampCall;3839/// Importing a template pallet40pub use nft;4142/// An index to a block.43pub type BlockNumber = u32;4445/// Alias to 512-bit hash when used in the context of a transaction signature on the chain.46pub type Signature = MultiSignature;4748/// Some way of identifying an account on the chain. We intentionally make it equivalent49/// to the public key of our transaction signing scheme.50pub type AccountId = <<Signature as Verify>::Signer as IdentifyAccount>::AccountId;5152/// The type for looking up accounts. We don't expect more than 4 billion of them, but you53/// never know...54pub type AccountIndex = u32;5556/// Balance of an account.57pub type Balance = u128;5859/// Index of a transaction in the chain.60pub type Index = u32;6162/// A hash of some data used by the chain.63pub type Hash = sp_core::H256;6465/// Digest item type.66pub type DigestItem = generic::DigestItem<Hash>;6768/// Opaque types. These are used by the CLI to instantiate machinery that don't need to know69/// the specifics of the runtime. They can then be made to be agnostic over specific formats70/// of data like extrinsics, allowing for them to continue syncing the network through upgrades71/// to even the core data structures.72pub mod opaque {73 use super::*;7475 pub use sp_runtime::OpaqueExtrinsic as UncheckedExtrinsic;7677 /// Opaque block header type.78 pub type Header = generic::Header<BlockNumber, BlakeTwo256>;79 /// Opaque block type.80 pub type Block = generic::Block<Header, UncheckedExtrinsic>;81 /// Opaque block identifier type.82 pub type BlockId = generic::BlockId<Block>;8384 impl_opaque_keys! {85 pub struct SessionKeys {86 pub aura: Aura,87 pub grandpa: Grandpa,88 }89 }90}9192/// This runtime version.93pub const VERSION: RuntimeVersion = RuntimeVersion {94 spec_name: create_runtime_str!("nft"),95 impl_name: create_runtime_str!("nft"),96 authoring_version: 1,97 spec_version: 1,98 impl_version: 1,99 apis: RUNTIME_API_VERSIONS,100};101102pub const MILLISECS_PER_BLOCK: u64 = 6000;103104pub const SLOT_DURATION: u64 = MILLISECS_PER_BLOCK;105106// These time units are defined in number of blocks.107pub const MINUTES: BlockNumber = 60_000 / (MILLISECS_PER_BLOCK as BlockNumber);108pub const HOURS: BlockNumber = MINUTES * 60;109pub const DAYS: BlockNumber = HOURS * 24;110111/// The version information used to identify this runtime when compiled natively.112#[cfg(feature = "std")]113pub fn native_version() -> NativeVersion {114 NativeVersion {115 runtime_version: VERSION,116 can_author_with: Default::default(),117 }118}119120parameter_types! {121 pub const BlockHashCount: BlockNumber = 250;122 pub const MaximumBlockWeight: Weight = 1_000_000_000;123 pub const AvailableBlockRatio: Perbill = Perbill::from_percent(75);124 pub const MaximumBlockLength: u32 = 5 * 1024 * 1024;125 pub const Version: RuntimeVersion = VERSION;126}127128impl system::Trait for Runtime {129 /// The identifier used to distinguish between accounts.130 type AccountId = AccountId;131 /// The aggregated dispatch type that is available for extrinsics.132 type Call = Call;133 /// The lookup mechanism to get account ID from whatever is passed in dispatchers.134 type Lookup = IdentityLookup<AccountId>;135 /// The index type for storing how many extrinsics an account has signed.136 type Index = Index;137 /// The index type for blocks.138 type BlockNumber = BlockNumber;139 /// The type for hashing blocks and tries.140 type Hash = Hash;141 /// The hashing algorithm used.142 type Hashing = BlakeTwo256;143 /// The header type.144 type Header = generic::Header<BlockNumber, BlakeTwo256>;145 /// The ubiquitous event type.146 type Event = Event;147 /// The ubiquitous origin type.148 type Origin = Origin;149 /// Maximum number of block number to block hash mappings to keep (oldest pruned first).150 type BlockHashCount = BlockHashCount;151 /// Maximum weight of each block.152 type MaximumBlockWeight = MaximumBlockWeight;153 /// Maximum size of all encoded transactions (in bytes) that are allowed in one block.154 type MaximumBlockLength = MaximumBlockLength;155 /// Portion of the block weight that is available to all normal transactions.156 type AvailableBlockRatio = AvailableBlockRatio;157 /// Version of the runtime.158 type Version = Version;159 /// Converts a module to the index of the module in `construct_runtime!`.160 ///161 /// This type is being generated by `construct_runtime!`.162 type ModuleToIndex = ModuleToIndex;163 /// What to do if a new account is created.164 type OnNewAccount = ();165 /// What to do if an account is fully reaped from the system.166 type OnKilledAccount = ();167 /// The data to be stored in an account.168 type AccountData = balances::AccountData<Balance>;169}170171impl aura::Trait for Runtime {172 type AuthorityId = AuraId;173}174175impl grandpa::Trait for Runtime {176 type Event = Event;177}178179parameter_types! {180 pub const MinimumPeriod: u64 = SLOT_DURATION / 2;181}182183impl timestamp::Trait for Runtime {184 /// A timestamp: milliseconds since the unix epoch.185 type Moment = u64;186 type OnTimestampSet = Aura;187 type MinimumPeriod = MinimumPeriod;188}189190parameter_types! {191 pub const ExistentialDeposit: u128 = 500;192}193194impl balances::Trait for Runtime {195 /// The type for recording an account's balance.196 type Balance = Balance;197 /// The ubiquitous event type.198 type Event = Event;199 type DustRemoval = ();200 type ExistentialDeposit = ExistentialDeposit;201 type AccountStore = System;202}203204parameter_types! {205 pub const TransactionBaseFee: Balance = 0;206 pub const TransactionByteFee: Balance = 1;207}208209impl transaction_payment::Trait for Runtime {210 type Currency = balances::Module<Runtime>;211 type OnTransactionPayment = ();212 type TransactionBaseFee = TransactionBaseFee;213 type TransactionByteFee = TransactionByteFee;214 type WeightToFee = ConvertInto;215 type FeeMultiplierUpdate = ();216}217218impl sudo::Trait for Runtime {219 type Event = Event;220 type Call = Call;221}222223/// Used for the module template in `./template.rs`224impl nft::Trait for Runtime {225 type Event = Event;226}227228construct_runtime!(229 pub enum Runtime where230 Block = Block,231 NodeBlock = opaque::Block,232 UncheckedExtrinsic = UncheckedExtrinsic233 {234 System: system::{Module, Call, Config, Storage, Event<T>},235 RandomnessCollectiveFlip: randomness_collective_flip::{Module, Call, Storage},236 Timestamp: timestamp::{Module, Call, Storage, Inherent},237 Aura: aura::{Module, Config<T>, Inherent(Timestamp)},238 Grandpa: grandpa::{Module, Call, Storage, Config, Event},239 Balances: balances::{Module, Call, Storage, Config<T>, Event<T>},240 TransactionPayment: transaction_payment::{Module, Storage},241 Sudo: sudo::{Module, Call, Config<T>, Storage, Event<T>},242 // Used for the module template in `./template.rs`243 Nft: nft::{Module, Call, Storage, Event<T>},244 }245);246247/// The address format for describing accounts.248pub type Address = AccountId;249/// Block header type as expected by this runtime.250pub type Header = generic::Header<BlockNumber, BlakeTwo256>;251/// Block type as expected by this runtime.252pub type Block = generic::Block<Header, UncheckedExtrinsic>;253/// A Block signed with a Justification254pub type SignedBlock = generic::SignedBlock<Block>;255/// BlockId type as expected by this runtime.256pub type BlockId = generic::BlockId<Block>;257/// The SignedExtension to the basic transaction logic.258pub type SignedExtra = (259 system::CheckVersion<Runtime>,260 system::CheckGenesis<Runtime>,261 system::CheckEra<Runtime>,262 system::CheckNonce<Runtime>,263 system::CheckWeight<Runtime>,264 transaction_payment::ChargeTransactionPayment<Runtime>,265);266/// Unchecked extrinsic type as expected by this runtime.267pub type UncheckedExtrinsic = generic::UncheckedExtrinsic<Address, Call, Signature, SignedExtra>;268/// Extrinsic type that has already been checked.269pub type CheckedExtrinsic = generic::CheckedExtrinsic<AccountId, Call, SignedExtra>;270/// Executive: handles dispatch to the various modules.271pub type Executive =272 frame_executive::Executive<Runtime, Block, system::ChainContext<Runtime>, Runtime, AllModules>;273274impl_runtime_apis! {275 impl sp_api::Core<Block> for Runtime {276 fn version() -> RuntimeVersion {277 VERSION278 }279280 fn execute_block(block: Block) {281 Executive::execute_block(block)282 }283284 fn initialize_block(header: &<Block as BlockT>::Header) {285 Executive::initialize_block(header)286 }287 }288289 impl sp_api::Metadata<Block> for Runtime {290 fn metadata() -> OpaqueMetadata {291 Runtime::metadata().into()292 }293 }294295 impl sp_block_builder::BlockBuilder<Block> for Runtime {296 fn apply_extrinsic(extrinsic: <Block as BlockT>::Extrinsic) -> ApplyExtrinsicResult {297 Executive::apply_extrinsic(extrinsic)298 }299300 fn finalize_block() -> <Block as BlockT>::Header {301 Executive::finalize_block()302 }303304 fn inherent_extrinsics(data: sp_inherents::InherentData) -> Vec<<Block as BlockT>::Extrinsic> {305 data.create_extrinsics()306 }307308 fn check_inherents(309 block: Block,310 data: sp_inherents::InherentData,311 ) -> sp_inherents::CheckInherentsResult {312 data.check_extrinsics(&block)313 }314315 fn random_seed() -> <Block as BlockT>::Hash {316 RandomnessCollectiveFlip::random_seed()317 }318 }319320 impl sp_transaction_pool::runtime_api::TaggedTransactionQueue<Block> for Runtime {321 fn validate_transaction(322 source: TransactionSource,323 tx: <Block as BlockT>::Extrinsic,324 ) -> TransactionValidity {325 Executive::validate_transaction(source, tx)326 }327 }328329 impl sp_offchain::OffchainWorkerApi<Block> for Runtime {330 fn offchain_worker(header: &<Block as BlockT>::Header) {331 Executive::offchain_worker(header)332 }333 }334335 impl sp_consensus_aura::AuraApi<Block, AuraId> for Runtime {336 fn slot_duration() -> u64 {337 Aura::slot_duration()338 }339340 fn authorities() -> Vec<AuraId> {341 Aura::authorities()342 }343 }344345 impl sp_session::SessionKeys<Block> for Runtime {346 fn generate_session_keys(seed: Option<Vec<u8>>) -> Vec<u8> {347 opaque::SessionKeys::generate(seed)348 }349350 fn decode_session_keys(351 encoded: Vec<u8>,352 ) -> Option<Vec<(Vec<u8>, sp_core::crypto::KeyTypeId)>> {353 opaque::SessionKeys::decode_into_raw_public_keys(&encoded)354 }355 }356357 impl fg_primitives::GrandpaApi<Block> for Runtime {358 fn grandpa_authorities() -> GrandpaAuthorityList {359 Grandpa::grandpa_authorities()360 }361 }362}