diff --git a/.github/workflows/test-code.yml b/.github/workflows/test-code.yml index e2af28c60..a609c3c14 100644 --- a/.github/workflows/test-code.yml +++ b/.github/workflows/test-code.yml @@ -15,12 +15,25 @@ jobs: steps: - name: Freeing up more disk space run: | + sudo swapoff -a + sudo rm -f /mnt/swapfile + free -h + docker rmi $(docker image ls -aq) sudo rm -rf /usr/local/lib/android # will release about 10 GB if you don't need Android sudo rm -rf /usr/share/dotnet # will release about 20GB if you don't need .NET sudo rm -rf /opt/ghc sudo rm -rf /usr/local/share/boost - sudo rm -rf /opt/hostedtoolcache/CodeQL + sudo rm -rf /opt/hostedtoolcache sudo rm -rf "$AGENT_TOOLSDIRECTORY" + sudo apt-get remove -y 'php.*' --fix-missing + sudo apt-get remove -y '^mongodb-.*' --fix-missing + sudo apt-get remove -y '^mysql-.*' --fix-missing + sudo apt-get remove -y azure-cli google-chrome-stable firefox powershell mono-devel libgl1-mesa-dri --fix-missing + sudo apt-get remove -y google-cloud-sdk --fix-missing + sudo apt-get remove -y google-cloud-cli --fix-missing + sudo apt-get autoremove -y + sudo apt-get clean + df -h - name: Install package run: | diff --git a/Cargo.lock b/Cargo.lock index 5db3fdd97..3bc437cc2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -191,6 +191,7 @@ version = "0.1.0" dependencies = [ "bifrost-farming", "bifrost-farming-rpc-runtime-api", + "cfg-if", "clients-info", "cumulus-pallet-aura-ext", "cumulus-pallet-dmp-queue", @@ -207,7 +208,7 @@ dependencies = [ "fee", "frame-benchmarking", "frame-executive", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "frame-system-benchmarking", "frame-system-rpc-runtime-api", @@ -268,22 +269,23 @@ dependencies = [ "security", "serde", "smallvec", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-block-builder", "sp-consensus-aura", - "sp-core", - "sp-inherents", - "sp-io", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-offchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", - "sp-std", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-transaction-pool", - "sp-version", - "spacewalk-primitives", + "sp-version 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.4", "staking", "stellar-relay", "substrate-wasm-builder", + "treasury-buyout-extension", "vault-registry", "vesting-manager", "xcm", @@ -502,14 +504,14 @@ version = "0.1.0" source = "git+https://github.com/paritytech/cumulus.git?branch=polkadot-v0.9.42#f603a61ff370fc33740c9373833c3c6ba1486846" dependencies = [ "cumulus-primitives-core", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "log", "pallet-xcm", "parachains-common", "parity-scale-codec", "scale-info", - "sp-api", - "sp-std", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-wasm-builder", "xcm", "xcm-builder", @@ -687,7 +689,7 @@ source = "git+https://github.com/pendulum-chain/bifrost?branch=upgrade-v0.9.42#3 dependencies = [ "bifrost-ve-minting", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "hex-literal 0.3.4", "log", @@ -696,10 +698,10 @@ dependencies = [ "pallet-balances", "parity-scale-codec", "scale-info", - "sp-arithmetic", - "sp-core", - "sp-runtime", - "sp-std", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -712,11 +714,11 @@ dependencies = [ "node-primitives", "parity-scale-codec", "serde", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", - "sp-core", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-rpc", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -726,8 +728,8 @@ source = "git+https://github.com/pendulum-chain/bifrost?branch=upgrade-v0.9.42#3 dependencies = [ "node-primitives", "parity-scale-codec", - "sp-api", - "sp-std", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -736,7 +738,7 @@ version = "0.8.0" source = "git+https://github.com/pendulum-chain/bifrost?branch=upgrade-v0.9.42#37bd182449576ce641d0b3132eaa82ddba5bb05a" dependencies = [ "cumulus-primitives-core", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "hex-literal 0.3.4", "log", @@ -745,9 +747,9 @@ dependencies = [ "pallet-balances", "parity-scale-codec", "scale-info", - "sp-core", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "xcm", ] @@ -1239,18 +1241,18 @@ checksum = "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b" [[package]] name = "clients-info" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "scale-info", - "sp-arithmetic", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -1656,8 +1658,8 @@ dependencies = [ "sc-chain-spec", "sc-cli", "sc-service", - "sp-core", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "url", ] @@ -1677,10 +1679,10 @@ dependencies = [ "polkadot-overseer", "polkadot-primitives", "sc-client-api", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-consensus", - "sp-core", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "tracing", ] @@ -1699,16 +1701,16 @@ dependencies = [ "sc-consensus-aura", "sc-consensus-slots", "sc-telemetry", - "sp-api", - "sp-application-crypto", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-block-builder", "sp-blockchain", "sp-consensus", "sp-consensus-aura", - "sp-core", - "sp-inherents", - "sp-keystore", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-prometheus-endpoint", "tracing", ] @@ -1732,8 +1734,8 @@ dependencies = [ "schnellru", "sp-blockchain", "sp-consensus", - "sp-runtime", - "sp-trie", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-trie 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "tracing", ] @@ -1754,9 +1756,9 @@ dependencies = [ "sc-client-api", "sp-blockchain", "sp-consensus", - "sp-core", - "sp-runtime", - "sp-state-machine", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "tracing", ] @@ -1780,7 +1782,7 @@ dependencies = [ "sc-consensus", "sp-consensus", "sp-maybe-compressed-blob", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "tracing", ] @@ -1811,11 +1813,11 @@ dependencies = [ "sc-telemetry", "sc-transaction-pool", "sc-utils", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", "sp-consensus", - "sp-core", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-transaction-pool", ] @@ -1824,15 +1826,15 @@ name = "cumulus-pallet-aura-ext" version = "0.1.0" source = "git+https://github.com/paritytech/cumulus.git?branch=polkadot-v0.9.42#f603a61ff370fc33740c9373833c3c6ba1486846" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "pallet-aura", "parity-scale-codec", "scale-info", - "sp-application-crypto", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-consensus-aura", - "sp-runtime", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -1841,14 +1843,14 @@ version = "0.1.0" source = "git+https://github.com/paritytech/cumulus.git?branch=polkadot-v0.9.42#f603a61ff370fc33740c9373833c3c6ba1486846" dependencies = [ "cumulus-primitives-core", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-io", - "sp-runtime", - "sp-std", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "xcm", ] @@ -1862,22 +1864,22 @@ dependencies = [ "cumulus-primitives-core", "cumulus-primitives-parachain-inherent", "environmental", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "impl-trait-for-tuples", "log", "parity-scale-codec", "polkadot-parachain", "scale-info", - "sp-core", - "sp-externalities", - "sp-inherents", - "sp-io", - "sp-runtime", - "sp-state-machine", - "sp-std", - "sp-trie", - "sp-version", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-externalities 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-trie 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-version 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "xcm", ] @@ -1898,12 +1900,12 @@ version = "3.0.0" source = "git+https://github.com/paritytech/cumulus.git?branch=polkadot-v0.9.42#f603a61ff370fc33740c9373833c3c6ba1486846" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "pallet-session", "parity-scale-codec", - "sp-runtime", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -1912,13 +1914,13 @@ version = "0.1.0" source = "git+https://github.com/paritytech/cumulus.git?branch=polkadot-v0.9.42#f603a61ff370fc33740c9373833c3c6ba1486846" dependencies = [ "cumulus-primitives-core", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "scale-info", - "sp-io", - "sp-runtime", - "sp-std", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "xcm", ] @@ -1929,16 +1931,16 @@ source = "git+https://github.com/paritytech/cumulus.git?branch=polkadot-v0.9.42# dependencies = [ "cumulus-primitives-core", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "polkadot-runtime-common", "rand_chacha 0.3.1", "scale-info", - "sp-io", - "sp-runtime", - "sp-std", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "xcm", "xcm-executor", ] @@ -1953,10 +1955,10 @@ dependencies = [ "polkadot-parachain", "polkadot-primitives", "scale-info", - "sp-api", - "sp-runtime", - "sp-std", - "sp-trie", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-trie 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "xcm", ] @@ -1972,14 +1974,14 @@ dependencies = [ "parity-scale-codec", "sc-client-api", "scale-info", - "sp-api", - "sp-core", - "sp-inherents", - "sp-runtime", - "sp-state-machine", - "sp-std", - "sp-storage", - "sp-trie", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-storage 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-trie 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "tracing", ] @@ -1991,8 +1993,8 @@ dependencies = [ "cumulus-primitives-core", "futures", "parity-scale-codec", - "sp-inherents", - "sp-std", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-timestamp", ] @@ -2002,13 +2004,13 @@ version = "0.1.0" source = "git+https://github.com/paritytech/cumulus.git?branch=polkadot-v0.9.42#f603a61ff370fc33740c9373833c3c6ba1486846" dependencies = [ "cumulus-primitives-core", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "log", "parity-scale-codec", "polkadot-runtime-common", - "sp-io", - "sp-runtime", - "sp-std", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "xcm", "xcm-builder", "xcm-executor", @@ -2032,11 +2034,11 @@ dependencies = [ "sc-sysinfo", "sc-telemetry", "sc-tracing", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-consensus", - "sp-core", - "sp-runtime", - "sp-state-machine", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -2051,9 +2053,9 @@ dependencies = [ "parity-scale-codec", "polkadot-overseer", "sc-client-api", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", - "sp-state-machine", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", ] @@ -2086,11 +2088,11 @@ dependencies = [ "sc-service", "sc-tracing", "sc-utils", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", "sp-consensus", "sp-consensus-babe", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "tokio", "tracing", ] @@ -2114,12 +2116,12 @@ dependencies = [ "sc-service", "serde", "serde_json", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-authority-discovery", "sp-consensus-babe", - "sp-core", - "sp-state-machine", - "sp-storage", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-storage 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "tokio", "tracing", "url", @@ -2133,17 +2135,17 @@ dependencies = [ "cumulus-primitives-core", "parity-scale-codec", "polkadot-primitives", - "sp-runtime", - "sp-state-machine", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] name = "currency" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "orml-currencies", "orml-tokens 0.4.1-dev (git+https://github.com/open-web3-stack/open-runtime-module-library.git?branch=polkadot-v0.9.42)", @@ -2153,9 +2155,9 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-runtime", - "sp-std", - "spacewalk-primitives", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.4", ] [[package]] @@ -2439,7 +2441,7 @@ dependencies = [ "cumulus-primitives-utility", "frame-benchmarking", "frame-executive", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "frame-system-benchmarking", "frame-system-rpc-runtime-api", @@ -2464,18 +2466,18 @@ dependencies = [ "scale-info", "serde", "smallvec", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-block-builder", "sp-consensus-aura", - "sp-core", - "sp-inherents", - "sp-io", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-offchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", - "sp-std", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-transaction-pool", - "sp-version", + "sp-version 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-wasm-builder", "xcm", "xcm-builder", @@ -2488,16 +2490,16 @@ version = "0.1.0" source = "git+https://github.com/pendulum-chain/oracle-pallet?branch=polkadot-v0.9.42#9fda7904283d3687581392505d01a9bfd61099bc" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", "serde", "serde_json", - "sp-core", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -2506,9 +2508,9 @@ version = "0.1.0" source = "git+https://github.com/pendulum-chain/oracle-pallet?branch=polkadot-v0.9.42#9fda7904283d3687581392505d01a9bfd61099bc" dependencies = [ "dia-oracle", - "frame-support", - "sp-api", - "sp-runtime", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -2990,12 +2992,12 @@ dependencies = [ [[package]] name = "fee" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ "currency", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "oracle", "pallet-balances", @@ -3005,12 +3007,12 @@ dependencies = [ "scale-info", "security", "serde", - "sp-arithmetic", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", - "spacewalk-primitives", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.4", "staking", ] @@ -3155,6 +3157,7 @@ version = "0.1.0" dependencies = [ "bifrost-farming", "bifrost-farming-rpc-runtime-api", + "cfg-if", "clients-info", "cumulus-pallet-aura-ext", "cumulus-pallet-dmp-queue", @@ -3171,7 +3174,7 @@ dependencies = [ "fee", "frame-benchmarking", "frame-executive", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "frame-system-benchmarking", "frame-system-rpc-runtime-api", @@ -3234,22 +3237,23 @@ dependencies = [ "security", "serde", "smallvec", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-block-builder", "sp-consensus-aura", - "sp-core", - "sp-inherents", - "sp-io", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-offchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", - "sp-std", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-transaction-pool", - "sp-version", - "spacewalk-primitives", + "sp-version 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.4", "staking", "stellar-relay", "substrate-wasm-builder", + "treasury-buyout-extension", "vault-registry", "xcm", "xcm-builder", @@ -3269,8 +3273,8 @@ name = "frame-benchmarking" version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ - "frame-support", - "frame-support-procedural", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "frame-support-procedural 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "linregress", "log", @@ -3278,14 +3282,14 @@ dependencies = [ "paste", "scale-info", "serde", - "sp-api", - "sp-application-crypto", - "sp-core", - "sp-io", - "sp-runtime", - "sp-runtime-interface", - "sp-std", - "sp-storage", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime-interface 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-storage 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "static_assertions", ] @@ -3300,7 +3304,7 @@ dependencies = [ "clap", "comfy-table", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "gethostname", "handlebars", @@ -3320,18 +3324,18 @@ dependencies = [ "sc-sysinfo", "serde", "serde_json", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", - "sp-core", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-database", - "sp-externalities", - "sp-inherents", - "sp-keystore", - "sp-runtime", - "sp-state-machine", - "sp-std", - "sp-storage", - "sp-trie", + "sp-externalities 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-storage 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-trie 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", "thousands", ] @@ -3353,15 +3357,15 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-election-provider-solution-type", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "scale-info", - "sp-arithmetic", - "sp-core", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-npos-elections", - "sp-runtime", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -3369,16 +3373,16 @@ name = "frame-executive" version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "frame-try-runtime", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", - "sp-tracing", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-tracing 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -3405,14 +3409,47 @@ dependencies = [ "log", "parity-scale-codec", "serde", - "sp-core", - "sp-io", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "spinners", "substrate-rpc-client", "tokio", ] +[[package]] +name = "frame-support" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "bitflags 1.3.2", + "environmental", + "frame-metadata", + "frame-support-procedural 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "impl-trait-for-tuples", + "k256 0.11.6", + "log", + "once_cell", + "parity-scale-codec", + "paste", + "scale-info", + "serde", + "smallvec", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-core-hashing-proc-macro 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-tracing 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-weights 4.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "tt-call", +] + [[package]] name = "frame-support" version = "4.0.0-dev" @@ -3421,9 +3458,9 @@ dependencies = [ "bitflags 1.3.2", "environmental", "frame-metadata", - "frame-support-procedural", + "frame-support-procedural 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "impl-trait-for-tuples", - "k256", + "k256 0.13.2", "log", "once_cell", "parity-scale-codec", @@ -3431,21 +3468,36 @@ dependencies = [ "scale-info", "serde", "smallvec", - "sp-api", - "sp-arithmetic", - "sp-core", - "sp-core-hashing-proc-macro", - "sp-inherents", - "sp-io", - "sp-runtime", - "sp-staking", - "sp-state-machine", - "sp-std", - "sp-tracing", - "sp-weights", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core-hashing-proc-macro 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-tracing 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-weights 4.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "tt-call", ] +[[package]] +name = "frame-support-procedural" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "Inflector", + "cfg-expr", + "derive-syn-parse", + "frame-support-procedural-tools 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "itertools", + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "frame-support-procedural" version = "4.0.0-dev" @@ -3454,7 +3506,7 @@ dependencies = [ "Inflector", "cfg-expr", "derive-syn-parse", - "frame-support-procedural-tools", + "frame-support-procedural-tools 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "itertools", "proc-macro-warning", "proc-macro2", @@ -3462,18 +3514,40 @@ dependencies = [ "syn 2.0.28", ] +[[package]] +name = "frame-support-procedural-tools" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "frame-support-procedural-tools-derive 3.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "frame-support-procedural-tools" version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ - "frame-support-procedural-tools-derive", + "frame-support-procedural-tools-derive 3.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "proc-macro-crate", "proc-macro2", "quote", "syn 2.0.28", ] +[[package]] +name = "frame-support-procedural-tools-derive" +version = "3.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "frame-support-procedural-tools-derive" version = "3.0.0" @@ -3489,17 +3563,17 @@ name = "frame-system" version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "log", "parity-scale-codec", "scale-info", "serde", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", - "sp-version", - "sp-weights", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-version 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-weights 4.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -3508,13 +3582,13 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "scale-info", - "sp-core", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -3523,7 +3597,7 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "parity-scale-codec", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -3531,11 +3605,11 @@ name = "frame-try-runtime" version = "0.10.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "parity-scale-codec", - "sp-api", - "sp-runtime", - "sp-std", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -4342,14 +4416,14 @@ dependencies = [ [[package]] name = "issue" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ "base64 0.13.1", "currency", "fee", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "hex", "log", @@ -4365,12 +4439,12 @@ dependencies = [ "scale-info", "security", "serde", - "sp-arithmetic", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", - "spacewalk-primitives", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.4", "stellar-relay", "vault-registry", ] @@ -4552,6 +4626,18 @@ dependencies = [ "jsonrpsee-types", ] +[[package]] +name = "k256" +version = "0.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72c1e0b51e7ec0a97369623508396067a486bd0cbed95a2659a4b863d28cfc8b" +dependencies = [ + "cfg-if", + "ecdsa 0.14.8", + "elliptic-curve 0.12.3", + "sha2 0.10.7", +] + [[package]] name = "k256" version = "0.13.2" @@ -4583,7 +4669,7 @@ dependencies = [ "frame-benchmarking", "frame-election-provider-support", "frame-executive", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "frame-system-benchmarking", "frame-system-rpc-runtime-api", @@ -4647,24 +4733,24 @@ dependencies = [ "serde", "serde_derive", "smallvec", - "sp-api", - "sp-arithmetic", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-authority-discovery", "sp-block-builder", "sp-consensus-babe", "sp-consensus-beefy", - "sp-core", - "sp-inherents", - "sp-io", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-mmr-primitives", "sp-npos-elections", "sp-offchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", - "sp-staking", - "sp-std", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-transaction-pool", - "sp-version", + "sp-version 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "static_assertions", "substrate-wasm-builder", "xcm", @@ -4677,13 +4763,13 @@ name = "kusama-runtime-constants" version = "0.9.42" source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.42#6f991987c0b4cbbd7d4badc9ef08d83da5fefbfd" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "polkadot-primitives", "polkadot-runtime-common", "smallvec", - "sp-core", - "sp-runtime", - "sp-weights", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-weights 4.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -5574,13 +5660,13 @@ dependencies = [ "parity-scale-codec", "sc-client-api", "sc-offchain", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", "sp-consensus", "sp-consensus-beefy", - "sp-core", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-mmr-primitives", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -5592,11 +5678,11 @@ dependencies = [ "jsonrpsee", "parity-scale-codec", "serde", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", - "sp-core", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-mmr-primitives", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -5648,54 +5734,54 @@ dependencies = [ [[package]] name = "module-issue-rpc" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ "jsonrpsee", "module-issue-rpc-runtime-api", "parity-scale-codec", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] name = "module-issue-rpc-runtime-api" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "parity-scale-codec", - "sp-api", - "sp-std", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] name = "module-oracle-rpc" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ "jsonrpsee", "module-oracle-rpc-runtime-api", "parity-scale-codec", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", - "sp-runtime", - "spacewalk-primitives", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.4", ] [[package]] name = "module-oracle-rpc-runtime-api" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "parity-scale-codec", "scale-info", "serde", - "sp-api", - "sp-std", - "spacewalk-primitives", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.4", ] [[package]] @@ -5706,96 +5792,96 @@ dependencies = [ "module-oracle-rpc-runtime-api", "module-pallet-staking-rpc-runtime-api", "parity-scale-codec", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] name = "module-pallet-staking-rpc-runtime-api" version = "1.0.0" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "module-oracle-rpc-runtime-api", "parity-scale-codec", "scale-info", "serde", - "sp-api", - "sp-std", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] name = "module-redeem-rpc" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ "jsonrpsee", "module-redeem-rpc-runtime-api", "parity-scale-codec", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] name = "module-redeem-rpc-runtime-api" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "parity-scale-codec", - "sp-api", - "sp-std", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] name = "module-replace-rpc" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ "jsonrpsee", "module-replace-rpc-runtime-api", "parity-scale-codec", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] name = "module-replace-rpc-runtime-api" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "parity-scale-codec", - "sp-api", - "sp-std", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] name = "module-vault-registry-rpc" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ "jsonrpsee", "module-oracle-rpc-runtime-api", "module-vault-registry-rpc-runtime-api", "parity-scale-codec", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] name = "module-vault-registry-rpc-runtime-api" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "module-oracle-rpc-runtime-api", "parity-scale-codec", - "sp-api", - "sp-std", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6034,14 +6120,14 @@ version = "0.8.0" source = "git+https://github.com/pendulum-chain/bifrost?branch=upgrade-v0.9.42#37bd182449576ce641d0b3132eaa82ddba5bb05a" dependencies = [ "bstringify", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "scale-info", "serde", - "sp-core", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "zenlink-protocol", ] @@ -6063,13 +6149,13 @@ dependencies = [ [[package]] name = "nomination" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ "currency", "fee", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "oracle", "orml-currencies", @@ -6083,12 +6169,12 @@ dependencies = [ "scale-info", "security", "serde", - "sp-arithmetic", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", - "spacewalk-primitives", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.4", "staking", "vault-registry", ] @@ -6241,13 +6327,13 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" [[package]] name = "oracle" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ "currency", "dia-oracle", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "once_cell", "orml-oracle", @@ -6256,12 +6342,12 @@ dependencies = [ "parity-scale-codec", "scale-info", "security", - "sp-arithmetic", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", - "spacewalk-primitives", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.4", "spin 0.9.8", "staking", ] @@ -6312,15 +6398,15 @@ name = "orml-asset-registry" version = "0.4.1-dev" source = "git+https://github.com/open-web3-stack/open-runtime-module-library.git?branch=polkadot-v0.9.42#4ae0372e2c624e6acc98305564b9d395f70814c0" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "orml-traits", "pallet-xcm", "parity-scale-codec", "scale-info", "serde", - "sp-runtime", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "xcm", "xcm-builder", "xcm-executor", @@ -6331,16 +6417,16 @@ name = "orml-currencies" version = "0.4.1-dev" source = "git+https://github.com/open-web3-stack/open-runtime-module-library.git?branch=polkadot-v0.9.42#4ae0372e2c624e6acc98305564b9d395f70814c0" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "orml-traits", "orml-utilities 0.4.1-dev (git+https://github.com/open-web3-stack/open-runtime-module-library.git?branch=polkadot-v0.9.42)", "parity-scale-codec", "scale-info", "serde", - "sp-io", - "sp-runtime", - "sp-std", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6348,7 +6434,7 @@ name = "orml-currencies-allowance-extension" version = "1.0.0" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "mocktopus", "orml-currencies", @@ -6359,10 +6445,10 @@ dependencies = [ "scale-info", "serde", "sha2 0.8.2", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6370,17 +6456,17 @@ name = "orml-oracle" version = "0.4.1-dev" source = "git+https://github.com/open-web3-stack/open-runtime-module-library.git?branch=polkadot-v0.9.42#4ae0372e2c624e6acc98305564b9d395f70814c0" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "orml-traits", "orml-utilities 0.4.1-dev (git+https://github.com/open-web3-stack/open-runtime-module-library.git?branch=polkadot-v0.9.42)", "parity-scale-codec", "scale-info", "serde", - "sp-application-crypto", - "sp-io", - "sp-runtime", - "sp-std", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6388,15 +6474,15 @@ name = "orml-tokens" version = "0.4.1-dev" source = "git+https://github.com/open-web3-stack/open-runtime-module-library.git?branch=polkadot-v0.9.42#4ae0372e2c624e6acc98305564b9d395f70814c0" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "orml-traits", "parity-scale-codec", "scale-info", "serde", - "sp-arithmetic", - "sp-runtime", - "sp-std", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6404,15 +6490,15 @@ name = "orml-tokens" version = "0.4.1-dev" source = "git+https://github.com/open-web3-stack/open-runtime-module-library?rev=4ae0372e2c624e6acc98305564b9d395f70814c0#4ae0372e2c624e6acc98305564b9d395f70814c0" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "orml-traits", "parity-scale-codec", "scale-info", "serde", - "sp-arithmetic", - "sp-runtime", - "sp-std", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6420,7 +6506,7 @@ name = "orml-tokens-management-extension" version = "1.0.0" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "mocktopus", "orml-currencies", @@ -6431,11 +6517,11 @@ dependencies = [ "scale-info", "serde", "sha2 0.8.2", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", - "spacewalk-primitives", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.4", ] [[package]] @@ -6443,17 +6529,17 @@ name = "orml-traits" version = "0.4.1-dev" source = "git+https://github.com/open-web3-stack//open-runtime-module-library?branch=polkadot-v0.9.42#4ae0372e2c624e6acc98305564b9d395f70814c0" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "impl-trait-for-tuples", "num-traits", "orml-utilities 0.4.1-dev (git+https://github.com/open-web3-stack//open-runtime-module-library?branch=polkadot-v0.9.42)", "parity-scale-codec", "scale-info", "serde", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "xcm", ] @@ -6462,13 +6548,13 @@ name = "orml-utilities" version = "0.4.1-dev" source = "git+https://github.com/open-web3-stack//open-runtime-module-library?branch=polkadot-v0.9.42#4ae0372e2c624e6acc98305564b9d395f70814c0" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "parity-scale-codec", "scale-info", "serde", - "sp-io", - "sp-runtime", - "sp-std", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6476,13 +6562,13 @@ name = "orml-utilities" version = "0.4.1-dev" source = "git+https://github.com/open-web3-stack/open-runtime-module-library.git?branch=polkadot-v0.9.42#4ae0372e2c624e6acc98305564b9d395f70814c0" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "parity-scale-codec", "scale-info", "serde", - "sp-io", - "sp-runtime", - "sp-std", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6490,12 +6576,12 @@ name = "orml-xcm" version = "0.4.1-dev" source = "git+https://github.com/open-web3-stack/open-runtime-module-library.git?branch=polkadot-v0.9.42#4ae0372e2c624e6acc98305564b9d395f70814c0" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "pallet-xcm", "parity-scale-codec", "scale-info", - "sp-std", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "xcm", ] @@ -6504,11 +6590,11 @@ name = "orml-xcm-support" version = "0.4.1-dev" source = "git+https://github.com/open-web3-stack/open-runtime-module-library.git?branch=polkadot-v0.9.42#4ae0372e2c624e6acc98305564b9d395f70814c0" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "orml-traits", "parity-scale-codec", - "sp-runtime", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "xcm", "xcm-executor", ] @@ -6519,7 +6605,7 @@ version = "0.4.1-dev" source = "git+https://github.com/open-web3-stack/open-runtime-module-library.git?branch=polkadot-v0.9.42#4ae0372e2c624e6acc98305564b9d395f70814c0" dependencies = [ "cumulus-primitives-core", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "orml-traits", "orml-xcm-support", @@ -6527,9 +6613,9 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-io", - "sp-runtime", - "sp-std", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "xcm", "xcm-executor", ] @@ -6572,16 +6658,16 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "pallet-transaction-payment", "parity-scale-codec", "scale-info", "serde", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6590,13 +6676,13 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "scale-info", - "sp-core", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6604,15 +6690,15 @@ name = "pallet-aura" version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "pallet-timestamp", "parity-scale-codec", "scale-info", - "sp-application-crypto", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-consensus-aura", - "sp-runtime", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6620,15 +6706,15 @@ name = "pallet-authority-discovery" version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "pallet-session", "parity-scale-codec", "scale-info", - "sp-application-crypto", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-authority-discovery", - "sp-runtime", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6636,13 +6722,13 @@ name = "pallet-authorship" version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "impl-trait-for-tuples", "parity-scale-codec", "scale-info", - "sp-runtime", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6651,7 +6737,7 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "pallet-authorship", @@ -6659,14 +6745,14 @@ dependencies = [ "pallet-timestamp", "parity-scale-codec", "scale-info", - "sp-application-crypto", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-consensus-babe", - "sp-core", - "sp-io", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", - "sp-staking", - "sp-std", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6676,17 +6762,17 @@ source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff dependencies = [ "frame-benchmarking", "frame-election-provider-support", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "pallet-balances", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", - "sp-tracing", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-tracing 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6695,13 +6781,13 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-runtime", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6709,7 +6795,7 @@ name = "pallet-beefy" version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "pallet-authorship", "pallet-session", @@ -6717,10 +6803,10 @@ dependencies = [ "scale-info", "serde", "sp-consensus-beefy", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", - "sp-staking", - "sp-std", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6730,7 +6816,7 @@ source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff dependencies = [ "array-bytes 4.2.0", "binary-merkle-tree", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "pallet-beefy", @@ -6739,12 +6825,12 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-consensus-beefy", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6753,16 +6839,16 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "pallet-treasury", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6771,17 +6857,17 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "pallet-bounties", "pallet-treasury", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6790,7 +6876,7 @@ version = "3.0.0" source = "git+https://github.com/paritytech/cumulus.git?branch=polkadot-v0.9.42#f603a61ff370fc33740c9373833c3c6ba1486846" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "pallet-authorship", @@ -6798,9 +6884,9 @@ dependencies = [ "parity-scale-codec", "rand 0.8.5", "scale-info", - "sp-runtime", - "sp-staking", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6809,15 +6895,15 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6828,7 +6914,7 @@ dependencies = [ "bitflags 1.3.2", "environmental", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "impl-trait-for-tuples", "log", @@ -6839,11 +6925,11 @@ dependencies = [ "scale-info", "serde", "smallvec", - "sp-api", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "wasm-instrument 0.4.0", "wasmi 0.28.0", "wasmparser-nostd", @@ -6857,9 +6943,9 @@ dependencies = [ "bitflags 1.3.2", "parity-scale-codec", "scale-info", - "sp-runtime", - "sp-std", - "sp-weights", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-weights 4.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6879,14 +6965,14 @@ source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff dependencies = [ "assert_matches", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "scale-info", "serde", - "sp-io", - "sp-runtime", - "sp-std", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6895,16 +6981,16 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", "serde", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6914,19 +7000,19 @@ source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff dependencies = [ "frame-benchmarking", "frame-election-provider-support", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "pallet-election-provider-support-benchmarking", "parity-scale-codec", "rand 0.8.5", "scale-info", - "sp-arithmetic", - "sp-core", - "sp-io", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-npos-elections", - "sp-runtime", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "strum", ] @@ -6940,7 +7026,7 @@ dependencies = [ "frame-system", "parity-scale-codec", "sp-npos-elections", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6949,16 +7035,16 @@ version = "5.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-npos-elections", - "sp-runtime", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6968,15 +7054,15 @@ source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff dependencies = [ "frame-benchmarking", "frame-election-provider-support", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-io", - "sp-runtime", - "sp-staking", - "sp-std", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -6985,21 +7071,21 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "pallet-authorship", "pallet-session", "parity-scale-codec", "scale-info", - "sp-application-crypto", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-consensus-grandpa", - "sp-core", - "sp-io", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", - "sp-staking", - "sp-std", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7009,13 +7095,13 @@ source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff dependencies = [ "enumflags2", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "scale-info", - "sp-io", - "sp-runtime", - "sp-std", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7024,18 +7110,18 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "pallet-authorship", "parity-scale-codec", "scale-info", - "sp-application-crypto", - "sp-core", - "sp-io", - "sp-runtime", - "sp-staking", - "sp-std", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7044,15 +7130,15 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-keyring", - "sp-runtime", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7060,13 +7146,13 @@ name = "pallet-insecure-randomness-collective-flip" version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "safe-mix", "scale-info", - "sp-runtime", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7075,15 +7161,15 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7092,15 +7178,15 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-mmr-primitives", - "sp-runtime", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7109,14 +7195,14 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-io", - "sp-runtime", - "sp-std", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7126,15 +7212,15 @@ source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff dependencies = [ "enumflags2", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7142,10 +7228,10 @@ name = "pallet-nfts-runtime-api" version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "pallet-nfts", "parity-scale-codec", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7154,14 +7240,14 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "scale-info", - "sp-arithmetic", - "sp-core", - "sp-runtime", - "sp-std", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7169,16 +7255,16 @@ name = "pallet-nomination-pools" version = "1.0.0" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", - "sp-runtime", - "sp-staking", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7188,17 +7274,17 @@ source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff dependencies = [ "frame-benchmarking", "frame-election-provider-support", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "pallet-bags-list", "pallet-nomination-pools", "pallet-staking", "parity-scale-codec", "scale-info", - "sp-runtime", - "sp-runtime-interface", - "sp-staking", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime-interface 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7208,8 +7294,8 @@ source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff dependencies = [ "pallet-nomination-pools", "parity-scale-codec", - "sp-api", - "sp-std", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7217,16 +7303,16 @@ name = "pallet-offences" version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "pallet-balances", "parity-scale-codec", "scale-info", "serde", - "sp-runtime", - "sp-staking", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7236,7 +7322,7 @@ source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff dependencies = [ "frame-benchmarking", "frame-election-provider-support", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "pallet-babe", @@ -7248,9 +7334,9 @@ dependencies = [ "pallet-staking", "parity-scale-codec", "scale-info", - "sp-runtime", - "sp-staking", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7259,15 +7345,15 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7276,13 +7362,13 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "scale-info", - "sp-io", - "sp-runtime", - "sp-std", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7291,16 +7377,16 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-arithmetic", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7309,13 +7395,13 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "scale-info", - "sp-io", - "sp-runtime", - "sp-std", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7325,16 +7411,16 @@ source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff dependencies = [ "assert_matches", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", "serde", - "sp-arithmetic", - "sp-io", - "sp-runtime", - "sp-std", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7343,15 +7429,15 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-io", - "sp-runtime", - "sp-std", - "sp-weights", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-weights 4.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7359,20 +7445,20 @@ name = "pallet-session" version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "impl-trait-for-tuples", "log", "pallet-timestamp", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", - "sp-staking", - "sp-std", - "sp-trie", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-trie 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7381,14 +7467,14 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "pallet-session", "pallet-staking", "rand 0.8.5", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", - "sp-std", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7396,13 +7482,13 @@ name = "pallet-society" version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "rand_chacha 0.2.2", "scale-info", - "sp-runtime", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7412,7 +7498,7 @@ source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff dependencies = [ "frame-benchmarking", "frame-election-provider-support", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "pallet-authorship", @@ -7421,11 +7507,11 @@ dependencies = [ "rand_chacha 0.2.2", "scale-info", "serde", - "sp-application-crypto", - "sp-io", - "sp-runtime", - "sp-staking", - "sp-std", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7445,7 +7531,7 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "log", - "sp-arithmetic", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7454,7 +7540,7 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "parity-scale-codec", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7463,15 +7549,15 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7479,13 +7565,13 @@ name = "pallet-sudo" version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "scale-info", - "sp-io", - "sp-runtime", - "sp-std", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7494,15 +7580,15 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-inherents", - "sp-io", - "sp-runtime", - "sp-std", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-timestamp", ] @@ -7512,17 +7598,17 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "pallet-treasury", "parity-scale-codec", "scale-info", "serde", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7530,15 +7616,15 @@ name = "pallet-transaction-payment" version = "4.0.0-dev" source = "git+https://github.com/pendulum-chain/patch-pallet-vesting-transaction-storage?branch=polkadot-v0.9.42#2c1ddd4bf181040b24c28a3ace7336d45622a73d" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "scale-info", "serde", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7549,12 +7635,12 @@ dependencies = [ "jsonrpsee", "pallet-transaction-payment-rpc-runtime-api", "parity-scale-codec", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", - "sp-core", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-rpc", - "sp-runtime", - "sp-weights", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-weights 4.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7564,9 +7650,9 @@ source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff dependencies = [ "pallet-transaction-payment", "parity-scale-codec", - "sp-api", - "sp-runtime", - "sp-weights", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-weights 4.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7575,15 +7661,15 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "impl-trait-for-tuples", "pallet-balances", "parity-scale-codec", "scale-info", "serde", - "sp-runtime", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7592,13 +7678,13 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-runtime", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7607,14 +7693,14 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7623,13 +7709,13 @@ version = "4.0.0-dev" source = "git+https://github.com/pendulum-chain/patch-pallet-vesting-transaction-storage?branch=polkadot-v0.9.42#2c1ddd4bf181040b24c28a3ace7336d45622a73d" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-runtime", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7638,13 +7724,13 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "scale-info", - "sp-api", - "sp-runtime", - "sp-std", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7654,16 +7740,16 @@ source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.42#6f99 dependencies = [ "bounded-collections", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", "serde", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "xcm", "xcm-executor", ] @@ -7674,14 +7760,14 @@ version = "0.9.42" source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.42#6f991987c0b4cbbd7d4badc9ef08d83da5fefbfd" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-io", - "sp-runtime", - "sp-std", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "xcm", "xcm-builder", "xcm-executor", @@ -7693,7 +7779,7 @@ version = "0.1.0" source = "git+https://github.com/paritytech/cumulus.git?branch=polkadot-v0.9.42#f603a61ff370fc33740c9373833c3c6ba1486846" dependencies = [ "cumulus-primitives-core", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "scale-info", @@ -7704,7 +7790,7 @@ name = "parachain-staking" version = "1.7.2" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "module-pallet-staking-rpc-runtime-api", @@ -7716,13 +7802,13 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-consensus-aura", - "sp-core", - "sp-io", - "sp-runtime", - "sp-staking", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -7731,7 +7817,7 @@ version = "1.0.0" source = "git+https://github.com/paritytech/cumulus.git?branch=polkadot-v0.9.42#f603a61ff370fc33740c9373833c3c6ba1486846" dependencies = [ "cumulus-primitives-utility", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "pallet-asset-tx-payment", "pallet-assets", @@ -7742,10 +7828,10 @@ dependencies = [ "polkadot-primitives", "scale-info", "sp-consensus-aura", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-wasm-builder", "xcm", "xcm-builder", @@ -7969,19 +8055,19 @@ dependencies = [ "sc-transaction-pool", "sc-transaction-pool-api", "serde", - "sp-api", - "sp-arithmetic", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-block-builder", "sp-blockchain", "sp-consensus-aura", - "sp-core", - "sp-keystore", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-offchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", "sp-timestamp", "sp-transaction-pool", - "spacewalk-primitives", + "spacewalk-primitives 1.0.4", "substrate-build-script-utils", "substrate-frame-rpc-system", "substrate-prometheus-endpoint", @@ -7998,6 +8084,7 @@ version = "0.1.0" dependencies = [ "bifrost-farming", "bifrost-farming-rpc-runtime-api", + "clients-info", "cumulus-pallet-aura-ext", "cumulus-pallet-dmp-queue", "cumulus-pallet-parachain-system", @@ -8007,19 +8094,28 @@ dependencies = [ "cumulus-primitives-core", "cumulus-primitives-timestamp", "cumulus-primitives-utility", + "currency", "dia-oracle", "dia-oracle-runtime-api", + "fee", "frame-benchmarking", "frame-executive", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "frame-system-benchmarking", "frame-system-rpc-runtime-api", "frame-try-runtime", "hex-literal 0.3.4", + "issue", "log", + "module-issue-rpc-runtime-api", "module-oracle-rpc-runtime-api", "module-pallet-staking-rpc-runtime-api", + "module-redeem-rpc-runtime-api", + "module-replace-rpc-runtime-api", + "module-vault-registry-rpc-runtime-api", + "nomination", + "oracle", "orml-asset-registry", "orml-currencies", "orml-currencies-allowance-extension", @@ -8056,24 +8152,32 @@ dependencies = [ "paste", "polkadot-parachain", "polkadot-runtime-common", + "pooled-rewards", + "redeem", + "replace", + "reward-distribution", "runtime-common", "scale-info", + "security", "serde", "smallvec", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-block-builder", "sp-consensus-aura", - "sp-core", - "sp-inherents", - "sp-io", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-offchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", - "sp-std", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-transaction-pool", - "sp-version", - "spacewalk-primitives", + "sp-version 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.4", + "staking", + "stellar-relay", "substrate-wasm-builder", + "vault-registry", "vesting-manager", "xcm", "xcm-builder", @@ -8265,8 +8369,8 @@ dependencies = [ "polkadot-node-subsystem-util", "polkadot-primitives", "rand 0.8.5", - "sp-core", - "sp-keystore", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", "tracing-gum", ] @@ -8312,8 +8416,8 @@ dependencies = [ "sc-storage-monitor", "sc-sysinfo", "sc-tracing", - "sp-core", - "sp-io", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-keyring", "sp-maybe-compressed-blob", "substrate-build-script-utils", @@ -8343,7 +8447,7 @@ dependencies = [ "sc-consensus", "sc-executor", "sc-service", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-authority-discovery", "sp-block-builder", "sp-blockchain", @@ -8351,14 +8455,14 @@ dependencies = [ "sp-consensus-babe", "sp-consensus-beefy", "sp-consensus-grandpa", - "sp-core", - "sp-inherents", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-keyring", "sp-mmr-primitives", "sp-offchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", - "sp-storage", + "sp-storage 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-timestamp", "sp-transaction-pool", ] @@ -8378,9 +8482,9 @@ dependencies = [ "polkadot-node-subsystem", "polkadot-node-subsystem-util", "polkadot-primitives", - "sp-core", - "sp-keystore", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", "tracing-gum", ] @@ -8392,9 +8496,9 @@ source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.42#6f99 dependencies = [ "parity-scale-codec", "scale-info", - "sp-core", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -8416,8 +8520,8 @@ dependencies = [ "polkadot-node-subsystem-util", "polkadot-primitives", "sc-network", - "sp-application-crypto", - "sp-keystore", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", "tracing-gum", ] @@ -8431,8 +8535,8 @@ dependencies = [ "polkadot-node-primitives", "polkadot-primitives", "reed-solomon-novelpoly", - "sp-core", - "sp-trie", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-trie 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", ] @@ -8450,9 +8554,9 @@ dependencies = [ "rand 0.8.5", "rand_chacha 0.3.1", "sc-network", - "sp-application-crypto", - "sp-core", - "sp-keystore", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "tracing-gum", ] @@ -8491,7 +8595,7 @@ dependencies = [ "polkadot-node-subsystem", "polkadot-node-subsystem-util", "polkadot-primitives", - "sp-core", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-maybe-compressed-blob", "thiserror", "tracing-gum", @@ -8518,10 +8622,10 @@ dependencies = [ "polkadot-primitives", "sc-keystore", "schnorrkel", - "sp-application-crypto", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-consensus", "sp-consensus-slots", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", "tracing-gum", ] @@ -8561,7 +8665,7 @@ dependencies = [ "polkadot-node-subsystem-util", "polkadot-primitives", "polkadot-statement-table", - "sp-keystore", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", "tracing-gum", ] @@ -8575,7 +8679,7 @@ dependencies = [ "polkadot-node-subsystem", "polkadot-node-subsystem-util", "polkadot-primitives", - "sp-keystore", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", "tracing-gum", "wasm-timer", @@ -8664,7 +8768,7 @@ dependencies = [ "polkadot-overseer", "polkadot-primitives", "sp-blockchain", - "sp-inherents", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", "tracing-gum", ] @@ -8705,10 +8809,10 @@ dependencies = [ "polkadot-primitives", "rand 0.8.5", "slotmap", - "sp-core", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-maybe-compressed-blob", - "sp-tracing", - "sp-wasm-interface", + "sp-tracing 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-wasm-interface 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-build-script-utils", "tokio", "tracing-gum", @@ -8725,7 +8829,7 @@ dependencies = [ "polkadot-node-subsystem-util", "polkadot-overseer", "polkadot-primitives", - "sp-keystore", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", "tracing-gum", ] @@ -8747,11 +8851,11 @@ dependencies = [ "sc-executor", "sc-executor-common", "sc-executor-wasmtime", - "sp-core", - "sp-externalities", - "sp-io", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-externalities 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-maybe-compressed-blob", - "sp-tracing", + "sp-tracing 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-build-script-utils", "tempfile", "tikv-jemalloc-ctl", @@ -8787,7 +8891,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-primitives", "sc-network", - "sp-core", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", "tokio", ] @@ -8845,12 +8949,12 @@ dependencies = [ "polkadot-primitives", "schnorrkel", "serde", - "sp-application-crypto", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-consensus-babe", - "sp-core", - "sp-keystore", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-maybe-compressed-blob", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", "zstd 0.11.2+zstd.1.5.2", ] @@ -8881,7 +8985,7 @@ dependencies = [ "polkadot-statement-table", "sc-network", "smallvec", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-authority-discovery", "sp-consensus-babe", "substrate-prometheus-endpoint", @@ -8914,9 +9018,9 @@ dependencies = [ "polkadot-primitives", "prioritized-metered-channel", "rand 0.8.5", - "sp-application-crypto", - "sp-core", - "sp-keystore", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", "tracing-gum", ] @@ -8938,8 +9042,8 @@ dependencies = [ "polkadot-node-subsystem-types", "polkadot-primitives", "sc-client-api", - "sp-api", - "sp-core", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "tikv-jemalloc-ctl", "tracing-gum", ] @@ -8951,14 +9055,14 @@ source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.42#6f99 dependencies = [ "bounded-collections", "derive_more", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "parity-scale-codec", "polkadot-core-primitives", "scale-info", "serde", - "sp-core", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -8991,18 +9095,18 @@ dependencies = [ "polkadot-parachain", "scale-info", "serde", - "sp-api", - "sp-application-crypto", - "sp-arithmetic", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-authority-discovery", "sp-consensus-slots", - "sp-core", - "sp-inherents", - "sp-io", - "sp-keystore", - "sp-runtime", - "sp-staking", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -9026,13 +9130,13 @@ dependencies = [ "sc-rpc", "sc-sync-state-rpc", "sc-transaction-pool-api", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-block-builder", "sp-blockchain", "sp-consensus", "sp-consensus-babe", - "sp-keystore", - "sp-runtime", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-frame-rpc-system", "substrate-state-trie-migration-rpc", ] @@ -9046,7 +9150,7 @@ dependencies = [ "frame-benchmarking", "frame-election-provider-support", "frame-executive", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "frame-system-benchmarking", "frame-system-rpc-runtime-api", @@ -9106,24 +9210,24 @@ dependencies = [ "serde", "serde_derive", "smallvec", - "sp-api", - "sp-arithmetic", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-authority-discovery", "sp-block-builder", "sp-consensus-babe", "sp-consensus-beefy", - "sp-core", - "sp-inherents", - "sp-io", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-mmr-primitives", "sp-npos-elections", "sp-offchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", - "sp-staking", - "sp-std", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-transaction-pool", - "sp-version", + "sp-version 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "static_assertions", "substrate-wasm-builder", "xcm", @@ -9139,7 +9243,7 @@ dependencies = [ "bitvec", "frame-benchmarking", "frame-election-provider-support", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "impl-trait-for-tuples", "libsecp256k1", @@ -9164,15 +9268,15 @@ dependencies = [ "serde", "serde_derive", "slot-range-helper", - "sp-api", - "sp-core", - "sp-inherents", - "sp-io", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-npos-elections", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", - "sp-staking", - "sp-std", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "static_assertions", "xcm", ] @@ -9182,13 +9286,13 @@ name = "polkadot-runtime-constants" version = "0.9.42" source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.42#6f991987c0b4cbbd7d4badc9ef08d83da5fefbfd" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "polkadot-primitives", "polkadot-runtime-common", "smallvec", - "sp-core", - "sp-runtime", - "sp-weights", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-weights 4.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -9199,8 +9303,8 @@ dependencies = [ "bs58", "parity-scale-codec", "polkadot-primitives", - "sp-std", - "sp-tracing", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-tracing 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -9212,7 +9316,7 @@ dependencies = [ "bitvec", "derive_more", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "pallet-authority-discovery", @@ -9232,16 +9336,16 @@ dependencies = [ "rustc-hex", "scale-info", "serde", - "sp-api", - "sp-application-crypto", - "sp-core", - "sp-inherents", - "sp-io", - "sp-keystore", - "sp-runtime", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", - "sp-staking", - "sp-std", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "static_assertions", "xcm", "xcm-executor", @@ -9254,7 +9358,7 @@ source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.42#6f99 dependencies = [ "async-trait", "frame-benchmarking-cli", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system-rpc-runtime-api", "futures", "hex-literal 0.4.1", @@ -9329,7 +9433,7 @@ dependencies = [ "sc-transaction-pool", "serde", "serde_json", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-authority-discovery", "sp-block-builder", "sp-blockchain", @@ -9337,19 +9441,19 @@ dependencies = [ "sp-consensus-babe", "sp-consensus-beefy", "sp-consensus-grandpa", - "sp-core", - "sp-inherents", - "sp-io", - "sp-keystore", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-mmr-primitives", "sp-offchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", - "sp-state-machine", - "sp-storage", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-storage 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-timestamp", "sp-transaction-pool", - "sp-trie", + "sp-trie 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-prometheus-endpoint", "thiserror", "tracing-gum", @@ -9371,8 +9475,8 @@ dependencies = [ "polkadot-node-subsystem", "polkadot-node-subsystem-util", "polkadot-primitives", - "sp-keystore", - "sp-staking", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", "tracing-gum", ] @@ -9384,7 +9488,7 @@ source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.42#6f99 dependencies = [ "parity-scale-codec", "polkadot-primitives", - "sp-core", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -9440,23 +9544,23 @@ dependencies = [ [[package]] name = "pooled-rewards" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ "currency", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "parity-scale-codec", "scale-info", "serde", - "sp-arithmetic", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", - "spacewalk-primitives", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.4", ] [[package]] @@ -9901,13 +10005,13 @@ dependencies = [ [[package]] name = "redeem" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ "currency", "fee", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "hex", "oracle", @@ -9921,12 +10025,12 @@ dependencies = [ "scale-info", "security", "serde", - "sp-arithmetic", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", - "spacewalk-primitives", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.4", "stellar-relay", "vault-registry", ] @@ -10063,13 +10167,13 @@ dependencies = [ [[package]] name = "replace" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ "currency", "fee", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "hex", "nomination", @@ -10085,12 +10189,12 @@ dependencies = [ "scale-info", "security", "serde", - "sp-arithmetic", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", - "spacewalk-primitives", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.4", "stellar-relay", "vault-registry", ] @@ -10107,31 +10211,31 @@ dependencies = [ [[package]] name = "reward" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "scale-info", "serde", - "sp-arithmetic", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", - "spacewalk-primitives", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.4", ] [[package]] name = "reward-distribution" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ "currency", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "oracle", @@ -10144,12 +10248,12 @@ dependencies = [ "scale-info", "security", "serde", - "sp-arithmetic", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", - "spacewalk-primitives", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.4", "staking", ] @@ -10207,7 +10311,7 @@ dependencies = [ "binary-merkle-tree", "frame-benchmarking", "frame-executive", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "frame-system-benchmarking", "frame-system-rpc-runtime-api", @@ -10262,22 +10366,22 @@ dependencies = [ "serde", "serde_derive", "smallvec", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-authority-discovery", "sp-block-builder", "sp-consensus-babe", "sp-consensus-beefy", - "sp-core", - "sp-inherents", - "sp-io", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-mmr-primitives", "sp-offchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", - "sp-staking", - "sp-std", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-transaction-pool", - "sp-version", + "sp-version 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "static_assertions", "substrate-wasm-builder", "xcm", @@ -10290,13 +10394,13 @@ name = "rococo-runtime-constants" version = "0.9.42" source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.42#6f991987c0b4cbbd7d4badc9ef08d83da5fefbfd" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "polkadot-primitives", "polkadot-runtime-common", "smallvec", - "sp-core", - "sp-runtime", - "sp-weights", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-weights 4.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -10366,7 +10470,7 @@ version = "0.1.0" dependencies = [ "dia-oracle", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "orml-asset-registry", "orml-traits", @@ -10375,10 +10479,10 @@ dependencies = [ "paste", "scale-info", "sp-consensus-aura", - "sp-core", - "sp-runtime", - "sp-std", - "spacewalk-primitives", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.4", "xcm", "xcm-executor", "zenlink-protocol", @@ -10394,7 +10498,7 @@ dependencies = [ "cumulus-pallet-xcmp-queue", "cumulus-primitives-core", "cumulus-primitives-utility", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "kusama-runtime", "orml-tokens 0.4.1-dev (git+https://github.com/open-web3-stack/open-runtime-module-library.git?branch=polkadot-v0.9.42)", @@ -10417,13 +10521,13 @@ dependencies = [ "runtime-common", "scale-info", "serde", - "sp-core", - "sp-debug-derive", - "sp-io", - "sp-runtime", - "sp-std", - "sp-tracing", - "spacewalk-primitives", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-debug-derive 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-tracing 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.4", "statemine-runtime", "statemint-runtime", "xcm", @@ -10620,8 +10724,8 @@ version = "4.1.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "log", - "sp-core", - "sp-wasm-interface", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-wasm-interface 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", ] @@ -10643,12 +10747,12 @@ dependencies = [ "sc-client-api", "sc-network", "sc-network-common", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-authority-discovery", "sp-blockchain", - "sp-core", - "sp-keystore", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-prometheus-endpoint", "thiserror", ] @@ -10667,12 +10771,12 @@ dependencies = [ "sc-proposer-metrics", "sc-telemetry", "sc-transaction-pool-api", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", "sp-consensus", - "sp-core", - "sp-inherents", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-prometheus-endpoint", ] @@ -10683,12 +10787,12 @@ source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff dependencies = [ "parity-scale-codec", "sc-client-api", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-block-builder", "sp-blockchain", - "sp-core", - "sp-inherents", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -10705,9 +10809,9 @@ dependencies = [ "serde", "serde_json", "sp-blockchain", - "sp-core", - "sp-runtime", - "sp-state-machine", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -10750,12 +10854,12 @@ dependencies = [ "serde", "serde_json", "sp-blockchain", - "sp-core", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-keyring", - "sp-keystore", - "sp-panic-handler", - "sp-runtime", - "sp-version", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-panic-handler 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-version 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", "tiny-bip39", "tokio", @@ -10774,16 +10878,16 @@ dependencies = [ "sc-executor", "sc-transaction-pool-api", "sc-utils", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", "sp-consensus", - "sp-core", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-database", - "sp-externalities", - "sp-keystore", - "sp-runtime", - "sp-state-machine", - "sp-storage", + "sp-externalities 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-storage 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-prometheus-endpoint", ] @@ -10804,13 +10908,13 @@ dependencies = [ "sc-client-api", "sc-state-db", "schnellru", - "sp-arithmetic", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", - "sp-core", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-database", - "sp-runtime", - "sp-state-machine", - "sp-trie", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-trie 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -10828,12 +10932,12 @@ dependencies = [ "sc-client-api", "sc-utils", "serde", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", "sp-consensus", - "sp-core", - "sp-runtime", - "sp-state-machine", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-prometheus-endpoint", "thiserror", ] @@ -10852,17 +10956,17 @@ dependencies = [ "sc-consensus", "sc-consensus-slots", "sc-telemetry", - "sp-api", - "sp-application-crypto", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-block-builder", "sp-blockchain", "sp-consensus", "sp-consensus-aura", "sp-consensus-slots", - "sp-core", - "sp-inherents", - "sp-keystore", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-prometheus-endpoint", "thiserror", ] @@ -10888,17 +10992,17 @@ dependencies = [ "sc-keystore", "sc-telemetry", "scale-info", - "sp-api", - "sp-application-crypto", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-block-builder", "sp-blockchain", "sp-consensus", "sp-consensus-babe", "sp-consensus-slots", - "sp-core", - "sp-inherents", - "sp-keystore", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-prometheus-endpoint", "thiserror", ] @@ -10914,14 +11018,14 @@ dependencies = [ "sc-consensus-epochs", "sc-rpc-api", "serde", - "sp-api", - "sp-application-crypto", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", "sp-consensus", "sp-consensus-babe", - "sp-core", - "sp-keystore", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", ] @@ -10945,16 +11049,16 @@ dependencies = [ "sc-network-gossip", "sc-network-sync", "sc-utils", - "sp-api", - "sp-application-crypto", - "sp-arithmetic", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", "sp-consensus", "sp-consensus-beefy", - "sp-core", - "sp-keystore", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-mmr-primitives", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-prometheus-endpoint", "thiserror", "wasm-timer", @@ -10974,8 +11078,8 @@ dependencies = [ "sc-rpc", "serde", "sp-consensus-beefy", - "sp-core", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", ] @@ -10989,7 +11093,7 @@ dependencies = [ "sc-client-api", "sc-consensus", "sp-blockchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -11019,15 +11123,15 @@ dependencies = [ "sc-telemetry", "sc-utils", "serde_json", - "sp-api", - "sp-application-crypto", - "sp-arithmetic", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", "sp-consensus", "sp-consensus-grandpa", - "sp-core", - "sp-keystore", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-prometheus-endpoint", "thiserror", ] @@ -11047,8 +11151,8 @@ dependencies = [ "sc-rpc", "serde", "sp-blockchain", - "sp-core", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", ] @@ -11065,14 +11169,14 @@ dependencies = [ "sc-client-api", "sc-consensus", "sc-telemetry", - "sp-arithmetic", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", "sp-consensus", "sp-consensus-slots", - "sp-core", - "sp-inherents", - "sp-runtime", - "sp-state-machine", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -11086,15 +11190,15 @@ dependencies = [ "sc-executor-common", "sc-executor-wasmi", "sc-executor-wasmtime", - "sp-api", - "sp-core", - "sp-externalities", - "sp-io", - "sp-panic-handler", - "sp-runtime-interface", - "sp-trie", - "sp-version", - "sp-wasm-interface", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-externalities 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-panic-handler 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime-interface 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-trie 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-version 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-wasm-interface 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "tracing", "wasmi 0.13.2", ] @@ -11106,7 +11210,7 @@ source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff dependencies = [ "sc-allocator", "sp-maybe-compressed-blob", - "sp-wasm-interface", + "sp-wasm-interface 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", "wasm-instrument 0.3.0", "wasmi 0.13.2", @@ -11120,8 +11224,8 @@ dependencies = [ "log", "sc-allocator", "sc-executor-common", - "sp-runtime-interface", - "sp-wasm-interface", + "sp-runtime-interface 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-wasm-interface 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "wasmi 0.13.2", ] @@ -11138,8 +11242,8 @@ dependencies = [ "rustix 0.36.15", "sc-allocator", "sc-executor-common", - "sp-runtime-interface", - "sp-wasm-interface", + "sp-runtime-interface 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-wasm-interface 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "wasmtime", ] @@ -11156,7 +11260,7 @@ dependencies = [ "sc-network", "sc-network-common", "sp-blockchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -11168,9 +11272,9 @@ dependencies = [ "async-trait", "parking_lot 0.12.1", "serde_json", - "sp-application-crypto", - "sp-core", - "sp-keystore", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", ] @@ -11208,11 +11312,11 @@ dependencies = [ "serde_json", "smallvec", "snow", - "sp-arithmetic", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", "sp-consensus", - "sp-core", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-prometheus-endpoint", "thiserror", "unsigned-varint", @@ -11234,7 +11338,7 @@ dependencies = [ "sc-network", "sc-network-common", "sp-blockchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", "unsigned-varint", ] @@ -11261,7 +11365,7 @@ dependencies = [ "sp-blockchain", "sp-consensus", "sp-consensus-grandpa", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-prometheus-endpoint", "thiserror", "zeroize", @@ -11281,7 +11385,7 @@ dependencies = [ "sc-network", "sc-network-common", "sc-peerset", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-prometheus-endpoint", "tracing", ] @@ -11303,8 +11407,8 @@ dependencies = [ "sc-network-common", "sc-peerset", "sp-blockchain", - "sp-core", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", ] @@ -11332,12 +11436,12 @@ dependencies = [ "sc-peerset", "sc-utils", "smallvec", - "sp-arithmetic", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", "sp-consensus", "sp-consensus-grandpa", - "sp-core", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-prometheus-endpoint", "thiserror", ] @@ -11358,7 +11462,7 @@ dependencies = [ "sc-peerset", "sc-utils", "sp-consensus", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-prometheus-endpoint", ] @@ -11385,10 +11489,10 @@ dependencies = [ "sc-network-common", "sc-peerset", "sc-utils", - "sp-api", - "sp-core", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-offchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "threadpool", "tracing", ] @@ -11433,15 +11537,15 @@ dependencies = [ "sc-transaction-pool-api", "sc-utils", "serde_json", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", - "sp-core", - "sp-keystore", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-offchain", "sp-rpc", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", - "sp-version", + "sp-version 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "tokio", ] @@ -11457,10 +11561,10 @@ dependencies = [ "scale-info", "serde", "serde_json", - "sp-core", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-rpc", - "sp-runtime", - "sp-version", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-version 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", ] @@ -11496,11 +11600,11 @@ dependencies = [ "sc-client-api", "sc-transaction-pool-api", "serde", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", - "sp-core", - "sp-runtime", - "sp-version", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-version 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", "tokio-stream", ] @@ -11548,20 +11652,20 @@ dependencies = [ "sc-utils", "serde", "serde_json", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", "sp-consensus", - "sp-core", - "sp-externalities", - "sp-keystore", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-externalities 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", - "sp-state-machine", - "sp-storage", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-storage 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-transaction-pool", "sp-transaction-storage-proof", - "sp-trie", - "sp-version", + "sp-trie 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-version 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "static_init 1.0.3", "substrate-prometheus-endpoint", "tempfile", @@ -11579,7 +11683,7 @@ dependencies = [ "log", "parity-scale-codec", "parking_lot 0.12.1", - "sp-core", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -11593,7 +11697,7 @@ dependencies = [ "log", "sc-client-db", "sc-utils", - "sp-core", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", "tokio", ] @@ -11613,7 +11717,7 @@ dependencies = [ "serde", "serde_json", "sp-blockchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", ] @@ -11631,9 +11735,9 @@ dependencies = [ "sc-telemetry", "serde", "serde_json", - "sp-core", - "sp-io", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -11674,12 +11778,12 @@ dependencies = [ "sc-rpc-server", "sc-tracing-proc-macro", "serde", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", - "sp-core", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-rpc", - "sp-runtime", - "sp-tracing", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-tracing 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", "tracing", "tracing-log", @@ -11714,11 +11818,11 @@ dependencies = [ "sc-transaction-pool-api", "sc-utils", "serde", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", - "sp-core", - "sp-runtime", - "sp-tracing", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-tracing 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-transaction-pool", "substrate-prometheus-endpoint", "thiserror", @@ -11734,7 +11838,7 @@ dependencies = [ "log", "serde", "sp-blockchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", ] @@ -11750,7 +11854,7 @@ dependencies = [ "log", "parking_lot 0.12.1", "prometheus", - "sp-arithmetic", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -11918,18 +12022,18 @@ dependencies = [ [[package]] name = "security" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "scale-info", "serde", "sha2 0.8.2", - "sp-core", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -12184,8 +12288,8 @@ dependencies = [ "enumn", "parity-scale-codec", "paste", - "sp-runtime", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -12272,6 +12376,24 @@ dependencies = [ "sha-1", ] +[[package]] +name = "sp-api" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "hash-db", + "log", + "parity-scale-codec", + "sp-api-proc-macro 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-trie 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-version 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "thiserror", +] + [[package]] name = "sp-api" version = "4.0.0-dev" @@ -12281,17 +12403,31 @@ dependencies = [ "log", "parity-scale-codec", "scale-info", - "sp-api-proc-macro", - "sp-core", + "sp-api-proc-macro 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-metadata-ir", - "sp-runtime", - "sp-state-machine", - "sp-std", - "sp-trie", - "sp-version", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-trie 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-version 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", ] +[[package]] +name = "sp-api-proc-macro" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "Inflector", + "blake2", + "expander 1.0.0", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "sp-api-proc-macro" version = "4.0.0-dev" @@ -12306,6 +12442,19 @@ dependencies = [ "syn 2.0.28", ] +[[package]] +name = "sp-application-crypto" +version = "7.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "parity-scale-codec", + "scale-info", + "serde", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", +] + [[package]] name = "sp-application-crypto" version = "7.0.0" @@ -12314,9 +12463,23 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-core", - "sp-io", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", +] + +[[package]] +name = "sp-arithmetic" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "integer-sqrt", + "num-traits", + "parity-scale-codec", + "scale-info", + "serde", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "static_assertions", ] [[package]] @@ -12329,7 +12492,7 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-std", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "static_assertions", ] @@ -12340,10 +12503,10 @@ source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff dependencies = [ "parity-scale-codec", "scale-info", - "sp-api", - "sp-application-crypto", - "sp-runtime", - "sp-std", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -12352,10 +12515,10 @@ version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "parity-scale-codec", - "sp-api", - "sp-inherents", - "sp-runtime", - "sp-std", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -12368,11 +12531,11 @@ dependencies = [ "lru 0.8.1", "parity-scale-codec", "parking_lot 0.12.1", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-consensus", "sp-database", - "sp-runtime", - "sp-state-machine", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", ] @@ -12384,10 +12547,10 @@ dependencies = [ "async-trait", "futures", "log", - "sp-core", - "sp-inherents", - "sp-runtime", - "sp-state-machine", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", ] @@ -12399,13 +12562,13 @@ dependencies = [ "async-trait", "parity-scale-codec", "scale-info", - "sp-api", - "sp-application-crypto", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-consensus", "sp-consensus-slots", - "sp-inherents", - "sp-runtime", - "sp-std", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-timestamp", ] @@ -12418,15 +12581,15 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-api", - "sp-application-crypto", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-consensus", "sp-consensus-slots", - "sp-core", - "sp-inherents", - "sp-keystore", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-timestamp", ] @@ -12439,13 +12602,13 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-api", - "sp-application-crypto", - "sp-core", - "sp-io", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-mmr-primitives", - "sp-runtime", - "sp-std", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "strum", ] @@ -12459,12 +12622,12 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-api", - "sp-application-crypto", - "sp-core", - "sp-keystore", - "sp-runtime", - "sp-std", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -12475,10 +12638,53 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-std", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-timestamp", ] +[[package]] +name = "sp-core" +version = "7.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "array-bytes 4.2.0", + "base58", + "bitflags 1.3.2", + "blake2", + "bounded-collections", + "dyn-clonable", + "ed25519-zebra", + "futures", + "hash-db", + "hash256-std-hasher", + "impl-serde", + "lazy_static", + "libsecp256k1", + "log", + "merlin", + "parity-scale-codec", + "parking_lot 0.12.1", + "primitive-types", + "rand 0.8.5", + "regex", + "scale-info", + "schnorrkel", + "secp256k1", + "secrecy", + "serde", + "sp-core-hashing 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-debug-derive 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-externalities 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-runtime-interface 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-storage 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "ss58-registry", + "substrate-bip39", + "thiserror", + "tiny-bip39", + "zeroize", +] + [[package]] name = "sp-core" version = "7.0.0" @@ -12510,12 +12716,12 @@ dependencies = [ "secp256k1", "secrecy", "serde", - "sp-core-hashing", - "sp-debug-derive", - "sp-externalities", - "sp-runtime-interface", - "sp-std", - "sp-storage", + "sp-core-hashing 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-debug-derive 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-externalities 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime-interface 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-storage 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "ss58-registry", "substrate-bip39", "thiserror", @@ -12523,6 +12729,20 @@ dependencies = [ "zeroize", ] +[[package]] +name = "sp-core-hashing" +version = "5.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "blake2b_simd", + "byteorder", + "digest 0.10.7", + "sha2 0.10.7", + "sha3", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "twox-hash", +] + [[package]] name = "sp-core-hashing" version = "5.0.0" @@ -12533,10 +12753,21 @@ dependencies = [ "digest 0.10.7", "sha2 0.10.7", "sha3", - "sp-std", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "twox-hash", ] +[[package]] +name = "sp-core-hashing-proc-macro" +version = "5.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "proc-macro2", + "quote", + "sp-core-hashing 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "syn 1.0.109", +] + [[package]] name = "sp-core-hashing-proc-macro" version = "5.0.0" @@ -12544,7 +12775,7 @@ source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff dependencies = [ "proc-macro2", "quote", - "sp-core-hashing", + "sp-core-hashing 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "syn 2.0.28", ] @@ -12557,6 +12788,16 @@ dependencies = [ "parking_lot 0.12.1", ] +[[package]] +name = "sp-debug-derive" +version = "5.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "sp-debug-derive" version = "5.0.0" @@ -12567,6 +12808,17 @@ dependencies = [ "syn 2.0.28", ] +[[package]] +name = "sp-externalities" +version = "0.13.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "environmental", + "parity-scale-codec", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-storage 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", +] + [[package]] name = "sp-externalities" version = "0.13.0" @@ -12574,8 +12826,23 @@ source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff dependencies = [ "environmental", "parity-scale-codec", - "sp-std", - "sp-storage", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-storage 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", +] + +[[package]] +name = "sp-inherents" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "async-trait", + "impl-trait-for-tuples", + "parity-scale-codec", + "scale-info", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "thiserror", ] [[package]] @@ -12587,12 +12854,37 @@ dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", "scale-info", - "sp-core", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", ] +[[package]] +name = "sp-io" +version = "7.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "bytes", + "ed25519", + "ed25519-dalek", + "futures", + "libsecp256k1", + "log", + "parity-scale-codec", + "secp256k1", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-externalities 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-runtime-interface 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-tracing 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-trie 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "tracing", + "tracing-core", +] + [[package]] name = "sp-io" version = "7.0.0" @@ -12607,14 +12899,14 @@ dependencies = [ "parity-scale-codec", "rustversion", "secp256k1", - "sp-core", - "sp-externalities", - "sp-keystore", - "sp-runtime-interface", - "sp-state-machine", - "sp-std", - "sp-tracing", - "sp-trie", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-externalities 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime-interface 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-tracing 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-trie 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "tracing", "tracing-core", ] @@ -12625,11 +12917,27 @@ version = "7.0.0" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "lazy_static", - "sp-core", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "strum", ] +[[package]] +name = "sp-keystore" +version = "0.13.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "async-trait", + "futures", + "merlin", + "parity-scale-codec", + "parking_lot 0.12.1", + "schnorrkel", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-externalities 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "thiserror", +] + [[package]] name = "sp-keystore" version = "0.13.0" @@ -12639,8 +12947,8 @@ dependencies = [ "parity-scale-codec", "parking_lot 0.12.1", "serde", - "sp-core", - "sp-externalities", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-externalities 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", ] @@ -12661,7 +12969,7 @@ dependencies = [ "frame-metadata", "parity-scale-codec", "scale-info", - "sp-std", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -12674,11 +12982,11 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-api", - "sp-core", - "sp-debug-derive", - "sp-runtime", - "sp-std", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-debug-derive 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", ] @@ -12690,10 +12998,10 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-arithmetic", - "sp-core", - "sp-runtime", - "sp-std", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -12701,9 +13009,19 @@ name = "sp-offchain" version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ - "sp-api", - "sp-core", - "sp-runtime", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", +] + +[[package]] +name = "sp-panic-handler" +version = "5.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "backtrace", + "lazy_static", + "regex", ] [[package]] @@ -12723,7 +13041,29 @@ source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff dependencies = [ "rustc-hash", "serde", - "sp-core", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", +] + +[[package]] +name = "sp-runtime" +version = "7.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "either", + "hash256-std-hasher", + "impl-trait-for-tuples", + "log", + "parity-scale-codec", + "paste", + "rand 0.8.5", + "scale-info", + "serde", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-weights 4.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", ] [[package]] @@ -12740,12 +13080,30 @@ dependencies = [ "rand 0.8.5", "scale-info", "serde", - "sp-application-crypto", - "sp-arithmetic", - "sp-core", - "sp-io", - "sp-std", - "sp-weights", + "sp-application-crypto 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-weights 4.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", +] + +[[package]] +name = "sp-runtime-interface" +version = "7.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "bytes", + "impl-trait-for-tuples", + "parity-scale-codec", + "primitive-types", + "sp-externalities 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-runtime-interface-proc-macro 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-storage 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-tracing 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-wasm-interface 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "static_assertions", ] [[package]] @@ -12757,15 +13115,27 @@ dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", "primitive-types", - "sp-externalities", - "sp-runtime-interface-proc-macro", - "sp-std", - "sp-storage", - "sp-tracing", - "sp-wasm-interface", + "sp-externalities 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime-interface-proc-macro 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-storage 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-tracing 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-wasm-interface 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "static_assertions", ] +[[package]] +name = "sp-runtime-interface-proc-macro" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "Inflector", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "sp-runtime-interface-proc-macro" version = "6.0.0" @@ -12785,11 +13155,23 @@ source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff dependencies = [ "parity-scale-codec", "scale-info", - "sp-api", - "sp-core", - "sp-runtime", - "sp-staking", - "sp-std", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", +] + +[[package]] +name = "sp-staking" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "parity-scale-codec", + "scale-info", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", ] [[package]] @@ -12800,9 +13182,29 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-core", - "sp-runtime", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", +] + +[[package]] +name = "sp-state-machine" +version = "0.13.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "hash-db", + "log", + "parity-scale-codec", + "parking_lot 0.12.1", + "rand 0.8.5", + "smallvec", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-externalities 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-panic-handler 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-trie 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "thiserror", + "tracing", ] [[package]] @@ -12816,20 +13218,38 @@ dependencies = [ "parking_lot 0.12.1", "rand 0.8.5", "smallvec", - "sp-core", - "sp-externalities", - "sp-panic-handler", - "sp-std", - "sp-trie", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-externalities 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-panic-handler 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-trie 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", "tracing", ] +[[package]] +name = "sp-std" +version = "5.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" + [[package]] name = "sp-std" version = "5.0.0" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" +[[package]] +name = "sp-storage" +version = "7.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "impl-serde", + "parity-scale-codec", + "ref-cast", + "serde", + "sp-debug-derive 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", +] + [[package]] name = "sp-storage" version = "7.0.0" @@ -12839,8 +13259,8 @@ dependencies = [ "parity-scale-codec", "ref-cast", "serde", - "sp-debug-derive", - "sp-std", + "sp-debug-derive 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -12852,19 +13272,31 @@ dependencies = [ "futures-timer", "log", "parity-scale-codec", - "sp-inherents", - "sp-runtime", - "sp-std", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", ] +[[package]] +name = "sp-tracing" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "parity-scale-codec", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "tracing", + "tracing-core", + "tracing-subscriber", +] + [[package]] name = "sp-tracing" version = "6.0.0" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ "parity-scale-codec", - "sp-std", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "tracing", "tracing-core", "tracing-subscriber", @@ -12875,8 +13307,8 @@ name = "sp-transaction-pool" version = "4.0.0-dev" source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42#ff24c60ac7d9f87727ecdd0ded9a80c56e4f4b65" dependencies = [ - "sp-api", - "sp-runtime", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -12888,11 +13320,34 @@ dependencies = [ "log", "parity-scale-codec", "scale-info", - "sp-core", - "sp-inherents", - "sp-runtime", - "sp-std", - "sp-trie", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-trie 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", +] + +[[package]] +name = "sp-trie" +version = "7.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "ahash 0.8.3", + "hash-db", + "hashbrown 0.12.3", + "lazy_static", + "memory-db", + "nohash-hasher", + "parity-scale-codec", + "parking_lot 0.12.1", + "scale-info", + "schnellru", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "thiserror", + "tracing", + "trie-db", + "trie-root", ] [[package]] @@ -12910,14 +13365,31 @@ dependencies = [ "parking_lot 0.12.1", "scale-info", "schnellru", - "sp-core", - "sp-std", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", "tracing", "trie-db", "trie-root", ] +[[package]] +name = "sp-version" +version = "5.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "impl-serde", + "parity-scale-codec", + "parity-wasm", + "scale-info", + "serde", + "sp-core-hashing-proc-macro 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-version-proc-macro 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "thiserror", +] + [[package]] name = "sp-version" version = "5.0.0" @@ -12928,13 +13400,24 @@ dependencies = [ "parity-wasm", "scale-info", "serde", - "sp-core-hashing-proc-macro", - "sp-runtime", - "sp-std", - "sp-version-proc-macro", + "sp-core-hashing-proc-macro 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-version-proc-macro 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "thiserror", ] +[[package]] +name = "sp-version-proc-macro" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "parity-scale-codec", + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "sp-version-proc-macro" version = "4.0.0-dev" @@ -12946,6 +13429,20 @@ dependencies = [ "syn 2.0.28", ] +[[package]] +name = "sp-wasm-interface" +version = "7.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "anyhow", + "impl-trait-for-tuples", + "log", + "parity-scale-codec", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "wasmi 0.13.2", + "wasmtime", +] + [[package]] name = "sp-wasm-interface" version = "7.0.0" @@ -12955,11 +13452,26 @@ dependencies = [ "impl-trait-for-tuples", "log", "parity-scale-codec", - "sp-std", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "wasmi 0.13.2", "wasmtime", ] +[[package]] +name = "sp-weights" +version = "4.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40#98f2e3451c9143278ec53c6718940aeabcd3b68a" +dependencies = [ + "parity-scale-codec", + "scale-info", + "serde", + "smallvec", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-debug-derive 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", +] + [[package]] name = "sp-weights" version = "4.0.0" @@ -12969,28 +13481,46 @@ dependencies = [ "scale-info", "serde", "smallvec", - "sp-arithmetic", - "sp-core", - "sp-debug-derive", - "sp-std", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-debug-derive 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] name = "spacewalk-primitives" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.0" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=d05b0015d15ca39cc780889bcc095335e9862a36#d05b0015d15ca39cc780889bcc095335e9862a36" dependencies = [ "base58", "bstringify", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", "hex", "parity-scale-codec", "scale-info", "serde", - "sp-core", - "sp-runtime", - "sp-std", - "substrate-stellar-sdk", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "substrate-stellar-sdk 0.2.4 (git+https://github.com/pendulum-chain/substrate-stellar-sdk?branch=polkadot-v0.9.40)", +] + +[[package]] +name = "spacewalk-primitives" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" +dependencies = [ + "base58", + "bstringify", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "hex", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "substrate-stellar-sdk 0.2.4 (git+https://github.com/pendulum-chain/substrate-stellar-sdk?branch=polkadot-v0.9.42)", ] [[package]] @@ -13062,23 +13592,23 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" [[package]] name = "staking" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "orml-tokens 0.4.1-dev (git+https://github.com/open-web3-stack/open-runtime-module-library.git?branch=polkadot-v0.9.42)", "orml-traits", "parity-scale-codec", "scale-info", "serde", - "sp-arithmetic", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", - "spacewalk-primitives", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.4", ] [[package]] @@ -13097,7 +13627,7 @@ dependencies = [ "cumulus-primitives-timestamp", "cumulus-primitives-utility", "frame-executive", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "frame-system-rpc-runtime-api", "hex-literal 0.4.1", @@ -13129,18 +13659,18 @@ dependencies = [ "polkadot-runtime-common", "scale-info", "smallvec", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-block-builder", "sp-consensus-aura", - "sp-core", - "sp-inherents", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-offchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", - "sp-std", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-transaction-pool", - "sp-version", - "sp-weights", + "sp-version 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-weights 4.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-wasm-builder", "xcm", "xcm-builder", @@ -13163,7 +13693,7 @@ dependencies = [ "cumulus-primitives-timestamp", "cumulus-primitives-utility", "frame-executive", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "frame-system-rpc-runtime-api", "log", @@ -13191,18 +13721,18 @@ dependencies = [ "polkadot-runtime-constants", "scale-info", "smallvec", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-block-builder", "sp-consensus-aura", - "sp-core", - "sp-inherents", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-offchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", - "sp-std", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-transaction-pool", - "sp-version", - "sp-weights", + "sp-version 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-weights 4.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-wasm-builder", "xcm", "xcm-builder", @@ -13270,21 +13800,21 @@ dependencies = [ [[package]] name = "stellar-relay" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ "base64 0.13.1", "currency", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parity-scale-codec", "scale-info", "serde", "sha2 0.10.7", - "sp-core", - "sp-std", - "spacewalk-primitives", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.4", ] [[package]] @@ -13367,11 +13897,11 @@ dependencies = [ "parity-scale-codec", "sc-rpc-api", "sc-transaction-pool-api", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-block-builder", "sp-blockchain", - "sp-core", - "sp-runtime", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -13396,7 +13926,7 @@ dependencies = [ "log", "sc-rpc-api", "serde", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -13411,13 +13941,32 @@ dependencies = [ "sc-rpc-api", "scale-info", "serde", - "sp-core", - "sp-runtime", - "sp-state-machine", - "sp-trie", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-trie 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "trie-db", ] +[[package]] +name = "substrate-stellar-sdk" +version = "0.2.4" +source = "git+https://github.com/pendulum-chain/substrate-stellar-sdk?branch=polkadot-v0.9.40#0030e2aaedef7b7cb89108a64a7b9569a20d8044" +dependencies = [ + "base64 0.13.1", + "hex", + "lazy_static", + "num-rational", + "scale-info", + "serde", + "serde_json", + "sha2 0.9.9", + "sodalite", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.40)", +] + [[package]] name = "substrate-stellar-sdk" version = "0.2.4" @@ -13432,9 +13981,9 @@ dependencies = [ "serde_json", "sha2 0.9.9", "sodalite", - "sp-io", - "sp-runtime", - "sp-std", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -13990,6 +14539,31 @@ dependencies = [ "tracing-serde", ] +[[package]] +name = "treasury-buyout-extension" +version = "1.0.0" +dependencies = [ + "frame-benchmarking", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "frame-system", + "mocktopus", + "orml-currencies", + "orml-tokens 0.4.1-dev (git+https://github.com/open-web3-stack/open-runtime-module-library.git?branch=polkadot-v0.9.42)", + "orml-traits", + "pallet-balances", + "pallet-treasury", + "parity-scale-codec", + "scale-info", + "serde", + "sha2 0.8.2", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.0", +] + [[package]] name = "trie-db" version = "0.27.1" @@ -14081,22 +14655,22 @@ dependencies = [ "sc-service", "serde", "serde_json", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-consensus-aura", "sp-consensus-babe", - "sp-core", - "sp-debug-derive", - "sp-externalities", - "sp-inherents", - "sp-io", - "sp-keystore", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-debug-derive 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-externalities 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-keystore 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-rpc", - "sp-runtime", - "sp-state-machine", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-state-machine 0.13.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-timestamp", "sp-transaction-storage-proof", - "sp-version", - "sp-weights", + "sp-version 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-weights 4.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-rpc-client", "zstd 0.12.4", ] @@ -14267,14 +14841,14 @@ checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" [[package]] name = "vault-registry" -version = "1.0.3" -source = "git+https://github.com/pendulum-chain/spacewalk?rev=59896f7df1c1daf0f91103323b4d7ba3f1e186fe#59896f7df1c1daf0f91103323b4d7ba3f1e186fe" +version = "1.0.4" +source = "git+https://github.com/pendulum-chain/spacewalk?rev=057dc478ca52d66318d4aaa659b0c7dc00b4d062#057dc478ca52d66318d4aaa659b0c7dc00b4d062" dependencies = [ "currency", "fee", "fixed-hash 0.7.0", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "oracle", @@ -14290,12 +14864,12 @@ dependencies = [ "scale-info", "security", "serde", - "sp-arithmetic", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", - "spacewalk-primitives", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "spacewalk-primitives 1.0.4", "staking", ] @@ -14316,16 +14890,16 @@ name = "vesting-manager" version = "0.0.1" dependencies = [ "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "pallet-vesting", "parity-scale-codec", "scale-info", "serde", - "sp-api", - "sp-runtime", - "sp-std", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -15045,7 +15619,7 @@ dependencies = [ "frame-benchmarking", "frame-election-provider-support", "frame-executive", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "frame-system-benchmarking", "frame-system-rpc-runtime-api", @@ -15104,23 +15678,23 @@ dependencies = [ "serde", "serde_derive", "smallvec", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-authority-discovery", "sp-block-builder", "sp-consensus-babe", "sp-consensus-beefy", - "sp-core", - "sp-inherents", - "sp-io", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-inherents 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-mmr-primitives", "sp-npos-elections", "sp-offchain", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-session", - "sp-staking", - "sp-std", + "sp-staking 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-transaction-pool", - "sp-version", + "sp-version 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "substrate-wasm-builder", "westend-runtime-constants", "xcm", @@ -15133,13 +15707,13 @@ name = "westend-runtime-constants" version = "0.9.42" source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.42#6f991987c0b4cbbd7d4badc9ef08d83da5fefbfd" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "polkadot-primitives", "polkadot-runtime-common", "smallvec", - "sp-core", - "sp-runtime", - "sp-weights", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-weights 4.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", ] [[package]] @@ -15498,7 +16072,7 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-weights", + "sp-weights 4.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "xcm-procedural", ] @@ -15507,7 +16081,7 @@ name = "xcm-builder" version = "0.9.42" source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.42#6f991987c0b4cbbd7d4badc9ef08d83da5fefbfd" dependencies = [ - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "impl-trait-for-tuples", "log", @@ -15515,10 +16089,10 @@ dependencies = [ "parity-scale-codec", "polkadot-parachain", "scale-info", - "sp-arithmetic", - "sp-io", - "sp-runtime", - "sp-std", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "xcm", "xcm-executor", ] @@ -15534,7 +16108,7 @@ dependencies = [ "cumulus-primitives-core", "cumulus-primitives-parachain-inherent", "cumulus-test-relay-sproof-builder", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "parachain-info", "parity-scale-codec", @@ -15542,9 +16116,9 @@ dependencies = [ "polkadot-primitives", "polkadot-runtime-parachains", "quote", - "sp-arithmetic", - "sp-io", - "sp-std", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "xcm", "xcm-executor", ] @@ -15556,16 +16130,16 @@ source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.42#6f99 dependencies = [ "environmental", "frame-benchmarking", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "impl-trait-for-tuples", "log", "parity-scale-codec", - "sp-arithmetic", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", - "sp-weights", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-io 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-weights 4.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "xcm", ] @@ -15609,7 +16183,7 @@ version = "0.4.4" source = "git+https://github.com/zenlinkpro/Zenlink-DEX-Module?branch=polkadot-v0.9.42#c32bb5f63bcd06dc49ca8a48dd7b7a0f78c358bf" dependencies = [ "cumulus-primitives-core", - "frame-support", + "frame-support 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "frame-system", "log", "orml-tokens 0.4.1-dev (git+https://github.com/open-web3-stack/open-runtime-module-library?rev=4ae0372e2c624e6acc98305564b9d395f70814c0)", @@ -15618,10 +16192,10 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-arithmetic", - "sp-core", - "sp-runtime", - "sp-std", + "sp-arithmetic 6.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-core 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "xcm", "xcm-executor", ] @@ -15633,10 +16207,10 @@ source = "git+https://github.com/zenlinkpro/Zenlink-DEX-Module?branch=polkadot-v dependencies = [ "jsonrpsee", "parity-scale-codec", - "sp-api", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "sp-blockchain", "sp-rpc", - "sp-runtime", + "sp-runtime 7.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "zenlink-protocol", "zenlink-protocol-runtime-api", ] @@ -15647,8 +16221,8 @@ version = "0.4.4" source = "git+https://github.com/zenlinkpro/Zenlink-DEX-Module?branch=polkadot-v0.9.42#c32bb5f63bcd06dc49ca8a48dd7b7a0f78c358bf" dependencies = [ "parity-scale-codec", - "sp-api", - "sp-std", + "sp-api 4.0.0-dev (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", + "sp-std 5.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.42)", "zenlink-protocol", ] diff --git a/Cargo.toml b/Cargo.toml index 667d743d9..e92c0f6e8 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -11,6 +11,7 @@ members = [ "pallets/vesting-manager", "pallets/orml-currencies-allowance-extension", "pallets/orml-tokens-management-extension", + "pallets/treasury-buyout-extension", "runtime/common", "runtime/amplitude", "runtime/foucoco", diff --git a/node/Cargo.toml b/node/Cargo.toml index 796413df5..71c392a0e 100644 --- a/node/Cargo.toml +++ b/node/Cargo.toml @@ -15,20 +15,20 @@ codec = { package = "parity-scale-codec", version = "3.0.0" } serde = { version = "1.0.145", features = ["derive"] } jsonrpsee = { version = "0.16.2", features = ["server"] } -module-issue-rpc = { git = "https://github.com/pendulum-chain/spacewalk", rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -module-oracle-rpc = { git = "https://github.com/pendulum-chain/spacewalk", rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -module-redeem-rpc = { git = "https://github.com/pendulum-chain/spacewalk", rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -module-replace-rpc = { git = "https://github.com/pendulum-chain/spacewalk", rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -module-vault-registry-rpc = { git = "https://github.com/pendulum-chain/spacewalk", rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} +module-issue-rpc = { git = "https://github.com/pendulum-chain/spacewalk", rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062"} +module-oracle-rpc = { git = "https://github.com/pendulum-chain/spacewalk", rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062"} +module-redeem-rpc = { git = "https://github.com/pendulum-chain/spacewalk", rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062"} +module-replace-rpc = { git = "https://github.com/pendulum-chain/spacewalk", rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062"} +module-vault-registry-rpc = { git = "https://github.com/pendulum-chain/spacewalk", rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062"} module-pallet-staking-rpc = { path = "../pallets/parachain-staking/rpc" } -spacewalk-primitives = { git = "https://github.com/pendulum-chain/spacewalk", rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} +spacewalk-primitives = { git = "https://github.com/pendulum-chain/spacewalk", rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062"} # Local -amplitude-runtime = {path = "../runtime/amplitude"} -foucoco-runtime = {path = "../runtime/foucoco"} -pendulum-runtime = {path = "../runtime/pendulum"} -development-runtime = {path = "../runtime/development"} -runtime-common = {path = "../runtime/common"} +amplitude-runtime = { path = "../runtime/amplitude" } +foucoco-runtime = { path = "../runtime/foucoco" } +pendulum-runtime = { path = "../runtime/pendulum" } +development-runtime = { path = "../runtime/development" } +runtime-common = { path = "../runtime/common" } # Substrate frame-benchmarking = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42" } @@ -100,16 +100,16 @@ substrate-build-script-utils = { git = "https://github.com/paritytech/substrate" [features] default = [] runtime-benchmarks = [ - "amplitude-runtime/runtime-benchmarks", - "foucoco-runtime/runtime-benchmarks", - "pendulum-runtime/runtime-benchmarks", - "development-runtime/runtime-benchmarks", - "runtime-common/runtime-benchmarks", - "polkadot-cli/runtime-benchmarks", + "amplitude-runtime/runtime-benchmarks", + "foucoco-runtime/runtime-benchmarks", + "pendulum-runtime/runtime-benchmarks", + "development-runtime/runtime-benchmarks", + "runtime-common/runtime-benchmarks", + "polkadot-cli/runtime-benchmarks", ] try-runtime = [ - "amplitude-runtime/try-runtime", - "foucoco-runtime/try-runtime", - "pendulum-runtime/try-runtime", - "try-runtime-cli/try-runtime" + "amplitude-runtime/try-runtime", + "foucoco-runtime/try-runtime", + "pendulum-runtime/try-runtime", + "try-runtime-cli/try-runtime" ] diff --git a/node/src/chain_spec.rs b/node/src/chain_spec.rs index 96c671e86..b3d629874 100644 --- a/node/src/chain_spec.rs +++ b/node/src/chain_spec.rs @@ -331,6 +331,7 @@ pub fn pendulum_config() -> PendulumChainSpec { vesting_schedules.clone(), multisig_genesis.clone(), pendulum::PARACHAIN_ID.into(), + false, ) }, // Bootnodes @@ -412,6 +413,10 @@ pub fn development_config() -> DevelopmentChainSpec { ) } +fn default_pair(currency_id: CurrencyId) -> VaultCurrencyPair { + VaultCurrencyPair { collateral: currency_id, wrapped: MAINNET_USDC_CURRENCY_ID } +} + fn amplitude_genesis( invulnerables: Vec, signatories: Vec, @@ -420,10 +425,6 @@ fn amplitude_genesis( id: ParaId, start_shutdown: bool, ) -> amplitude_runtime::GenesisConfig { - fn default_pair(currency_id: CurrencyId) -> VaultCurrencyPair { - VaultCurrencyPair { collateral: currency_id, wrapped: MAINNET_USDC_CURRENCY_ID } - } - let mut balances: Vec<_> = signatories .iter() .cloned() @@ -852,6 +853,7 @@ fn pendulum_genesis( vesting_schedules: Vec<(AccountId, BlockNumber, BlockNumber, Balance)>, sudo_account: AccountId, id: ParaId, + start_shutdown: bool, ) -> pendulum_runtime::GenesisConfig { let mut genesis_issuance = pendulum::TOTAL_INITIAL_ISSUANCE; for balance in balances.clone() { @@ -921,6 +923,75 @@ fn pendulum_genesis( ..Default::default() }, vesting: pendulum_runtime::VestingConfig { vesting: vesting_schedules }, + issue: pendulum_runtime::IssueConfig { + issue_period: amplitude_runtime::DAYS, + issue_minimum_transfer_amount: 1000, + limit_volume_amount: None, + limit_volume_currency_id: XCM(0), + current_volume_amount: 0u32.into(), + interval_length: (60u32 * 60 * 24), + last_interval_index: 0u32, + }, + redeem: pendulum_runtime::RedeemConfig { + redeem_period: pendulum_runtime::DAYS, + redeem_minimum_transfer_amount: 1000, + limit_volume_amount: None, + limit_volume_currency_id: XCM(0), + current_volume_amount: 0u32.into(), + interval_length: (60u32 * 60 * 24), + last_interval_index: 0u32, + }, + replace: pendulum_runtime::ReplaceConfig { + replace_period: pendulum_runtime::DAYS, + replace_minimum_transfer_amount: 1000, + }, + security: pendulum_runtime::SecurityConfig { + initial_status: if start_shutdown { + pendulum_runtime::StatusCode::Shutdown + } else { + pendulum_runtime::StatusCode::Error + }, + }, + oracle: pendulum_runtime::OracleConfig { + max_delay: u32::MAX, + oracle_keys: vec![ + Key::ExchangeRate(CurrencyId::XCM(0)), + Key::ExchangeRate(MAINNET_USDC_CURRENCY_ID), + ], + }, + vault_registry: pendulum_runtime::VaultRegistryConfig { + minimum_collateral_vault: vec![(XCM(0), 0)], + punishment_delay: pendulum_runtime::DAYS, + secure_collateral_threshold: vec![( + default_pair(XCM(0)), + FixedU128::checked_from_rational(150, 100).unwrap(), + )], + /* 150% */ + premium_redeem_threshold: vec![( + default_pair(XCM(0)), + FixedU128::checked_from_rational(130, 100).unwrap(), + )], + /* 130% */ + liquidation_collateral_threshold: vec![( + default_pair(XCM(0)), + FixedU128::checked_from_rational(120, 100).unwrap(), + )], + /* 120% */ + system_collateral_ceiling: vec![( + default_pair(XCM(0)), + 60_000 * 10u128.pow(pendulum::TOKEN_DECIMALS), + )], + }, + stellar_relay: pendulum_runtime::StellarRelayConfig::default(), + fee: pendulum_runtime::FeeConfig { + issue_fee: FixedU128::checked_from_rational(15, 10000).unwrap(), // 0.15% + issue_griefing_collateral: FixedU128::checked_from_rational(5, 100000).unwrap(), // 0.005% + redeem_fee: FixedU128::checked_from_rational(5, 1000).unwrap(), // 0.5% + premium_redeem_fee: FixedU128::checked_from_rational(5, 100).unwrap(), // 5% + punishment_fee: FixedU128::checked_from_rational(1, 10).unwrap(), // 10% + replace_griefing_collateral: FixedU128::checked_from_rational(1, 10).unwrap(), // 10% + }, + nomination: pendulum_runtime::NominationConfig { is_nomination_enabled: false }, } } diff --git a/node/src/rpc.rs b/node/src/rpc.rs index 3316ab826..1af41d0fd 100644 --- a/node/src/rpc.rs +++ b/node/src/rpc.rs @@ -52,6 +52,11 @@ where module.merge(System::new(client.clone(), pool, deny_unsafe).into_rpc())?; module.merge(Staking::new(client.clone()).into_rpc())?; module.merge(TransactionPayment::new(client.clone()).into_rpc())?; + module.merge(Issue::new(client.clone()).into_rpc())?; + module.merge(Redeem::new(client.clone()).into_rpc())?; + module.merge(Replace::new(client.clone()).into_rpc())?; + module.merge(VaultRegistry::new(client.clone()).into_rpc())?; + module.merge(Oracle::new(client.clone()).into_rpc())?; module.merge(FarmingRpc::new(client.clone()).into_rpc())?; module.merge(ZenlinkProtocol::new(client).into_rpc())?; Ok(module) diff --git a/pallets/orml-tokens-management-extension/Cargo.toml b/pallets/orml-tokens-management-extension/Cargo.toml index bd9bec48c..d01c5a7f2 100644 --- a/pallets/orml-tokens-management-extension/Cargo.toml +++ b/pallets/orml-tokens-management-extension/Cargo.toml @@ -5,10 +5,10 @@ name = "orml-tokens-management-extension" version = "1.0.0" [dependencies] -codec = {package = "parity-scale-codec", version = "3.1.5", default-features = false, features = ["derive", "max-encoded-len"]} -scale-info = {version = "2.2.0", default-features = false, features = ["derive"]} -serde = {version = "1.0.130", default-features = false, features = ["derive"], optional = true} -sha2 = {version = "0.8.2", default-features = false} +codec = { package = "parity-scale-codec", version = "3.1.5", default-features = false, features = ["derive", "max-encoded-len"] } +scale-info = { version = "2.2.0", default-features = false, features = ["derive"] } +serde = { version = "1.0.130", default-features = false, features = ["derive"], optional = true } +sha2 = { version = "0.8.2", default-features = false } # Substrate dependencies frame-support = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42", default-features = false} @@ -33,25 +33,25 @@ sp-io = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0. pallet-balances = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42"} # Spacewalk libraries -spacewalk-primitives = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} +spacewalk-primitives = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062"} [features] default = ["std"] std = [ - "serde", - "codec/std", - "sha2/std", - "sp-core/std", - "sp-std/std", - "sp-runtime/std", - "frame-support/std", - "frame-system/std", - "orml-currencies/std", - "orml-tokens/std", - "orml-traits/std", - "frame-benchmarking/std", - "spacewalk-primitives/std" + "serde", + "codec/std", + "sha2/std", + "sp-core/std", + "sp-std/std", + "sp-runtime/std", + "frame-support/std", + "frame-system/std", + "orml-currencies/std", + "orml-tokens/std", + "orml-traits/std", + "frame-benchmarking/std", + "spacewalk-primitives/std" ] runtime-benchmarks = [ diff --git a/pallets/parachain-staking/rpc/Cargo.toml b/pallets/parachain-staking/rpc/Cargo.toml index b66a11787..be8405225 100644 --- a/pallets/parachain-staking/rpc/Cargo.toml +++ b/pallets/parachain-staking/rpc/Cargo.toml @@ -7,7 +7,7 @@ version = "1.0.0" [dependencies] codec = {package = "parity-scale-codec", version = "3.0.0"} jsonrpsee = {version = "0.16.0", features = ["server", "macros"]} -module-oracle-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} +module-oracle-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062"} module-pallet-staking-rpc-runtime-api = {path = "runtime-api"} sp-api = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42"} sp-blockchain = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42"} diff --git a/pallets/parachain-staking/rpc/runtime-api/Cargo.toml b/pallets/parachain-staking/rpc/runtime-api/Cargo.toml index f09c317ce..46fcde9c6 100644 --- a/pallets/parachain-staking/rpc/runtime-api/Cargo.toml +++ b/pallets/parachain-staking/rpc/runtime-api/Cargo.toml @@ -10,17 +10,17 @@ sp-api = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0 sp-std = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42", default-features = false} parity-scale-codec = {version = "3.1.5", default-features = false, features = ["derive"]} scale-info = {version = "2.1.1", default-features = false, features = ["derive"]} -module-oracle-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} +module-oracle-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062"} serde = {version = "1.0.142", default-features = false, optional = true, features = ["derive"]} [features] default = ["std"] std = [ - "serde", - "frame-support/std", - "scale-info/std", - "sp-api/std", - "sp-std/std", - "parity-scale-codec/std", - "module-oracle-rpc-runtime-api/std", + "serde", + "frame-support/std", + "scale-info/std", + "sp-api/std", + "sp-std/std", + "parity-scale-codec/std", + "module-oracle-rpc-runtime-api/std", ] diff --git a/pallets/treasury-buyout-extension/Cargo.toml b/pallets/treasury-buyout-extension/Cargo.toml new file mode 100644 index 000000000..d28b60544 --- /dev/null +++ b/pallets/treasury-buyout-extension/Cargo.toml @@ -0,0 +1,70 @@ +[package] +authors = ["Pendulum Chain"] +edition = "2021" +name = "treasury-buyout-extension" +version = "1.0.0" + +[dependencies] +codec = {package = "parity-scale-codec", version = "3.1.5", default-features = false, features = ["derive", "max-encoded-len"]} +scale-info = {version = "2.2.0", default-features = false, features = ["derive"]} +serde = {version = "1.0.130", default-features = false, features = ["derive"], optional = true} +sha2 = {version = "0.8.2", default-features = false} + +# Substrate dependencies +frame-support = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42", default-features = false} +frame-system = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42", default-features = false} +sp-core = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42", default-features = false} +sp-runtime = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42", default-features = false} +sp-std = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42", default-features = false} +sp-arithmetic = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42", default-features = false} +pallet-treasury = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} + +frame-benchmarking = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42", default-features = false, optional = true } + +orml-currencies = { git = "https://github.com/open-web3-stack/open-runtime-module-library", branch = "polkadot-v0.9.42", default-features = false } +orml-tokens = { git = "https://github.com/open-web3-stack/open-runtime-module-library", branch = "polkadot-v0.9.42", default-features = false } +orml-traits = { git = "https://github.com/open-web3-stack/open-runtime-module-library", branch = "polkadot-v0.9.42", default-features = false } + +[dev-dependencies] +mocktopus = "0.8.0" +frame-benchmarking = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42" } +sp-io = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42", default-features = false} + +pallet-balances = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42"} + +spacewalk-primitives = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "d05b0015d15ca39cc780889bcc095335e9862a36"} + +[features] +default = ["std"] +std = [ + "serde", + "codec/std", + "sha2/std", + "sp-core/std", + "sp-std/std", + "sp-arithmetic/std", + "sp-runtime/std", + "frame-support/std", + "frame-system/std", + "orml-currencies/std", + "orml-tokens/std", + "orml-traits/std", + "frame-benchmarking/std", + "pallet-balances/std", + "spacewalk-primitives/std" +] + +runtime-benchmarks = [ + "frame-benchmarking/runtime-benchmarks", + "frame-support/runtime-benchmarks", + "frame-system/runtime-benchmarks", + "pallet-balances/runtime-benchmarks" +] + +try-runtime = [ + "frame-support/try-runtime", + "frame-system/try-runtime", + "orml-currencies/try-runtime", + "orml-tokens/try-runtime", + "pallet-balances/try-runtime" +] \ No newline at end of file diff --git a/pallets/treasury-buyout-extension/src/benchmarking.rs b/pallets/treasury-buyout-extension/src/benchmarking.rs new file mode 100644 index 000000000..49a4f221c --- /dev/null +++ b/pallets/treasury-buyout-extension/src/benchmarking.rs @@ -0,0 +1,74 @@ +#![allow(warnings)] +#![cfg(feature = "runtime-benchmarks")] + +use super::{Pallet as TreasuryBuyoutExtension, *}; +use crate::types::{AccountIdOf, BalanceOf, CurrencyIdOf}; +use frame_benchmarking::{account, benchmarks, impl_benchmark_test_suite, Vec}; +use frame_support::assert_ok; +use frame_system::RawOrigin; +use sp_std::prelude::*; + +// Mint some tokens to caller and treasury accounts +fn set_up_accounts(caller_account: &AccountIdOf, treasury_account: &AccountIdOf) { + let token_currency_id = T::RelayChainCurrencyId::get(); + let native_currency_id = ::GetNativeCurrencyId::get(); + + let amount: BalanceOf = 1_000_000_000_000_000u128.try_into().unwrap_or_default(); + + assert_ok!(<::Currency as MultiCurrency::>>::deposit( + token_currency_id, + &caller_account, + amount + )); + + assert_ok!(<::Currency as MultiCurrency::>>::deposit( + native_currency_id, + &treasury_account, + amount + )); +} + +benchmarks! { + buyout { + let token_currency_id = T::RelayChainCurrencyId::get(); + let native_currency_id = ::GetNativeCurrencyId::get(); + let caller_account = account("Caller", 0, 0); + let treasury_account = ::TreasuryAccount::get(); + set_up_accounts::(&caller_account, &treasury_account); + let origin = RawOrigin::Signed(caller_account.clone()); + let limit: BalanceOf = 100_000_000_000_000u128.try_into().unwrap_or_default(); + // Add token to allowed currencies for buyout + AllowedCurrencies::::insert(token_currency_id, ()); + BuyoutLimit::::put(limit); + // Set previous buyout limit to 0 + Buyouts::::insert(caller_account.clone(), (BalanceOf::::default(), 0)); + + }: buyout(origin, token_currency_id, Amount::Buyout(100_000_000_000_000u128.try_into().unwrap_or_default())) + verify{ + assert_eq!( + as MultiCurrency::>>::free_balance(native_currency_id, &caller_account), + 100_000_000_000_000u128.try_into().unwrap_or_default() + ); + } + + update_buyout_limit { + }: update_buyout_limit(RawOrigin::Root, Some(100_000_000_000_000u128.try_into().unwrap_or_default())) + + update_allowed_assets { + // This has to come first. Ranges are inclusive on both sides so we start from 1, see + // [here](https://tidelabs.github.io/tidechain/frame_benchmarking/v1/macro.benchmarks.html) + let n in 1..T::MaxAllowedBuyoutCurrencies::get(); + + let token_currency_id = T::RelayChainCurrencyId::get(); + + // It does not really matter that it's the same currency as the loop of the extrinsic + // will iterate over it the same amount of times. + let allowed_currencies = vec![token_currency_id; n as usize]; + }: update_allowed_assets(RawOrigin::Root, allowed_currencies) +} + +impl_benchmark_test_suite!( + TreasuryBuyoutExtension, + crate::mock::ExtBuilder::build(), + crate::mock::Test +); diff --git a/pallets/treasury-buyout-extension/src/default_weights.rs b/pallets/treasury-buyout-extension/src/default_weights.rs new file mode 100644 index 000000000..cfddf0368 --- /dev/null +++ b/pallets/treasury-buyout-extension/src/default_weights.rs @@ -0,0 +1,151 @@ + +//! Autogenerated weights for treasury_buyout_extension +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2024-02-13, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `Bogdans-M2-MacBook-Pro.local`, CPU: `` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("foucoco"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/pendulum-node +// benchmark +// pallet +// --chain +// foucoco +// --execution=wasm +// --wasm-execution=compiled +// --pallet +// treasury-buyout-extension +// --extrinsic +// * +// --steps +// 50 +// --repeat +// 20 +// --output +// pallets/treasury-buyout-extension/src/default_weights.rs +// --template +// .maintain/frame-weight-template.hbs + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::{Weight, constants::RocksDbWeight}}; +use core::marker::PhantomData; + +/// Weight functions needed for treasury_buyout_extension. +pub trait WeightInfo { + fn buyout() -> Weight; + fn update_buyout_limit() -> Weight; + fn update_allowed_assets(n: u32, ) -> Weight; +} + +/// Weights for treasury_buyout_extension using the Substrate node and recommended hardware. +pub struct SubstrateWeight(PhantomData); +impl WeightInfo for SubstrateWeight { + /// Storage: TreasuryBuyoutExtension AllowedCurrencies (r:1 w:0) + /// Proof: TreasuryBuyoutExtension AllowedCurrencies (max_values: None, max_size: Some(62), added: 2537, mode: MaxEncodedLen) + /// Storage: TreasuryBuyoutExtension BuyoutLimit (r:1 w:0) + /// Proof: TreasuryBuyoutExtension BuyoutLimit (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) + /// Storage: TreasuryBuyoutExtension Buyouts (r:1 w:1) + /// Proof: TreasuryBuyoutExtension Buyouts (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) + /// Storage: Tokens Accounts (r:2 w:2) + /// Proof: Tokens Accounts (max_values: None, max_size: Some(150), added: 2625, mode: MaxEncodedLen) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: Security ParachainStatus (r:0 w:1) + /// Proof Skipped: Security ParachainStatus (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Oracle OracleKeys (r:1 w:1) + /// Proof Skipped: Oracle OracleKeys (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Timestamp Now (r:1 w:0) + /// Proof: Timestamp Now (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) + fn buyout() -> Weight { + // Proof Size summary in bytes: + // Measured: `863` + // Estimated: `26038` + // Minimum execution time: 81_000_000 picoseconds. + Weight::from_parts(83_000_000, 26038) + .saturating_add(T::DbWeight::get().reads(7_u64)) + .saturating_add(T::DbWeight::get().writes(6_u64)) + } + /// Storage: TreasuryBuyoutExtension BuyoutLimit (r:0 w:1) + /// Proof: TreasuryBuyoutExtension BuyoutLimit (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) + fn update_buyout_limit() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 7_000_000 picoseconds. + Weight::from_parts(8_000_000, 0) + .saturating_add(T::DbWeight::get().writes(1_u64)) + } + /// Storage: TreasuryBuyoutExtension AllowedCurrencies (r:1 w:1) + /// Proof: TreasuryBuyoutExtension AllowedCurrencies (max_values: None, max_size: Some(62), added: 2537, mode: MaxEncodedLen) + /// The range of component `n` is `[1, 20]`. + fn update_allowed_assets(n: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `4` + // Estimated: `3527` + // Minimum execution time: 16_000_000 picoseconds. + Weight::from_parts(15_935_593, 3527) + // Standard Error: 3_669 + .saturating_add(Weight::from_parts(1_123_793, 0).saturating_mul(n.into())) + .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add(T::DbWeight::get().writes(1_u64)) + } +} + +// For backwards compatibility and tests +impl WeightInfo for () { + /// Storage: TreasuryBuyoutExtension AllowedCurrencies (r:1 w:0) + /// Proof: TreasuryBuyoutExtension AllowedCurrencies (max_values: None, max_size: Some(62), added: 2537, mode: MaxEncodedLen) + /// Storage: TreasuryBuyoutExtension BuyoutLimit (r:1 w:0) + /// Proof: TreasuryBuyoutExtension BuyoutLimit (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) + /// Storage: TreasuryBuyoutExtension Buyouts (r:1 w:1) + /// Proof: TreasuryBuyoutExtension Buyouts (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen) + /// Storage: Tokens Accounts (r:2 w:2) + /// Proof: Tokens Accounts (max_values: None, max_size: Some(150), added: 2625, mode: MaxEncodedLen) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: Security ParachainStatus (r:0 w:1) + /// Proof Skipped: Security ParachainStatus (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Oracle OracleKeys (r:1 w:1) + /// Proof Skipped: Oracle OracleKeys (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Timestamp Now (r:1 w:0) + /// Proof: Timestamp Now (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) + fn buyout() -> Weight { + // Proof Size summary in bytes: + // Measured: `863` + // Estimated: `26038` + // Minimum execution time: 81_000_000 picoseconds. + Weight::from_parts(83_000_000, 26038) + .saturating_add(RocksDbWeight::get().reads(7_u64)) + .saturating_add(RocksDbWeight::get().writes(6_u64)) + } + /// Storage: TreasuryBuyoutExtension BuyoutLimit (r:0 w:1) + /// Proof: TreasuryBuyoutExtension BuyoutLimit (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) + fn update_buyout_limit() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 7_000_000 picoseconds. + Weight::from_parts(8_000_000, 0) + .saturating_add(RocksDbWeight::get().writes(1_u64)) + } + /// Storage: TreasuryBuyoutExtension AllowedCurrencies (r:1 w:1) + /// Proof: TreasuryBuyoutExtension AllowedCurrencies (max_values: None, max_size: Some(62), added: 2537, mode: MaxEncodedLen) + /// The range of component `n` is `[1, 20]`. + fn update_allowed_assets(n: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `4` + // Estimated: `3527` + // Minimum execution time: 16_000_000 picoseconds. + Weight::from_parts(15_935_593, 3527) + // Standard Error: 3_669 + .saturating_add(Weight::from_parts(1_123_793, 0).saturating_mul(n.into())) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + .saturating_add(RocksDbWeight::get().writes(1_u64)) + } +} \ No newline at end of file diff --git a/pallets/treasury-buyout-extension/src/lib.rs b/pallets/treasury-buyout-extension/src/lib.rs new file mode 100644 index 000000000..1e76cc700 --- /dev/null +++ b/pallets/treasury-buyout-extension/src/lib.rs @@ -0,0 +1,621 @@ +#![deny(warnings)] +#![cfg_attr(test, feature(proc_macro_hygiene))] +#![cfg_attr(not(feature = "std"), no_std)] + +#[cfg(feature = "runtime-benchmarks")] +mod benchmarking; + +#[cfg(test)] +mod mock; + +pub mod default_weights; + +#[cfg(test)] +mod tests; + +mod types; + +use crate::{ + default_weights::WeightInfo, + types::{AccountIdOf, Amount, BalanceOf, CurrencyIdOf}, +}; +use codec::{Decode, Encode}; +use frame_support::{ + dispatch::{DispatchError, DispatchResult}, + ensure, + sp_runtime::SaturatedConversion, + traits::{Get, IsSubType}, + transactional, +}; +use orml_traits::MultiCurrency; +pub use pallet::*; +use sp_arithmetic::{ + per_things::Rounding, + traits::{CheckedAdd, Saturating}, +}; +use sp_runtime::{ + traits::{DispatchInfoOf, One, SignedExtension, Zero}, + transaction_validity::{ + InvalidTransaction, TransactionValidity, TransactionValidityError, ValidTransaction, + }, + ArithmeticError, FixedPointNumber, FixedU128, +}; +use sp_std::{fmt::Debug, marker::PhantomData, vec::Vec}; + +pub use pallet::*; + +#[frame_support::pallet] +pub mod pallet { + use super::*; + use frame_support::{pallet_prelude::*, sp_runtime::Permill}; + use frame_system::{ensure_root, ensure_signed, pallet_prelude::*}; + + #[pallet::config] + pub trait Config: frame_system::Config + orml_currencies::Config { + /// The overarching event type. + type RuntimeEvent: From> + IsType<::RuntimeEvent>; + + /// Used for currency-related operations + type Currency: MultiCurrency, CurrencyId = CurrencyIdOf>; + + /// Used for getting the treasury account + #[pallet::constant] + type TreasuryAccount: Get>; + + /// Buyout period in blocks in which a caller can buyout up to the amount limit stored in `BuyoutLimit` + /// When attempting to buyout after this period, the buyout limit is reset for the caller + #[pallet::constant] + type BuyoutPeriod: Get; + + /// Fee from the native asset buyouts + #[pallet::constant] + type SellFee: Get; + + /// Used for fetching prices of currencies from oracle + type PriceGetter: PriceGetter>; + + /// Min amount of native token to buyout + #[pallet::constant] + type MinAmountToBuyout: Get>; + + /// Maximum number of allowed currencies for buyout + #[pallet::constant] + type MaxAllowedBuyoutCurrencies: Get; + + /// Weight information for extrinsics in this pallet. + type WeightInfo: WeightInfo; + + /// Currency id of the relay chain, only used in benchmarks + #[cfg(feature = "runtime-benchmarks")] + type RelayChainCurrencyId: Get>; + } + + #[pallet::pallet] + pub struct Pallet(PhantomData); + + #[pallet::error] + pub enum Error { + /// Storage clearing of `AllowedCurrencies` failed + StorageClearingFailure, + /// Attempt to add native token to allowed assets + NativeTokenNotAllowed, + /// Exceeds number of allowed currencies for buyout + ExceedsNumberOfAllowedCurrencies, + /// Attempt to exchange native token to native token + WrongAssetToBuyout, + /// Buyout limit exceeded for the current period + BuyoutLimitExceeded, + /// One of transacted currencies is missing price information + NoPrice, + /// The treasury balance is too low for an operation + InsufficientTreasuryBalance, + /// The account balance is too low for an operation + InsufficientAccountBalance, + /// Less than minimum amoount allowed for buyout + LessThanMinBuyoutAmount, + /// Attempt to use treasury account for buyout + BuyoutWithTreasuryAccount, + /// Exchange failed + ExchangeFailure, + } + + #[pallet::event] + #[pallet::generate_deposit(pub(super) fn deposit_event)] + pub enum Event { + /// Buyout event + Buyout { + who: AccountIdOf, + buyout_amount: BalanceOf, + asset: CurrencyIdOf, + exchange_amount: BalanceOf, + }, + /// Buyout limit updated event + BuyoutLimitUpdated { limit: Option> }, + + /// Updated allowed assets for buyout event + AllowedAssetsForBuyoutUpdated { allowed_assets: Vec> }, + } + + /// Stores buyout limit amount user could buy for a period of `BuyoutPeriod` blocks. + /// Each user can buyout up to this amount in a period. After each period passes, buyout limit is reset + /// When `None` - buyouts are not limited + #[pallet::storage] + pub type BuyoutLimit = StorageValue<_, BalanceOf, OptionQuery>; + + /// Stores amount of buyouts (amount, block number of last buyout) + #[pallet::storage] + pub type Buyouts = + StorageMap<_, Blake2_128Concat, AccountIdOf, (BalanceOf, u32), ValueQuery>; + + /// Stores allowed currencies for buyout + #[pallet::storage] + pub(super) type AllowedCurrencies = + StorageMap<_, Blake2_128Concat, CurrencyIdOf, (), OptionQuery>; + + #[pallet::genesis_config] + pub struct GenesisConfig { + pub allowed_currencies: Vec>, + } + + #[cfg(feature = "std")] + impl Default for GenesisConfig { + fn default() -> Self { + Self { allowed_currencies: vec![] } + } + } + + #[pallet::genesis_build] + impl GenesisBuild for GenesisConfig { + fn build(&self) { + for i in &self.allowed_currencies.clone() { + AllowedCurrencies::::insert(i, ()); + } + } + } + + #[pallet::call] + impl Pallet { + /// Allows caller to buyout a given amount of native token. + /// When denoting the `amount` as `Buyout` the caller will receive this exact amount of the native token in exchange for a corresponding amount of an allowed asset. + /// When denoting the `amount` as `Exchange`, the caller will spend this exact amount of an allowed asset in exchange for a corresponding amount of the native token. + /// + /// Parameters + /// + /// - `origin`: Caller's origin. + /// - `asset`: Exchange asset used for buyout of basic asset. + /// - `amount`: Amount of basic asset to buyout or amount of asset to exchange. + /// + /// Emits `Buyout` event when successful. + #[pallet::call_index(0)] + #[pallet::weight((::WeightInfo::buyout(), Pays::No))] + pub fn buyout( + origin: OriginFor, + asset: CurrencyIdOf, + amount: Amount>, + ) -> DispatchResultWithPostInfo { + let who = ensure_signed(origin)?; + Self::do_buyout(who, asset, amount)?; + Ok(().into()) + } + + /// Allows root to update the buyout limit. + /// + /// Parameters + /// + /// - `origin`: Origin must be root. + /// - `limit`: New buyout limit. If None, then buyouts are not limited. + /// + /// Emits `BuyoutLimitUpdated` event when successful. + #[pallet::call_index(1)] + #[pallet::weight(::WeightInfo::update_buyout_limit())] + pub fn update_buyout_limit( + origin: OriginFor, + limit: Option>, + ) -> DispatchResultWithPostInfo { + ensure_root(origin)?; + match limit { + Some(limit) => BuyoutLimit::::put(limit), + None => BuyoutLimit::::kill(), + } + Self::deposit_event(Event::::BuyoutLimitUpdated { limit }); + Ok(().into()) + } + + /// Allows root to update the allowed currencies for buyout. + /// `AllowedCurrencies` storage will be reset and updated with provided `assets`. + /// + /// Parameters + /// + /// - `origin`: Origin must be root. + /// - `assets`: List of assets to be inserted into `AllowedCurrencies` storage. + /// + /// Emits `AllowedAssetsForBuyoutUpdated` event when successful. + #[pallet::call_index(2)] + #[pallet::weight(::WeightInfo::update_allowed_assets(T::MaxAllowedBuyoutCurrencies::get()))] + #[transactional] + pub fn update_allowed_assets( + origin: OriginFor, + assets: Vec>, + ) -> DispatchResultWithPostInfo { + ensure_root(origin)?; + + // Ensure number of currencies doesn't exceed the maximum allowed + let max_allowed_currencies_for_buyout = T::MaxAllowedBuyoutCurrencies::get(); + ensure!( + assets.len() <= max_allowed_currencies_for_buyout as usize, + Error::::ExceedsNumberOfAllowedCurrencies + ); + + // Ensure that native token is not allowed for buyout + let basic_asset = ::GetNativeCurrencyId::get(); + ensure!( + !assets.iter().any(|asset| *asset == basic_asset), + Error::::NativeTokenNotAllowed + ); + + // Clear `AllowedCurrencies` storage + // `AllowedCurrencies` should have at most `max_allowed_currencies_for_buyout` entries + let result = AllowedCurrencies::::clear(max_allowed_currencies_for_buyout, None); + // If storage clearing returns cursor which is `Some`, then clearing was not entirely successful + ensure!(result.maybe_cursor.is_none(), Error::::StorageClearingFailure); + + // Used for event data + let mut allowed_assets = Vec::new(); + + // Update `AllowedCurrencies` storage with provided `assets` + for asset in assets.clone() { + // Check for duplicates + if !AllowedCurrencies::::contains_key(&asset) { + AllowedCurrencies::::insert(asset, ()); + allowed_assets.push(asset); + } + } + + Self::deposit_event(Event::::AllowedAssetsForBuyoutUpdated { allowed_assets }); + Ok(().into()) + } + } +} + +impl Pallet { + /// Ensures that buyout limit is not exceeded for the current buyout period + fn ensure_buyout_limit_not_exceeded( + account_id: &AccountIdOf, + buyout_amount: BalanceOf, + ) -> DispatchResult { + if let Some(buyout_limit) = BuyoutLimit::::get() { + let buyout_period = T::BuyoutPeriod::get(); + // Get current block number + let current_block_number = + >::block_number().saturated_into::(); + let current_period_start_number = current_block_number + .checked_div(buyout_period) + .and_then(|n| Some(n.saturating_mul(buyout_period))) + .unwrap_or_default(); + let (mut buyouts, last_buyout) = Buyouts::::get(account_id); + + // Check if caller's last buyout was in the previous period + // If true, reset buyout amount limit for the caller since this is the first buyout in the current period + if !buyouts.is_zero() && last_buyout < current_period_start_number { + buyouts = Default::default(); + Buyouts::::insert(account_id, (buyouts, current_block_number)); + }; + + ensure!( + buyouts.saturating_add(buyout_amount) <= buyout_limit, + Error::::BuyoutLimitExceeded + ); + } + + Ok(()) + } + + /// Ensures that asset is allowed for buyout + fn ensure_asset_allowed_for_buyout(asset: &CurrencyIdOf) -> DispatchResult { + ensure!(AllowedCurrencies::::get(asset) == Some(()), Error::::WrongAssetToBuyout); + + Ok(()) + } + + /// Updates buyouts storage for the account + fn update_buyouts(account_id: &AccountIdOf, buyout_amount: BalanceOf) { + if BuyoutLimit::::get().is_some() { + Buyouts::::mutate(account_id, |(prev_buyouts, last)| { + *prev_buyouts = prev_buyouts.saturating_add(buyout_amount); + *last = >::block_number().saturated_into::(); + }); + } + } + + /// Used for calculating amount of exchange asset user will get for buyout_amount of basic asset + fn calc_amount_to_exchange( + asset: CurrencyIdOf, + buyout_amount: BalanceOf, + ) -> Result, DispatchError> { + let basic_asset = ::GetNativeCurrencyId::get(); + ensure!(asset != basic_asset, Error::::WrongAssetToBuyout); + + let (basic_asset_price, exchange_asset_price) = Self::fetch_prices((&basic_asset, &asset))?; + + // Add fee to the basic asset price + let fee_plus_one = FixedU128::from(T::SellFee::get()) + .checked_add(&FixedU128::one()) + .ok_or::(ArithmeticError::Overflow.into())?; + let basic_asset_price_with_fee = basic_asset_price.saturating_mul(fee_plus_one); + + let exchange_amount = Self::multiply_by_rational( + buyout_amount.saturated_into::(), + basic_asset_price_with_fee.into_inner(), + exchange_asset_price.into_inner(), + ) + .map(|n| n.try_into().ok()) + .flatten() + .ok_or(ArithmeticError::Overflow.into()); + + exchange_amount + } + + /// Used for calculating buyout amount of basic asset user will get for exchange_amount of exchange asset + fn calc_buyout_amount( + asset: CurrencyIdOf, + exchange_amount: BalanceOf, + ) -> Result, DispatchError> { + let basic_asset = ::GetNativeCurrencyId::get(); + + ensure!(asset != basic_asset, Error::::WrongAssetToBuyout); + + let (basic_asset_price, exchange_asset_price) = Self::fetch_prices((&basic_asset, &asset))?; + + // Add fee to the basic asset price + let fee_plus_one = FixedU128::from(T::SellFee::get()) + .checked_add(&FixedU128::one()) + .ok_or::(ArithmeticError::Overflow.into())?; + let basic_asset_price_with_fee = basic_asset_price.saturating_mul(fee_plus_one); + + let buyout_amount = Self::multiply_by_rational( + exchange_amount.saturated_into::(), + exchange_asset_price.into_inner(), + basic_asset_price_with_fee.into_inner(), + ) + .map(|b| b.try_into().ok()) + .flatten() + .ok_or(ArithmeticError::Overflow.into()); + + buyout_amount + } + + /// Used for splitting calculations of amount based on the input given + /// If user's call contains buyout amount, then exchange amount is calculated and viceversa + fn split_to_buyout_and_exchange( + asset: CurrencyIdOf, + amount: Amount>, + ) -> Result<(BalanceOf, BalanceOf), DispatchError> { + match amount { + Amount::Buyout(buyout_amount) => { + let exchange_amount = Self::calc_amount_to_exchange(asset, buyout_amount)?; + Ok((buyout_amount, exchange_amount)) + }, + Amount::Exchange(exchange_amount) => { + let buyout_amount = Self::calc_buyout_amount(asset, exchange_amount)?; + Ok((buyout_amount, exchange_amount)) + }, + } + } + + fn do_buyout( + who: AccountIdOf, + asset: CurrencyIdOf, + amount: Amount>, + ) -> DispatchResult { + Self::ensure_asset_allowed_for_buyout(&asset)?; + + let basic_asset = ::GetNativeCurrencyId::get(); + let (buyout_amount, exchange_amount) = Self::split_to_buyout_and_exchange(asset, amount)?; + + Self::ensure_buyout_limit_not_exceeded(&who, buyout_amount)?; + let treasury_account_id = T::TreasuryAccount::get(); + + // Start exchanging + // Check for same accounts + if who == treasury_account_id { + return Err(Error::::BuyoutWithTreasuryAccount.into()) + } + // Check for exchanging zero values + if exchange_amount.is_zero() && buyout_amount.is_zero() { + return Err(Error::::LessThanMinBuyoutAmount.into()) + } + + // Check both balances before transfer + let user_balance = T::Currency::free_balance(asset, &who); + let treasury_balance = T::Currency::free_balance(basic_asset, &treasury_account_id); + + if user_balance < exchange_amount { + return Err(Error::::InsufficientAccountBalance.into()) + } + if treasury_balance < buyout_amount { + return Err(Error::::InsufficientTreasuryBalance.into()) + } + + // Transfer from user account to treasury then viceversa + T::Currency::transfer(asset, &who, &treasury_account_id, exchange_amount) + .map_err(|_| Error::::ExchangeFailure)?; + T::Currency::transfer(basic_asset, &treasury_account_id, &who, buyout_amount) + .map_err(|_| Error::::ExchangeFailure)?; + + Self::update_buyouts(&who, buyout_amount); + Self::deposit_event(Event::::Buyout { who, buyout_amount, asset, exchange_amount }); + + Ok(()) + } + + /// Used for calculating exchange amount based on buyout amount(a), price of basic asset with fee(b) and price of exchange asset(c) + /// or buyout amount based on exchange amount(a), price of exchange asset(b) and price of basic asset with fee(c) + fn multiply_by_rational( + a: impl Into, + b: impl Into, + c: impl Into, + ) -> Option { + // return a * b / c + sp_runtime::helpers_128bit::multiply_by_rational_with_rounding( + a.into(), + b.into(), + c.into(), + Rounding::NearestPrefDown, + ) + } + + /// Used for fetching asset prices + /// The concrete implementation of PriceGetter trait must be provided by the runtime e.g. oracle pallet + fn fetch_prices( + assets: (&CurrencyIdOf, &CurrencyIdOf), + ) -> Result<(FixedU128, FixedU128), DispatchError> { + let basic_asset_price: FixedU128 = T::PriceGetter::get_price::(*assets.0) + .map_err(|_| Error::::NoPrice)? + .into(); + let exchange_asset_price: FixedU128 = T::PriceGetter::get_price::(*assets.1) + .map_err(|_| Error::::NoPrice)? + .into(); + Ok((basic_asset_price, exchange_asset_price)) + } +} + +/// Used for fetching prices of assets +/// This trait must be implemented by the runtime e.g. oracle pallet +pub trait PriceGetter +where + CurrencyId: Clone + PartialEq + Eq + Debug, +{ + /// Gets a current price for a given currency + fn get_price>( + currency_id: CurrencyId, + ) -> Result; +} + +/// Buyout validity errors +#[repr(u8)] +pub enum ValidityError { + /// Account balance is too low to make buyout + NotEnoughToBuyout = 0, + /// Math error + Math = 1, + /// Buyout limit exceeded + BuyoutLimitExceeded = 2, + /// Amount to buyout less than min amount + LessThanMinBuyoutAmount = 3, + /// Wrong asset + WrongAssetToBuyout = 4, +} + +impl From for u8 { + fn from(err: ValidityError) -> Self { + err as u8 + } +} + +#[derive(Encode, Decode, Clone, Eq, PartialEq, scale_info::TypeInfo)] +pub struct CheckBuyout(PhantomData) +where + ::RuntimeCall: IsSubType>; + +impl Debug for CheckBuyout +where + ::RuntimeCall: IsSubType>, +{ + #[cfg(feature = "std")] + fn fmt(&self, f: &mut sp_std::fmt::Formatter) -> sp_std::fmt::Result { + write!(f, "CheckBuyout") + } + + #[cfg(not(feature = "std"))] + fn fmt(&self, _: &mut sp_std::fmt::Formatter) -> sp_std::fmt::Result { + Ok(()) + } +} + +impl Default for CheckBuyout +where + ::RuntimeCall: IsSubType>, +{ + fn default() -> Self { + Self(PhantomData) + } +} + +impl CheckBuyout +where + ::RuntimeCall: IsSubType>, +{ + pub fn new() -> Self { + Self(PhantomData) + } +} + +impl SignedExtension for CheckBuyout +where + ::RuntimeCall: IsSubType>, +{ + const IDENTIFIER: &'static str = "CheckBuyout"; + type AccountId = AccountIdOf; + type Call = T::RuntimeCall; + type AdditionalSigned = (); + type Pre = (); + + fn additional_signed(&self) -> Result { + Ok(()) + } + + fn pre_dispatch( + self, + who: &Self::AccountId, + call: &Self::Call, + info: &DispatchInfoOf, + len: usize, + ) -> Result { + self.validate(who, call, info, len) + .map(|_| Self::Pre::default()) + .map_err(Into::into) + } + + /// Checks: + /// - asset is allowed for buyout + /// - buyout amount is greater or equal `MinAmountToBuyout` + /// - `who` has enough balance to make buyout + /// - buyout limit is not exceeded for `who` + fn validate( + &self, + who: &Self::AccountId, + call: &Self::Call, + _info: &DispatchInfoOf, + _len: usize, + ) -> TransactionValidity { + if let Some(local_call) = call.is_sub_type() { + if let Call::buyout { asset, amount } = local_call { + Pallet::::ensure_asset_allowed_for_buyout(asset).map_err(|_| { + InvalidTransaction::Custom(ValidityError::WrongAssetToBuyout.into()) + })?; + + let (buyout_amount, exchange_amount) = + Pallet::::split_to_buyout_and_exchange(*asset, *amount) + .map_err(|_| InvalidTransaction::Custom(ValidityError::Math.into()))?; + + ensure!( + buyout_amount >= T::MinAmountToBuyout::get(), + InvalidTransaction::Custom(ValidityError::LessThanMinBuyoutAmount.into()) + ); + + let free_balance = T::Currency::free_balance(*asset, who); + + ensure!( + free_balance >= exchange_amount, + InvalidTransaction::Custom(ValidityError::NotEnoughToBuyout.into()) + ); + + Pallet::::ensure_buyout_limit_not_exceeded(who, buyout_amount).map_err( + |_| InvalidTransaction::Custom(ValidityError::BuyoutLimitExceeded.into()), + )?; + } + } + + Ok(ValidTransaction::default()) + } +} diff --git a/pallets/treasury-buyout-extension/src/mock.rs b/pallets/treasury-buyout-extension/src/mock.rs new file mode 100644 index 000000000..fccc10231 --- /dev/null +++ b/pallets/treasury-buyout-extension/src/mock.rs @@ -0,0 +1,246 @@ +use crate::{ + self as treasury_buyout_extension, default_weights::SubstrateWeight, Config, PriceGetter, +}; +use frame_support::{ + pallet_prelude::GenesisBuild, + parameter_types, + traits::{ConstU32, Everything}, +}; +use orml_currencies::BasicCurrencyAdapter; +use orml_traits::parameter_type_with_key; +use sp_arithmetic::{FixedPointNumber, FixedU128, Permill}; +use sp_core::H256; +use sp_runtime::{ + testing::Header, + traits::{BlakeTwo256, IdentityLookup, One, Zero}, + DispatchError, +}; +use sp_std::fmt::Debug; + +type UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic; +type Block = frame_system::mocking::MockBlock; + +pub const UNIT: Balance = 1_000_000_000_000; + +// Configure a mock runtime to test the pallet. +frame_support::construct_runtime!( + pub enum Test where + Block = Block, + NodeBlock = Block, + UncheckedExtrinsic = UncheckedExtrinsic, + { + System: frame_system::{Pallet, Call, Storage, Config, Event}, + Tokens: orml_tokens::{Pallet, Storage, Config, Event}, + Balances: pallet_balances::{Pallet, Call, Storage, Event}, + Currencies: orml_currencies::{Pallet, Call}, + TreasuryBuyoutExtension: treasury_buyout_extension::{Pallet, Storage, Call, Event}, + } +); + +pub type AccountId = u64; +pub type Balance = u128; +pub type BlockNumber = u64; +pub type Index = u64; +pub type Amount = i64; +pub type CurrencyId = u64; + +parameter_types! { + pub const BlockHashCount: u64 = 250; + pub const SS58Prefix: u8 = 42; +} +impl frame_system::Config for Test { + type BaseCallFilter = Everything; + type BlockWeights = (); + type BlockLength = (); + type DbWeight = (); + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + type Index = Index; + type BlockNumber = BlockNumber; + type Hash = H256; + type Hashing = BlakeTwo256; + type AccountId = AccountId; + type Lookup = IdentityLookup; + type Header = Header; + type RuntimeEvent = TestEvent; + type BlockHashCount = BlockHashCount; + type Version = (); + type PalletInfo = PalletInfo; + type AccountData = pallet_balances::AccountData; + type OnNewAccount = (); + type OnKilledAccount = (); + type SystemWeightInfo = (); + type SS58Prefix = SS58Prefix; + type OnSetCode = (); + type MaxConsumers = frame_support::traits::ConstU32<16>; +} + +pub type TestEvent = RuntimeEvent; + +parameter_types! { + pub const MaxLocks: u32 = 50; + pub const GetNativeCurrencyId: CurrencyId = u64::MAX; + pub const RelayChainCurrencyId: CurrencyId = 0u64; +} + +parameter_type_with_key! { + pub ExistentialDeposits: |_currency_id: CurrencyId| -> Balance { + 0 + }; +} + +pub struct CurrencyHooks(sp_std::marker::PhantomData); +impl + orml_traits::currency::MutationHooks for CurrencyHooks +{ + type OnDust = orml_tokens::BurnDust; + type OnSlash = (); + type PreDeposit = (); + type PostDeposit = (); + type PreTransfer = (); + type PostTransfer = (); + type OnNewTokenAccount = (); + type OnKilledTokenAccount = (); +} + +impl orml_tokens::Config for Test { + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type Amount = Amount; + type CurrencyId = CurrencyId; + type WeightInfo = (); + type ExistentialDeposits = ExistentialDeposits; + type CurrencyHooks = CurrencyHooks; + type MaxLocks = MaxLocks; + type MaxReserves = ConstU32<0>; + type ReserveIdentifier = (); + type DustRemovalWhitelist = Everything; +} + +parameter_types! { + pub const ExistentialDeposit: Balance = 1000; + pub const MaxReserves: u32 = 50; + pub const TreasuryAccount: AccountId = u64::MAX; + pub const SellFee: Permill = Permill::from_percent(1); + pub const MinAmountToBuyout: Balance = 100 * UNIT; + // 24 hours in blocks (where average block time is 12 seconds) + pub const BuyoutPeriod: u32 = 7200; + // Maximum number of allowed currencies for buyout + pub const MaxAllowedBuyoutCurrencies: u32 = 20; +} + +impl pallet_balances::Config for Test { + type MaxLocks = MaxLocks; + type Balance = Balance; + type RuntimeEvent = RuntimeEvent; + type DustRemoval = (); + type ExistentialDeposit = ExistentialDeposit; + type AccountStore = System; + type WeightInfo = pallet_balances::weights::SubstrateWeight; + type MaxReserves = MaxReserves; + type ReserveIdentifier = (); + type FreezeIdentifier = (); + type MaxFreezes = (); + type MaxHolds = ConstU32<1>; + type HoldIdentifier = RuntimeHoldReason; +} + +impl orml_currencies::Config for Test { + type MultiCurrency = Tokens; + type NativeCurrency = BasicCurrencyAdapter; + type GetNativeCurrencyId = GetNativeCurrencyId; + type WeightInfo = (); +} + +pub struct OracleMock; +impl PriceGetter for OracleMock { + fn get_price(currency_id: CurrencyId) -> Result + where + FixedNumber: FixedPointNumber + One + Zero + Debug + TryFrom, + { + // This simulates price fetching error for testing pre_dispatch validation but only for one specific supported asset + if currency_id == 2u64 { + return Err(DispatchError::Other("No price")) + } + + let price: FixedNumber = FixedNumber::one() + .try_into() + .map_err(|_| DispatchError::Other("FixedU128 convert"))?; + Ok(price) + } +} + +impl Config for Test { + /// The overarching event type. + type RuntimeEvent = RuntimeEvent; + /// Used for currency-related operations + type Currency = Currencies; + /// Used for getting the treasury account + type TreasuryAccount = TreasuryAccount; + /// Buyout period in blocks + type BuyoutPeriod = BuyoutPeriod; + /// Fee from the native asset buyouts + type SellFee = SellFee; + /// Used for fetching prices of currencies from oracle + type PriceGetter = OracleMock; + /// Min amount of native token to buyout + type MinAmountToBuyout = MinAmountToBuyout; + /// Maximum number of storage updates for allowed currencies in one extrinsic call + type MaxAllowedBuyoutCurrencies = MaxAllowedBuyoutCurrencies; + /// Weight information for extrinsics in this pallet. + type WeightInfo = SubstrateWeight; + /// Currency id of relay chain + #[cfg(feature = "runtime-benchmarks")] + type RelayChainCurrencyId = RelayChainCurrencyId; +} + +// ------- Constants and Genesis Config ------ // + +pub const USER: u64 = 0; +pub const TREASURY_ACCOUNT: u64 = TreasuryAccount::get(); + +pub const USERS_INITIAL_BALANCE: u128 = 200 * UNIT; +pub const TREASURY_INITIAL_BALANCE: u128 = 1000 * UNIT; + +pub struct ExtBuilder; + +impl ExtBuilder { + pub fn build() -> sp_io::TestExternalities { + let mut storage = frame_system::GenesisConfig::default().build_storage::().unwrap(); + + let dot_currency_id = RelayChainCurrencyId::get(); + + orml_tokens::GenesisConfig:: { + balances: vec![(USER, dot_currency_id, USERS_INITIAL_BALANCE)], + } + .assimilate_storage(&mut storage) + .unwrap(); + + pallet_balances::GenesisConfig:: { + balances: vec![ + (USER, USERS_INITIAL_BALANCE), + (TREASURY_ACCOUNT, TREASURY_INITIAL_BALANCE), + ], + } + .assimilate_storage(&mut storage) + .unwrap(); + + treasury_buyout_extension::GenesisConfig:: { + allowed_currencies: vec![dot_currency_id, 1, 2, 6], + } + .assimilate_storage(&mut storage) + .unwrap(); + + sp_io::TestExternalities::from(storage) + } +} + +pub fn run_test(test: T) +where + T: FnOnce(), +{ + ExtBuilder::build().execute_with(|| { + System::set_block_number(1); + test(); + }); +} diff --git a/pallets/treasury-buyout-extension/src/tests.rs b/pallets/treasury-buyout-extension/src/tests.rs new file mode 100644 index 000000000..d3a0957b6 --- /dev/null +++ b/pallets/treasury-buyout-extension/src/tests.rs @@ -0,0 +1,653 @@ +#![cfg(test)] +use crate::{ + mock::*, + types::{Amount, CurrencyIdOf}, + BuyoutLimit, Buyouts, Config, Error, PriceGetter, ValidityError, +}; +use frame_support::{assert_err, assert_noop, assert_ok}; +use orml_traits::MultiCurrency; +use sp_arithmetic::{traits::One, FixedU128}; +use sp_runtime::{ + traits::BadOrigin, + transaction_validity::{InvalidTransaction, TransactionValidityError}, + SaturatedConversion, +}; + +fn get_free_balance(currency_id: CurrencyIdOf, account: &AccountId) -> Balance { + as MultiCurrency>::free_balance(currency_id, account) +} + +fn run_to_block(new_block: ::BlockNumber) { + frame_system::Pallet::::set_block_number(new_block); +} + +#[test] +fn buyout_using_dot_given_exchange_amount_in_dot_succeeds() { + run_test(|| { + let user = USER; + let dot_currency_id = RelayChainCurrencyId::get(); + let initial_user_dot_balance = get_free_balance(dot_currency_id, &user); + let initial_treasury_dot_balance = + get_free_balance(dot_currency_id, &TreasuryAccount::get()); + + let initial_user_native_balance = get_free_balance(GetNativeCurrencyId::get(), &user); + let initial_treasury_native_balance = + get_free_balance(GetNativeCurrencyId::get(), &TreasuryAccount::get()); + + assert_eq!(initial_user_native_balance, USERS_INITIAL_BALANCE); + assert_eq!(initial_treasury_native_balance, TREASURY_INITIAL_BALANCE); + + let exchange_amount = 100 * UNIT; + assert_ok!(crate::Pallet::::buyout( + RuntimeOrigin::signed(user), + dot_currency_id, + Amount::Exchange(exchange_amount), + )); + + // Fetch prices from Oracle mock + let basic_asset_price = >>::get_price::< + FixedU128, + >(GetNativeCurrencyId::get()) + .expect("This is mocked so it should not fail"); + let exchange_asset_price = >>::get_price::< + FixedU128, + >(dot_currency_id) + .expect("This is mocked so it should not fail"); + + // Add fee to basic asset price + let basic_asset_price_with_fee = + basic_asset_price * (FixedU128::from(SellFee::get()) + FixedU128::one()); + + // Calculate Native buyout amount + let buyout_amount = crate::Pallet::::multiply_by_rational( + exchange_amount, + exchange_asset_price.into_inner(), + basic_asset_price_with_fee.into_inner(), + ) + .expect("This is mocked so it should not fail"); + + let final_user_dot_balance = get_free_balance(dot_currency_id, &user); + let final_user_native_balance = get_free_balance(GetNativeCurrencyId::get(), &user); + + let final_treasury_dot_balance = get_free_balance(dot_currency_id, &TreasuryAccount::get()); + let final_treasury_native_balance = + get_free_balance(GetNativeCurrencyId::get(), &TreasuryAccount::get()); + + assert_eq!(final_user_dot_balance, initial_user_dot_balance - exchange_amount); + assert_eq!(final_treasury_dot_balance, initial_treasury_dot_balance + exchange_amount); + + assert_eq!(final_user_native_balance, initial_user_native_balance + buyout_amount); + assert_eq!(final_treasury_native_balance, initial_treasury_native_balance - buyout_amount); + + // Verify Buyout event was emitted + assert!(System::events().iter().any(|record| matches!( + record.event, + TestEvent::TreasuryBuyoutExtension(crate::Event::Buyout { who, buyout_amount: amount, .. }) + if who == user && amount == buyout_amount + ))); + }); +} + +#[test] +fn buyout_using_dot_given_buyout_amount_in_native_succeeds() { + run_test(|| { + let user = USER; + let dot_currency_id = RelayChainCurrencyId::get(); + let initial_user_dot_balance = get_free_balance(dot_currency_id, &user); + let initial_treasury_dot_balance = + get_free_balance(dot_currency_id, &TreasuryAccount::get()); + + let initial_user_native_balance = get_free_balance(GetNativeCurrencyId::get(), &user); + let initial_treasury_native_balance = + get_free_balance(GetNativeCurrencyId::get(), &TreasuryAccount::get()); + + assert_eq!(initial_user_native_balance, USERS_INITIAL_BALANCE); + assert_eq!(initial_treasury_native_balance, TREASURY_INITIAL_BALANCE); + + let buyout_amount = 100 * UNIT; + assert_ok!(crate::Pallet::::buyout( + RuntimeOrigin::signed(user), + dot_currency_id, + Amount::Buyout(buyout_amount), + )); + + // Fetch prices from Oracle mock + let basic_asset_price = >>::get_price::< + FixedU128, + >(GetNativeCurrencyId::get()) + .expect("This is mocked so it should not fail"); + let exchange_asset_price = >>::get_price::< + FixedU128, + >(dot_currency_id) + .expect("This is mocked so it should not fail"); + + // Add fee to basic asset price + let basic_asset_price_with_fee = + basic_asset_price * (FixedU128::from(SellFee::get()) + FixedU128::one()); + + // Calculate DOT exchange amount + let exchange_amount = crate::Pallet::::multiply_by_rational( + buyout_amount, + basic_asset_price_with_fee.into_inner(), + exchange_asset_price.into_inner(), + ) + .expect("This is mocked so it should not fail"); + + let final_user_dot_balance = get_free_balance(dot_currency_id, &user); + let final_user_native_balance = get_free_balance(GetNativeCurrencyId::get(), &user); + + let final_treasury_dot_balance = get_free_balance(dot_currency_id, &TreasuryAccount::get()); + let final_treasury_native_balance = + get_free_balance(GetNativeCurrencyId::get(), &TreasuryAccount::get()); + + assert_eq!(final_user_dot_balance, initial_user_dot_balance - exchange_amount); + assert_eq!(final_treasury_dot_balance, initial_treasury_dot_balance + exchange_amount); + + assert_eq!(final_user_native_balance, initial_user_native_balance + buyout_amount); + assert_eq!(final_treasury_native_balance, initial_treasury_native_balance - buyout_amount); + + // Verify Buyout event was emitted + assert!(System::events().iter().any(|record| matches!( + record.event, + TestEvent::TreasuryBuyoutExtension(crate::Event::Buyout { who, buyout_amount: amount, .. }) + if who == user && amount == buyout_amount + ))); + }); +} + +#[test] +fn root_update_buyout_amount_limit_succeeds() { + run_test(|| { + let buyout_amount_limit = 200 * UNIT; + assert_ok!(crate::Pallet::::update_buyout_limit( + RuntimeOrigin::root(), + Some(buyout_amount_limit.into()), + )); + + assert_eq!(BuyoutLimit::::get(), buyout_amount_limit.into()); + + let buyout_amount_limit = None; + assert_ok!(crate::Pallet::::update_buyout_limit( + RuntimeOrigin::root(), + buyout_amount_limit, + )); + + assert_eq!(BuyoutLimit::::get(), buyout_amount_limit); + }); +} + +#[test] +fn user_update_buyout_amount_limit_fails() { + run_test(|| { + let user = USER; + + let buyout_amount_limit = 200 * UNIT; + assert_noop!( + crate::Pallet::::update_buyout_limit( + RuntimeOrigin::signed(user), + Some(buyout_amount_limit.into()), + ), + BadOrigin + ); + }); +} + +#[test] +fn root_update_allowed_currencies_succeeds() { + run_test(|| { + let dot_currency_id = RelayChainCurrencyId::get(); + + // Since dot is already added to allowed currencies in the genesis, provide some other allowed currencies that will overwrite the storage + let allowed_currencies = vec![1u64, 2u64, 3u64]; + + assert_ok!(crate::Pallet::::update_allowed_assets( + RuntimeOrigin::root(), + allowed_currencies + )); + + // Test user buyout after allowed currencies update + // It should fail because dot is not allowed for buyout + let user = USER; + let exchange_amount = 100 * UNIT; + + assert_noop!( + crate::Pallet::::buyout( + RuntimeOrigin::signed(user), + dot_currency_id, + Amount::Exchange(exchange_amount), + ), + Error::::WrongAssetToBuyout + ); + + // Add dot back to allowed currencies among some others + // Order of insertion is the order of the currencies in the input vector + let allowed_currencies = vec![ + 3u64, + // Duplicating the same currency should not fail + 3u64, + 2u64, + dot_currency_id, + 6u64, + ]; + + assert_ok!(crate::Pallet::::update_allowed_assets( + RuntimeOrigin::root(), + allowed_currencies + )); + + // Expected allowed currencies after update + // Order of insertion in the storage respects the order of the currencies in the input vector + // The order of the currencies in the event vector is the order of insertion + // Duplicates are skipped + let expected_allowed_currencies = vec![3u64, 2u64, dot_currency_id, 6u64]; + + assert!(System::events().iter().any(|r| matches!( + r.event, + RuntimeEvent::TreasuryBuyoutExtension(crate::Event::AllowedAssetsForBuyoutUpdated { allowed_assets: ref a }) if a == &expected_allowed_currencies + ))); + + // Test user buyout after allowed currencies update + // It should succeed because dot is now allowed for buyout + assert_ok!(crate::Pallet::::buyout( + RuntimeOrigin::signed(user), + dot_currency_id, + Amount::Exchange(exchange_amount), + )); + }); +} + +#[test] +fn user_update_allowed_currencies_fails() { + run_test(|| { + let user = USER; + + let allowed_currencies = vec![1u64, 2u64, 3u64, 4u64, 6u64]; + + assert_noop!( + crate::Pallet::::update_allowed_assets( + RuntimeOrigin::signed(user), + allowed_currencies + ), + BadOrigin + ); + }); +} + +#[test] +fn root_update_allowed_currencies_with_native_fails() { + run_test(|| { + let native_currency_id = GetNativeCurrencyId::get(); + + let allowed_currencies = vec![1u64, 3u64, 6u64, native_currency_id]; + + assert_noop!( + crate::Pallet::::update_allowed_assets(RuntimeOrigin::root(), allowed_currencies), + Error::::NativeTokenNotAllowed + ); + }); +} + +#[test] +fn root_attempt_update_allowed_currencies_exceeds_limit_fails() { + run_test(|| { + let max_allowed_currencies_for_buyout = MaxAllowedBuyoutCurrencies::get() as usize; + let exceeding_currencies_number = max_allowed_currencies_for_buyout + 1; + + // Create vector with currencies that exceeds the maximum number of allowed currencies for buyout + let mut allowed_currencies = Vec::with_capacity(max_allowed_currencies_for_buyout); + for i in 0..exceeding_currencies_number { + allowed_currencies.push(i as u64); + } + + assert_noop!( + crate::Pallet::::update_allowed_assets(RuntimeOrigin::root(), allowed_currencies), + Error::::ExceedsNumberOfAllowedCurrencies + ); + }); +} + +#[test] +fn attempt_buyout_with_wrong_currency_fails() { + run_test(|| { + let user = USER; + let native_currency_id = GetNativeCurrencyId::get(); + let initial_user_native_balance = get_free_balance(native_currency_id, &user); + let initial_treasury_native_balance = + get_free_balance(native_currency_id, &TreasuryAccount::get()); + + assert_eq!(initial_user_native_balance, USERS_INITIAL_BALANCE); + assert_eq!(initial_treasury_native_balance, TREASURY_INITIAL_BALANCE); + + let buyout_amount = 100 * UNIT; + assert_noop!( + crate::Pallet::::buyout( + RuntimeOrigin::signed(user), + native_currency_id, + Amount::Buyout(buyout_amount), + ), + Error::::WrongAssetToBuyout + ); + + assert_eq!(initial_user_native_balance, USERS_INITIAL_BALANCE); + assert_eq!(initial_treasury_native_balance, TREASURY_INITIAL_BALANCE); + + let exchange_amount = 100 * UNIT; + assert_noop!( + crate::Pallet::::buyout( + RuntimeOrigin::signed(user), + native_currency_id, + Amount::Exchange(exchange_amount), + ), + Error::::WrongAssetToBuyout + ); + + assert_eq!(initial_user_native_balance, USERS_INITIAL_BALANCE); + assert_eq!(initial_treasury_native_balance, TREASURY_INITIAL_BALANCE); + }); +} + +#[test] +fn buyout_with_previous_existing_buyouts_succeeds() { + run_test(|| { + let user = USER; + let dot_currency_id = RelayChainCurrencyId::get(); + let exchange_amount = 100 * UNIT; + + // With buyout limit and buyouts of previous periods + BuyoutLimit::::put(200 * UNIT); + Buyouts::::insert(user, (100 * UNIT, 0)); + + assert_ok!(crate::Pallet::::buyout( + RuntimeOrigin::signed(user), + dot_currency_id, + Amount::Exchange(exchange_amount), + )); + }); +} + +#[test] +fn attempt_buyout_after_buyout_limit_exceeded_fails() { + run_test(|| { + let user = USER; + let dot_currency_id = RelayChainCurrencyId::get(); + let exchange_amount = 100 * UNIT; + + let current_block = frame_system::Pallet::::block_number().saturated_into::(); + + // With buyout limit + BuyoutLimit::::put(150 * UNIT); + // Buyout at current_block + Buyouts::::insert(user, (100 * UNIT, current_block)); + + assert_eq!(Buyouts::::get(user), (100 * UNIT, current_block)); + + // Skip to exactly the last block before the buyout period ends + let buyout_period: u32 = BuyoutPeriod::get(); + let new_current_block = buyout_period - 1; + run_to_block((new_current_block).into()); + + // This buyout attempt for 100 * UNIT should fail because the limit is exceeded for the current period + // Buyout limit is 150 * UNIT and the previous buyout was 100 * UNIT + assert_noop!( + crate::Pallet::::buyout( + RuntimeOrigin::signed(user), + dot_currency_id, + Amount::Exchange(exchange_amount), + ), + Error::::BuyoutLimitExceeded + ); + }); +} + +#[test] +fn buyout_after_buyout_limit_reset_succeeds() { + run_test(|| { + let user = USER; + let dot_currency_id = RelayChainCurrencyId::get(); + let buyout_amount = 100 * UNIT; + + let current_block = frame_system::Pallet::::block_number().saturated_into::(); + + // With buyout limit + BuyoutLimit::::put(200 * UNIT); + // Previous buyout at current_block + Buyouts::::insert(user, (150 * UNIT, current_block)); + + assert_eq!(Buyouts::::get(user), (150 * UNIT, current_block)); + + let buyout_period: u32 = BuyoutPeriod::get(); + // Skip buyout_period + 1 blocks, when the initial buyout period has already passed + run_to_block((current_block + buyout_period + 1).into()); + + assert_ok!(crate::Pallet::::buyout( + RuntimeOrigin::signed(user), + dot_currency_id, + Amount::Buyout(buyout_amount), + )); + + let new_current_block = + frame_system::Pallet::::block_number().saturated_into::(); + // Buyouts should be reset and the total buyout amount should be equal to the last buyout amount + assert_eq!(Buyouts::::get(user), (100 * UNIT, new_current_block)); + }); +} + +#[test] +fn attempt_buyout_with_insufficient_user_balance_fails() { + run_test(|| { + let user = USER; + let dot_currency_id = RelayChainCurrencyId::get(); + let buyout_amount = 10000 * UNIT; + + // This buyout attempt should fail because the user balance is insufficient + assert_noop!( + crate::Pallet::::buyout( + RuntimeOrigin::signed(user), + dot_currency_id, + Amount::Buyout(buyout_amount), + ), + Error::::InsufficientAccountBalance + ); + }); +} + +#[test] +fn attempt_buyout_with_insufficient_treasury_balance_fails() { + run_test(|| { + let user = USER; + let native_currency_id = GetNativeCurrencyId::get(); + let dot_currency_id = RelayChainCurrencyId::get(); + let buyout_amount = 100 * UNIT; + + // Transfer all treasury balance to user just for testing purposes + // Makes treasury balance insufficient + assert_ok!(<::Currency>::transfer( + RuntimeOrigin::signed(TREASURY_ACCOUNT), + user, + native_currency_id, + TREASURY_INITIAL_BALANCE + )); + + // This buyout attempt should fail because the treasury balance is insufficient + assert_noop!( + crate::Pallet::::buyout( + RuntimeOrigin::signed(user), + dot_currency_id, + Amount::Buyout(buyout_amount), + ), + Error::::InsufficientTreasuryBalance + ); + }); +} + +mod signed_extension { + use frame_support::{dispatch::DispatchInfo, weights::Weight}; + use sp_runtime::traits::SignedExtension; + + use crate::CheckBuyout; + + use super::*; + + pub fn info_from_weight(w: Weight) -> DispatchInfo { + DispatchInfo { weight: w, ..Default::default() } + } + + #[test] + fn validate_skip_other_calls_succeeds() { + run_test(|| { + let buyout_call = + RuntimeCall::TreasuryBuyoutExtension(crate::Call::update_buyout_limit { + limit: None, + }); + + let check = CheckBuyout::::new(); + let info = info_from_weight(Weight::zero()); + assert_ok!(check.validate(&1, &buyout_call, &info, 0)); + }); + } + + #[test] + fn validate_when_wrong_asset_fails() { + run_test(|| { + let user = USER; + + // Some unsupported assets for buyout + let native_currency_id = GetNativeCurrencyId::get(); + let brz_currency_id = 4u64; + + // Call with unsupported asset + for asset in [native_currency_id, brz_currency_id] { + let buyout_call = RuntimeCall::TreasuryBuyoutExtension(crate::Call::buyout { + asset, + amount: Amount::Buyout(100 * UNIT), + }); + + let check = CheckBuyout::::new(); + let info = info_from_weight(Weight::zero()); + + assert_err!( + check.validate(&user, &buyout_call, &info, 1), + TransactionValidityError::Invalid(InvalidTransaction::Custom( + ValidityError::WrongAssetToBuyout.into() + )) + ); + } + }); + } + + #[test] + fn validate_when_no_price_found_fails() { + run_test(|| { + let user = USER; + // For currency id 2u64 there is no price defined in the mock in order to test this case + let buyout_call = RuntimeCall::TreasuryBuyoutExtension(crate::Call::buyout { + asset: 2u64, + amount: Amount::Buyout(100 * UNIT), + }); + + let check = CheckBuyout::::new(); + let info = info_from_weight(Weight::zero()); + + assert_err!( + check.validate(&user, &buyout_call, &info, 1), + TransactionValidityError::Invalid(InvalidTransaction::Custom( + ValidityError::Math.into() + )) + ); + }); + } + + #[test] + fn validate_when_not_enough_to_buyout_fails() { + run_test(|| { + let user = USER; + let dot_currency_id = RelayChainCurrencyId::get(); + let buyout_call = RuntimeCall::TreasuryBuyoutExtension(crate::Call::buyout { + asset: dot_currency_id, + amount: Amount::Buyout(1000 * UNIT), + }); + + let check = CheckBuyout::::new(); + let info = info_from_weight(Weight::zero()); + + assert_err!( + check.validate(&user, &buyout_call, &info, 1), + TransactionValidityError::Invalid(InvalidTransaction::Custom( + ValidityError::NotEnoughToBuyout.into() + )) + ); + }); + } + + #[test] + fn validate_when_buyout_limit_exceeded_fails() { + run_test(|| { + let user = USER; + let dot_currency_id = RelayChainCurrencyId::get(); + + let buyout_call = RuntimeCall::TreasuryBuyoutExtension(crate::Call::buyout { + asset: dot_currency_id, + amount: Amount::Buyout(100 * UNIT), + }); + + let current_block = + frame_system::Pallet::::block_number().saturated_into::(); + + // With buyout limit + BuyoutLimit::::put(100 * UNIT); + // Previous buyout at current_block + Buyouts::::insert(&user, (80 * UNIT, current_block)); + + let check = CheckBuyout::::new(); + let info = info_from_weight(Weight::zero()); + + assert_err!( + check.validate(&user, &buyout_call, &info, 1), + TransactionValidityError::Invalid(InvalidTransaction::Custom( + ValidityError::BuyoutLimitExceeded.into() + )) + ); + }); + } + + #[test] + fn validate_when_less_than_min_amount_to_buyout_fails() { + run_test(|| { + let user = USER; + let dot_currency_id = RelayChainCurrencyId::get(); + + let buyout_call = RuntimeCall::TreasuryBuyoutExtension(crate::Call::buyout { + asset: dot_currency_id, + amount: Amount::Buyout(10 * UNIT), + }); + + let check = CheckBuyout::::new(); + let info = info_from_weight(Weight::zero()); + + assert_err!( + check.validate(&user, &buyout_call, &info, 1), + TransactionValidityError::Invalid(InvalidTransaction::Custom( + ValidityError::LessThanMinBuyoutAmount.into() + )) + ); + }); + } + + #[test] + fn validate_succeeds() { + run_test(|| { + let user = USER; + let dot_currency_id = RelayChainCurrencyId::get(); + + let buyout_call = RuntimeCall::TreasuryBuyoutExtension(crate::Call::buyout { + asset: dot_currency_id, + amount: Amount::Buyout(100 * UNIT), + }); + + let check = CheckBuyout::::new(); + let info = info_from_weight(Weight::zero()); + + assert_ok!(check.validate(&user, &buyout_call, &info, 1)); + }); + } +} diff --git a/pallets/treasury-buyout-extension/src/types.rs b/pallets/treasury-buyout-extension/src/types.rs new file mode 100644 index 000000000..cbd15ade5 --- /dev/null +++ b/pallets/treasury-buyout-extension/src/types.rs @@ -0,0 +1,26 @@ +use crate::Config; +use codec::{Decode, Encode, MaxEncodedLen}; +use orml_traits::MultiCurrency; +use scale_info::TypeInfo; + +#[allow(type_alias_bounds)] +pub(crate) type AccountIdOf = ::AccountId; + +#[allow(type_alias_bounds)] +pub(crate) type CurrencyIdOf = + <::MultiCurrency as MultiCurrency< + ::AccountId, + >>::CurrencyId; + +#[allow(type_alias_bounds)] +pub(crate) type BalanceOf = + <::Currency as MultiCurrency>>::Balance; + +/// Type of amount +#[derive(Copy, Clone, Debug, Encode, Decode, PartialEq, Eq, TypeInfo, MaxEncodedLen)] +pub enum Amount { + /// Amount of native asset user get for buyout + Buyout(Balance), + /// Amount of exchange asset user give for buyout + Exchange(Balance), +} diff --git a/runtime/amplitude/Cargo.toml b/runtime/amplitude/Cargo.toml index 9518bf198..5923d8c5a 100644 --- a/runtime/amplitude/Cargo.toml +++ b/runtime/amplitude/Cargo.toml @@ -15,6 +15,7 @@ targets = ["x86_64-unknown-linux-gnu"] substrate-wasm-builder = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42" } [dependencies] +cfg-if = "1.0.0" codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive"] } hex-literal = { version = "0.3.4", optional = true } log = { version = "0.4.17", default-features = false } @@ -27,27 +28,27 @@ smallvec = "1.9.0" runtime-common = { path = "../common", default-features = false } # Custom libraries for Spacewalk -clients-info = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe" } -currency = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe" } -security = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe" } -staking = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe" } -oracle = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe" } -stellar-relay = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe" } -fee = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe" } -vault-registry = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe" } -redeem = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe" } -issue = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe" } -nomination = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe" } -replace = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe" } -spacewalk-primitives = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe" } -module-issue-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe" } -module-oracle-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe" } -module-redeem-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe" } -module-replace-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe" } -module-vault-registry-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe" } +clients-info = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +currency = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +security = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +staking = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +oracle = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +stellar-relay = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +fee = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +vault-registry = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +redeem = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +issue = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +nomination = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +replace = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +spacewalk-primitives = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +module-issue-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +module-oracle-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +module-redeem-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +module-replace-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +module-vault-registry-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } module-pallet-staking-rpc-runtime-api = { path = "../../pallets/parachain-staking/rpc/runtime-api", default-features = false } -pooled-rewards = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -reward-distribution = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} +pooled-rewards = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +reward-distribution = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } # Substrate @@ -106,10 +107,10 @@ orml-xcm-support = { git = "https://github.com/open-web3-stack/open-runtime-modu parachain-staking = { path = "../../pallets/parachain-staking", default-features = false } orml-currencies-allowance-extension = {path = "../../pallets/orml-currencies-allowance-extension", default-features = false} - +treasury-buyout-extension = {path = "../../pallets/treasury-buyout-extension", default-features = false} # Pendulum Pallets -vesting-manager = {path = "../../pallets/vesting-manager", default-features = false} +vesting-manager = { path = "../../pallets/vesting-manager", default-features = false } # DIA dia-oracle = { git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v0.9.42" } @@ -182,9 +183,9 @@ std = [ "pallet-contracts-primitives/std", "pallet-democracy/std", "pallet-identity/std", - "pallet-multisig/std", + "pallet-multisig/std", "pallet-preimage/std", - "pallet-proxy/std", + "pallet-proxy/std", "pallet-insecure-randomness-collective-flip/std", "pallet-scheduler/std", "pallet-session/std", @@ -219,7 +220,7 @@ std = [ "zenlink-protocol-runtime-api/std", "bifrost-farming/std", "bifrost-farming-rpc-runtime-api/std", - # custom libraries from spacewalk + #custom libraries from spacewalk "security/std", "staking/std", "oracle/std", @@ -240,6 +241,7 @@ std = [ "spacewalk-primitives/std", # custom libraries from pendulum "orml-currencies-allowance-extension/std", + "treasury-buyout-extension/std", "parachain-staking/std", "vesting-manager/std", @@ -253,25 +255,23 @@ runtime-benchmarks = [ "frame-system/runtime-benchmarks", "pallet-balances/runtime-benchmarks", "pallet-timestamp/runtime-benchmarks", - - "fee/runtime-benchmarks", - "issue/runtime-benchmarks", - "nomination/runtime-benchmarks", - "oracle/runtime-benchmarks", - "redeem/runtime-benchmarks", - "replace/runtime-benchmarks", - "stellar-relay/runtime-benchmarks", - "vault-registry/runtime-benchmarks", - + "fee/runtime-benchmarks", + "issue/runtime-benchmarks", + "nomination/runtime-benchmarks", + "oracle/runtime-benchmarks", + "redeem/runtime-benchmarks", + "replace/runtime-benchmarks", + "stellar-relay/runtime-benchmarks", + "vault-registry/runtime-benchmarks", "pallet-xcm/runtime-benchmarks", "sp-runtime/runtime-benchmarks", "xcm-builder/runtime-benchmarks", "cumulus-pallet-session-benchmarking/runtime-benchmarks", "cumulus-pallet-xcmp-queue/runtime-benchmarks", - "pallet-collective/runtime-benchmarks", - + "pallet-collective/runtime-benchmarks", "runtime-common/runtime-benchmarks", - "orml-currencies-allowance-extension/runtime-benchmarks" + "orml-currencies-allowance-extension/runtime-benchmarks", + "treasury-buyout-extension/runtime-benchmarks" ] try-runtime = [ @@ -289,9 +289,9 @@ try-runtime = [ "pallet-contracts/try-runtime", "pallet-democracy/try-runtime", "pallet-identity/try-runtime", - "pallet-multisig/try-runtime", + "pallet-multisig/try-runtime", "pallet-preimage/try-runtime", - "pallet-proxy/try-runtime", + "pallet-proxy/try-runtime", "pallet-insecure-randomness-collective-flip/try-runtime", "pallet-scheduler/try-runtime", "pallet-session/try-runtime", @@ -300,20 +300,16 @@ try-runtime = [ "pallet-utility/try-runtime", "pallet-vesting/try-runtime", "pallet-xcm/try-runtime", - "parachain-staking/try-runtime", - "cumulus-pallet-aura-ext/try-runtime", "cumulus-pallet-dmp-queue/try-runtime", "cumulus-pallet-parachain-system/try-runtime", "cumulus-pallet-xcm/try-runtime", "cumulus-pallet-xcmp-queue/try-runtime", - "orml-asset-registry/try-runtime", "orml-currencies/try-runtime", "orml-tokens/try-runtime", "orml-xtokens/try-runtime", - "stellar-relay/try-runtime", "issue/try-runtime", "currency/try-runtime", @@ -328,12 +324,10 @@ try-runtime = [ "pooled-rewards/try-runtime", "clients-info/try-runtime", "reward-distribution/try-runtime", - "dia-oracle/try-runtime", "orml-currencies-allowance-extension/try-runtime", + "treasury-buyout-extension/try-runtime", "vesting-manager/try-runtime", - "bifrost-farming/try-runtime", - "zenlink-protocol/try-runtime", -] \ No newline at end of file +] diff --git a/runtime/amplitude/src/lib.rs b/runtime/amplitude/src/lib.rs index 120046bcc..0fa17a401 100644 --- a/runtime/amplitude/src/lib.rs +++ b/runtime/amplitude/src/lib.rs @@ -29,14 +29,16 @@ use sp_runtime::{ create_runtime_str, generic, impl_opaque_keys, traits::{ AccountIdConversion, AccountIdLookup, BlakeTwo256, Block as BlockT, Convert, ConvertInto, + One, Zero, }, transaction_validity::{TransactionSource, TransactionValidity}, - ApplyExtrinsicResult, DispatchError, FixedPointNumber, SaturatedConversion, + ApplyExtrinsicResult, DispatchError, FixedPointNumber, FixedU128, SaturatedConversion, }; const CONTRACTS_DEBUG_OUTPUT: bool = true; -use sp_std::{marker::PhantomData, prelude::*}; +use sp_std::{fmt::Debug, marker::PhantomData, prelude::*}; + #[cfg(feature = "std")] use sp_version::NativeVersion; use sp_version::RuntimeVersion; @@ -86,6 +88,7 @@ pub use nomination::Event as NominationEvent; use oracle::{ dia, dia::{DiaOracleAdapter, NativeCurrencyKey, XCMCurrencyConversion}, + OracleKey, }; pub use redeem::{Event as RedeemEvent, RedeemRequest}; pub use replace::{Event as ReplaceEvent, ReplaceRequest}; @@ -136,6 +139,7 @@ pub type SignedExtra = ( frame_system::CheckNonce, frame_system::CheckWeight, pallet_transaction_payment::ChargeTransactionPayment, + treasury_buyout_extension::CheckBuyout, ); /// Unchecked extrinsic type as expected by this runtime. @@ -246,20 +250,38 @@ impl XCMCurrencyConversion for AmplitudeDiaOracleKeyConverter { } } -type DataProviderImpl = DiaOracleAdapter< - DiaOracleModule, - UnsignedFixedPoint, - Moment, - dia::DiaOracleKeyConvertor, - ConvertPrice, - ConvertMoment, ->; +cfg_if::cfg_if! { + if #[cfg(feature = "runtime-benchmarks")] { + use oracle::testing_utils::{ + MockConvertMoment, MockConvertPrice, MockDiaOracle, MockOracleKeyConvertor, + }; + type DataProviderImpl = DiaOracleAdapter< + MockDiaOracle, + UnsignedFixedPoint, + Moment, + MockOracleKeyConvertor, + MockConvertPrice, + MockConvertMoment, + >; + } else { + type DataProviderImpl = DiaOracleAdapter< + DiaOracleModule, + UnsignedFixedPoint, + Moment, + dia::DiaOracleKeyConvertor, + ConvertPrice, + ConvertMoment, + >; + } +} pub struct ConvertPrice; impl Convert> for ConvertPrice { fn convert(price: u128) -> Option { - Some(UnsignedFixedPoint::from_inner(price)) + // The DIA batching server returns the price in 1e12 format, see [here](https://github.com/pendulum-chain/oracle-pallet/blob/716073885de01f923a0fe44a05bd2a0bd45db555/dia-batching-server/src/price_updater.rs#L141) + // but our UnsignedFixedPoint implementation expects the price in 1e18 format. + Some(UnsignedFixedPoint::from_rational(price, 1_000_000_000_000)) } } @@ -309,7 +331,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("amplitude"), impl_name: create_runtime_str!("amplitude"), authoring_version: 1, - spec_version: 13, + spec_version: 14, impl_version: 0, apis: RUNTIME_API_VERSIONS, transaction_version: 13, @@ -432,6 +454,7 @@ impl Contains for BaseFilter { RuntimeCall::TokenAllowance(_) | RuntimeCall::AssetRegistry(_) | RuntimeCall::Proxy(_) | + RuntimeCall::TreasuryBuyoutExtension(_) | RuntimeCall::RewardDistribution(_) => true, // All pallets are allowed, but exhaustive match is defensive // in the case of adding new pallets. @@ -664,8 +687,8 @@ impl pallet_democracy::Config for Runtime { type EnactmentPeriod = EnactmentPeriod; type LaunchPeriod = LaunchPeriod; type VotingPeriod = VotingPeriod; - type VoteLockingPeriod = EnactmentPeriod; // Same as EnactmentPeriod + type VoteLockingPeriod = EnactmentPeriod; type MinimumDeposit = MinimumDeposit; /// A straight majority of the council can decide what their next motion is. type ExternalOrigin = @@ -1138,6 +1161,7 @@ where frame_system::CheckNonce::::from(index), frame_system::CheckWeight::::new(), pallet_transaction_payment::ChargeTransactionPayment::::from(tip), + treasury_buyout_extension::CheckBuyout::::new(), ); let raw_payload = SignedPayload::new(call, extra).ok()?; @@ -1211,6 +1235,7 @@ impl orml_traits::DataProvider for DataFeederBenchmark { impl oracle::Config for Runtime { type RuntimeEvent = RuntimeEvent; type WeightInfo = oracle::SubstrateWeight; + type DecimalsLookup = spacewalk_primitives::AmplitudeDecimalsLookup; type DataProvider = DataProviderImpl; #[cfg(feature = "runtime-benchmarks")] type DataFeeder = MockDataFeeder; @@ -1402,6 +1427,82 @@ impl orml_currencies_allowance_extension::Config for Runtime { type MaxAllowedCurrencies = ConstU32<256>; } +pub struct OraclePriceGetter(Oracle); + +impl treasury_buyout_extension::PriceGetter for OraclePriceGetter { + #[cfg(not(feature = "runtime-benchmarks"))] + fn get_price(currency_id: CurrencyId) -> Result + where + FixedNumber: FixedPointNumber + One + Zero + Debug + TryFrom, + { + let key = OracleKey::ExchangeRate(currency_id); + let asset_price = Oracle::get_price(key.clone())?; + + let converted_asset_price = FixedNumber::try_from(asset_price); + + match converted_asset_price { + Ok(price) => Ok(price), + Err(_) => Err(DispatchError::Other("Failed to convert price")), + } + } + + #[cfg(feature = "runtime-benchmarks")] + fn get_price(currency_id: CurrencyId) -> Result + where + FixedNumber: FixedPointNumber + One + Zero + Debug + TryFrom, + { + // Forcefully set chain status to running when benchmarking so that the oracle doesn't fail + Security::set_status(StatusCode::Running); + + let key = OracleKey::ExchangeRate(currency_id); + + // Attempt to get the price once and use the result to decide if feeding a value is necessary + match Oracle::get_price(key.clone()) { + Ok(asset_price) => { + // If the price is successfully retrieved, use it directly + let converted_asset_price = FixedNumber::try_from(asset_price) + .map_err(|_| DispatchError::Other("Failed to convert price"))?; + Ok(converted_asset_price) + }, + Err(_) => { + // Price not found, feed the default value + let rate = FixedU128::checked_from_rational(100, 1).expect("This is a valid ratio"); + // Account used for feeding values + let account = AccountId::from([0u8; 32]); + Oracle::feed_values(account, vec![(key.clone(), rate)])?; + + // If feeding was successful, just use the feeded price to spare a read + let converted_asset_price = FixedNumber::try_from(rate) + .map_err(|_| DispatchError::Other("Failed to convert price"))?; + Ok(converted_asset_price) + }, + } + } +} + +parameter_types! { + pub const SellFee: Permill = Permill::from_percent(5); + pub const MinAmountToBuyout: Balance = 10 * MILLIUNIT; // 0.01 AMPE or 10_000_000_000 + // 24 hours in blocks (where average block time is 12 seconds) + pub const BuyoutPeriod: u32 = 7200; + // Maximum number of allowed currencies for buyout + pub const MaxAllowedBuyoutCurrencies: u32 = 20; +} + +impl treasury_buyout_extension::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Currency = Currencies; + type TreasuryAccount = AmplitudeTreasuryAccount; + type BuyoutPeriod = BuyoutPeriod; + type SellFee = SellFee; + type PriceGetter = OraclePriceGetter; + type MinAmountToBuyout = MinAmountToBuyout; + type MaxAllowedBuyoutCurrencies = MaxAllowedBuyoutCurrencies; + type WeightInfo = treasury_buyout_extension::default_weights::SubstrateWeight; + #[cfg(feature = "runtime-benchmarks")] + type RelayChainCurrencyId = RelayChainCurrencyId; +} + // Create the runtime by composing the FRAME pallets that were previously configured. construct_runtime!( pub enum Runtime where @@ -1478,6 +1579,7 @@ construct_runtime!( RewardDistribution: reward_distribution::{Pallet, Call, Storage, Event} = 73, TokenAllowance: orml_currencies_allowance_extension::{Pallet, Storage, Call, Event} = 80, + TreasuryBuyoutExtension: treasury_buyout_extension::{Pallet, Storage, Call, Event} = 82, Farming: farming::{Pallet, Call, Storage, Event} = 90, @@ -1516,6 +1618,7 @@ mod benches { [pallet_xcm, PolkadotXcm] [orml_currencies_allowance_extension, TokenAllowance] + [treasury_buyout_extension, TreasuryBuyoutExtension] ); } diff --git a/runtime/amplitude/src/xcm_config.rs b/runtime/amplitude/src/xcm_config.rs index f9ea93df6..886836f99 100644 --- a/runtime/amplitude/src/xcm_config.rs +++ b/runtime/amplitude/src/xcm_config.rs @@ -28,7 +28,7 @@ use xcm_executor::{ XcmExecutor, }; -use runtime_common::parachains::kusama::asset_hub; +use runtime_common::{parachains::kusama::asset_hub, RelativeValue}; use cumulus_primitives_utility::{ ChargeWeightInFungibles, TakeFirstAssetTrader, XcmFeesTo32ByteAccount, @@ -116,34 +116,19 @@ impl Convert> for CurrencyIdConvert { } } -pub struct RelativeValue { - num: Balance, - denominator: Balance, -} - -impl RelativeValue { - fn adjust_amount_by_relative_value(amount: Balance, relative_value: RelativeValue) -> Balance { - if relative_value.denominator == 0 { - // Or probably error - return amount - } - // Calculate the adjusted amount - let adjusted_amount = amount * relative_value.denominator / relative_value.num; - adjusted_amount - } -} +type RelativeValueOf = RelativeValue; pub struct RelayRelativeValue; impl RelayRelativeValue { - fn get_relative_value(id: CurrencyId) -> Option { + fn get_relative_value(id: CurrencyId) -> Option { match id { CurrencyId::XCM(index) => match index { - xcm_assets::RELAY_KSM => Some(RelativeValue { num: 100, denominator: 1 }), - xcm_assets::ASSETHUB_USDT => Some(RelativeValue { num: 20, denominator: 4 }), + xcm_assets::RELAY_KSM => Some(RelativeValueOf { num: 100, denominator: 1 }), + xcm_assets::ASSETHUB_USDT => Some(RelativeValueOf { num: 20, denominator: 4 }), _ => None, }, - CurrencyId::Native => Some(RelativeValue { num: 1, denominator: 1 }), - _ => Some(RelativeValue { num: 1, denominator: 1 }), + CurrencyId::Native => Some(RelativeValueOf { num: 1, denominator: 1 }), + _ => Some(RelativeValueOf { num: 1, denominator: 1 }), } } } @@ -316,7 +301,7 @@ impl ChargeWeightInFungibles for ChargeWeightInFungib if let Some(relative_value) = RelayRelativeValue::get_relative_value(asset_id) { let adjusted_amount = - RelativeValue::adjust_amount_by_relative_value(amount, relative_value); + RelativeValue::::divide_by_relative_value(amount, relative_value); log::info!("amount to be charged: {:?} in asset: {:?}", adjusted_amount, asset_id); return Ok(adjusted_amount) } else { diff --git a/runtime/common/Cargo.toml b/runtime/common/Cargo.toml index 82d329be0..a7f2c4b22 100644 --- a/runtime/common/Cargo.toml +++ b/runtime/common/Cargo.toml @@ -30,11 +30,10 @@ orml-traits = { git = "https://github.com/open-web3-stack/open-runtime-module-li orml-asset-registry = { git = "https://github.com/open-web3-stack/open-runtime-module-library", default-features = false, branch = "polkadot-v0.9.42" } orml-xcm-support = { git = "https://github.com/open-web3-stack/open-runtime-module-library", default-features = false, branch = "polkadot-v0.9.42" } - dia-oracle = { git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v0.9.42" } zenlink-protocol = { git = "https://github.com/zenlinkpro/Zenlink-DEX-Module", default-features = false, branch = "polkadot-v0.9.42" } -spacewalk-primitives = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe" } +spacewalk-primitives = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } [features] default = [ @@ -57,7 +56,7 @@ std = [ "dia-oracle/std", "orml-asset-registry/std", "orml-xcm-support/std", - "zenlink-protocol/std", + "zenlink-protocol/std", "spacewalk-primitives/std", ] diff --git a/runtime/common/src/asset_registry.rs b/runtime/common/src/asset_registry.rs index e61bbe924..4ffd1dd94 100644 --- a/runtime/common/src/asset_registry.rs +++ b/runtime/common/src/asset_registry.rs @@ -4,10 +4,30 @@ use frame_system::EnsureRoot; use orml_traits::asset_registry::{AssetMetadata, AssetProcessor}; use parity_scale_codec::{Decode, Encode, MaxEncodedLen}; use scale_info::TypeInfo; -use sp_runtime::DispatchError; +use sp_core::Get; +use sp_runtime::{BoundedVec, DispatchError}; +use sp_std::fmt::Debug; use spacewalk_primitives::CurrencyId; -pub use spacewalk_primitives::CustomMetadata; +#[derive(Clone, PartialOrd, Ord, PartialEq, Eq, Debug, Encode, Decode, TypeInfo, MaxEncodedLen)] +pub struct StringLimit; +impl Get for StringLimit { + fn get() -> u32 { + 50 + } +} + +#[derive(Clone, PartialOrd, Ord, PartialEq, Eq, Debug, Encode, Decode, TypeInfo, MaxEncodedLen)] +pub struct CustomMetadata { + pub dia_keys: DiaKeys, + pub fee_per_second: u128, +} + +#[derive(Clone, PartialOrd, Ord, PartialEq, Eq, Debug, Encode, Decode, TypeInfo, MaxEncodedLen)] +pub struct DiaKeys + TypeInfo + Clone + Eq + Debug + Send + Sync> { + pub blockchain: BoundedVec, + pub symbol: BoundedVec, +} #[derive( Clone, Copy, PartialOrd, Ord, PartialEq, Eq, Debug, Encode, Decode, TypeInfo, MaxEncodedLen, diff --git a/runtime/common/src/benchmarking/orml_asset_registry.rs b/runtime/common/src/benchmarking/orml_asset_registry.rs index 0fabd64ed..2f18594a4 100644 --- a/runtime/common/src/benchmarking/orml_asset_registry.rs +++ b/runtime/common/src/benchmarking/orml_asset_registry.rs @@ -3,11 +3,13 @@ use frame_support::assert_ok; use frame_system::RawOrigin; use orml_asset_registry::AssetMetadata; use sp_std::{vec, vec::Vec}; -use spacewalk_primitives::{CurrencyId, CustomMetadata}; +use crate::asset_registry::{CustomMetadata, DiaKeys}; +use spacewalk_primitives::CurrencyId; use xcm::{ latest::MultiLocation, opaque::lts::{Junction::*, Junctions::*}, }; +use sp_runtime::BoundedVec; pub struct Pallet(orml_asset_registry::Pallet); pub trait Config: @@ -37,7 +39,13 @@ pub mod benchmarks { symbol: longest_vec(), existential_deposit: 0, location: Some(longest_multilocation().into()), - additional: CustomMetadata, + additional: CustomMetadata { + dia_keys: DiaKeys { + blockchain: BoundedVec::truncate_from(longest_vec()), + symbol: BoundedVec::truncate_from(longest_vec()), + }, + fee_per_second: 123, + } } } @@ -72,7 +80,13 @@ pub mod benchmarks { Some(vec![b'b', 128]), Some(1234), Some(Some(location.into())), - Some(CustomMetadata), + Some(CustomMetadata { + dia_keys: DiaKeys { + blockchain: BoundedVec::truncate_from(longest_vec()), + symbol: BoundedVec::truncate_from(longest_vec()), + }, + fee_per_second: 123, + }), ); } diff --git a/runtime/common/src/lib.rs b/runtime/common/src/lib.rs index 375a919a5..e42946c29 100644 --- a/runtime/common/src/lib.rs +++ b/runtime/common/src/lib.rs @@ -2,7 +2,7 @@ #![allow(non_snake_case)] use sp_runtime::{ - traits::{IdentifyAccount, Verify}, + traits::{CheckedDiv, IdentifyAccount, Saturating, Verify}, DispatchError, MultiSignature, }; @@ -70,6 +70,29 @@ pub mod opaque { pub type BlockId = generic::BlockId; } +pub struct RelativeValue { + pub num: Amount, + pub denominator: Amount, +} + +impl + Saturating + Clone> RelativeValue { + pub fn divide_by_relative_value( + amount: Amount, + relative_value: RelativeValue, + ) -> Amount { + // Calculate the adjusted amount + if let Some(adjusted_amount) = amount + .clone() + .saturating_mul(relative_value.denominator) + .checked_div(&relative_value.num) + { + return adjusted_amount + } + // We should never specify a numerator of 0, but just to be safe + return amount + } +} + #[macro_use] pub mod parachains { @@ -164,11 +187,9 @@ pub mod parachains { pub const ASSET_PALLET_INDEX: u8 = 110; pub const BALANCES_PALLET_INDEX: u8 = 10; - // 0xD65A1872f2E2E26092A443CB86bb5d8572027E6E - // extracted using `H160::from_str("...")` then `as_bytes()` + // The address of the BRZ token on Moonbeam `0x3225edCe8aD30Ae282e62fa32e7418E4b9cf197b` as byte array pub const BRZ_ASSET_ACCOUNT_IN_BYTES: [u8; 20] = [ - 214, 90, 24, 114, 242, 226, 226, 96, 146, 164, 67, 203, 134, 187, 93, 133, 114, 2, - 126, 110, + 50, 37, 237, 206, 138, 211, 10, 226, 130, 230, 47, 163, 46, 116, 24, 228, 185, 207, 25, 123 ]; parachain_asset_location!( diff --git a/runtime/foucoco/Cargo.toml b/runtime/foucoco/Cargo.toml index 2e4daf87d..8d942efa1 100644 --- a/runtime/foucoco/Cargo.toml +++ b/runtime/foucoco/Cargo.toml @@ -22,32 +22,33 @@ paste = "1.0.14" scale-info = { version = "2.1.1", default-features = false, features = ["derive"] } serde = { version = "1.0.144", optional = true, features = ["derive"] } smallvec = "1.9.0" +cfg-if = "1.0.0" # Local runtime-common = { path = "../common", default-features = false } # custom libraries from spacewalk -clients-info = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -currency = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -security = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -staking = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -oracle = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -stellar-relay = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -fee = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -vault-registry = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -redeem = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -issue = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -nomination = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -replace = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -spacewalk-primitives = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -pooled-rewards = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -reward-distribution = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} +clients-info = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +currency = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +security = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +staking = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +oracle = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +stellar-relay = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +fee = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +vault-registry = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +redeem = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +issue = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +nomination = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +replace = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +spacewalk-primitives = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +pooled-rewards = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +reward-distribution = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } -module-issue-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -module-oracle-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -module-redeem-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -module-replace-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -module-vault-registry-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} +module-issue-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +module-oracle-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +module-redeem-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +module-replace-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +module-vault-registry-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } module-pallet-staking-rpc-runtime-api = { path = "../../pallets/parachain-staking/rpc/runtime-api", default-features = false } # Substrate @@ -104,8 +105,9 @@ orml-xcm-support = { git = "https://github.com/open-web3-stack/open-runtime-modu # KILT parachain-staking = { path = "../../pallets/parachain-staking", default-features = false } -orml-currencies-allowance-extension = {path = "../../pallets/orml-currencies-allowance-extension", default-features = false} -orml-tokens-management-extension = {path = "../../pallets/orml-tokens-management-extension", default-features = false} +orml-currencies-allowance-extension = { path = "../../pallets/orml-currencies-allowance-extension", default-features = false } +orml-tokens-management-extension = { path = "../../pallets/orml-tokens-management-extension", default-features = false } +treasury-buyout-extension = { path = "../../pallets/treasury-buyout-extension", default-features = false } # DIA dia-oracle = { git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v0.9.42" } @@ -180,9 +182,9 @@ std = [ "pallet-contracts-primitives/std", "pallet-democracy/std", "pallet-identity/std", - "pallet-multisig/std", + "pallet-multisig/std", "pallet-preimage/std", - "pallet-proxy/std", + "pallet-proxy/std", "pallet-insecure-randomness-collective-flip/std", "pallet-scheduler/std", "pallet-session/std", @@ -219,7 +221,7 @@ std = [ "xcm/std", "zenlink-protocol/std", "zenlink-protocol-runtime-api/std", - # custom libraries from spacewalk + #custom libraries from spacewalk "currency/std", "security/std", "staking/std", @@ -239,7 +241,7 @@ std = [ "module-pallet-staking-rpc-runtime-api/std", "spacewalk-primitives/std", "orml-currencies-allowance-extension/std", - + "treasury-buyout-extension/std", "bifrost-farming/std", "bifrost-farming-rpc-runtime-api/std", ] @@ -257,20 +259,20 @@ runtime-benchmarks = [ "xcm-builder/runtime-benchmarks", "cumulus-pallet-session-benchmarking/runtime-benchmarks", "cumulus-pallet-xcmp-queue/runtime-benchmarks", - "pallet-collective/runtime-benchmarks", - - "fee/runtime-benchmarks", - "issue/runtime-benchmarks", - "nomination/runtime-benchmarks", - "oracle/runtime-benchmarks", - "redeem/runtime-benchmarks", - "replace/runtime-benchmarks", - "stellar-relay/runtime-benchmarks", - "vault-registry/runtime-benchmarks", + "pallet-collective/runtime-benchmarks", + "fee/runtime-benchmarks", + "issue/runtime-benchmarks", + "nomination/runtime-benchmarks", + "oracle/runtime-benchmarks", + "redeem/runtime-benchmarks", + "replace/runtime-benchmarks", + "stellar-relay/runtime-benchmarks", + "vault-registry/runtime-benchmarks", "oracle/testing-utils", "runtime-common/runtime-benchmarks", "orml-currencies-allowance-extension/runtime-benchmarks", - "orml-tokens-management-extension/runtime-benchmarks" + "orml-tokens-management-extension/runtime-benchmarks", + "treasury-buyout-extension/runtime-benchmarks" ] try-runtime = [ @@ -286,34 +288,30 @@ try-runtime = [ "pallet-child-bounties/try-runtime", "pallet-collective/try-runtime", "pallet-contracts/try-runtime", - "pallet-democracy/try-runtime", "pallet-identity/try-runtime", - "pallet-multisig/try-runtime", + "pallet-democracy/try-runtime", + "pallet-multisig/try-runtime", "pallet-preimage/try-runtime", - "pallet-proxy/try-runtime", "pallet-insecure-randomness-collective-flip/try-runtime", "pallet-scheduler/try-runtime", "pallet-session/try-runtime", + "pallet-proxy/try-runtime", "pallet-sudo/try-runtime", "pallet-transaction-payment/try-runtime", "pallet-treasury/try-runtime", "pallet-utility/try-runtime", "pallet-vesting/try-runtime", "pallet-xcm/try-runtime", - "parachain-staking/try-runtime", - "cumulus-pallet-aura-ext/try-runtime", "cumulus-pallet-dmp-queue/try-runtime", "cumulus-pallet-parachain-system/try-runtime", "cumulus-pallet-xcm/try-runtime", "cumulus-pallet-xcmp-queue/try-runtime", - "orml-asset-registry/try-runtime", "orml-currencies/try-runtime", "orml-tokens/try-runtime", "orml-xtokens/try-runtime", - "stellar-relay/try-runtime", "issue/try-runtime", "currency/try-runtime", @@ -328,12 +326,10 @@ try-runtime = [ "pooled-rewards/try-runtime", "clients-info/try-runtime", "reward-distribution/try-runtime", - "dia-oracle/try-runtime", "orml-currencies-allowance-extension/try-runtime", "orml-tokens-management-extension/try-runtime", - + "treasury-buyout-extension/try-runtime", "bifrost-farming/try-runtime", - "zenlink-protocol/try-runtime", ] diff --git a/runtime/foucoco/src/lib.rs b/runtime/foucoco/src/lib.rs index ccc9d8cfd..4a3d63c9d 100644 --- a/runtime/foucoco/src/lib.rs +++ b/runtime/foucoco/src/lib.rs @@ -10,6 +10,7 @@ mod assets; mod weights; pub mod xcm_config; pub mod zenlink; + use crate::zenlink::*; use xcm::v3::MultiLocation; use zenlink_protocol::{AssetBalance, MultiAssetsHandler, PairInfo}; @@ -29,10 +30,12 @@ use sp_runtime::{ create_runtime_str, generic, impl_opaque_keys, traits::{ AccountIdConversion, AccountIdLookup, BlakeTwo256, Block as BlockT, Convert, ConvertInto, + One, Zero, }, transaction_validity::{TransactionSource, TransactionValidity}, - ApplyExtrinsicResult, DispatchError, FixedPointNumber, SaturatedConversion, + ApplyExtrinsicResult, DispatchError, FixedPointNumber, FixedU128, SaturatedConversion, }; +use sp_std::fmt::Debug; use sp_std::{marker::PhantomData, prelude::*}; #[cfg(feature = "std")] @@ -67,6 +70,8 @@ use runtime_common::{ #[cfg(any(feature = "runtime-benchmarks", feature = "testing-utils"))] use oracle::testing_utils::MockDataFeeder; +use oracle::OracleKey; + use cumulus_pallet_parachain_system::RelayNumberStrictlyIncreases; use dia_oracle::DiaOracle; @@ -149,6 +154,7 @@ pub type SignedExtra = ( frame_system::CheckNonce, frame_system::CheckWeight, pallet_transaction_payment::ChargeTransactionPayment, + treasury_buyout_extension::CheckBuyout, ); /// Unchecked extrinsic type as expected by this runtime. @@ -202,13 +208,14 @@ pub type Executive = frame_executive::Executive< >; pub struct SpacewalkNativeCurrency; + impl oracle::dia::NativeCurrencyKey for SpacewalkNativeCurrency { fn native_symbol() -> Vec { "AMPE".as_bytes().to_vec() } fn native_chain() -> Vec { - "AMPLITUDE".as_bytes().to_vec() + "Amplitude".as_bytes().to_vec() } } @@ -228,23 +235,43 @@ impl XCMCurrencyConversion for SpacewalkNativeCurrency { } } -type DataProviderImpl = DiaOracleAdapter< - DiaOracleModule, - UnsignedFixedPoint, - Moment, - oracle::dia::DiaOracleKeyConvertor, - ConvertPrice, - ConvertMoment, ->; +cfg_if::cfg_if! { + if #[cfg(feature = "runtime-benchmarks")] { + use oracle::testing_utils::{ + MockConvertMoment, MockConvertPrice, MockDiaOracle, MockOracleKeyConvertor, + }; + type DataProviderImpl = DiaOracleAdapter< + MockDiaOracle, + UnsignedFixedPoint, + Moment, + MockOracleKeyConvertor, + MockConvertPrice, + MockConvertMoment, + >; + } else { + type DataProviderImpl = DiaOracleAdapter< + DiaOracleModule, + UnsignedFixedPoint, + Moment, + oracle::dia::DiaOracleKeyConvertor, + ConvertPrice, + ConvertMoment, + >; + } +} pub struct ConvertPrice; + impl Convert> for ConvertPrice { fn convert(price: u128) -> Option { - Some(UnsignedFixedPoint::from_inner(price)) + // The DIA batching server returns the price in 1e12 format, see [here](https://github.com/pendulum-chain/oracle-pallet/blob/716073885de01f923a0fe44a05bd2a0bd45db555/dia-batching-server/src/price_updater.rs#L141) + // but our UnsignedFixedPoint implementation expects the price in 1e18 format. + Some(UnsignedFixedPoint::from_rational(price, 1_000_000_000_000)) } } pub struct ConvertMoment; + impl Convert> for ConvertMoment { fn convert(moment: u64) -> Option { // The provided moment is in seconds, but we need milliseconds @@ -263,6 +290,7 @@ impl Convert> for ConvertMoment { /// - Setting it to `0` will essentially disable the weight fee. /// - Setting it to `1` will cause the literal `#[weight = x]` values to be charged. pub struct WeightToFee; + impl WeightToFeePolynomial for WeightToFee { type Balance = Balance; fn polynomial() -> WeightToFeeCoefficients { @@ -288,10 +316,10 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("foucoco"), impl_name: create_runtime_str!("foucoco"), authoring_version: 1, - spec_version: 4, + spec_version: 10, impl_version: 0, apis: RUNTIME_API_VERSIONS, - transaction_version: 4, + transaction_version: 8, state_version: 1, }; @@ -363,6 +391,7 @@ parameter_types! { } pub struct BaseFilter; + impl Contains for BaseFilter { fn contains(call: &RuntimeCall) -> bool { match call { @@ -411,6 +440,7 @@ impl Contains for BaseFilter { RuntimeCall::AssetRegistry(_) | RuntimeCall::Proxy(_) | RuntimeCall::OrmlExtension(_) | + RuntimeCall::TreasuryBuyoutExtension(_) | RuntimeCall::RewardDistribution(_) => true, // All pallets are allowed, but exhaustive match is defensive // in the case of adding new pallets. } @@ -522,6 +552,7 @@ parameter_types! { type NegativeImbalance = >::NegativeImbalance; pub struct DealWithFees; + impl OnUnbalanced for DealWithFees { fn on_unbalanceds(mut fees_then_tips: impl Iterator) { if let Some(mut fees) = fees_then_tips.next() { @@ -621,7 +652,8 @@ impl pallet_democracy::Config for Runtime { type EnactmentPeriod = EnactmentPeriod; type LaunchPeriod = LaunchPeriod; type VotingPeriod = VotingPeriod; - type VoteLockingPeriod = EnactmentPeriod; // Same as EnactmentPeriod + // Same as EnactmentPeriod + type VoteLockingPeriod = EnactmentPeriod; type MinimumDeposit = MinimumDeposit; /// A straight majority of the council can decide what their next motion is. type ExternalOrigin = @@ -675,6 +707,7 @@ parameter_types! { } type CouncilCollective = pallet_collective::Instance1; + impl pallet_collective::Config for Runtime { type RuntimeOrigin = RuntimeOrigin; type Proposal = RuntimeCall; @@ -695,6 +728,7 @@ parameter_types! { } type TechnicalCollective = pallet_collective::Instance2; + impl pallet_collective::Config for Runtime { type RuntimeOrigin = RuntimeOrigin; type Proposal = RuntimeCall; @@ -836,6 +870,7 @@ pub fn get_all_module_accounts() -> Vec { } pub struct DustRemovalWhitelist; + impl Contains for DustRemovalWhitelist { fn contains(a: &AccountId) -> bool { get_all_module_accounts().contains(a) @@ -843,6 +878,7 @@ impl Contains for DustRemovalWhitelist { } pub struct CurrencyHooks(PhantomData); + impl MutationHooks for CurrencyHooks { @@ -980,7 +1016,9 @@ impl pallet_vesting::Config for Runtime { type WeightInfo = pallet_vesting::weights::SubstrateWeight; const MAX_VESTING_SCHEDULES: u32 = 10; } + pub struct CurrencyIdCheckerImpl; + impl orml_tokens_management_extension::CurrencyIdCheck for CurrencyIdCheckerImpl { type CurrencyId = CurrencyId; @@ -1010,6 +1048,81 @@ impl orml_tokens_management_extension::Config for Runtime { type AssetDeposit = AssetDeposit; } +pub struct OraclePriceGetter(Oracle); + +impl treasury_buyout_extension::PriceGetter for OraclePriceGetter { + #[cfg(not(feature = "runtime-benchmarks"))] + fn get_price(currency_id: CurrencyId) -> Result + where + FixedNumber: FixedPointNumber + One + Zero + Debug + TryFrom, + { + let key = OracleKey::ExchangeRate(currency_id); + let asset_price = Oracle::get_price(key.clone())?; + + let converted_asset_price = FixedNumber::try_from(asset_price); + + match converted_asset_price { + Ok(price) => Ok(price), + Err(_) => Err(DispatchError::Other("Failed to convert price")), + } + } + #[cfg(feature = "runtime-benchmarks")] + fn get_price(currency_id: CurrencyId) -> Result + where + FixedNumber: FixedPointNumber + One + Zero + Debug + TryFrom, + { + // Forcefully set chain status to running when benchmarking so that the oracle doesn't fail + Security::set_status(StatusCode::Running); + + let key = OracleKey::ExchangeRate(currency_id); + + // Attempt to get the price once and use the result to decide if feeding a value is necessary + match Oracle::get_price(key.clone()) { + Ok(asset_price) => { + // If the price is successfully retrieved, use it directly + let converted_asset_price = FixedNumber::try_from(asset_price) + .map_err(|_| DispatchError::Other("Failed to convert price"))?; + Ok(converted_asset_price) + }, + Err(_) => { + // Price not found, feed the default value + let rate = FixedU128::checked_from_rational(100, 1).expect("This is a valid ratio"); + // Account used for feeding values + let account = AccountId::from([0u8; 32]); + Oracle::feed_values(account, vec![(key.clone(), rate)])?; + + // If feeding was successful, just use the feeded price to spare a read + let converted_asset_price = FixedNumber::try_from(rate) + .map_err(|_| DispatchError::Other("Failed to convert price"))?; + Ok(converted_asset_price) + }, + } + } +} + +parameter_types! { + pub const SellFee: Permill = Permill::from_percent(1); + pub const MinAmountToBuyout: Balance = NANOUNIT; + // 24 hours in blocks (where average block time is 12 seconds) + pub const BuyoutPeriod: u32 = 7200; + // Maximum number of allowed currencies for buyout + pub const MaxAllowedBuyoutCurrencies: u32 = 20; +} + +impl treasury_buyout_extension::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Currency = Currencies; + type TreasuryAccount = FoucocoTreasuryAccount; + type BuyoutPeriod = BuyoutPeriod; + type SellFee = SellFee; + type PriceGetter = OraclePriceGetter; + type MinAmountToBuyout = MinAmountToBuyout; + type MaxAllowedBuyoutCurrencies = MaxAllowedBuyoutCurrencies; + type WeightInfo = treasury_buyout_extension::default_weights::SubstrateWeight; + #[cfg(feature = "runtime-benchmarks")] + type RelayChainCurrencyId = RelayChainCurrencyId; +} + const fn deposit(items: u32, bytes: u32) -> Balance { (items as Balance * UNIT + (bytes as Balance) * (5 * MILLIUNIT / 100)) / 10 } @@ -1523,6 +1636,7 @@ where frame_system::CheckNonce::::from(index), frame_system::CheckWeight::::new(), pallet_transaction_payment::ChargeTransactionPayment::::from(tip), + treasury_buyout_extension::CheckBuyout::::new(), ); let raw_payload = SignedPayload::new(call, extra).ok()?; @@ -1534,6 +1648,7 @@ where } pub struct CurrencyConvert; + impl currency::CurrencyConversion, CurrencyId> for CurrencyConvert { fn convert( amount: ¤cy::Amount, @@ -1602,6 +1717,7 @@ impl staking::Config for Runtime { impl oracle::Config for Runtime { type RuntimeEvent = RuntimeEvent; type WeightInfo = oracle::SubstrateWeight; + type DecimalsLookup = spacewalk_primitives::AmplitudeDecimalsLookup; type DataProvider = DataProviderImpl; #[cfg(feature = "runtime-benchmarks")] type DataFeeder = MockDataFeeder; @@ -1853,6 +1969,8 @@ construct_runtime!( TokenAllowance: orml_currencies_allowance_extension::{Pallet, Storage, Call, Event} = 80, OrmlExtension: orml_tokens_management_extension::{Pallet, Storage, Call, Event} = 81, + TreasuryBuyoutExtension: treasury_buyout_extension::{Pallet, Storage, Call, Event} = 82, + Farming: farming::{Pallet, Call, Storage, Event} = 90, // Asset Metadata @@ -1890,6 +2008,7 @@ mod benches { [orml_currencies_allowance_extension, TokenAllowance] [orml_tokens_management_extension, OrmlExtension] + [treasury_buyout_extension, TreasuryBuyoutExtension] ); } diff --git a/runtime/integration-tests/Cargo.toml b/runtime/integration-tests/Cargo.toml index 16ef79cc9..eee82a862 100644 --- a/runtime/integration-tests/Cargo.toml +++ b/runtime/integration-tests/Cargo.toml @@ -11,7 +11,7 @@ scale-info = { version = "2.1.2", features = ["derive"] } serde = { version = "1.0.144", features = ["derive"] } # Spacewalk libraries -spacewalk-primitives = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} +spacewalk-primitives = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } frame-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42" } frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.42" } @@ -55,10 +55,10 @@ orml-tokens = {git = "https://github.com/open-web3-stack/open-runtime-module-lib orml-xtokens = { git = "https://github.com/open-web3-stack/open-runtime-module-library", branch = "polkadot-v0.9.42" } # Local -runtime-common = {path = "../common", default-features = false} +runtime-common = { path = "../common", default-features = false } pendulum-runtime = { path = "../pendulum" } -amplitude-runtime = {path = "../amplitude" } +amplitude-runtime = { path = "../amplitude" } [features] default = ["std"] diff --git a/runtime/pendulum/Cargo.toml b/runtime/pendulum/Cargo.toml index ce99d0755..a19a97a48 100644 --- a/runtime/pendulum/Cargo.toml +++ b/runtime/pendulum/Cargo.toml @@ -24,75 +24,93 @@ serde = { version = "1.0.144", optional = true, features = ["derive"] } smallvec = "1.9.0" # Local -runtime-common = {path = "../common", default-features = false} +runtime-common = { path = "../common", default-features = false } -# Spacewalk libraries -spacewalk-primitives = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} +# Custom libraries for Spacewalk +clients-info = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +currency = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +security = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +staking = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +oracle = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +stellar-relay = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +fee = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +vault-registry = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +redeem = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +issue = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +nomination = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +replace = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +spacewalk-primitives = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +module-issue-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +module-oracle-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +module-redeem-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +module-replace-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +module-vault-registry-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +module-pallet-staking-rpc-runtime-api = { path = "../../pallets/parachain-staking/rpc/runtime-api", default-features = false } +pooled-rewards = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } +reward-distribution = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "057dc478ca52d66318d4aaa659b0c7dc00b4d062" } # Substrate -frame-benchmarking = {git = "https://github.com/paritytech/substrate", default-features = false, optional = true, branch = "polkadot-v0.9.42"} -frame-executive = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -frame-support = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -frame-system = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -frame-system-benchmarking = {git = "https://github.com/paritytech/substrate", default-features = false, optional = true, branch = "polkadot-v0.9.42"} -frame-system-rpc-runtime-api = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -frame-try-runtime = {git = "https://github.com/paritytech/substrate", default-features = false, optional = true, branch = "polkadot-v0.9.42"} -module-oracle-rpc-runtime-api = { git = "https://github.com/pendulum-chain/spacewalk", default-features = false, rev = "59896f7df1c1daf0f91103323b4d7ba3f1e186fe"} -module-pallet-staking-rpc-runtime-api = { path = "../../pallets/parachain-staking/rpc/runtime-api", default-features = false } -pallet-aura = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -pallet-authorship = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -pallet-balances = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -pallet-bounties = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -pallet-child-bounties = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -pallet-collective = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -pallet-contracts = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -pallet-contracts-primitives = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -pallet-democracy = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -pallet-identity = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -pallet-multisig = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -pallet-preimage = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -pallet-proxy = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -pallet-insecure-randomness-collective-flip = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -pallet-scheduler = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -pallet-session = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -pallet-timestamp = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -pallet-transaction-payment = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -pallet-transaction-payment-rpc-runtime-api = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -pallet-treasury = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -pallet-utility = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -pallet-vesting = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -sp-api = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -sp-block-builder = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -sp-consensus-aura = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -sp-core = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -sp-inherents = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -sp-io = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -sp-offchain = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -sp-runtime = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -sp-session = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -sp-std = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -sp-transaction-pool = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} -sp-version = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42"} +frame-benchmarking = { git = "https://github.com/paritytech/substrate", default-features = false, optional = true, branch = "polkadot-v0.9.42" } +frame-executive = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +frame-support = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +frame-system = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +frame-system-benchmarking = { git = "https://github.com/paritytech/substrate", default-features = false, optional = true, branch = "polkadot-v0.9.42" } +frame-system-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +frame-try-runtime = { git = "https://github.com/paritytech/substrate", default-features = false, optional = true, branch = "polkadot-v0.9.42" } +pallet-aura = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +pallet-authorship = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +pallet-balances = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +pallet-bounties = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +pallet-child-bounties = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +pallet-collective = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +pallet-contracts = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +pallet-contracts-primitives = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +pallet-democracy = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +pallet-identity = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +pallet-multisig = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +pallet-preimage = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +pallet-proxy = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +pallet-insecure-randomness-collective-flip = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +pallet-scheduler = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +pallet-session = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +pallet-timestamp = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +pallet-transaction-payment = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +pallet-treasury = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +pallet-utility = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +pallet-vesting = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +sp-api = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +sp-block-builder = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +sp-consensus-aura = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +sp-core = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +sp-inherents = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +sp-io = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +sp-offchain = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +sp-runtime = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +sp-session = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +sp-std = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +sp-transaction-pool = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } +sp-version = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.42" } # Open Runtime Module Library -orml-asset-registry = {git = "https://github.com/open-web3-stack/open-runtime-module-library.git", default-features = false, branch = "polkadot-v0.9.42" } -orml-currencies = {git = "https://github.com/open-web3-stack/open-runtime-module-library.git", default-features = false, branch = "polkadot-v0.9.42" } -orml-traits = {git = "https://github.com/open-web3-stack/open-runtime-module-library.git", default-features = false, branch = "polkadot-v0.9.42" } -orml-tokens = {git = "https://github.com/open-web3-stack/open-runtime-module-library.git", default-features = false, branch = "polkadot-v0.9.42" } +orml-asset-registry = { git = "https://github.com/open-web3-stack/open-runtime-module-library.git", default-features = false, branch = "polkadot-v0.9.42" } +orml-currencies = { git = "https://github.com/open-web3-stack/open-runtime-module-library.git", default-features = false, branch = "polkadot-v0.9.42" } +orml-traits = { git = "https://github.com/open-web3-stack/open-runtime-module-library.git", default-features = false, branch = "polkadot-v0.9.42" } +orml-tokens = { git = "https://github.com/open-web3-stack/open-runtime-module-library.git", default-features = false, branch = "polkadot-v0.9.42" } orml-xtokens = { git = "https://github.com/open-web3-stack/open-runtime-module-library", default-features = false, branch = "polkadot-v0.9.42" } orml-xcm-support = { git = "https://github.com/open-web3-stack/open-runtime-module-library", default-features = false, branch = "polkadot-v0.9.42" } # KILT -parachain-staking = {path = "../../pallets/parachain-staking", default-features = false} +parachain-staking = { path = "../../pallets/parachain-staking", default-features = false } -orml-currencies-allowance-extension = {path = "../../pallets/orml-currencies-allowance-extension", default-features = false} +orml-currencies-allowance-extension = { path = "../../pallets/orml-currencies-allowance-extension", default-features = false } # DIA -dia-oracle = {git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v0.9.42"} -dia-oracle-runtime-api = {git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v0.9.42"} +dia-oracle = { git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v0.9.42" } +dia-oracle-runtime-api = { git = "https://github.com/pendulum-chain/oracle-pallet", default-features = false, branch = "polkadot-v0.9.42" } # Pendulum Pallets -vesting-manager = {path = "../../pallets/vesting-manager", default-features = false} +vesting-manager = { path = "../../pallets/vesting-manager", default-features = false } # Polkadot pallet-xcm = {git = "https://github.com/paritytech/polkadot", default-features = false, branch = "release-v0.9.42"} @@ -124,104 +142,131 @@ bifrost-farming-rpc-runtime-api = { git = "https://github.com/pendulum-chain/bif [features] default = [ - "std", + "std", ] std = [ - "codec/std", - "log/std", - "scale-info/std", - "serde", - "cumulus-pallet-aura-ext/std", - "cumulus-pallet-dmp-queue/std", - "cumulus-pallet-parachain-system/std", - "cumulus-pallet-xcm/std", - "cumulus-pallet-xcmp-queue/std", - "cumulus-primitives-core/std", - "cumulus-primitives-timestamp/std", - "cumulus-primitives-utility/std", - "dia-oracle/std", - "dia-oracle-runtime-api/std", - "frame-executive/std", - "frame-support/std", - "frame-system-rpc-runtime-api/std", - "frame-system/std", - "frame-try-runtime/std", - "module-pallet-staking-rpc-runtime-api/std", - "module-oracle-rpc-runtime-api/std", - "orml-asset-registry/std", - "orml-currencies/std", - "orml-traits/std", - "orml-tokens/std", - "orml-xtokens/std", - "orml-xcm-support/std", - "pallet-aura/std", - "pallet-authorship/std", - "pallet-balances/std", - "pallet-bounties/std", - "pallet-child-bounties/std", - "pallet-collective/std", - "pallet-contracts/std", - "pallet-contracts-primitives/std", - "pallet-democracy/std", - "pallet-identity/std", - "pallet-multisig/std", - "pallet-preimage/std", - "pallet-proxy/std", - "pallet-insecure-randomness-collective-flip/std", - "pallet-scheduler/std", - "pallet-session/std", - "pallet-timestamp/std", - "pallet-transaction-payment-rpc-runtime-api/std", - "pallet-transaction-payment/std", - "pallet-treasury/std", - "pallet-utility/std", - "pallet-vesting/std", - "pallet-xcm/std", - "parachain-info/std", - "parachain-staking/std", - "polkadot-parachain/std", - "polkadot-runtime-common/std", - "runtime-common/std", - "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", - "vesting-manager/std", - "xcm-builder/std", - "xcm-executor/std", - "xcm/std", - "zenlink-protocol/std", - "zenlink-protocol-runtime-api/std", - "bifrost-farming/std", - "bifrost-farming-rpc-runtime-api/std", - "orml-currencies-allowance-extension/std" + "codec/std", + "log/std", + "scale-info/std", + "serde", + "cumulus-pallet-aura-ext/std", + "cumulus-pallet-dmp-queue/std", + "cumulus-pallet-parachain-system/std", + "cumulus-pallet-xcm/std", + "cumulus-pallet-xcmp-queue/std", + "cumulus-primitives-core/std", + "cumulus-primitives-timestamp/std", + "cumulus-primitives-utility/std", + "dia-oracle/std", + "dia-oracle-runtime-api/std", + "frame-executive/std", + "frame-support/std", + "frame-system-rpc-runtime-api/std", + "frame-system/std", + "frame-try-runtime/std", + "module-pallet-staking-rpc-runtime-api/std", + "module-oracle-rpc-runtime-api/std", + "orml-asset-registry/std", + "orml-currencies/std", + "orml-traits/std", + "orml-tokens/std", + "orml-xtokens/std", + "orml-xcm-support/std", + "pallet-aura/std", + "pallet-authorship/std", + "pallet-balances/std", + "pallet-bounties/std", + "pallet-child-bounties/std", + "pallet-collective/std", + "pallet-contracts/std", + "pallet-contracts-primitives/std", + "pallet-democracy/std", + "pallet-identity/std", + "pallet-multisig/std", + "pallet-preimage/std", + "pallet-proxy/std", + "pallet-insecure-randomness-collective-flip/std", + "pallet-scheduler/std", + "pallet-session/std", + "pallet-timestamp/std", + "pallet-transaction-payment-rpc-runtime-api/std", + "pallet-transaction-payment/std", + "pallet-treasury/std", + "pallet-utility/std", + "pallet-vesting/std", + "pallet-xcm/std", + "parachain-info/std", + "polkadot-parachain/std", + "polkadot-runtime-common/std", + "runtime-common/std", + "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", + "xcm-builder/std", + "xcm-executor/std", + "xcm/std", + "zenlink-protocol/std", + "zenlink-protocol-runtime-api/std", + "bifrost-farming/std", + "bifrost-farming-rpc-runtime-api/std", + #custom libraries from spacewalk + "security/std", + "staking/std", + "oracle/std", + "stellar-relay/std", + "fee/std", + "vault-registry/std", + "redeem/std", + "issue/std", + "currency/std", + "nomination/std", + "replace/std", + "module-issue-rpc-runtime-api/std", + "module-oracle-rpc-runtime-api/std", + "module-redeem-rpc-runtime-api/std", + "module-replace-rpc-runtime-api/std", + "module-pallet-staking-rpc-runtime-api/std", + "module-vault-registry-rpc-runtime-api/std", + "spacewalk-primitives/std", + # custom libraries from pendulum + "orml-currencies-allowance-extension/std", + "parachain-staking/std", + "vesting-manager/std", ] runtime-benchmarks = [ - "hex-literal", - "frame-benchmarking/runtime-benchmarks", - "frame-support/runtime-benchmarks", - "frame-system-benchmarking/runtime-benchmarks", - "frame-system/runtime-benchmarks", - "pallet-balances/runtime-benchmarks", - "pallet-timestamp/runtime-benchmarks", - "pallet-xcm/runtime-benchmarks", - "sp-runtime/runtime-benchmarks", - "xcm-builder/runtime-benchmarks", - "cumulus-pallet-session-benchmarking/runtime-benchmarks", - "cumulus-pallet-xcmp-queue/runtime-benchmarks", - "pallet-collective/runtime-benchmarks", - - "runtime-common/runtime-benchmarks", - "orml-currencies-allowance-extension/runtime-benchmarks" + "hex-literal", + "frame-benchmarking/runtime-benchmarks", + "frame-support/runtime-benchmarks", + "frame-system-benchmarking/runtime-benchmarks", + "frame-system/runtime-benchmarks", + "pallet-balances/runtime-benchmarks", + "pallet-timestamp/runtime-benchmarks", + "fee/runtime-benchmarks", + "issue/runtime-benchmarks", + "nomination/runtime-benchmarks", + "oracle/runtime-benchmarks", + "redeem/runtime-benchmarks", + "replace/runtime-benchmarks", + "stellar-relay/runtime-benchmarks", + "vault-registry/runtime-benchmarks", + "pallet-xcm/runtime-benchmarks", + "sp-runtime/runtime-benchmarks", + "xcm-builder/runtime-benchmarks", + "cumulus-pallet-session-benchmarking/runtime-benchmarks", + "cumulus-pallet-xcmp-queue/runtime-benchmarks", + "pallet-collective/runtime-benchmarks", + "runtime-common/runtime-benchmarks", + "orml-currencies-allowance-extension/runtime-benchmarks" ] try-runtime = [ @@ -239,9 +284,9 @@ try-runtime = [ "pallet-contracts/try-runtime", "pallet-democracy/try-runtime", "pallet-identity/try-runtime", - "pallet-multisig/try-runtime", + "pallet-multisig/try-runtime", "pallet-preimage/try-runtime", - "pallet-proxy/try-runtime", + "pallet-proxy/try-runtime", "pallet-insecure-randomness-collective-flip/try-runtime", "pallet-scheduler/try-runtime", "pallet-session/try-runtime", @@ -250,26 +295,33 @@ try-runtime = [ "pallet-utility/try-runtime", "pallet-vesting/try-runtime", "pallet-xcm/try-runtime", - + "parachain-staking/try-runtime", "cumulus-pallet-aura-ext/try-runtime", "cumulus-pallet-dmp-queue/try-runtime", "cumulus-pallet-parachain-system/try-runtime", "cumulus-pallet-xcm/try-runtime", "cumulus-pallet-xcmp-queue/try-runtime", - "orml-asset-registry/try-runtime", "orml-currencies/try-runtime", "orml-tokens/try-runtime", "orml-xtokens/try-runtime", - + "stellar-relay/try-runtime", + "issue/try-runtime", + "currency/try-runtime", + "security/try-runtime", + "staking/try-runtime", + "oracle/try-runtime", + "fee/try-runtime", + "vault-registry/try-runtime", + "redeem/try-runtime", + "nomination/try-runtime", + "replace/try-runtime", + "pooled-rewards/try-runtime", + "clients-info/try-runtime", + "reward-distribution/try-runtime", "dia-oracle/try-runtime", "orml-currencies-allowance-extension/try-runtime", - "vesting-manager/try-runtime", - "bifrost-farming/try-runtime", - "zenlink-protocol/try-runtime", - - "parachain-staking/try-runtime", ] diff --git a/runtime/pendulum/src/lib.rs b/runtime/pendulum/src/lib.rs index db8b2db4b..5b145298f 100644 --- a/runtime/pendulum/src/lib.rs +++ b/runtime/pendulum/src/lib.rs @@ -22,18 +22,28 @@ use codec::Encode; use smallvec::smallvec; use sp_api::impl_runtime_apis; -use sp_core::{crypto::KeyTypeId, OpaqueMetadata}; +use sp_core::{crypto::KeyTypeId, OpaqueMetadata, H256}; use sp_runtime::{ create_runtime_str, generic, impl_opaque_keys, - traits::{AccountIdLookup, BlakeTwo256, Block as BlockT, ConvertInto}, + traits::{ + AccountIdConversion, AccountIdLookup, BlakeTwo256, Block as BlockT, Convert, ConvertInto, + }, transaction_validity::{TransactionSource, TransactionValidity}, - ApplyExtrinsicResult, SaturatedConversion, + ApplyExtrinsicResult, DispatchError, FixedPointNumber, MultiAddress, Perbill, Permill, + Perquintill, SaturatedConversion, }; use bifrost_farming as farming; use bifrost_farming_rpc_runtime_api as farming_rpc_runtime_api; pub use spacewalk_primitives::CurrencyId; +use spacewalk_primitives::{ + self as primitives, CurrencyId::XCM, Moment, SignedFixedPoint, SignedInner, UnsignedFixedPoint, + UnsignedInner, +}; + +#[cfg(any(feature = "runtime-benchmarks", feature = "testing-utils"))] +use oracle::testing_utils::MockDataFeeder; use sp_std::{marker::PhantomData, prelude::*}; #[cfg(feature = "std")] @@ -45,7 +55,7 @@ use frame_support::{ dispatch::DispatchClass, parameter_types, traits::{ - fungible::Credit, ConstBool, ConstU32, Contains, Currency, EitherOfDiverse, + ConstBool, ConstU32, Contains, Currency as FrameCurrency, fungible::Credit, EitherOfDiverse, EqualPrivilegeOnly, Imbalance, InstanceFilter, OnUnbalanced, WithdrawReasons, }, weights::{ @@ -58,7 +68,6 @@ use frame_system::{ limits::{BlockLength, BlockWeights}, EnsureRoot, EnsureSigned, }; -pub use sp_runtime::{traits::AccountIdConversion, MultiAddress, Perbill, Permill, Perquintill}; use runtime_common::{ asset_registry, opaque, AccountId, Amount, AuraId, Balance, BlockNumber, Hash, Index, PoolId, @@ -68,12 +77,23 @@ use runtime_common::{ use cumulus_pallet_parachain_system::RelayNumberStrictlyIncreases; use dia_oracle::DiaOracle; +pub use issue::{Event as IssueEvent, IssueRequest}; +pub use nomination::Event as NominationEvent; +use oracle::{ + dia, + dia::{DiaOracleAdapter, NativeCurrencyKey, XCMCurrencyConversion}, +}; +pub use redeem::{Event as RedeemEvent, RedeemRequest}; +pub use replace::{Event as ReplaceEvent, ReplaceRequest}; +pub use security::StatusCode; +pub use stellar_relay::traits::{FieldLength, Organization, Validator}; use xcm_config::{XcmConfig, XcmOriginToTransactDispatchOrigin}; use module_oracle_rpc_runtime_api::BalanceWrapper; use orml_currencies::BasicCurrencyAdapter; use orml_traits::{currency::MutationHooks, parameter_type_with_key}; + const CONTRACTS_DEBUG_OUTPUT: bool = true; #[cfg(any(feature = "std", test))] @@ -88,6 +108,9 @@ use weights::{BlockExecutionWeight, ExtrinsicBaseWeight, RocksDbWeight}; use crate::chain_ext::Psp22Extension; use xcm_executor::XcmExecutor; +/// Spacewalk vault id type +pub type VaultId = primitives::VaultId; + /// The address format for describing accounts. pub type Address = MultiAddress; @@ -176,6 +199,63 @@ pub type Executive = frame_executive::Executive< pallet_transaction_payment::migrations::v1::ForceSetVersionToV2, ), >; + +pub struct PendulumDiaOracleKeyConverter; + +impl NativeCurrencyKey for PendulumDiaOracleKeyConverter { + fn native_symbol() -> Vec { + b"PEN".to_vec() + } + + fn native_chain() -> Vec { + b"Pendulum".to_vec() + } +} + +impl XCMCurrencyConversion for PendulumDiaOracleKeyConverter { + fn convert_to_dia_currency_id(token_symbol: u8) -> Option<(Vec, Vec)> { + match token_symbol { + 0 => Some((b"Polkadot".to_vec(), b"DOT".to_vec())), + _ => None, + } + } + + fn convert_from_dia_currency_id(blockchain: Vec, symbol: Vec) -> Option { + match (blockchain.as_slice(), symbol.as_slice()) { + (b"Polkadot", b"DOT") => Some(0), + _ => None, + } + } +} + +type DataProviderImpl = DiaOracleAdapter< + DiaOracleModule, + UnsignedFixedPoint, + Moment, + dia::DiaOracleKeyConvertor, + ConvertPrice, + ConvertMoment, +>; + +pub struct ConvertPrice; + +impl Convert> for ConvertPrice { + fn convert(price: u128) -> Option { + // The DIA batching server returns the price in 1e12 format, see [here](https://github.com/pendulum-chain/oracle-pallet/blob/716073885de01f923a0fe44a05bd2a0bd45db555/dia-batching-server/src/price_updater.rs#L141) + // but our UnsignedFixedPoint implementation expects the price in 1e18 format. + Some(UnsignedFixedPoint::from_rational(price, 1_000_000_000_000)) + } +} + +pub struct ConvertMoment; + +impl Convert> for ConvertMoment { + fn convert(moment: u64) -> Option { + // The provided moment is in seconds, but we need milliseconds + Some(moment.saturating_mul(1000)) + } +} + /// Handles converting a weight scalar to a fee value, based on the scale and granularity of the /// node's balance type. /// @@ -187,6 +267,7 @@ pub type Executive = frame_executive::Executive< /// - Setting it to `0` will essentially disable the weight fee. /// - Setting it to `1` will cause the literal `#[weight = x]` values to be charged. pub struct WeightToFee; + impl WeightToFeePolynomial for WeightToFee { type Balance = Balance; fn polynomial() -> WeightToFeeCoefficients { @@ -212,7 +293,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("pendulum"), impl_name: create_runtime_str!("pendulum"), authoring_version: 1, - spec_version: 10, + spec_version: 13, impl_version: 0, apis: RUNTIME_API_VERSIONS, transaction_version: 10, @@ -287,12 +368,14 @@ parameter_types! { } pub struct BaseFilter; + impl Contains for BaseFilter { fn contains(call: &RuntimeCall) -> bool { match call { // These modules are all allowed to be called by transactions: RuntimeCall::Bounties(_) | RuntimeCall::ChildBounties(_) | + RuntimeCall::ClientsInfo(_) | RuntimeCall::Treasury(_) | RuntimeCall::Tokens(_) | RuntimeCall::Currencies(_) | @@ -321,6 +404,17 @@ impl Contains for BaseFilter { RuntimeCall::VestingManager(_) | RuntimeCall::TokenAllowance(_) | RuntimeCall::AssetRegistry(_) | + RuntimeCall::Fee(_) | + RuntimeCall::Issue(_) | + RuntimeCall::Nomination(_) | + RuntimeCall::Oracle(_) | + RuntimeCall::Redeem(_) | + RuntimeCall::Replace(_) | + RuntimeCall::Security(_) | + RuntimeCall::StellarRelay(_) | + RuntimeCall::VaultRegistry(_) | + RuntimeCall::PooledVaultRewards(_) | + RuntimeCall::RewardDistribution(_) | RuntimeCall::Farming(_) | RuntimeCall::Proxy(_) => true, // All pallets are allowed, but exhaustive match is defensive @@ -421,7 +515,7 @@ impl pallet_balances::Pallet, >, ) { - let _ = >::deposit_creating( + let _ = >::deposit_creating( &TreasuryPalletId::get().into_account_truncating(), amount.peek(), ); @@ -451,9 +545,10 @@ parameter_types! { pub const OperationalFeeMultiplier: u8 = 5; } -type NegativeImbalance = >::NegativeImbalance; +type NegativeImbalance = >::NegativeImbalance; pub struct DealWithFees; + impl OnUnbalanced for DealWithFees { fn on_unbalanceds(mut fees_then_tips: impl Iterator) { if let Some(mut fees) = fees_then_tips.next() { @@ -608,6 +703,7 @@ parameter_types! { } type CouncilCollective = pallet_collective::Instance1; + impl pallet_collective::Config for Runtime { type RuntimeOrigin = RuntimeOrigin; type Proposal = RuntimeCall; @@ -628,6 +724,7 @@ parameter_types! { } type TechnicalCollective = pallet_collective::Instance2; + impl pallet_collective::Config for Runtime { type RuntimeOrigin = RuntimeOrigin; type Proposal = RuntimeCall; @@ -769,6 +866,7 @@ pub fn get_all_module_accounts() -> Vec { } pub struct DustRemovalWhitelist; + impl Contains for DustRemovalWhitelist { fn contains(a: &AccountId) -> bool { get_all_module_accounts().contains(a) @@ -776,6 +874,7 @@ impl Contains for DustRemovalWhitelist { } pub struct CurrencyHooks(PhantomData); + impl MutationHooks for CurrencyHooks { @@ -1057,6 +1156,184 @@ where } } +pub struct CurrencyConvert; + +impl currency::CurrencyConversion, CurrencyId> for CurrencyConvert { + fn convert( + amount: ¤cy::Amount, + to: CurrencyId, + ) -> Result, DispatchError> { + Oracle::convert(amount, to) + } +} +parameter_types! { + pub const RelayChainCurrencyId: CurrencyId = XCM(0); // 0 is the index of the relay chain in our XCM mapping +} +impl currency::Config for Runtime { + type UnsignedFixedPoint = UnsignedFixedPoint; + type SignedInner = SignedInner; + type SignedFixedPoint = SignedFixedPoint; + type Balance = Balance; + type GetRelayChainCurrencyId = RelayChainCurrencyId; + type AssetConversion = primitives::AssetConversion; + type BalanceConversion = primitives::BalanceConversion; + type CurrencyConversion = CurrencyConvert; + type AmountCompatibility = primitives::StellarCompatibility; +} + +impl security::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type WeightInfo = security::SubstrateWeight; +} + +parameter_types! { + pub const MaxRewardCurrencies: u32= 10; +} + +impl staking::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type SignedInner = SignedInner; + type SignedFixedPoint = SignedFixedPoint; + type GetNativeCurrencyId = NativeCurrencyId; + type CurrencyId = CurrencyId; + type MaxRewardCurrencies = MaxRewardCurrencies; +} + +#[cfg(feature = "runtime-benchmarks")] +pub struct DataFeederBenchmark(PhantomData<(K, V, A)>); + +#[cfg(feature = "runtime-benchmarks")] +impl orml_traits::DataFeeder for DataFeederBenchmark { + fn feed_value(_who: A, _key: K, _value: V) -> sp_runtime::DispatchResult { + Ok(()) + } +} + +#[cfg(feature = "runtime-benchmarks")] +impl orml_traits::DataProvider for DataFeederBenchmark { + fn get(_key: &K) -> Option { + None + } +} + +impl oracle::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type WeightInfo = oracle::SubstrateWeight; + type DecimalsLookup = spacewalk_primitives::PendulumDecimalsLookup; + type DataProvider = DataProviderImpl; + #[cfg(feature = "runtime-benchmarks")] + type DataFeeder = MockDataFeeder; +} + +parameter_types! { + pub const OrganizationLimit: u32 = 255; + pub const ValidatorLimit: u32 = 255; + pub const IsPublicNetwork: bool = true; +} + +impl stellar_relay::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type OrganizationId = u128; + type OrganizationLimit = OrganizationLimit; + type ValidatorLimit = ValidatorLimit; + type IsPublicNetwork = IsPublicNetwork; + type WeightInfo = stellar_relay::SubstrateWeight; +} + +parameter_types! { + pub const FeePalletId: PalletId = PalletId(*b"mod/fees"); + pub const VaultRegistryPalletId: PalletId = PalletId(*b"mod/vreg"); + pub const MaxExpectedValue: UnsignedFixedPoint = UnsignedFixedPoint::from_inner(::DIV); + pub FeeAccount: AccountId = FeePalletId::get().into_account_truncating(); +} +impl fee::Config for Runtime { + type FeePalletId = FeePalletId; + type WeightInfo = fee::SubstrateWeight; + type SignedFixedPoint = SignedFixedPoint; + type SignedInner = SignedInner; + type UnsignedFixedPoint = UnsignedFixedPoint; + type UnsignedInner = UnsignedInner; + type VaultRewards = PooledVaultRewards; + type VaultStaking = VaultStaking; + type OnSweep = currency::SweepFunds; + type MaxExpectedValue = MaxExpectedValue; + type RewardDistribution = RewardDistribution; +} + +impl vault_registry::Config for Runtime { + type PalletId = VaultRegistryPalletId; + type RuntimeEvent = RuntimeEvent; + type Balance = Balance; + type WeightInfo = vault_registry::SubstrateWeight; + type GetGriefingCollateralCurrencyId = NativeCurrencyId; +} + +impl redeem::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type WeightInfo = redeem::SubstrateWeight; +} + +pub struct BlockNumberToBalance; + +impl sp_runtime::traits::Convert for BlockNumberToBalance { + fn convert(a: BlockNumber) -> Balance { + a.into() + } +} + +impl issue::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type BlockNumberToBalance = BlockNumberToBalance; + type WeightInfo = issue::SubstrateWeight; +} + +impl nomination::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type WeightInfo = nomination::SubstrateWeight; +} + +impl replace::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type WeightInfo = replace::SubstrateWeight; +} + +impl clients_info::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type WeightInfo = clients_info::SubstrateWeight; + type MaxNameLength = ConstU32<255>; + type MaxUriLength = ConstU32<255>; +} +// Choice of parameters: Perquintill::from_parts(36600800000000000u64) represents a value of +// 0.0366008 = 36600800000000000 / 1×10¹⁸ +// The decay interval 216000 equates to a month when considering 1 block every 12 seconds +parameter_types! { + pub const DecayRate: Perquintill = Perquintill::from_parts(36600800000000000); + pub const MaxCurrencies: u32 = 10; +} + +impl reward_distribution::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type WeightInfo = reward_distribution::SubstrateWeight; + type Balance = Balance; + type DecayInterval = ConstU32<216_000>; + type DecayRate = DecayRate; + type VaultRewards = PooledVaultRewards; + type MaxCurrencies = MaxCurrencies; + type OracleApi = Oracle; + type Balances = Balances; + type VaultStaking = VaultStaking; + type FeePalletId = FeePalletId; +} + +impl pooled_rewards::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type SignedFixedPoint = SignedFixedPoint; + type PoolId = CurrencyId; + type PoolRewardsCurrencyId = CurrencyId; + type StakeId = VaultId; + type MaxRewardCurrencies = MaxRewardCurrencies; +} + impl InstanceFilter for ProxyType { fn filter(&self, c: &RuntimeCall) -> bool { match self { @@ -1168,17 +1445,32 @@ construct_runtime!( RandomnessCollectiveFlip: pallet_insecure_randomness_collective_flip::{Pallet, Storage} = 57, DiaOracleModule: dia_oracle::{Pallet, Storage, Call, Event} = 58, - TokenAllowance: orml_currencies_allowance_extension::{Pallet, Storage, Call, Event} = 80, - + // Zenlink ZenlinkProtocol: zenlink_protocol::{Pallet, Call, Storage, Event} = 59, + // Spacewalk pallets + Currency: currency::{Pallet} = 60, + Fee: fee::{Pallet, Call, Config, Storage} = 61, + Issue: issue::{Pallet, Call, Config, Storage, Event} = 62, + Nomination: nomination::{Pallet, Call, Config, Storage, Event} = 63, + Oracle: oracle::{Pallet, Call, Config, Storage, Event} = 64, + Redeem: redeem::{Pallet, Call, Config, Storage, Event} = 65, + Replace: replace::{Pallet, Call, Config, Storage, Event} = 66, + Security: security::{Pallet, Call, Config, Storage, Event} = 67, + StellarRelay: stellar_relay::{Pallet, Call, Config, Storage, Event} = 68, + VaultRegistry: vault_registry::{Pallet, Call, Config, Storage, Event, ValidateUnsigned} = 69, + PooledVaultRewards: pooled_rewards::{Pallet, Call, Storage, Event} = 70, + VaultStaking: staking::{Pallet, Storage, Event} = 71, + ClientsInfo: clients_info::{Pallet, Call, Storage, Event} = 72, + RewardDistribution: reward_distribution::{Pallet, Call, Storage, Event} = 73, + + TokenAllowance: orml_currencies_allowance_extension::{Pallet, Storage, Call, Event} = 80, + //Farming Farming: farming::{Pallet, Call, Storage, Event} = 90, // Asset Metadata AssetRegistry: orml_asset_registry::{Pallet, Storage, Call, Event, Config} = 91, - - VestingManager: vesting_manager::{Pallet, Call, Event} = 100 } ); @@ -1495,6 +1787,98 @@ impl_runtime_apis! { } } + impl module_issue_rpc_runtime_api::IssueApi< + Block, + AccountId, + H256, + IssueRequest + > for Runtime { + fn get_issue_requests(account_id: AccountId) -> Vec { + Issue::get_issue_requests_for_account(account_id) + } + fn get_vault_issue_requests(vault_id: AccountId) -> Vec { + Issue::get_issue_requests_for_vault(vault_id) + } + } + impl module_vault_registry_rpc_runtime_api::VaultRegistryApi< + Block, + VaultId, + Balance, + UnsignedFixedPoint, + CurrencyId, + AccountId, + > for Runtime { + fn get_vault_collateral(vault_id: VaultId) -> Result, DispatchError> { + let result = VaultRegistry::compute_collateral(&vault_id)?; + Ok(BalanceWrapper{amount:result.amount()}) + } + fn get_vaults_by_account_id(account_id: AccountId) -> Result, DispatchError> { + VaultRegistry::get_vaults_by_account_id(account_id) + } + fn get_vault_total_collateral(vault_id: VaultId) -> Result, DispatchError> { + let result = VaultRegistry::get_backing_collateral(&vault_id)?; + Ok(BalanceWrapper{amount:result.amount()}) + } + fn get_premium_redeem_vaults() -> Result)>, DispatchError> { + let result = VaultRegistry::get_premium_redeem_vaults()?; + Ok(result.iter().map(|v| (v.0.clone(), BalanceWrapper{amount:v.1.amount()})).collect()) + } + fn get_vaults_with_issuable_tokens() -> Result)>, DispatchError> { + let result = VaultRegistry::get_vaults_with_issuable_tokens()?; + Ok(result.into_iter().map(|v| (v.0, BalanceWrapper{amount:v.1.amount()})).collect()) + } + fn get_vaults_with_redeemable_tokens() -> Result)>, DispatchError> { + let result = VaultRegistry::get_vaults_with_redeemable_tokens()?; + Ok(result.into_iter().map(|v| (v.0, BalanceWrapper{amount:v.1.amount()})).collect()) + } + fn get_issuable_tokens_from_vault(vault: VaultId) -> Result, DispatchError> { + let result = VaultRegistry::get_issuable_tokens_from_vault(&vault)?; + Ok(BalanceWrapper{amount:result.amount()}) + } + fn get_collateralization_from_vault(vault: VaultId, only_issued: bool) -> Result { + VaultRegistry::get_collateralization_from_vault(vault, only_issued) + } + fn get_collateralization_from_vault_and_collateral(vault: VaultId, collateral: BalanceWrapper, only_issued: bool) -> Result { + let amount = currency::Amount::new(collateral.amount, vault.collateral_currency()); + VaultRegistry::get_collateralization_from_vault_and_collateral(vault, &amount, only_issued) + } + fn get_required_collateral_for_wrapped(amount_wrapped: BalanceWrapper, wrapped_currency_id: CurrencyId, collateral_currency_id: CurrencyId) -> Result, DispatchError> { + let amount_wrapped = currency::Amount::new(amount_wrapped.amount, wrapped_currency_id); + let result = VaultRegistry::get_required_collateral_for_wrapped(&amount_wrapped, collateral_currency_id)?; + Ok(BalanceWrapper{amount:result.amount()}) + } + fn get_required_collateral_for_vault(vault_id: VaultId) -> Result, DispatchError> { + let result = VaultRegistry::get_required_collateral_for_vault(vault_id)?; + Ok(BalanceWrapper{amount:result.amount()}) + } + } + impl module_redeem_rpc_runtime_api::RedeemApi< + Block, + AccountId, + H256, + RedeemRequest + > for Runtime { + fn get_redeem_requests(account_id: AccountId) -> Vec { + Redeem::get_redeem_requests_for_account(account_id) + } + fn get_vault_redeem_requests(vault_account_id: AccountId) -> Vec { + Redeem::get_redeem_requests_for_vault(vault_account_id) + } + } + impl module_replace_rpc_runtime_api::ReplaceApi< + Block, + AccountId, + H256, + ReplaceRequest + > for Runtime { + fn get_old_vault_replace_requests(vault_id: AccountId) -> Vec { + Replace::get_replace_requests_for_old_vault(vault_id) + } + fn get_new_vault_replace_requests(vault_id: AccountId) -> Vec { + Replace::get_replace_requests_for_new_vault(vault_id) + } + } + impl pallet_contracts::ContractsApi for Runtime { @@ -1560,6 +1944,23 @@ impl_runtime_apis! { } } + impl module_oracle_rpc_runtime_api::OracleApi for Runtime { + fn currency_to_usd(amount:BalanceWrapper, currency_id: CurrencyId) -> Result, DispatchError> { + let result = Oracle::currency_to_usd(amount.amount, currency_id)?; + Ok(BalanceWrapper{amount:result}) + } + + fn usd_to_currency(amount:BalanceWrapper, currency_id: CurrencyId) -> Result, DispatchError> { + let result = Oracle::usd_to_currency(amount.amount, currency_id)?; + Ok(BalanceWrapper{amount:result}) + } + + fn get_exchange_rate(currency_id: CurrencyId) -> Result { + let result = Oracle::get_exchange_rate(currency_id)?; + Ok(result) + } + } + } struct CheckInherents; diff --git a/runtime/pendulum/src/xcm_config.rs b/runtime/pendulum/src/xcm_config.rs index f63550284..6b69b76dc 100644 --- a/runtime/pendulum/src/xcm_config.rs +++ b/runtime/pendulum/src/xcm_config.rs @@ -35,6 +35,7 @@ use xcm_executor::{ use runtime_common::{ custom_transactor::{AssetData, AutomationPalletConfig, CustomTransactorInterceptor}, parachains::polkadot::{asset_hub, equilibrium, moonbeam, polkadex}, + RelativeValue, }; use crate::{ @@ -104,41 +105,26 @@ impl Convert> for CurrencyIdConvert { } } -pub struct RelativeValue { - num: Balance, - denominator: Balance, -} - -impl RelativeValue { - fn adjust_amount_by_relative_value(amount: Balance, relative_value: RelativeValue) -> Balance { - if relative_value.denominator == 0 { - // Or probably error - return amount - } - // Calculate the adjusted amount - let adjusted_amount = amount * relative_value.denominator / relative_value.num; - adjusted_amount - } -} +type RelativeValueOf = RelativeValue; pub struct RelayRelativeValue; impl RelayRelativeValue { - fn get_relative_value(id: CurrencyId) -> Option { + fn get_relative_value(id: CurrencyId) -> Option { match id { CurrencyId::XCM(f) => match f { - xcm_assets::RELAY_DOT => Some(RelativeValue { num: 98, denominator: 1 }), - xcm_assets::ASSETHUB_USDT => Some(RelativeValue { num: 12, denominator: 1 }), - xcm_assets::ASSETHUB_USDC => Some(RelativeValue { num: 12, denominator: 1 }), - xcm_assets::EQUILIBRIUM_EQD => Some(RelativeValue { num: 12, denominator: 1 }), - xcm_assets::MOONBEAM_BRZ => Some(RelativeValue { num: 23, denominator: 10 }), - xcm_assets::POLKADEX_PDEX => Some(RelativeValue { num: 14, denominator: 1 }), - xcm_assets::MOONBEAM_GLMR => Some(RelativeValue { num: 55, denominator: 10 }), + xcm_assets::RELAY_DOT => Some(RelativeValueOf { num: 98, denominator: 1 }), + xcm_assets::ASSETHUB_USDT => Some(RelativeValueOf { num: 12, denominator: 1 }), + xcm_assets::ASSETHUB_USDC => Some(RelativeValueOf { num: 12, denominator: 1 }), + xcm_assets::EQUILIBRIUM_EQD => Some(RelativeValueOf { num: 12, denominator: 1 }), + xcm_assets::MOONBEAM_BRZ => Some(RelativeValueOf { num: 23, denominator: 10 }), + xcm_assets::POLKADEX_PDEX => Some(RelativeValueOf { num: 14, denominator: 1 }), + xcm_assets::MOONBEAM_GLMR => Some(RelativeValueOf { num: 55, denominator: 10 }), _ => None, }, - CurrencyId::Native => Some(RelativeValue { num: 1, denominator: 1 }), - assets::tokens::EURC_ID => Some(RelativeValue { num: 13, denominator: 1 }), - _ => Some(RelativeValue { num: 10, denominator: 1 }), + CurrencyId::Native => Some(RelativeValueOf { num: 1, denominator: 1 }), + assets::tokens::EURC_ID => Some(RelativeValueOf { num: 13, denominator: 1 }), + _ => Some(RelativeValueOf { num: 10, denominator: 1 }), } } } @@ -335,7 +321,7 @@ impl ChargeWeightInFungibles for ChargeWeightInFungib // and adjust the amount inversily proportional to the value if let Some(relative_value) = RelayRelativeValue::get_relative_value(asset_id) { let adjusted_amount = - RelativeValue::adjust_amount_by_relative_value(amount, relative_value); + RelativeValue::::divide_by_relative_value(amount, relative_value); log::info!("amount to be charged: {:?} in asset: {:?}", adjusted_amount, asset_id); return Ok(adjusted_amount) } else {