diff --git a/Cargo.lock b/Cargo.lock index 9aa80bb04e..89baff291f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1086,7 +1086,7 @@ checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9" [[package]] name = "asset-test-utils" version = "24.0.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cumulus-pallet-parachain-system", "cumulus-pallet-xcmp-queue", @@ -1116,7 +1116,7 @@ dependencies = [ [[package]] name = "assets-common" version = "0.22.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cumulus-primitives-core", "ethereum-standards", @@ -1482,7 +1482,7 @@ checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" [[package]] name = "binary-merkle-tree" version = "16.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "hash-db", "log", @@ -1779,7 +1779,7 @@ dependencies = [ [[package]] name = "bp-header-chain" version = "0.21.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bp-runtime", "finality-grandpa", @@ -1796,7 +1796,7 @@ dependencies = [ [[package]] name = "bp-messages" version = "0.21.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bp-header-chain", "bp-runtime", @@ -1812,7 +1812,7 @@ dependencies = [ [[package]] name = "bp-parachains" version = "0.21.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bp-header-chain", "bp-polkadot-core", @@ -1829,7 +1829,7 @@ dependencies = [ [[package]] name = "bp-polkadot-core" version = "0.21.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bp-messages", "bp-runtime", @@ -1846,7 +1846,7 @@ dependencies = [ [[package]] name = "bp-relayers" version = "0.21.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bp-header-chain", "bp-messages", @@ -1864,7 +1864,7 @@ dependencies = [ [[package]] name = "bp-runtime" version = "0.21.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "frame-system", @@ -1887,7 +1887,7 @@ dependencies = [ [[package]] name = "bp-test-utils" version = "0.21.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bp-header-chain", "bp-parachains", @@ -1907,7 +1907,7 @@ dependencies = [ [[package]] name = "bp-xcm-bridge-hub" version = "0.7.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bp-messages", "bp-runtime", @@ -1924,7 +1924,7 @@ dependencies = [ [[package]] name = "bp-xcm-bridge-hub-router" version = "0.18.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "scale-info", @@ -1936,7 +1936,7 @@ dependencies = [ [[package]] name = "bridge-hub-common" version = "0.14.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -1955,7 +1955,7 @@ dependencies = [ [[package]] name = "bridge-hub-test-utils" version = "0.23.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "asset-test-utils", "bp-header-chain", @@ -1997,7 +1997,7 @@ dependencies = [ [[package]] name = "bridge-runtime-common" version = "0.22.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bp-header-chain", "bp-messages", @@ -2928,7 +2928,7 @@ dependencies = [ [[package]] name = "cumulus-client-bootnodes" version = "0.2.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "array-bytes 6.2.2", "async-channel 1.9.0", @@ -2954,7 +2954,7 @@ dependencies = [ [[package]] name = "cumulus-client-cli" version = "0.24.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "clap", "parity-scale-codec", @@ -2971,7 +2971,7 @@ dependencies = [ [[package]] name = "cumulus-client-collator" version = "0.24.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cumulus-client-consensus-common", "cumulus-client-network", @@ -2994,7 +2994,7 @@ dependencies = [ [[package]] name = "cumulus-client-consensus-aura" version = "0.24.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "cumulus-client-collator", @@ -3041,7 +3041,7 @@ dependencies = [ [[package]] name = "cumulus-client-consensus-common" version = "0.24.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "cumulus-client-pov-recovery", @@ -3073,7 +3073,7 @@ dependencies = [ [[package]] name = "cumulus-client-consensus-proposer" version = "0.20.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "anyhow", "async-trait", @@ -3088,7 +3088,7 @@ dependencies = [ [[package]] name = "cumulus-client-consensus-relay-chain" version = "0.24.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "cumulus-client-consensus-common", @@ -3111,7 +3111,7 @@ dependencies = [ [[package]] name = "cumulus-client-network" version = "0.24.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "cumulus-relay-chain-interface", @@ -3138,7 +3138,7 @@ dependencies = [ [[package]] name = "cumulus-client-parachain-inherent" version = "0.18.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "cumulus-primitives-core", @@ -3159,7 +3159,7 @@ dependencies = [ [[package]] name = "cumulus-client-pov-recovery" version = "0.24.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "cumulus-primitives-core", @@ -3187,7 +3187,7 @@ dependencies = [ [[package]] name = "cumulus-client-service" version = "0.25.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-channel 1.9.0", "cumulus-client-cli", @@ -3228,7 +3228,7 @@ dependencies = [ [[package]] name = "cumulus-pallet-aura-ext" version = "0.21.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cumulus-pallet-parachain-system", "frame-support", @@ -3245,7 +3245,7 @@ dependencies = [ [[package]] name = "cumulus-pallet-dmp-queue" version = "0.21.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cumulus-primitives-core", "frame-benchmarking", @@ -3262,7 +3262,7 @@ dependencies = [ [[package]] name = "cumulus-pallet-parachain-system" version = "0.21.2" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "array-bytes 6.2.2", "bytes", @@ -3300,7 +3300,7 @@ dependencies = [ [[package]] name = "cumulus-pallet-parachain-system-proc-macro" version = "0.6.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", @@ -3311,7 +3311,7 @@ dependencies = [ [[package]] name = "cumulus-pallet-session-benchmarking" version = "22.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -3324,7 +3324,7 @@ dependencies = [ [[package]] name = "cumulus-pallet-solo-to-para" version = "0.21.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cumulus-pallet-parachain-system", "frame-support", @@ -3339,7 +3339,7 @@ dependencies = [ [[package]] name = "cumulus-pallet-weight-reclaim" version = "0.3.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cumulus-primitives-storage-weight-reclaim", "derive-where", @@ -3358,7 +3358,7 @@ dependencies = [ [[package]] name = "cumulus-pallet-xcm" version = "0.20.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -3373,7 +3373,7 @@ dependencies = [ [[package]] name = "cumulus-pallet-xcmp-queue" version = "0.21.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "approx", "bounded-collections 0.2.4", @@ -3399,7 +3399,7 @@ dependencies = [ [[package]] name = "cumulus-ping" version = "0.21.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cumulus-pallet-xcm", "cumulus-primitives-core", @@ -3414,7 +3414,7 @@ dependencies = [ [[package]] name = "cumulus-primitives-aura" version = "0.18.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "sp-api", "sp-consensus-aura", @@ -3423,7 +3423,7 @@ dependencies = [ [[package]] name = "cumulus-primitives-core" version = "0.19.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "polkadot-core-primitives", @@ -3440,7 +3440,7 @@ dependencies = [ [[package]] name = "cumulus-primitives-parachain-inherent" version = "0.19.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "cumulus-primitives-core", @@ -3454,7 +3454,7 @@ dependencies = [ [[package]] name = "cumulus-primitives-proof-size-hostfunction" version = "0.13.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "sp-externalities", "sp-runtime-interface", @@ -3464,7 +3464,7 @@ dependencies = [ [[package]] name = "cumulus-primitives-storage-weight-reclaim" version = "12.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cumulus-primitives-core", "cumulus-primitives-proof-size-hostfunction", @@ -3481,7 +3481,7 @@ dependencies = [ [[package]] name = "cumulus-primitives-timestamp" version = "0.20.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cumulus-primitives-core", "sp-inherents", @@ -3491,7 +3491,7 @@ dependencies = [ [[package]] name = "cumulus-primitives-utility" version = "0.21.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -3508,7 +3508,7 @@ dependencies = [ [[package]] name = "cumulus-relay-chain-inprocess-interface" version = "0.25.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-channel 1.9.0", "async-trait", @@ -3536,7 +3536,7 @@ dependencies = [ [[package]] name = "cumulus-relay-chain-interface" version = "0.24.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "cumulus-primitives-core", @@ -3556,7 +3556,7 @@ dependencies = [ [[package]] name = "cumulus-relay-chain-minimal-node" version = "0.25.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "array-bytes 6.2.2", "async-channel 1.9.0", @@ -3592,7 +3592,7 @@ dependencies = [ [[package]] name = "cumulus-relay-chain-rpc-interface" version = "0.24.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "cumulus-primitives-core", @@ -3633,7 +3633,7 @@ dependencies = [ [[package]] name = "cumulus-relay-chain-streams" version = "0.2.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cumulus-relay-chain-interface", "futures", @@ -3647,7 +3647,7 @@ dependencies = [ [[package]] name = "cumulus-test-relay-sproof-builder" version = "0.20.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cumulus-primitives-core", "parity-scale-codec", @@ -4417,7 +4417,7 @@ dependencies = [ [[package]] name = "ethereum-standards" version = "0.1.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "alloy-core", ] @@ -4922,7 +4922,7 @@ checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" [[package]] name = "fork-tree" version = "13.0.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", ] @@ -5060,7 +5060,7 @@ checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" [[package]] name = "frame-benchmarking" version = "41.0.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "frame-support-procedural", @@ -5084,7 +5084,7 @@ dependencies = [ [[package]] name = "frame-benchmarking-cli" version = "49.1.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "Inflector", "array-bytes 6.2.2", @@ -5149,7 +5149,7 @@ dependencies = [ [[package]] name = "frame-benchmarking-pallet-pov" version = "31.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -5177,7 +5177,7 @@ dependencies = [ [[package]] name = "frame-election-provider-solution-type" version = "16.1.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", @@ -5188,7 +5188,7 @@ dependencies = [ [[package]] name = "frame-election-provider-support" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-election-provider-solution-type", "frame-support", @@ -5205,7 +5205,7 @@ dependencies = [ [[package]] name = "frame-executive" version = "41.0.2" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "aquamarine", "frame-support", @@ -5247,7 +5247,7 @@ dependencies = [ [[package]] name = "frame-metadata-hash-extension" version = "0.9.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "array-bytes 6.2.2", "const-hex", @@ -5263,7 +5263,7 @@ dependencies = [ [[package]] name = "frame-remote-externalities" version = "0.52.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "futures", "indicatif", @@ -5285,7 +5285,7 @@ dependencies = [ [[package]] name = "frame-storage-access-test-runtime" version = "0.2.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cumulus-pallet-parachain-system", "parity-scale-codec", @@ -5299,7 +5299,7 @@ dependencies = [ [[package]] name = "frame-support" version = "41.0.2" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "aquamarine", "array-bytes 6.2.2", @@ -5340,7 +5340,7 @@ dependencies = [ [[package]] name = "frame-support-procedural" version = "34.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "Inflector", "cfg-expr", @@ -5360,7 +5360,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools" version = "13.0.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support-procedural-tools-derive", "proc-macro-crate 3.1.0", @@ -5372,7 +5372,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools-derive" version = "12.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "proc-macro2", "quote", @@ -5382,7 +5382,7 @@ dependencies = [ [[package]] name = "frame-system" version = "41.0.2" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cfg-if", "docify", @@ -5401,7 +5401,7 @@ dependencies = [ [[package]] name = "frame-system-benchmarking" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -5415,7 +5415,7 @@ dependencies = [ [[package]] name = "frame-system-rpc-runtime-api" version = "37.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "docify", "parity-scale-codec", @@ -5425,7 +5425,7 @@ dependencies = [ [[package]] name = "frame-try-runtime" version = "0.47.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "parity-scale-codec", @@ -6322,7 +6322,7 @@ dependencies = [ [[package]] name = "hydradx-adapters" -version = "1.13.1" +version = "1.13.2" dependencies = [ "cumulus-pallet-parachain-system", "cumulus-primitives-core", @@ -6357,7 +6357,7 @@ dependencies = [ "pallet-referrals", "pallet-route-executor", "pallet-stableswap", - "pallet-staking 4.3.1", + "pallet-staking 4.3.2", "pallet-timestamp", "pallet-transaction-multi-payment", "pallet-uniques", @@ -6379,7 +6379,7 @@ dependencies = [ [[package]] name = "hydradx-runtime" -version = "412.0.0" +version = "413.0.0" dependencies = [ "alloy-primitives 0.7.7", "alloy-sol-types 0.7.7", @@ -6395,6 +6395,7 @@ dependencies = [ "cumulus-primitives-storage-weight-reclaim", "cumulus-primitives-timestamp", "cumulus-primitives-utility", + "environmental", "ethabi", "ethereum", "evm", @@ -6445,7 +6446,7 @@ dependencies = [ "pallet-currencies", "pallet-currencies-rpc-runtime-api", "pallet-dca", - "pallet-democracy 4.5.0", + "pallet-democracy 4.5.1", "pallet-dispatcher", "pallet-dispenser", "pallet-duster", @@ -6493,8 +6494,9 @@ dependencies = [ "pallet-session", "pallet-signet", "pallet-stableswap", - "pallet-staking 4.3.1", + "pallet-staking 4.3.2", "pallet-state-trie-migration", + "pallet-synthetic-logs", "pallet-timestamp", "pallet-tips", "pallet-token-gateway", @@ -8454,7 +8456,7 @@ dependencies = [ [[package]] name = "mmr-gadget" version = "46.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "futures", "log", @@ -8473,7 +8475,7 @@ dependencies = [ [[package]] name = "mmr-rpc" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "jsonrpsee", "parity-scale-codec", @@ -9139,7 +9141,7 @@ dependencies = [ [[package]] name = "orml-benchmarking" version = "1.4.0" -source = "git+https://github.com/galacticcouncil/open-runtime-module-library?branch=polkadot-stable2506#d20eee81b61c385918869e1633b91cfed49ed60b" +source = "git+https://github.com/galacticcouncil/open-runtime-module-library?branch=polkadot-stable2506-patch-hooks#7e26f9a8fc47dc6f515b328f39c5fa7fc520223b" dependencies = [ "frame-benchmarking", "frame-support", @@ -9160,7 +9162,7 @@ dependencies = [ [[package]] name = "orml-tokens" version = "1.4.0" -source = "git+https://github.com/galacticcouncil/open-runtime-module-library?branch=polkadot-stable2506#d20eee81b61c385918869e1633b91cfed49ed60b" +source = "git+https://github.com/galacticcouncil/open-runtime-module-library?branch=polkadot-stable2506-patch-hooks#7e26f9a8fc47dc6f515b328f39c5fa7fc520223b" dependencies = [ "frame-support", "frame-system", @@ -9177,7 +9179,7 @@ dependencies = [ [[package]] name = "orml-traits" version = "1.4.0" -source = "git+https://github.com/galacticcouncil/open-runtime-module-library?branch=polkadot-stable2506#d20eee81b61c385918869e1633b91cfed49ed60b" +source = "git+https://github.com/galacticcouncil/open-runtime-module-library?branch=polkadot-stable2506-patch-hooks#7e26f9a8fc47dc6f515b328f39c5fa7fc520223b" dependencies = [ "frame-support", "impl-trait-for-tuples", @@ -9197,7 +9199,7 @@ dependencies = [ [[package]] name = "orml-unknown-tokens" version = "1.4.0" -source = "git+https://github.com/galacticcouncil/open-runtime-module-library?branch=polkadot-stable2506#d20eee81b61c385918869e1633b91cfed49ed60b" +source = "git+https://github.com/galacticcouncil/open-runtime-module-library?branch=polkadot-stable2506-patch-hooks#7e26f9a8fc47dc6f515b328f39c5fa7fc520223b" dependencies = [ "frame-support", "frame-system", @@ -9212,7 +9214,7 @@ dependencies = [ [[package]] name = "orml-utilities" version = "1.4.0" -source = "git+https://github.com/galacticcouncil/open-runtime-module-library?branch=polkadot-stable2506#d20eee81b61c385918869e1633b91cfed49ed60b" +source = "git+https://github.com/galacticcouncil/open-runtime-module-library?branch=polkadot-stable2506-patch-hooks#7e26f9a8fc47dc6f515b328f39c5fa7fc520223b" dependencies = [ "frame-support", "parity-scale-codec", @@ -9227,7 +9229,7 @@ dependencies = [ [[package]] name = "orml-vesting" version = "1.4.0" -source = "git+https://github.com/galacticcouncil/open-runtime-module-library?branch=polkadot-stable2506#d20eee81b61c385918869e1633b91cfed49ed60b" +source = "git+https://github.com/galacticcouncil/open-runtime-module-library?branch=polkadot-stable2506-patch-hooks#7e26f9a8fc47dc6f515b328f39c5fa7fc520223b" dependencies = [ "frame-support", "frame-system", @@ -9242,7 +9244,7 @@ dependencies = [ [[package]] name = "orml-xcm" version = "1.4.0" -source = "git+https://github.com/galacticcouncil/open-runtime-module-library?branch=polkadot-stable2506#d20eee81b61c385918869e1633b91cfed49ed60b" +source = "git+https://github.com/galacticcouncil/open-runtime-module-library?branch=polkadot-stable2506-patch-hooks#7e26f9a8fc47dc6f515b328f39c5fa7fc520223b" dependencies = [ "frame-support", "frame-system", @@ -9256,7 +9258,7 @@ dependencies = [ [[package]] name = "orml-xcm-support" version = "1.4.0" -source = "git+https://github.com/galacticcouncil/open-runtime-module-library?branch=polkadot-stable2506#d20eee81b61c385918869e1633b91cfed49ed60b" +source = "git+https://github.com/galacticcouncil/open-runtime-module-library?branch=polkadot-stable2506-patch-hooks#7e26f9a8fc47dc6f515b328f39c5fa7fc520223b" dependencies = [ "frame-support", "orml-traits", @@ -9270,7 +9272,7 @@ dependencies = [ [[package]] name = "orml-xtokens" version = "1.4.0" -source = "git+https://github.com/galacticcouncil/open-runtime-module-library?branch=polkadot-stable2506#d20eee81b61c385918869e1633b91cfed49ed60b" +source = "git+https://github.com/galacticcouncil/open-runtime-module-library?branch=polkadot-stable2506-patch-hooks#7e26f9a8fc47dc6f515b328f39c5fa7fc520223b" dependencies = [ "frame-support", "frame-system", @@ -9297,7 +9299,7 @@ checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" [[package]] name = "pallet-alliance" version = "40.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "array-bytes 6.2.2", "frame-benchmarking", @@ -9317,7 +9319,7 @@ dependencies = [ [[package]] name = "pallet-asset-conversion" version = "23.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -9335,7 +9337,7 @@ dependencies = [ [[package]] name = "pallet-asset-conversion-ops" version = "0.9.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -9353,7 +9355,7 @@ dependencies = [ [[package]] name = "pallet-asset-conversion-tx-payment" version = "23.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -9368,7 +9370,7 @@ dependencies = [ [[package]] name = "pallet-asset-rate" version = "20.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -9411,7 +9413,7 @@ dependencies = [ [[package]] name = "pallet-asset-rewards" version = "0.3.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -9429,7 +9431,7 @@ dependencies = [ [[package]] name = "pallet-asset-tx-payment" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -9445,7 +9447,7 @@ dependencies = [ [[package]] name = "pallet-assets" version = "43.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "ethereum-standards", "frame-benchmarking", @@ -9463,7 +9465,7 @@ dependencies = [ [[package]] name = "pallet-assets-freezer" version = "0.8.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "log", "pallet-assets", @@ -9475,7 +9477,7 @@ dependencies = [ [[package]] name = "pallet-assets-holder" version = "0.3.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -9490,7 +9492,7 @@ dependencies = [ [[package]] name = "pallet-atomic-swap" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "polkadot-sdk-frame", @@ -9500,7 +9502,7 @@ dependencies = [ [[package]] name = "pallet-aura" version = "40.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "frame-system", @@ -9516,7 +9518,7 @@ dependencies = [ [[package]] name = "pallet-authority-discovery" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "frame-system", @@ -9531,7 +9533,7 @@ dependencies = [ [[package]] name = "pallet-authorship" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "frame-system", @@ -9544,7 +9546,7 @@ dependencies = [ [[package]] name = "pallet-babe" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -9567,7 +9569,7 @@ dependencies = [ [[package]] name = "pallet-bags-list" version = "40.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "aquamarine", "docify", @@ -9588,7 +9590,7 @@ dependencies = [ [[package]] name = "pallet-balances" version = "42.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "docify", "frame-benchmarking", @@ -9604,7 +9606,7 @@ dependencies = [ [[package]] name = "pallet-beefy" version = "42.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "frame-system", @@ -9623,7 +9625,7 @@ dependencies = [ [[package]] name = "pallet-beefy-mmr" version = "42.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "array-bytes 6.2.2", "binary-merkle-tree", @@ -9672,7 +9674,7 @@ dependencies = [ [[package]] name = "pallet-bounties" version = "40.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -9689,7 +9691,7 @@ dependencies = [ [[package]] name = "pallet-bridge-grandpa" version = "0.21.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bp-header-chain", "bp-runtime", @@ -9708,7 +9710,7 @@ dependencies = [ [[package]] name = "pallet-bridge-messages" version = "0.21.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bp-header-chain", "bp-messages", @@ -9727,7 +9729,7 @@ dependencies = [ [[package]] name = "pallet-bridge-parachains" version = "0.21.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bp-header-chain", "bp-parachains", @@ -9747,7 +9749,7 @@ dependencies = [ [[package]] name = "pallet-bridge-relayers" version = "0.21.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bp-header-chain", "bp-messages", @@ -9769,7 +9771,7 @@ dependencies = [ [[package]] name = "pallet-broadcast" -version = "1.7.0" +version = "1.8.0" dependencies = [ "frame-support", "frame-support-procedural", @@ -9790,7 +9792,7 @@ dependencies = [ [[package]] name = "pallet-broker" version = "0.20.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bitvec", "frame-benchmarking", @@ -9808,7 +9810,7 @@ dependencies = [ [[package]] name = "pallet-child-bounties" version = "40.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -9825,7 +9827,7 @@ dependencies = [ [[package]] name = "pallet-circuit-breaker" -version = "1.6.3" +version = "1.6.4" dependencies = [ "frame-benchmarking", "frame-support", @@ -9854,7 +9856,7 @@ dependencies = [ [[package]] name = "pallet-claims" -version = "3.6.0" +version = "3.6.1" dependencies = [ "frame-benchmarking", "frame-support", @@ -9876,7 +9878,7 @@ dependencies = [ [[package]] name = "pallet-collator-rewards" -version = "1.3.0" +version = "1.3.1" dependencies = [ "frame-benchmarking", "frame-support", @@ -9917,7 +9919,7 @@ dependencies = [ [[package]] name = "pallet-collator-selection" version = "22.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -9936,7 +9938,7 @@ dependencies = [ [[package]] name = "pallet-collective" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "docify", "frame-benchmarking", @@ -9953,7 +9955,7 @@ dependencies = [ [[package]] name = "pallet-collective-content" version = "0.19.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -9967,7 +9969,7 @@ dependencies = [ [[package]] name = "pallet-contracts" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "environmental", "frame-benchmarking", @@ -9998,7 +10000,7 @@ dependencies = [ [[package]] name = "pallet-contracts-mock-network" version = "18.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "frame-system", @@ -10029,7 +10031,7 @@ dependencies = [ [[package]] name = "pallet-contracts-proc-macro" version = "23.0.3" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "proc-macro2", "quote", @@ -10039,7 +10041,7 @@ dependencies = [ [[package]] name = "pallet-contracts-uapi" version = "14.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bitflags 1.3.2", "parity-scale-codec", @@ -10050,7 +10052,7 @@ dependencies = [ [[package]] name = "pallet-conviction-voting" version = "41.0.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "assert_matches", "frame-benchmarking", @@ -10066,7 +10068,7 @@ dependencies = [ [[package]] name = "pallet-core-fellowship" version = "25.0.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -10083,7 +10085,7 @@ dependencies = [ [[package]] name = "pallet-currencies" -version = "4.1.1" +version = "4.1.2" dependencies = [ "frame-support", "frame-system", @@ -10115,7 +10117,7 @@ dependencies = [ [[package]] name = "pallet-dca" -version = "1.18.1" +version = "1.18.2" dependencies = [ "cumulus-pallet-parachain-system", "cumulus-primitives-core", @@ -10158,7 +10160,7 @@ dependencies = [ [[package]] name = "pallet-delegated-staking" version = "8.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "frame-system", @@ -10172,7 +10174,7 @@ dependencies = [ [[package]] name = "pallet-democracy" -version = "4.5.0" +version = "4.5.1" dependencies = [ "frame-benchmarking", "frame-support", @@ -10193,7 +10195,7 @@ dependencies = [ [[package]] name = "pallet-democracy" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -10210,7 +10212,7 @@ dependencies = [ [[package]] name = "pallet-dev-mode" version = "23.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "frame-system", @@ -10246,7 +10248,7 @@ dependencies = [ [[package]] name = "pallet-dispenser" -version = "0.4.0" +version = "0.4.1" dependencies = [ "alloy-primitives 0.7.7", "alloy-sol-types 0.7.7", @@ -10278,7 +10280,7 @@ dependencies = [ [[package]] name = "pallet-dummy-dim" version = "0.2.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -10295,7 +10297,7 @@ dependencies = [ [[package]] name = "pallet-duster" -version = "3.8.0" +version = "3.8.1" dependencies = [ "frame-benchmarking", "frame-support", @@ -10328,7 +10330,7 @@ dependencies = [ [[package]] name = "pallet-dynamic-evm-fee" -version = "1.3.0" +version = "1.3.1" dependencies = [ "frame-benchmarking", "frame-support", @@ -10377,7 +10379,7 @@ dependencies = [ [[package]] name = "pallet-election-provider-multi-block" version = "0.2.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -10398,7 +10400,7 @@ dependencies = [ [[package]] name = "pallet-election-provider-multi-phase" version = "40.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -10419,7 +10421,7 @@ dependencies = [ [[package]] name = "pallet-election-provider-support-benchmarking" version = "40.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -10432,7 +10434,7 @@ dependencies = [ [[package]] name = "pallet-elections-phragmen" version = "42.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -10525,7 +10527,7 @@ dependencies = [ [[package]] name = "pallet-evm-accounts" -version = "1.6.1" +version = "1.6.2" dependencies = [ "frame-benchmarking", "frame-support", @@ -10585,7 +10587,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-call-permit" -version = "0.3.0" +version = "0.3.1" dependencies = [ "derive_more 0.99.20", "evm", @@ -10672,7 +10674,7 @@ dependencies = [ [[package]] name = "pallet-fast-unstake" version = "40.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "docify", "frame-benchmarking", @@ -10708,7 +10710,7 @@ dependencies = [ [[package]] name = "pallet-glutton" version = "27.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "blake2 0.10.6", "frame-benchmarking", @@ -10726,7 +10728,7 @@ dependencies = [ [[package]] name = "pallet-grandpa" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -10747,7 +10749,7 @@ dependencies = [ [[package]] name = "pallet-hsm" -version = "1.7.0" +version = "1.7.1" dependencies = [ "ethabi", "evm", @@ -10799,7 +10801,7 @@ dependencies = [ [[package]] name = "pallet-identity" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "enumflags2", "frame-benchmarking", @@ -10815,7 +10817,7 @@ dependencies = [ [[package]] name = "pallet-im-online" version = "40.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -10834,7 +10836,7 @@ dependencies = [ [[package]] name = "pallet-indices" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -10849,7 +10851,7 @@ dependencies = [ [[package]] name = "pallet-insecure-randomness-collective-flip" version = "29.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "polkadot-sdk-frame", @@ -10914,7 +10916,7 @@ dependencies = [ [[package]] name = "pallet-lbp" -version = "4.13.0" +version = "4.13.1" dependencies = [ "frame-benchmarking", "frame-support", @@ -10940,7 +10942,7 @@ dependencies = [ [[package]] name = "pallet-liquidation" -version = "2.4.2" +version = "2.4.3" dependencies = [ "ethabi", "ethereum", @@ -10987,7 +10989,7 @@ dependencies = [ [[package]] name = "pallet-liquidity-mining" -version = "4.7.0" +version = "4.7.1" dependencies = [ "fixed", "frame-support", @@ -11014,7 +11016,7 @@ dependencies = [ [[package]] name = "pallet-lottery" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -11027,7 +11029,7 @@ dependencies = [ [[package]] name = "pallet-membership" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -11043,7 +11045,7 @@ dependencies = [ [[package]] name = "pallet-message-queue" version = "44.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "environmental", "frame-benchmarking", @@ -11062,7 +11064,7 @@ dependencies = [ [[package]] name = "pallet-meta-tx" version = "0.3.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "docify", "frame-benchmarking", @@ -11080,7 +11082,7 @@ dependencies = [ [[package]] name = "pallet-migrations" version = "11.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "docify", "frame-benchmarking", @@ -11099,7 +11101,7 @@ dependencies = [ [[package]] name = "pallet-mixnet" version = "0.17.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "log", "parity-scale-codec", @@ -11113,7 +11115,7 @@ dependencies = [ [[package]] name = "pallet-mmr" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "log", "parity-scale-codec", @@ -11125,7 +11127,7 @@ dependencies = [ [[package]] name = "pallet-multisig" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "log", "parity-scale-codec", @@ -11135,7 +11137,7 @@ dependencies = [ [[package]] name = "pallet-nft" -version = "7.3.0" +version = "7.3.1" dependencies = [ "frame-benchmarking", "frame-support", @@ -11156,7 +11158,7 @@ dependencies = [ [[package]] name = "pallet-nft-fractionalization" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "log", "pallet-assets", @@ -11169,7 +11171,7 @@ dependencies = [ [[package]] name = "pallet-nfts" version = "35.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "enumflags2", "frame-benchmarking", @@ -11186,7 +11188,7 @@ dependencies = [ [[package]] name = "pallet-nfts-runtime-api" version = "27.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "sp-api", @@ -11195,7 +11197,7 @@ dependencies = [ [[package]] name = "pallet-nis" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "polkadot-sdk-frame", @@ -11205,7 +11207,7 @@ dependencies = [ [[package]] name = "pallet-node-authorization" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "log", "parity-scale-codec", @@ -11216,7 +11218,7 @@ dependencies = [ [[package]] name = "pallet-nomination-pools" version = "39.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "frame-system", @@ -11234,7 +11236,7 @@ dependencies = [ [[package]] name = "pallet-nomination-pools-benchmarking" version = "39.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -11254,7 +11256,7 @@ dependencies = [ [[package]] name = "pallet-nomination-pools-runtime-api" version = "37.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "pallet-nomination-pools", "parity-scale-codec", @@ -11264,7 +11266,7 @@ dependencies = [ [[package]] name = "pallet-offences" version = "40.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "frame-system", @@ -11279,7 +11281,7 @@ dependencies = [ [[package]] name = "pallet-offences-benchmarking" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -11301,7 +11303,7 @@ dependencies = [ [[package]] name = "pallet-omnipool" -version = "7.3.1" +version = "7.3.2" dependencies = [ "bitflags 1.3.2", "frame-benchmarking", @@ -11330,7 +11332,7 @@ dependencies = [ [[package]] name = "pallet-omnipool-liquidity-mining" -version = "3.4.0" +version = "3.4.1" dependencies = [ "frame-benchmarking", "frame-support", @@ -11362,7 +11364,7 @@ dependencies = [ [[package]] name = "pallet-origin-restriction" version = "0.2.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -11379,7 +11381,7 @@ dependencies = [ [[package]] name = "pallet-otc" -version = "2.4.0" +version = "2.4.1" dependencies = [ "frame-benchmarking", "frame-support", @@ -11402,7 +11404,7 @@ dependencies = [ [[package]] name = "pallet-otc-settlements" -version = "1.4.1" +version = "1.4.2" dependencies = [ "frame-benchmarking", "frame-support", @@ -11434,7 +11436,7 @@ dependencies = [ [[package]] name = "pallet-paged-list" version = "0.19.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "docify", "parity-scale-codec", @@ -11446,7 +11448,7 @@ dependencies = [ [[package]] name = "pallet-parameters" version = "0.12.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "docify", "frame-benchmarking", @@ -11477,7 +11479,7 @@ dependencies = [ [[package]] name = "pallet-people" version = "0.2.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -11495,7 +11497,7 @@ dependencies = [ [[package]] name = "pallet-preimage" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -11511,7 +11513,7 @@ dependencies = [ [[package]] name = "pallet-proxy" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "polkadot-sdk-frame", @@ -11521,7 +11523,7 @@ dependencies = [ [[package]] name = "pallet-ranked-collective" version = "41.0.2" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -11539,7 +11541,7 @@ dependencies = [ [[package]] name = "pallet-recovery" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "polkadot-sdk-frame", @@ -11549,7 +11551,7 @@ dependencies = [ [[package]] name = "pallet-referenda" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "assert_matches", "frame-benchmarking", @@ -11603,7 +11605,7 @@ dependencies = [ [[package]] name = "pallet-remark" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -11619,7 +11621,7 @@ dependencies = [ [[package]] name = "pallet-revive" version = "0.7.2" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "alloy-core", "derive_more 0.99.20", @@ -11665,7 +11667,7 @@ dependencies = [ [[package]] name = "pallet-revive-fixtures" version = "0.4.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "anyhow", "cargo_metadata", @@ -11679,7 +11681,7 @@ dependencies = [ [[package]] name = "pallet-revive-proc-macro" version = "0.3.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "proc-macro2", "quote", @@ -11689,7 +11691,7 @@ dependencies = [ [[package]] name = "pallet-revive-uapi" version = "0.5.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bitflags 1.3.2", "pallet-revive-proc-macro", @@ -11701,7 +11703,7 @@ dependencies = [ [[package]] name = "pallet-root-offences" version = "38.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "frame-system", @@ -11717,7 +11719,7 @@ dependencies = [ [[package]] name = "pallet-root-testing" version = "17.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "frame-system", @@ -11729,7 +11731,7 @@ dependencies = [ [[package]] name = "pallet-route-executor" -version = "2.12.0" +version = "2.12.1" dependencies = [ "frame-benchmarking", "frame-support", @@ -11757,7 +11759,7 @@ dependencies = [ [[package]] name = "pallet-safe-mode" version = "22.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "docify", "pallet-balances", @@ -11771,7 +11773,7 @@ dependencies = [ [[package]] name = "pallet-salary" version = "26.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "log", "pallet-ranked-collective", @@ -11783,7 +11785,7 @@ dependencies = [ [[package]] name = "pallet-scheduler" version = "42.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "docify", "frame-benchmarking", @@ -11800,7 +11802,7 @@ dependencies = [ [[package]] name = "pallet-scored-pool" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "frame-system", @@ -11813,7 +11815,7 @@ dependencies = [ [[package]] name = "pallet-session" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "frame-system", @@ -11834,7 +11836,7 @@ dependencies = [ [[package]] name = "pallet-session-benchmarking" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -11849,7 +11851,7 @@ dependencies = [ [[package]] name = "pallet-signet" -version = "1.3.0" +version = "1.3.1" dependencies = [ "ethereum", "frame-benchmarking", @@ -11868,7 +11870,7 @@ dependencies = [ [[package]] name = "pallet-skip-feeless-payment" version = "16.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "frame-system", @@ -11880,7 +11882,7 @@ dependencies = [ [[package]] name = "pallet-society" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -11896,7 +11898,7 @@ dependencies = [ [[package]] name = "pallet-stableswap" -version = "7.3.0" +version = "7.3.1" dependencies = [ "bitflags 1.3.2", "frame-benchmarking", @@ -11929,7 +11931,7 @@ dependencies = [ [[package]] name = "pallet-staking" -version = "4.3.1" +version = "4.3.2" dependencies = [ "frame-benchmarking", "frame-support", @@ -11940,7 +11942,7 @@ dependencies = [ "orml-traits", "pallet-balances", "pallet-conviction-voting", - "pallet-democracy 4.5.0", + "pallet-democracy 4.5.1", "pallet-referenda", "pallet-uniques", "parity-scale-codec", @@ -11956,7 +11958,7 @@ dependencies = [ [[package]] name = "pallet-staking" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -11978,7 +11980,7 @@ dependencies = [ [[package]] name = "pallet-staking-async" version = "0.2.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -12001,7 +12003,7 @@ dependencies = [ [[package]] name = "pallet-staking-async-ah-client" version = "0.2.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "frame-system", @@ -12020,7 +12022,7 @@ dependencies = [ [[package]] name = "pallet-staking-async-rc-client" version = "0.2.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "frame-system", @@ -12037,7 +12039,7 @@ dependencies = [ [[package]] name = "pallet-staking-async-reward-fn" version = "0.2.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "log", "sp-arithmetic", @@ -12046,7 +12048,7 @@ dependencies = [ [[package]] name = "pallet-staking-async-runtime-api" version = "0.2.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "sp-api", @@ -12056,7 +12058,7 @@ dependencies = [ [[package]] name = "pallet-staking-reward-fn" version = "23.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "log", "sp-arithmetic", @@ -12065,7 +12067,7 @@ dependencies = [ [[package]] name = "pallet-staking-runtime-api" version = "27.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "sp-api", @@ -12075,7 +12077,7 @@ dependencies = [ [[package]] name = "pallet-state-trie-migration" version = "46.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -12091,7 +12093,7 @@ dependencies = [ [[package]] name = "pallet-statement" version = "23.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "frame-system", @@ -12108,7 +12110,7 @@ dependencies = [ [[package]] name = "pallet-sudo" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "docify", "frame-benchmarking", @@ -12120,10 +12122,31 @@ dependencies = [ "sp-runtime", ] +[[package]] +name = "pallet-synthetic-logs" +version = "0.2.0" +dependencies = [ + "ethereum", + "ethereum-types", + "frame-support", + "frame-system", + "log", + "pallet-broadcast", + "pallet-ethereum", + "parity-scale-codec", + "primitives", + "scale-info", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + [[package]] name = "pallet-timestamp" version = "40.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "docify", "frame-benchmarking", @@ -12141,7 +12164,7 @@ dependencies = [ [[package]] name = "pallet-tips" version = "40.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -12179,7 +12202,7 @@ dependencies = [ [[package]] name = "pallet-transaction-multi-payment" -version = "10.5.0" +version = "10.5.1" dependencies = [ "frame-support", "frame-system", @@ -12207,7 +12230,7 @@ dependencies = [ [[package]] name = "pallet-transaction-pause" -version = "1.3.0" +version = "1.3.1" dependencies = [ "frame-benchmarking", "frame-support", @@ -12229,7 +12252,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -12244,7 +12267,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc" version = "44.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "jsonrpsee", "pallet-transaction-payment-rpc-runtime-api", @@ -12260,7 +12283,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc-runtime-api" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "pallet-transaction-payment", "parity-scale-codec", @@ -12272,7 +12295,7 @@ dependencies = [ [[package]] name = "pallet-transaction-storage" version = "40.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "array-bytes 6.2.2", "frame-benchmarking", @@ -12292,7 +12315,7 @@ dependencies = [ [[package]] name = "pallet-treasury" version = "40.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "docify", "frame-benchmarking", @@ -12311,7 +12334,7 @@ dependencies = [ [[package]] name = "pallet-tx-pause" version = "22.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "docify", "parity-scale-codec", @@ -12322,7 +12345,7 @@ dependencies = [ [[package]] name = "pallet-uniques" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -12336,7 +12359,7 @@ dependencies = [ [[package]] name = "pallet-utility" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -12352,7 +12375,7 @@ dependencies = [ [[package]] name = "pallet-verify-signature" version = "0.4.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -12367,7 +12390,7 @@ dependencies = [ [[package]] name = "pallet-vesting" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -12381,7 +12404,7 @@ dependencies = [ [[package]] name = "pallet-whitelist" version = "40.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "polkadot-sdk-frame", @@ -12391,7 +12414,7 @@ dependencies = [ [[package]] name = "pallet-xcm" version = "20.1.3" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bounded-collections 0.2.4", "frame-benchmarking", @@ -12417,7 +12440,7 @@ dependencies = [ [[package]] name = "pallet-xcm-benchmarks" version = "21.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-benchmarking", "frame-support", @@ -12434,7 +12457,7 @@ dependencies = [ [[package]] name = "pallet-xcm-bridge-hub" version = "0.17.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bp-messages", "bp-runtime", @@ -12456,7 +12479,7 @@ dependencies = [ [[package]] name = "pallet-xcm-bridge-hub-router" version = "0.19.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bp-xcm-bridge-hub-router", "frame-benchmarking", @@ -12475,7 +12498,7 @@ dependencies = [ [[package]] name = "pallet-xyk" -version = "8.2.0" +version = "8.2.1" dependencies = [ "frame-benchmarking", "frame-support", @@ -12502,7 +12525,7 @@ dependencies = [ [[package]] name = "pallet-xyk-liquidity-mining" -version = "1.8.0" +version = "1.8.1" dependencies = [ "frame-support", "frame-system", @@ -12529,7 +12552,7 @@ dependencies = [ [[package]] name = "parachains-common" version = "22.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cumulus-primitives-core", "cumulus-primitives-utility", @@ -12558,7 +12581,7 @@ dependencies = [ [[package]] name = "parachains-runtimes-test-utils" version = "23.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cumulus-pallet-parachain-system", "cumulus-pallet-xcmp-queue", @@ -12916,7 +12939,7 @@ dependencies = [ [[package]] name = "polkadot-approval-distribution" version = "24.0.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "futures", "futures-timer", @@ -12934,7 +12957,7 @@ dependencies = [ [[package]] name = "polkadot-availability-bitfield-distribution" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "futures", "futures-timer", @@ -12949,7 +12972,7 @@ dependencies = [ [[package]] name = "polkadot-availability-distribution" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "fatality", "futures", @@ -12972,7 +12995,7 @@ dependencies = [ [[package]] name = "polkadot-availability-recovery" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "fatality", @@ -13005,7 +13028,7 @@ dependencies = [ [[package]] name = "polkadot-cli" version = "25.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "clap", "frame-benchmarking-cli", @@ -13029,7 +13052,7 @@ dependencies = [ [[package]] name = "polkadot-collator-protocol" version = "24.0.2" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bitvec", "fatality", @@ -13052,7 +13075,7 @@ dependencies = [ [[package]] name = "polkadot-core-primitives" version = "18.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "scale-info", @@ -13063,7 +13086,7 @@ dependencies = [ [[package]] name = "polkadot-dispute-distribution" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "fatality", "futures", @@ -13085,7 +13108,7 @@ dependencies = [ [[package]] name = "polkadot-erasure-coding" version = "20.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "polkadot-node-primitives", @@ -13099,7 +13122,7 @@ dependencies = [ [[package]] name = "polkadot-gossip-support" version = "24.0.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "futures", "futures-timer", @@ -13120,7 +13143,7 @@ dependencies = [ [[package]] name = "polkadot-network-bridge" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "always-assert", "async-trait", @@ -13143,7 +13166,7 @@ dependencies = [ [[package]] name = "polkadot-node-collation-generation" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "futures", "parity-scale-codec", @@ -13161,7 +13184,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-approval-voting" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "bitvec", @@ -13193,7 +13216,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-approval-voting-parallel" version = "0.7.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "futures", @@ -13217,7 +13240,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-av-store" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bitvec", "futures", @@ -13236,7 +13259,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-backing" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bitvec", "fatality", @@ -13257,7 +13280,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-bitfield-signing" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "futures", "polkadot-node-subsystem", @@ -13272,7 +13295,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-candidate-validation" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "futures", @@ -13294,7 +13317,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-chain-api" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "futures", "polkadot-node-metrics", @@ -13308,7 +13331,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-chain-selection" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "futures", "futures-timer", @@ -13324,7 +13347,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-dispute-coordinator" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "fatality", "futures", @@ -13342,7 +13365,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-parachains-inherent" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "futures", @@ -13359,7 +13382,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-prospective-parachains" version = "23.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "fatality", "futures", @@ -13373,7 +13396,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-provisioner" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bitvec", "fatality", @@ -13390,7 +13413,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-pvf" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "always-assert", "array-bytes 6.2.2", @@ -13418,7 +13441,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-pvf-checker" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "futures", "polkadot-node-subsystem", @@ -13431,7 +13454,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-pvf-common" version = "20.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cpu-time", "futures", @@ -13457,7 +13480,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-runtime-api" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "futures", "polkadot-node-metrics", @@ -13472,7 +13495,7 @@ dependencies = [ [[package]] name = "polkadot-node-metrics" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bs58", "futures", @@ -13489,7 +13512,7 @@ dependencies = [ [[package]] name = "polkadot-node-network-protocol" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-channel 1.9.0", "async-trait", @@ -13514,7 +13537,7 @@ dependencies = [ [[package]] name = "polkadot-node-primitives" version = "20.1.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bitvec", "bounded-vec", @@ -13538,7 +13561,7 @@ dependencies = [ [[package]] name = "polkadot-node-subsystem" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "polkadot-node-subsystem-types", "polkadot-overseer", @@ -13547,7 +13570,7 @@ dependencies = [ [[package]] name = "polkadot-node-subsystem-types" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "derive_more 0.99.20", @@ -13575,7 +13598,7 @@ dependencies = [ [[package]] name = "polkadot-node-subsystem-util" version = "24.0.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "fatality", "futures", @@ -13606,7 +13629,7 @@ dependencies = [ [[package]] name = "polkadot-omni-node-lib" version = "0.7.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "clap", @@ -13692,7 +13715,7 @@ dependencies = [ [[package]] name = "polkadot-overseer" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "futures", @@ -13712,7 +13735,7 @@ dependencies = [ [[package]] name = "polkadot-parachain-primitives" version = "17.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bounded-collections 0.2.4", "derive_more 0.99.20", @@ -13728,7 +13751,7 @@ dependencies = [ [[package]] name = "polkadot-primitives" version = "19.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bitvec", "bounded-collections 0.2.4", @@ -13757,7 +13780,7 @@ dependencies = [ [[package]] name = "polkadot-rpc" version = "25.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "jsonrpsee", "mmr-rpc", @@ -13790,7 +13813,7 @@ dependencies = [ [[package]] name = "polkadot-runtime-common" version = "20.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bitvec", "frame-benchmarking", @@ -13840,7 +13863,7 @@ dependencies = [ [[package]] name = "polkadot-runtime-metrics" version = "21.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bs58", "frame-benchmarking", @@ -13852,7 +13875,7 @@ dependencies = [ [[package]] name = "polkadot-runtime-parachains" version = "20.0.3" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bitflags 1.3.2", "bitvec", @@ -13900,7 +13923,7 @@ dependencies = [ [[package]] name = "polkadot-sdk" version = "2506.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "asset-test-utils", "assets-common", @@ -14139,7 +14162,7 @@ dependencies = [ [[package]] name = "polkadot-sdk-frame" version = "0.10.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "docify", "frame-benchmarking", @@ -14174,7 +14197,7 @@ dependencies = [ [[package]] name = "polkadot-service" version = "25.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "frame-benchmarking", @@ -14282,7 +14305,7 @@ dependencies = [ [[package]] name = "polkadot-statement-distribution" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bitvec", "fatality", @@ -14302,7 +14325,7 @@ dependencies = [ [[package]] name = "polkadot-statement-table" version = "20.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "polkadot-primitives", @@ -15463,7 +15486,7 @@ dependencies = [ [[package]] name = "rococo-runtime" version = "24.0.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "binary-merkle-tree", "bitvec", @@ -15561,7 +15584,7 @@ dependencies = [ [[package]] name = "rococo-runtime-constants" version = "21.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "polkadot-primitives", @@ -15664,7 +15687,7 @@ checksum = "48fd7bd8a6377e15ad9d42a8ec25371b94ddc67abe7c8b9127bec79bebaaae18" [[package]] name = "runtime-integration-tests" -version = "1.80.0" +version = "1.80.1" dependencies = [ "cumulus-pallet-aura-ext", "cumulus-pallet-parachain-system", @@ -15676,6 +15699,7 @@ dependencies = [ "cumulus-test-relay-sproof-builder", "ethabi", "ethereum", + "ethereum-types", "fp-evm", "fp-rpc", "fp-self-contained", @@ -15746,7 +15770,8 @@ dependencies = [ "pallet-scheduler", "pallet-session", "pallet-stableswap", - "pallet-staking 4.3.1", + "pallet-staking 4.3.2", + "pallet-synthetic-logs", "pallet-timestamp", "pallet-transaction-multi-payment", "pallet-transaction-pause", @@ -15812,7 +15837,7 @@ dependencies = [ "pallet-asset-registry", "pallet-omnipool", "pallet-stableswap", - "pallet-staking 4.3.1", + "pallet-staking 4.3.2", "primitives", "scraper", "serde", @@ -16128,7 +16153,7 @@ dependencies = [ [[package]] name = "sc-allocator" version = "32.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "log", "sp-core", @@ -16139,7 +16164,7 @@ dependencies = [ [[package]] name = "sc-authority-discovery" version = "0.51.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "futures", @@ -16170,7 +16195,7 @@ dependencies = [ [[package]] name = "sc-basic-authorship" version = "0.50.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "futures", "log", @@ -16191,7 +16216,7 @@ dependencies = [ [[package]] name = "sc-block-builder" version = "0.45.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "sp-api", @@ -16206,7 +16231,7 @@ dependencies = [ [[package]] name = "sc-chain-spec" version = "44.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "array-bytes 6.2.2", "clap", @@ -16233,7 +16258,7 @@ dependencies = [ [[package]] name = "sc-chain-spec-derive" version = "12.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", @@ -16244,7 +16269,7 @@ dependencies = [ [[package]] name = "sc-cli" version = "0.53.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "array-bytes 6.2.2", "chrono", @@ -16286,7 +16311,7 @@ dependencies = [ [[package]] name = "sc-client-api" version = "40.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "fnv", "futures", @@ -16312,7 +16337,7 @@ dependencies = [ [[package]] name = "sc-client-db" version = "0.47.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "hash-db", "kvdb", @@ -16340,7 +16365,7 @@ dependencies = [ [[package]] name = "sc-consensus" version = "0.50.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "futures", @@ -16363,7 +16388,7 @@ dependencies = [ [[package]] name = "sc-consensus-aura" version = "0.51.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "futures", @@ -16392,7 +16417,7 @@ dependencies = [ [[package]] name = "sc-consensus-babe" version = "0.51.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "fork-tree", @@ -16428,7 +16453,7 @@ dependencies = [ [[package]] name = "sc-consensus-babe-rpc" version = "0.51.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "futures", "jsonrpsee", @@ -16450,7 +16475,7 @@ dependencies = [ [[package]] name = "sc-consensus-beefy" version = "30.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "array-bytes 6.2.2", "async-channel 1.9.0", @@ -16484,7 +16509,7 @@ dependencies = [ [[package]] name = "sc-consensus-beefy-rpc" version = "30.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "futures", "jsonrpsee", @@ -16504,7 +16529,7 @@ dependencies = [ [[package]] name = "sc-consensus-epochs" version = "0.50.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "fork-tree", "parity-scale-codec", @@ -16517,7 +16542,7 @@ dependencies = [ [[package]] name = "sc-consensus-grandpa" version = "0.36.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "ahash", "array-bytes 6.2.2", @@ -16561,7 +16586,7 @@ dependencies = [ [[package]] name = "sc-consensus-grandpa-rpc" version = "0.36.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "finality-grandpa", "futures", @@ -16581,7 +16606,7 @@ dependencies = [ [[package]] name = "sc-consensus-manual-seal" version = "0.52.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "assert_matches", "async-trait", @@ -16616,7 +16641,7 @@ dependencies = [ [[package]] name = "sc-consensus-slots" version = "0.50.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "futures", @@ -16639,7 +16664,7 @@ dependencies = [ [[package]] name = "sc-executor" version = "0.43.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "parking_lot 0.12.3", @@ -16662,7 +16687,7 @@ dependencies = [ [[package]] name = "sc-executor-common" version = "0.39.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "polkavm 0.24.0", "sc-allocator", @@ -16675,7 +16700,7 @@ dependencies = [ [[package]] name = "sc-executor-polkavm" version = "0.36.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "log", "polkavm 0.24.0", @@ -16686,7 +16711,7 @@ dependencies = [ [[package]] name = "sc-executor-wasmtime" version = "0.39.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "anyhow", "log", @@ -16702,7 +16727,7 @@ dependencies = [ [[package]] name = "sc-informant" version = "0.50.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "console", "futures", @@ -16718,7 +16743,7 @@ dependencies = [ [[package]] name = "sc-keystore" version = "36.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "array-bytes 6.2.2", "parking_lot 0.12.3", @@ -16732,7 +16757,7 @@ dependencies = [ [[package]] name = "sc-mixnet" version = "0.21.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "array-bytes 6.2.2", "arrayvec 0.7.4", @@ -16760,7 +16785,7 @@ dependencies = [ [[package]] name = "sc-network" version = "0.51.2" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "array-bytes 6.2.2", "async-channel 1.9.0", @@ -16810,7 +16835,7 @@ dependencies = [ [[package]] name = "sc-network-common" version = "0.49.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bitflags 1.3.2", "parity-scale-codec", @@ -16820,7 +16845,7 @@ dependencies = [ [[package]] name = "sc-network-gossip" version = "0.51.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "ahash", "futures", @@ -16839,7 +16864,7 @@ dependencies = [ [[package]] name = "sc-network-light" version = "0.50.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "array-bytes 6.2.2", "async-channel 1.9.0", @@ -16860,7 +16885,7 @@ dependencies = [ [[package]] name = "sc-network-statement" version = "0.33.2" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "array-bytes 6.2.2", "async-channel 1.9.0", @@ -16881,7 +16906,7 @@ dependencies = [ [[package]] name = "sc-network-sync" version = "0.50.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "array-bytes 6.2.2", "async-channel 1.9.0", @@ -16916,7 +16941,7 @@ dependencies = [ [[package]] name = "sc-network-transactions" version = "0.50.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "array-bytes 6.2.2", "futures", @@ -16935,7 +16960,7 @@ dependencies = [ [[package]] name = "sc-network-types" version = "0.17.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bs58", "bytes", @@ -16956,7 +16981,7 @@ dependencies = [ [[package]] name = "sc-offchain" version = "46.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bytes", "fnv", @@ -16990,7 +17015,7 @@ dependencies = [ [[package]] name = "sc-proposer-metrics" version = "0.20.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "log", "substrate-prometheus-endpoint", @@ -16999,7 +17024,7 @@ dependencies = [ [[package]] name = "sc-rpc" version = "46.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "futures", "jsonrpsee", @@ -17031,7 +17056,7 @@ dependencies = [ [[package]] name = "sc-rpc-api" version = "0.50.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "jsonrpsee", "parity-scale-codec", @@ -17051,7 +17076,7 @@ dependencies = [ [[package]] name = "sc-rpc-server" version = "23.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "dyn-clone", "forwarded-header-value", @@ -17075,7 +17100,7 @@ dependencies = [ [[package]] name = "sc-rpc-spec-v2" version = "0.51.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "array-bytes 6.2.2", "futures", @@ -17108,7 +17133,7 @@ dependencies = [ [[package]] name = "sc-runtime-utilities" version = "0.3.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "sc-executor", @@ -17123,7 +17148,7 @@ dependencies = [ [[package]] name = "sc-service" version = "0.52.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "directories", @@ -17187,7 +17212,7 @@ dependencies = [ [[package]] name = "sc-state-db" version = "0.39.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "log", "parity-scale-codec", @@ -17198,7 +17223,7 @@ dependencies = [ [[package]] name = "sc-statement-store" version = "22.3.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "log", "parity-db", @@ -17218,7 +17243,7 @@ dependencies = [ [[package]] name = "sc-storage-monitor" version = "0.25.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "clap", "fs4", @@ -17231,7 +17256,7 @@ dependencies = [ [[package]] name = "sc-sync-state-rpc" version = "0.51.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "jsonrpsee", "parity-scale-codec", @@ -17250,7 +17275,7 @@ dependencies = [ [[package]] name = "sc-sysinfo" version = "43.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "derive_more 0.99.20", "futures", @@ -17270,7 +17295,7 @@ dependencies = [ [[package]] name = "sc-telemetry" version = "29.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "chrono", "futures", @@ -17289,7 +17314,7 @@ dependencies = [ [[package]] name = "sc-tracing" version = "40.0.2" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "chrono", "console", @@ -17319,7 +17344,7 @@ dependencies = [ [[package]] name = "sc-tracing-proc-macro" version = "11.1.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", @@ -17330,7 +17355,7 @@ dependencies = [ [[package]] name = "sc-transaction-pool" version = "40.1.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "futures", @@ -17361,7 +17386,7 @@ dependencies = [ [[package]] name = "sc-transaction-pool-api" version = "40.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "futures", @@ -17378,7 +17403,7 @@ dependencies = [ [[package]] name = "sc-utils" version = "19.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-channel 1.9.0", "futures", @@ -18133,7 +18158,7 @@ dependencies = [ [[package]] name = "slot-range-helper" version = "18.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "enumn", "parity-scale-codec", @@ -18396,7 +18421,7 @@ dependencies = [ [[package]] name = "snowbridge-core" version = "0.14.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bp-relayers", "frame-support", @@ -18481,7 +18506,7 @@ dependencies = [ [[package]] name = "sp-api" version = "37.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "docify", "hash-db", @@ -18503,7 +18528,7 @@ dependencies = [ [[package]] name = "sp-api-proc-macro" version = "23.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "Inflector", "blake2 0.10.6", @@ -18517,7 +18542,7 @@ dependencies = [ [[package]] name = "sp-application-crypto" version = "41.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "scale-info", @@ -18529,7 +18554,7 @@ dependencies = [ [[package]] name = "sp-arithmetic" version = "27.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "docify", "integer-sqrt", @@ -18543,7 +18568,7 @@ dependencies = [ [[package]] name = "sp-authority-discovery" version = "37.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "scale-info", @@ -18555,7 +18580,7 @@ dependencies = [ [[package]] name = "sp-block-builder" version = "37.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "sp-api", "sp-inherents", @@ -18565,7 +18590,7 @@ dependencies = [ [[package]] name = "sp-blockchain" version = "40.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "futures", "parity-scale-codec", @@ -18586,7 +18611,7 @@ dependencies = [ [[package]] name = "sp-consensus" version = "0.43.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "futures", @@ -18600,7 +18625,7 @@ dependencies = [ [[package]] name = "sp-consensus-aura" version = "0.43.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "parity-scale-codec", @@ -18616,7 +18641,7 @@ dependencies = [ [[package]] name = "sp-consensus-babe" version = "0.43.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "parity-scale-codec", @@ -18634,7 +18659,7 @@ dependencies = [ [[package]] name = "sp-consensus-beefy" version = "25.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "scale-info", @@ -18654,7 +18679,7 @@ dependencies = [ [[package]] name = "sp-consensus-grandpa" version = "24.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "finality-grandpa", "log", @@ -18671,7 +18696,7 @@ dependencies = [ [[package]] name = "sp-consensus-pow" version = "0.43.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "sp-api", @@ -18682,7 +18707,7 @@ dependencies = [ [[package]] name = "sp-consensus-slots" version = "0.43.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "scale-info", @@ -18693,7 +18718,7 @@ dependencies = [ [[package]] name = "sp-core" version = "37.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "ark-vrf", "array-bytes 6.2.2", @@ -18741,7 +18766,7 @@ dependencies = [ [[package]] name = "sp-core-hashing" version = "16.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "sp-crypto-hashing", ] @@ -18749,7 +18774,7 @@ dependencies = [ [[package]] name = "sp-crypto-ec-utils" version = "0.16.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "ark-bls12-377", "ark-bls12-377-ext", @@ -18769,7 +18794,7 @@ dependencies = [ [[package]] name = "sp-crypto-hashing" version = "0.1.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "blake2b_simd", "byteorder", @@ -18782,7 +18807,7 @@ dependencies = [ [[package]] name = "sp-crypto-hashing-proc-macro" version = "0.1.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "quote", "sp-crypto-hashing", @@ -18792,7 +18817,7 @@ dependencies = [ [[package]] name = "sp-database" version = "10.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "kvdb", "parking_lot 0.12.3", @@ -18801,7 +18826,7 @@ dependencies = [ [[package]] name = "sp-debug-derive" version = "14.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "proc-macro2", "quote", @@ -18811,7 +18836,7 @@ dependencies = [ [[package]] name = "sp-externalities" version = "0.30.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "environmental", "parity-scale-codec", @@ -18821,7 +18846,7 @@ dependencies = [ [[package]] name = "sp-genesis-builder" version = "0.18.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "scale-info", @@ -18833,7 +18858,7 @@ dependencies = [ [[package]] name = "sp-inherents" version = "37.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "impl-trait-for-tuples", @@ -18846,7 +18871,7 @@ dependencies = [ [[package]] name = "sp-io" version = "41.0.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bytes", "docify", @@ -18872,7 +18897,7 @@ dependencies = [ [[package]] name = "sp-keyring" version = "42.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "sp-core", "sp-runtime", @@ -18882,7 +18907,7 @@ dependencies = [ [[package]] name = "sp-keystore" version = "0.43.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "parking_lot 0.12.3", @@ -18893,7 +18918,7 @@ dependencies = [ [[package]] name = "sp-maybe-compressed-blob" version = "11.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "thiserror 1.0.69", "zstd 0.12.4", @@ -18902,7 +18927,7 @@ dependencies = [ [[package]] name = "sp-metadata-ir" version = "0.11.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-metadata 23.0.1", "parity-scale-codec", @@ -18912,7 +18937,7 @@ dependencies = [ [[package]] name = "sp-mixnet" version = "0.15.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "scale-info", @@ -18923,7 +18948,7 @@ dependencies = [ [[package]] name = "sp-mmr-primitives" version = "37.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "log", "parity-scale-codec", @@ -18940,7 +18965,7 @@ dependencies = [ [[package]] name = "sp-npos-elections" version = "37.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "scale-info", @@ -18953,7 +18978,7 @@ dependencies = [ [[package]] name = "sp-offchain" version = "37.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "sp-api", "sp-core", @@ -18963,7 +18988,7 @@ dependencies = [ [[package]] name = "sp-panic-handler" version = "13.0.2" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "backtrace", "regex", @@ -18972,7 +18997,7 @@ dependencies = [ [[package]] name = "sp-rpc" version = "35.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "rustc-hash 1.1.0", "serde", @@ -18982,7 +19007,7 @@ dependencies = [ [[package]] name = "sp-runtime" version = "42.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "binary-merkle-tree", "docify", @@ -19011,7 +19036,7 @@ dependencies = [ [[package]] name = "sp-runtime-interface" version = "30.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bytes", "impl-trait-for-tuples", @@ -19030,7 +19055,7 @@ dependencies = [ [[package]] name = "sp-runtime-interface-proc-macro" version = "19.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "Inflector", "expander", @@ -19043,7 +19068,7 @@ dependencies = [ [[package]] name = "sp-session" version = "39.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "scale-info", @@ -19057,7 +19082,7 @@ dependencies = [ [[package]] name = "sp-staking" version = "39.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", @@ -19070,7 +19095,7 @@ dependencies = [ [[package]] name = "sp-state-machine" version = "0.46.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "hash-db", "log", @@ -19090,7 +19115,7 @@ dependencies = [ [[package]] name = "sp-statement-store" version = "21.2.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "aes-gcm", "curve25519-dalek", @@ -19114,12 +19139,12 @@ dependencies = [ [[package]] name = "sp-std" version = "14.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" [[package]] name = "sp-storage" version = "22.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "impl-serde", "parity-scale-codec", @@ -19131,7 +19156,7 @@ dependencies = [ [[package]] name = "sp-timestamp" version = "37.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "parity-scale-codec", @@ -19143,7 +19168,7 @@ dependencies = [ [[package]] name = "sp-tracing" version = "17.1.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "tracing", @@ -19154,7 +19179,7 @@ dependencies = [ [[package]] name = "sp-transaction-pool" version = "37.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "sp-api", "sp-runtime", @@ -19163,7 +19188,7 @@ dependencies = [ [[package]] name = "sp-transaction-storage-proof" version = "37.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "parity-scale-codec", @@ -19177,7 +19202,7 @@ dependencies = [ [[package]] name = "sp-trie" version = "40.0.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "ahash", "foldhash 0.1.5", @@ -19202,7 +19227,7 @@ dependencies = [ [[package]] name = "sp-version" version = "40.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "impl-serde", "parity-scale-codec", @@ -19219,7 +19244,7 @@ dependencies = [ [[package]] name = "sp-version-proc-macro" version = "15.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "parity-scale-codec", "proc-macro-warning", @@ -19231,7 +19256,7 @@ dependencies = [ [[package]] name = "sp-wasm-interface" version = "22.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "anyhow", "impl-trait-for-tuples", @@ -19243,7 +19268,7 @@ dependencies = [ [[package]] name = "sp-weights" version = "32.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "bounded-collections 0.2.4", "parity-scale-codec", @@ -19320,7 +19345,7 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" [[package]] name = "staging-chain-spec-builder" version = "12.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "clap", "docify", @@ -19333,7 +19358,7 @@ dependencies = [ [[package]] name = "staging-node-inspect" version = "0.29.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "clap", "parity-scale-codec", @@ -19351,7 +19376,7 @@ dependencies = [ [[package]] name = "staging-parachain-info" version = "0.21.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -19364,7 +19389,7 @@ dependencies = [ [[package]] name = "staging-xcm" version = "17.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "array-bytes 6.2.2", "bounded-collections 0.2.4", @@ -19385,7 +19410,7 @@ dependencies = [ [[package]] name = "staging-xcm-builder" version = "21.1.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "environmental", "frame-support", @@ -19409,7 +19434,7 @@ dependencies = [ [[package]] name = "staging-xcm-executor" version = "20.0.2" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "environmental", "frame-benchmarking", @@ -19524,7 +19549,7 @@ dependencies = [ [[package]] name = "substrate-bip39" version = "0.6.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "hmac 0.12.1", "pbkdf2", @@ -19549,12 +19574,12 @@ dependencies = [ [[package]] name = "substrate-build-script-utils" version = "11.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" [[package]] name = "substrate-frame-rpc-system" version = "45.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "docify", "frame-system-rpc-runtime-api", @@ -19574,7 +19599,7 @@ dependencies = [ [[package]] name = "substrate-prometheus-endpoint" version = "0.17.6" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "http-body-util", "hyper 1.5.1", @@ -19588,7 +19613,7 @@ dependencies = [ [[package]] name = "substrate-rpc-client" version = "0.50.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "async-trait", "jsonrpsee", @@ -19618,7 +19643,7 @@ dependencies = [ [[package]] name = "substrate-state-trie-migration-rpc" version = "44.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "jsonrpsee", "parity-scale-codec", @@ -19635,7 +19660,7 @@ dependencies = [ [[package]] name = "substrate-wasm-builder" version = "27.0.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "array-bytes 6.2.2", "build-helper", @@ -20073,7 +20098,7 @@ dependencies = [ [[package]] name = "testnet-parachains-constants" version = "14.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -20586,7 +20611,7 @@ dependencies = [ [[package]] name = "tracing-gum" version = "20.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "coarsetime", "polkadot-primitives", @@ -20597,7 +20622,7 @@ dependencies = [ [[package]] name = "tracing-gum-proc-macro" version = "5.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "expander", "proc-macro-crate 3.1.0", @@ -21511,7 +21536,7 @@ checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" [[package]] name = "westend-runtime" version = "24.0.1" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "binary-merkle-tree", "bitvec", @@ -21618,7 +21643,7 @@ dependencies = [ [[package]] name = "westend-runtime-constants" version = "21.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "polkadot-primitives", @@ -22225,7 +22250,7 @@ dependencies = [ [[package]] name = "xcm-emulator" version = "0.20.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "array-bytes 6.2.2", "cumulus-pallet-parachain-system", @@ -22259,7 +22284,7 @@ dependencies = [ [[package]] name = "xcm-procedural" version = "11.0.2" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "Inflector", "proc-macro2", @@ -22270,7 +22295,7 @@ dependencies = [ [[package]] name = "xcm-runtime-apis" version = "0.8.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "parity-scale-codec", @@ -22284,7 +22309,7 @@ dependencies = [ [[package]] name = "xcm-simulator" version = "21.0.0" -source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch#478f0c6d701cd4371203f357a8144136b763b6b9" +source = "git+https://github.com/galacticcouncil/polkadot-sdk?branch=polkadot-stable2506-10-patch-hooks#918b29bd7b6e22da37bc0938306d76b1828df199" dependencies = [ "frame-support", "frame-system", diff --git a/Cargo.toml b/Cargo.toml index aeea40df4b..80e60a625e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -51,7 +51,8 @@ members = [ 'liquidation-worker-support', 'pallets/hsm', "pallets/signet", - "pallets/dispenser" + "pallets/dispenser", + "pallets/synthetic-logs", ] resolver = "2" @@ -160,6 +161,7 @@ pallet-evm-accounts = { path = "pallets/evm-accounts", default-features = false pallet-evm-accounts-rpc-runtime-api = { path = "pallets/evm-accounts/rpc/runtime-api", default-features = false } pallet-liquidation = { path = "pallets/liquidation", default-features = false } pallet-broadcast = { path = "pallets/broadcast", default-features = false } +pallet-synthetic-logs = { path = "pallets/synthetic-logs", default-features = false } liquidation-worker-support = { path = "liquidation-worker-support", default-features = false } pallet-hsm = { path = "pallets/hsm", default-features = false } pallet-parameters = { path = "pallets/parameters", default-features = false } @@ -177,156 +179,156 @@ pallet-evm-precompile-flash-loan = { path = "precompiles/flash-loan", default-fe precompile-utils = { path = "precompiles/utils", default-features = false } # Frame -frame-benchmarking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -frame-benchmarking-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -frame-executive = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -frame-remote-externalities = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -frame-support = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false, features = ["tuples-96"] } -frame-support-procedural = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false, features = ["tuples-96"] } -frame-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -frame-system-benchmarking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -frame-system-rpc-runtime-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -frame-try-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -frame-metadata-hash-extension = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-arithmetic = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-authority-discovery = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-block-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-genesis-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-blockchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-consensus = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-consensus-babe = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-consensus-beefy = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-core = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-externalities = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-inherents = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-io = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-keystore = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-npos-elections = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-offchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sc-offchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-runtime-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-runtime-interface-proc-macro = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-session = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-staking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-std = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-storage = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-state-machine = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-tracing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-transaction-pool = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-trie = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-version = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-weights = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-crypto-hashing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-crypto-ec-utils = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sp-wasm-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } - -sc-basic-authorship = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sc-chain-spec = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sc-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sc-client-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sc-client-db = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sc-consensus = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sc-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sc-consensus-grandpa = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sc-executor = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sc-keystore = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sc-network = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sc-network-sync = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sc-network-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sc-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sc-rpc-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sc-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sc-telemetry = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sc-tracing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sc-transaction-pool = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sc-transaction-pool-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -sc-sysinfo = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } +frame-benchmarking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +frame-benchmarking-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +frame-executive = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +frame-remote-externalities = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +frame-support = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false, features = ["tuples-96"] } +frame-support-procedural = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false, features = ["tuples-96"] } +frame-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +frame-system-benchmarking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +frame-system-rpc-runtime-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +frame-try-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +frame-metadata-hash-extension = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-arithmetic = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-authority-discovery = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-block-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-genesis-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-blockchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-consensus = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-consensus-babe = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-consensus-beefy = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-core = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-externalities = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-inherents = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-io = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-keystore = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-npos-elections = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-offchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sc-offchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-runtime-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-runtime-interface-proc-macro = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-session = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-staking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-std = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-storage = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-state-machine = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-tracing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-transaction-pool = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-trie = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-version = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-weights = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-crypto-hashing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-crypto-ec-utils = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sp-wasm-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } + +sc-basic-authorship = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sc-chain-spec = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sc-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sc-client-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sc-client-db = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sc-consensus = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sc-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sc-consensus-grandpa = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sc-executor = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sc-keystore = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sc-network = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sc-network-sync = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sc-network-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sc-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sc-rpc-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sc-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sc-telemetry = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sc-tracing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sc-transaction-pool = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sc-transaction-pool-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +sc-sysinfo = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } # Substrate Pallets -pallet-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-authorship = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-balances = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-bags-list = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-collective = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-conviction-voting = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-elections-phragmen = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-identity = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-migrations = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-multisig = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-preimage = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-proxy = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-referenda = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-scheduler = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-session = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-sudo = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-tips = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-transaction-payment = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-transaction-payment-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-treasury = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-uniques = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-utility = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-im-online = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-message-queue = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-state-trie-migration = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-whitelist = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } - -substrate-build-script-utils = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -substrate-frame-rpc-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -substrate-prometheus-endpoint = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -substrate-rpc-client = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -substrate-wasm-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -substrate-state-trie-migration-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } +pallet-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-authorship = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-balances = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-bags-list = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-collective = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-conviction-voting = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-elections-phragmen = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-identity = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-migrations = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-multisig = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-preimage = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-proxy = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-referenda = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-scheduler = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-session = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-sudo = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-tips = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-transaction-payment = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-transaction-payment-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-treasury = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-uniques = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-utility = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-im-online = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-message-queue = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-state-trie-migration = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-whitelist = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } + +substrate-build-script-utils = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +substrate-frame-rpc-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +substrate-prometheus-endpoint = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +substrate-rpc-client = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +substrate-wasm-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +substrate-state-trie-migration-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } #TODO: We use our custom ORML as it contains the fix of bug for reducible_balance check, for Preserve mode. Once the official ORML pushes a new version with the fix, we can use that again # ORML dependencies -orml-benchmarking = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506", default-features = false } -orml-currencies = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506", default-features = false } -orml-tokens = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506", default-features = false } -orml-traits = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506", default-features = false } -orml-utilities = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506", default-features = false } -orml-vesting = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506", default-features = false } +orml-benchmarking = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506-patch-hooks", default-features = false } +orml-currencies = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506-patch-hooks", default-features = false } +orml-tokens = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506-patch-hooks", default-features = false } +orml-traits = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506-patch-hooks", default-features = false } +orml-utilities = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506-patch-hooks", default-features = false } +orml-vesting = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506-patch-hooks", default-features = false } # orml XCM support -orml-unknown-tokens = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506", default-features = false } -orml-xcm = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506", default-features = false } -orml-xcm-support = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506", default-features = false } -orml-xtokens = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506", default-features = false } +orml-unknown-tokens = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506-patch-hooks", default-features = false } +orml-xcm = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506-patch-hooks", default-features = false } +orml-xcm-support = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506-patch-hooks", default-features = false } +orml-xtokens = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506-patch-hooks", default-features = false } # Cumulus dependencies -cumulus-client-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -cumulus-client-collator = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -cumulus-client-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -cumulus-client-consensus-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -cumulus-client-consensus-proposer = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -cumulus-client-network = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -cumulus-client-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -cumulus-pallet-aura-ext = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -cumulus-pallet-parachain-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -cumulus-pallet-weight-reclaim = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -cumulus-pallet-xcm = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -cumulus-pallet-xcmp-queue = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -cumulus-primitives-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -cumulus-primitives-core = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -cumulus-primitives-parachain-inherent = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -cumulus-primitives-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -cumulus-primitives-utility = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -cumulus-relay-chain-inprocess-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -cumulus-relay-chain-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -cumulus-primitives-storage-weight-reclaim = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -cumulus-relay-chain-minimal-node = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -cumulus-test-relay-sproof-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-collator-selection = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -staging-parachain-info = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -xcm-emulator = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -xcm-runtime-apis = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -parachains-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } +cumulus-client-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +cumulus-client-collator = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +cumulus-client-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +cumulus-client-consensus-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +cumulus-client-consensus-proposer = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +cumulus-client-network = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +cumulus-client-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +cumulus-pallet-aura-ext = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +cumulus-pallet-parachain-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +cumulus-pallet-weight-reclaim = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +cumulus-pallet-xcm = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +cumulus-pallet-xcmp-queue = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +cumulus-primitives-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +cumulus-primitives-core = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +cumulus-primitives-parachain-inherent = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +cumulus-primitives-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +cumulus-primitives-utility = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +cumulus-relay-chain-inprocess-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +cumulus-relay-chain-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +cumulus-primitives-storage-weight-reclaim = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +cumulus-relay-chain-minimal-node = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +cumulus-test-relay-sproof-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-collator-selection = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +staging-parachain-info = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +xcm-emulator = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +xcm-runtime-apis = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +parachains-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } # Frontier fc-consensus = { git = "https://github.com/moonbeam-foundation/frontier", branch = "moonbeam-polkadot-stable2506", default-features = false } @@ -361,36 +363,36 @@ ethereum = { version = "0.18.2", default-features = false, features = [ ethereum-types = { version = "0.15.1", default-features = false } # Polkadot dependencies -pallet-xcm = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -pallet-xcm-benchmarks = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -polkadot-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-core-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -polkadot-parachain = { package = "polkadot-parachain-primitives", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false, features = [ +pallet-xcm = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +pallet-xcm-benchmarks = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +polkadot-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-core-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +polkadot-parachain = { package = "polkadot-parachain-primitives", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false, features = [ "wasm-api", ] } -polkadot-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -polkadot-runtime-parachains = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -polkadot-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -polkadot-xcm = { package = "staging-xcm", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -xcm = { package = "staging-xcm", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -xcm-builder = { package = "staging-xcm-builder", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -xcm-executor = { package = "staging-xcm-executor", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } - -polkadot-client = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-node-core-pvf = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-node-network-protocol = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-node-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-node-subsystem = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-node-subsystem-util = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-overseer = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-runtime-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch", default-features = false } -polkadot-statement-table = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -rococo-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -westend-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } - -cumulus-client-pov-recovery = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-pallet-parachain-system-proc-macro = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-relay-chain-rpc-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } +polkadot-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +polkadot-runtime-parachains = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +polkadot-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +polkadot-xcm = { package = "staging-xcm", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +xcm = { package = "staging-xcm", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +xcm-builder = { package = "staging-xcm-builder", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +xcm-executor = { package = "staging-xcm-executor", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } + +polkadot-client = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-node-core-pvf = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-node-network-protocol = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-node-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-node-subsystem = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-node-subsystem-util = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-overseer = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-runtime-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks", default-features = false } +polkadot-statement-table = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +rococo-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +westend-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } + +cumulus-client-pov-recovery = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-pallet-parachain-system-proc-macro = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-relay-chain-rpc-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } # Hyperbridge pallet-hyperbridge = { version = "2506.1.1", default-features = false } @@ -408,493 +410,494 @@ ismp-parachain-inherent = { version = "2506.1.0" } [patch."https://github.com/moonbeam-foundation/open-runtime-module-library"] # ORML dependencies -orml-benchmarking = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506" } -orml-tokens = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506" } -orml-traits = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506" } -orml-utilities = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506" } -orml-vesting = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506" } -orml-unknown-tokens = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506" } -orml-xcm = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506" } -orml-xcm-support = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506" } -orml-xtokens = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506" } +orml-benchmarking = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506-patch-hooks" } +orml-tokens = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506-patch-hooks" } +orml-traits = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506-patch-hooks" } +orml-utilities = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506-patch-hooks" } +orml-vesting = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506-patch-hooks" } +orml-unknown-tokens = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506-patch-hooks" } +orml-xcm = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506-patch-hooks" } +orml-xcm-support = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506-patch-hooks" } +orml-xtokens = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506-patch-hooks" } [patch."https://github.com/moonbeam-foundation/polkadot-sdk"] -frame-benchmarking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-benchmarking-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-executive = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-remote-externalities = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-support = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-support-procedural = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-system-benchmarking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-system-rpc-runtime-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-try-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-metadata-hash-extension = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-arithmetic = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-authority-discovery = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-block-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-genesis-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-blockchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-consensus = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-consensus-babe = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-core = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-externalities = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-inherents = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-io = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-keystore = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-npos-elections = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-offchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-offchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-runtime-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-runtime-interface-proc-macro = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-wasm-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-panic-handler = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-database = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-session = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-staking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-std = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-storage = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-tracing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-transaction-pool = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-trie = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-version = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-basic-authorship = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-chain-spec = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-client-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-client-db = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-consensus = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-consensus-grandpa = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-executor = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-keystore = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-network = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-network-sync = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-network-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-rpc-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-telemetry = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-tracing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-transaction-pool = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-transaction-pool-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-sysinfo = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-utils = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-state-machine = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-weights = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-crypto-hashing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } +frame-benchmarking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-benchmarking-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-executive = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-remote-externalities = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-support = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-support-procedural = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-system-benchmarking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-system-rpc-runtime-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-try-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-metadata-hash-extension = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-arithmetic = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-authority-discovery = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-block-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-genesis-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-blockchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-consensus = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-consensus-babe = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-core = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-externalities = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-inherents = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-io = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-keystore = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-npos-elections = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-offchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-offchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-runtime-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-runtime-interface-proc-macro = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-wasm-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-panic-handler = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-database = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-session = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-staking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-std = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-storage = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-tracing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-transaction-pool = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-trie = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-version = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-basic-authorship = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-chain-spec = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-client-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-client-db = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-consensus = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-consensus-grandpa = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-executor = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-keystore = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-network = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-network-sync = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-network-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-rpc-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-telemetry = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-tracing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-transaction-pool = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-transaction-pool-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-sysinfo = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-utils = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-state-machine = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-weights = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-crypto-hashing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } # Substrate Pallets -pallet-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-authorship = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-balances = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-collective = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-elections-phragmen = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-identity = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-multisig = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-preimage = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-proxy = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-scheduler = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-session = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-sudo = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-tips = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-transaction-payment = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-transaction-payment-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-treasury = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-uniques = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-utility = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-im-online = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-message-queue = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-state-trie-migration = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } - -substrate-build-script-utils = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -substrate-frame-rpc-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -substrate-prometheus-endpoint = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -substrate-rpc-client = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -substrate-wasm-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -substrate-state-trie-migration-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } +pallet-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-authorship = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-balances = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-collective = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-elections-phragmen = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-identity = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-multisig = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-preimage = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-proxy = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-scheduler = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-session = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-sudo = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-tips = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-transaction-payment = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-transaction-payment-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-treasury = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-uniques = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-utility = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-im-online = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-message-queue = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-state-trie-migration = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } + +substrate-build-script-utils = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +substrate-frame-rpc-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +substrate-prometheus-endpoint = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +substrate-rpc-client = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +substrate-wasm-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +substrate-state-trie-migration-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } # Cumulus dependencies -cumulus-client-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-client-collator = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-client-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-client-consensus-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-client-consensus-proposer = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-client-network = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-client-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-pallet-aura-ext = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-pallet-parachain-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-pallet-xcm = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-pallet-xcmp-queue = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-primitives-core = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-primitives-parachain-inherent = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-primitives-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-primitives-utility = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-relay-chain-inprocess-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-relay-chain-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-primitives-storage-weight-reclaim = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-relay-chain-minimal-node = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-test-relay-sproof-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-collator-selection = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -staging-parachain-info = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -xcm-emulator = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -parachains-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -xcm-runtime-apis = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } +cumulus-client-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-client-collator = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-client-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-client-consensus-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-client-consensus-proposer = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-client-network = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-client-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-pallet-aura-ext = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-pallet-parachain-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-pallet-xcm = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-pallet-xcmp-queue = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-primitives-core = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-primitives-parachain-inherent = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-primitives-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-primitives-utility = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-relay-chain-inprocess-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-relay-chain-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-primitives-storage-weight-reclaim = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-relay-chain-minimal-node = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-test-relay-sproof-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-collator-selection = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +staging-parachain-info = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +xcm-emulator = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +parachains-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +xcm-runtime-apis = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } # Polkadot dependencies -pallet-xcm = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-xcm-benchmarks = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-core-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-parachain = { package = "polkadot-parachain-primitives", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-runtime-parachains = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -xcm = { package = "staging-xcm", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -xcm-builder = { package = "staging-xcm-builder", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -xcm-executor = { package = "staging-xcm-executor", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } - -polkadot-node-core-pvf = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-node-network-protocol = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-node-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-node-subsystem = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-node-subsystem-util = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-overseer = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-runtime-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-statement-table = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -rococo-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -westend-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } - -cumulus-client-pov-recovery = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-pallet-parachain-system-proc-macro = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-relay-chain-rpc-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } +pallet-xcm = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-xcm-benchmarks = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-core-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-parachain = { package = "polkadot-parachain-primitives", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-runtime-parachains = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +xcm = { package = "staging-xcm", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +xcm-builder = { package = "staging-xcm-builder", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +xcm-executor = { package = "staging-xcm-executor", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } + +polkadot-node-core-pvf = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-node-network-protocol = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-node-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-node-subsystem = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-node-subsystem-util = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-overseer = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-runtime-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-statement-table = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +rococo-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +westend-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } + +cumulus-client-pov-recovery = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-pallet-parachain-system-proc-macro = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-relay-chain-rpc-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } [patch."https://github.com/paritytech/polkadot-sdk"] -polkadot-sdk = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-benchmarking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-benchmarking-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-executive = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-remote-externalities = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-support = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-support-procedural = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-system-benchmarking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-system-rpc-runtime-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-try-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-metadata-hash-extension = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-arithmetic = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-authority-discovery = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-block-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-genesis-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-blockchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-consensus = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-consensus-babe = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-core = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-externalities = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-inherents = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-io = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-keystore = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-npos-elections = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-offchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-offchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-runtime-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-runtime-interface-proc-macro = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-wasm-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-panic-handler = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-database = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-session = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-staking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-std = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-storage = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-tracing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-transaction-pool = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-trie = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-version = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-basic-authorship = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-chain-spec = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-client-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-client-db = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-consensus = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-consensus-grandpa = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-executor = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-keystore = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-network = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-network-sync = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-network-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-rpc-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-telemetry = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-tracing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-transaction-pool = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-transaction-pool-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-sysinfo = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-utils = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-state-machine = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-weights = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-crypto-hashing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } +polkadot-sdk = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-benchmarking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-benchmarking-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-executive = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-remote-externalities = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-support = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-support-procedural = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-system-benchmarking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-system-rpc-runtime-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-try-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-metadata-hash-extension = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-arithmetic = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-authority-discovery = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-block-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-genesis-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-blockchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-consensus = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-consensus-babe = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-core = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-externalities = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-inherents = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-io = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-keystore = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-npos-elections = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-offchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-offchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-runtime-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-runtime-interface-proc-macro = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-wasm-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-panic-handler = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-database = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-session = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-staking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-std = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-storage = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-tracing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-transaction-pool = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-trie = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-version = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-basic-authorship = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-chain-spec = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-client-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-client-db = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-consensus = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-consensus-grandpa = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-executor = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-keystore = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-network = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-network-sync = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-network-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-rpc-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-telemetry = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-tracing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-transaction-pool = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-transaction-pool-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-sysinfo = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-utils = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-state-machine = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-weights = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-crypto-hashing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } # Substrate Pallets -pallet-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-authorship = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-balances = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-collective = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-elections-phragmen = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-identity = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-multisig = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-preimage = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-proxy = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-scheduler = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-session = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-sudo = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-tips = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-transaction-payment = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-transaction-payment-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-treasury = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-uniques = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-utility = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-im-online = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-message-queue = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-state-trie-migration = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } - -substrate-build-script-utils = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -substrate-frame-rpc-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -substrate-prometheus-endpoint = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -substrate-rpc-client = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -substrate-wasm-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -substrate-state-trie-migration-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } +pallet-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-authorship = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-balances = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-collective = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-elections-phragmen = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-identity = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-multisig = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-preimage = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-proxy = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-scheduler = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-session = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-sudo = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-tips = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-transaction-payment = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-transaction-payment-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-treasury = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-uniques = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-utility = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-im-online = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-message-queue = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-state-trie-migration = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } + +substrate-build-script-utils = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +substrate-frame-rpc-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +substrate-prometheus-endpoint = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +substrate-rpc-client = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +substrate-wasm-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +substrate-state-trie-migration-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } # Cumulus dependencies -cumulus-client-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-client-collator = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-client-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-client-consensus-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-client-consensus-proposer = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-client-network = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-client-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-pallet-aura-ext = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-pallet-parachain-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-pallet-xcm = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-pallet-xcmp-queue = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-primitives-core = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-primitives-parachain-inherent = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-primitives-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-primitives-utility = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-relay-chain-inprocess-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-relay-chain-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-primitives-storage-weight-reclaim = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-relay-chain-minimal-node = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-test-relay-sproof-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-collator-selection = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -staging-parachain-info = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -xcm-emulator = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -parachains-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -xcm-runtime-apis = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } +cumulus-client-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-client-collator = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-client-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-client-consensus-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-client-consensus-proposer = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-client-network = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-client-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-pallet-aura-ext = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-pallet-parachain-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-pallet-xcm = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-pallet-xcmp-queue = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-primitives-core = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-primitives-parachain-inherent = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-primitives-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-primitives-utility = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-relay-chain-inprocess-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-relay-chain-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-primitives-storage-weight-reclaim = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-relay-chain-minimal-node = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-test-relay-sproof-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-collator-selection = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +staging-parachain-info = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +xcm-emulator = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +parachains-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +xcm-runtime-apis = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } # Polkadot dependencies -pallet-xcm = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-xcm-benchmarks = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-core-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-parachain = { package = "polkadot-parachain-primitives", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-runtime-parachains = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -xcm = { package = "staging-xcm", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -xcm-builder = { package = "staging-xcm-builder", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -xcm-executor = { package = "staging-xcm-executor", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } - -polkadot-node-core-pvf = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-node-network-protocol = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-node-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-node-subsystem = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-node-subsystem-util = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-overseer = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-runtime-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-statement-table = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -rococo-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -westend-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } - -cumulus-client-pov-recovery = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-pallet-parachain-system-proc-macro = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-relay-chain-rpc-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } +pallet-xcm = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-xcm-benchmarks = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-core-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-parachain = { package = "polkadot-parachain-primitives", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-runtime-parachains = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +xcm = { package = "staging-xcm", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +xcm-builder = { package = "staging-xcm-builder", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +xcm-executor = { package = "staging-xcm-executor", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } + +polkadot-node-core-pvf = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-node-network-protocol = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-node-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-node-subsystem = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-node-subsystem-util = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-overseer = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-runtime-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-statement-table = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +rococo-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +westend-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } + +cumulus-client-pov-recovery = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-pallet-parachain-system-proc-macro = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-relay-chain-rpc-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } [patch.crates-io] -polkadot-sdk = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-consensus-epochs = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-benchmarking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-benchmarking-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-executive = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-remote-externalities = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-support = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-support-procedural = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-system-benchmarking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-system-rpc-runtime-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-try-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -frame-metadata-hash-extension = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-arithmetic = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-authority-discovery = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-block-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-genesis-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-blockchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-consensus = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-consensus-babe = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-core = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-externalities = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-inherents = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-io = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-keystore = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-npos-elections = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-offchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-offchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-runtime-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-runtime-interface-proc-macro = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-wasm-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-panic-handler = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-database = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-session = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-staking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-std = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-storage = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-tracing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-transaction-pool = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-trie = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-version = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-basic-authorship = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-chain-spec = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-client-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-client-db = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-consensus = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-consensus-grandpa = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-executor = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-keystore = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-network = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-network-sync = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-network-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-rpc-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-telemetry = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-tracing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-transaction-pool = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-transaction-pool-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-sysinfo = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sc-utils = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-state-machine = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-weights = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -sp-crypto-hashing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } +polkadot-sdk = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-consensus-epochs = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-benchmarking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-benchmarking-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-executive = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-remote-externalities = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-support = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-support-procedural = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-system-benchmarking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-system-rpc-runtime-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-try-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +frame-metadata-hash-extension = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-arithmetic = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-authority-discovery = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-block-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-genesis-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-blockchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-consensus = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-consensus-babe = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-core = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-externalities = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-inherents = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-io = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-keystore = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-npos-elections = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-offchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-offchain = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-runtime-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-runtime-interface-proc-macro = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-wasm-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-panic-handler = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-database = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-session = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-staking = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-std = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-storage = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-tracing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-transaction-pool = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-trie = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-version = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-basic-authorship = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-chain-spec = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-client-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-client-db = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-consensus = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-consensus-grandpa = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-executor = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-keystore = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-network = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-network-sync = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-network-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-rpc-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-telemetry = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-tracing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-transaction-pool = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-transaction-pool-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-sysinfo = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sc-utils = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-state-machine = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-weights = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +sp-crypto-hashing = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } # Substrate Pallets -pallet-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-authorship = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-balances = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-collective = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-elections-phragmen = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-identity = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-multisig = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-preimage = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-proxy = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-scheduler = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-session = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-sudo = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-tips = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-transaction-payment = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-transaction-payment-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-treasury = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-uniques = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-utility = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-im-online = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-message-queue = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-state-trie-migration = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } - -substrate-build-script-utils = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -substrate-frame-rpc-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -substrate-prometheus-endpoint = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -substrate-rpc-client = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -substrate-wasm-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -substrate-state-trie-migration-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } +pallet-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-authorship = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-balances = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-collective = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-elections-phragmen = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-identity = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-multisig = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-preimage = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-proxy = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-scheduler = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-session = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-sudo = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-tips = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-transaction-payment = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-transaction-payment-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-treasury = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-uniques = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-utility = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-im-online = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-message-queue = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-state-trie-migration = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } + +substrate-build-script-utils = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +substrate-frame-rpc-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +substrate-prometheus-endpoint = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +substrate-rpc-client = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +substrate-wasm-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +substrate-state-trie-migration-rpc = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } # Cumulus dependencies -cumulus-client-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-client-collator = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-client-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-client-consensus-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-client-consensus-proposer = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-client-network = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-client-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-pallet-aura-ext = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-pallet-parachain-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-pallet-xcm = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-pallet-xcmp-queue = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-primitives-core = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-primitives-parachain-inherent = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-primitives-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-primitives-utility = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-relay-chain-inprocess-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-relay-chain-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-primitives-storage-weight-reclaim = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-relay-chain-minimal-node = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-test-relay-sproof-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-collator-selection = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -staging-parachain-info = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -xcm-emulator = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -parachains-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -xcm-runtime-apis = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } +cumulus-client-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-client-collator = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-client-consensus-aura = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-client-consensus-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-client-consensus-proposer = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-client-network = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-client-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-pallet-aura-ext = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-pallet-parachain-system = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-pallet-xcm = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-pallet-xcmp-queue = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-primitives-core = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-primitives-parachain-inherent = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-primitives-timestamp = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-primitives-utility = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-relay-chain-inprocess-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-relay-chain-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-primitives-storage-weight-reclaim = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-relay-chain-minimal-node = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-test-relay-sproof-builder = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-collator-selection = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +staging-parachain-info = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +xcm-emulator = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +parachains-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +xcm-runtime-apis = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } # Polkadot dependencies -pallet-xcm = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -pallet-xcm-benchmarks = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-core-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-parachain = { package = "polkadot-parachain-primitives", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-runtime-parachains = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -xcm = { package = "staging-xcm", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -xcm-builder = { package = "staging-xcm-builder", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -xcm-executor = { package = "staging-xcm-executor", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } - -polkadot-node-core-pvf = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-node-network-protocol = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-node-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-node-subsystem = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-node-subsystem-util = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-overseer = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-runtime-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -polkadot-statement-table = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -rococo-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -westend-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } - -cumulus-client-pov-recovery = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-pallet-parachain-system-proc-macro = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } -cumulus-relay-chain-rpc-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch" } +pallet-xcm = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +pallet-xcm-benchmarks = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-cli = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-core-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-parachain = { package = "polkadot-parachain-primitives", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-runtime-parachains = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-service = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +xcm = { package = "staging-xcm", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +xcm-builder = { package = "staging-xcm-builder", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +xcm-executor = { package = "staging-xcm-executor", git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } + +polkadot-node-core-pvf = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-node-network-protocol = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-node-primitives = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-node-subsystem = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-node-subsystem-util = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-overseer = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-runtime-common = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +polkadot-statement-table = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +rococo-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +westend-runtime = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } + +cumulus-client-pov-recovery = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-pallet-parachain-system-proc-macro = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } +cumulus-relay-chain-rpc-interface = { git = "https://github.com/galacticcouncil/polkadot-sdk", branch = "polkadot-stable2506-10-patch-hooks" } [patch."https://github.com/bifrost-io/open-runtime-module-library"] -orml-xcm-support = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506" } -orml-traits = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506" } +orml-xcm-support = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506-patch-hooks" } +orml-traits = { git = "https://github.com/galacticcouncil/open-runtime-module-library", branch = "polkadot-stable2506-patch-hooks" } + diff --git a/integration-tests/Cargo.toml b/integration-tests/Cargo.toml index d786a1345f..0e356b1faf 100644 --- a/integration-tests/Cargo.toml +++ b/integration-tests/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "runtime-integration-tests" -version = "1.80.0" +version = "1.80.1" description = "Integration tests" authors = ["GalacticCouncil"] edition = "2021" @@ -49,6 +49,8 @@ pallet-transaction-pause = { workspace = true } pallet-liquidation = { workspace = true } liquidation-worker-support = { workspace = true } pallet-broadcast = { workspace = true } +pallet-synthetic-logs = { workspace = true } +ethereum-types = { workspace = true } pallet-duster = { workspace = true } pallet-duster-rpc-runtime-api = { workspace = true } diff --git a/integration-tests/src/balances_tokens_hooks.rs b/integration-tests/src/balances_tokens_hooks.rs new file mode 100644 index 0000000000..ac31432116 --- /dev/null +++ b/integration-tests/src/balances_tokens_hooks.rs @@ -0,0 +1,1152 @@ +#![cfg(test)] + +use crate::polkadot_test_net::*; +use ethereum_types::{H160, U256}; +use frame_support::assert_ok; +use hydradx_runtime::evm::precompiles::erc20_mapping::HydraErc20Mapping; +use hydradx_runtime::{Balances, Currencies, Ethereum, Runtime, RuntimeOrigin, SyntheticLogs, Tokens}; +use hydradx_traits::evm::Erc20Mapping; +use orml_traits::MultiCurrency; +use pallet_synthetic_logs::{h160_to_h256, reserved_address_of, Pending as SyntheticLogsPending, TRANSFER_TOPIC}; +use xcm_emulator::TestExt; + +fn buffered_logs() -> Vec<(pallet_synthetic_logs::Bucket, H160, ethereum::Log)> { + SyntheticLogsPending::::get() +} + +fn alice_h160() -> H160 { + hydradx_runtime::EVMAccounts::evm_address(&AccountId::from(ALICE)) +} + +fn bob_h160() -> H160 { + hydradx_runtime::EVMAccounts::evm_address(&AccountId::from(BOB)) +} + +#[test] +fn currencies_transfer_routes_native_via_balances() { + TestNet::reset(); + Hydra::execute_with(|| { + assert_ok!(Currencies::transfer( + RuntimeOrigin::signed(ALICE.into()), + BOB.into(), + HDX, + UNITS, + )); + + expect_hydra_events(vec![pallet_balances::Event::Transfer { + from: ALICE.into(), + to: BOB.into(), + amount: UNITS, + } + .into()]); + }); +} + +#[test] +fn currencies_transfer_routes_non_native_via_orml_tokens() { + TestNet::reset(); + Hydra::execute_with(|| { + assert_ok!(Currencies::transfer( + RuntimeOrigin::signed(ALICE.into()), + BOB.into(), + DAI, + UNITS, + )); + + expect_hydra_events(vec![orml_tokens::Event::Transfer { + currency_id: DAI, + from: ALICE.into(), + to: BOB.into(), + amount: UNITS, + } + .into()]); + }); +} + +#[test] +fn orml_tokens_post_transfer_buffers_synth_log() { + TestNet::reset(); + Hydra::execute_with(|| { + assert_ok!(Currencies::transfer( + RuntimeOrigin::signed(ALICE.into()), + BOB.into(), + DAI, + UNITS, + )); + + let logs = buffered_logs(); + let asset_addr = HydraErc20Mapping::asset_address(DAI); + + let entry = logs + .iter() + .find(|(_, emitter, log)| *emitter == asset_addr && log.address == asset_addr) + .expect("synth log for DAI transfer"); + + let (_, _, log) = entry; + assert_eq!(log.topics[0], TRANSFER_TOPIC); + assert_eq!(log.topics[1], h160_to_h256(alice_h160())); + assert_eq!(log.topics[2], h160_to_h256(bob_h160())); + + let data = U256::from(UNITS).to_big_endian(); + assert_eq!(log.data.as_slice(), &data[..]); + }); +} + +#[test] +fn orml_tokens_post_deposit_buffers_mint_log() { + TestNet::reset(); + Hydra::execute_with(|| { + assert_ok!(Currencies::update_balance( + RuntimeOrigin::root(), + BOB.into(), + DAI, + UNITS as i128, + )); + + let logs = buffered_logs(); + let asset_addr = HydraErc20Mapping::asset_address(DAI); + let entry = logs + .iter() + .find(|(_, emitter, log)| { + *emitter == asset_addr + && log.topics.first() == Some(&TRANSFER_TOPIC) + && log.topics[1] == h160_to_h256(H160::zero()) + }) + .expect("synth log for DAI mint"); + + let (_, _, log) = entry; + assert_eq!(log.topics[1], h160_to_h256(H160::zero())); + assert_eq!(log.topics[2], h160_to_h256(bob_h160())); + }); +} + +#[test] +fn orml_tokens_on_slash_buffers_burn_log() { + TestNet::reset(); + Hydra::execute_with(|| { + let amount = UNITS; + >::deposit(DAI, &ALICE.into(), amount).unwrap(); + SyntheticLogsPending::::kill(); + + >::slash(DAI, &ALICE.into(), amount); + + let logs = buffered_logs(); + let asset_addr = HydraErc20Mapping::asset_address(DAI); + let entry = logs + .iter() + .find(|(_, emitter, log)| *emitter == asset_addr && log.topics[2] == h160_to_h256(H160::zero())) + .expect("synth log for DAI slash"); + + let (_, _, log) = entry; + assert_eq!(log.topics[0], TRANSFER_TOPIC); + assert_eq!(log.topics[1], h160_to_h256(alice_h160())); + assert_eq!(log.topics[2], h160_to_h256(H160::zero())); + }); +} + +#[test] +fn orml_tokens_zero_amount_transfer_does_not_buffer() { + TestNet::reset(); + Hydra::execute_with(|| { + SyntheticLogsPending::::kill(); + assert_ok!(Currencies::transfer( + RuntimeOrigin::signed(ALICE.into()), + BOB.into(), + DAI, + 0, + )); + + let logs = buffered_logs(); + let asset_addr = HydraErc20Mapping::asset_address(DAI); + assert!( + logs.iter().all(|(_, emitter, _)| *emitter != asset_addr), + "zero-amount transfer must not buffer a log" + ); + }); +} + +#[test] +fn balances_transfer_buffers_synth_log() { + TestNet::reset(); + Hydra::execute_with(|| { + SyntheticLogsPending::::kill(); + assert_ok!(Balances::transfer_keep_alive( + RuntimeOrigin::signed(ALICE.into()), + BOB.into(), + UNITS, + )); + + let logs = buffered_logs(); + let asset_addr = HydraErc20Mapping::asset_address(HDX); + let entry = logs + .iter() + .find(|(_, emitter, _)| *emitter == asset_addr) + .expect("synth log for HDX balances transfer"); + + let (_, _, log) = entry; + assert_eq!(log.topics[0], TRANSFER_TOPIC); + assert_eq!(log.topics[1], h160_to_h256(alice_h160())); + assert_eq!(log.topics[2], h160_to_h256(bob_h160())); + }); +} + +#[test] +fn balances_force_transfer_buffers_synth_log() { + TestNet::reset(); + Hydra::execute_with(|| { + SyntheticLogsPending::::kill(); + assert_ok!(Balances::force_transfer( + RuntimeOrigin::root(), + ALICE.into(), + BOB.into(), + UNITS, + )); + + let asset_addr = HydraErc20Mapping::asset_address(HDX); + let entry = buffered_logs() + .into_iter() + .find(|(_, emitter, _)| *emitter == asset_addr) + .expect("synth log for HDX force_transfer"); + + let (_, _, log) = entry; + assert_eq!(log.topics[1], h160_to_h256(alice_h160())); + assert_eq!(log.topics[2], h160_to_h256(bob_h160())); + }); +} + +#[test] +fn currencies_transfer_native_buffers_synth_log() { + TestNet::reset(); + Hydra::execute_with(|| { + SyntheticLogsPending::::kill(); + assert_ok!(Currencies::transfer( + RuntimeOrigin::signed(ALICE.into()), + BOB.into(), + HDX, + UNITS, + )); + + let asset_addr = HydraErc20Mapping::asset_address(HDX); + assert!( + buffered_logs().iter().any(|(_, emitter, _)| *emitter == asset_addr), + "Currencies::transfer of native HDX must buffer a synth log" + ); + }); +} + +#[test] +fn balances_dust_loss_buffers_burn_log() { + TestNet::reset(); + Hydra::execute_with(|| { + let hdx_ed = ::ExistentialDeposit::get(); + assert!(hdx_ed > 0); + + assert_ok!(Balances::force_set_balance(RuntimeOrigin::root(), ALICE.into(), hdx_ed,)); + SyntheticLogsPending::::kill(); + assert_ok!(Balances::transfer_allow_death( + RuntimeOrigin::signed(ALICE.into()), + BOB.into(), + hdx_ed - 1, + )); + + let asset_addr = HydraErc20Mapping::asset_address(HDX); + let burn_to_zero = buffered_logs() + .into_iter() + .find(|(_, emitter, log)| *emitter == asset_addr && log.topics[2] == h160_to_h256(H160::zero())); + assert!( + burn_to_zero.is_some(), + "dust loss must buffer Transfer(from, 0x0, amount)" + ); + }); +} + +#[test] +fn currencies_withdraw_orml_buffers_burn_log() { + TestNet::reset(); + Hydra::execute_with(|| { + >::deposit(DAI, &ALICE.into(), UNITS).unwrap(); + SyntheticLogsPending::::kill(); + >::withdraw( + DAI, + &ALICE.into(), + UNITS, + frame_support::traits::ExistenceRequirement::AllowDeath, + ) + .unwrap(); + + let asset_addr = HydraErc20Mapping::asset_address(DAI); + let burn = buffered_logs() + .into_iter() + .find(|(_, emitter, log)| *emitter == asset_addr && log.topics[2] == h160_to_h256(H160::zero())); + assert!( + burn.is_some(), + "Currencies::withdraw must buffer Transfer(from, 0x0, amount)" + ); + }); +} + +// dispatcher precompile → substrate transfer/swap → must surface via eth_getLogs. + +#[test] +fn dispatcher_precompile_currencies_transfer_token_emits_transfer_log() { + use codec::Encode; + use hydradx_runtime::evm::precompiles::DISPATCH_ADDR; + use hydradx_runtime::evm::Executor; + use hydradx_runtime::RuntimeCall; + use hydradx_traits::evm::{CallContext, EVM as EVMTrait}; + + TestNet::reset(); + Hydra::execute_with(|| { + assert_ok!(hydradx_runtime::EVMAccounts::bind_evm_address(RuntimeOrigin::signed( + ALICE.into() + ))); + let alice_evm = hydradx_runtime::EVMAccounts::evm_address(&AccountId::from(ALICE)); + + let bob_acc: AccountId = BOB.into(); + let bob_dai_before = >::free_balance(DAI, &bob_acc); + + let amount: u128 = UNITS; + let inner = RuntimeCall::Currencies(pallet_currencies::Call::transfer { + dest: BOB.into(), + currency_id: DAI, + amount, + }); + + SyntheticLogsPending::::kill(); + frame_system::Pallet::::reset_events(); + + let context = CallContext { + contract: DISPATCH_ADDR, + sender: alice_evm, + origin: alice_evm, + }; + let result = Executor::::call(context, inner.encode(), U256::zero(), 1_000_000); + assert!( + matches!(result.exit_reason, fp_evm::ExitReason::Succeed(_)), + "dispatcher precompile call must succeed, got {:?}", + result.exit_reason + ); + + let bob_dai_after = >::free_balance(DAI, &bob_acc); + assert_eq!( + bob_dai_after, + bob_dai_before + amount, + "the substrate Currencies::transfer must have happened" + ); + + let dai_addr = HydraErc20Mapping::asset_address(DAI); + let from_h256 = h160_to_h256(alice_h160()); + let to_h256 = h160_to_h256(bob_h160()); + + let found = buffered_logs().into_iter().any(|(_, emitter, log)| { + emitter == dai_addr + && log.address == dai_addr + && log.topics.first() == Some(&TRANSFER_TOPIC) + && log.topics.get(1) == Some(&from_h256) + && log.topics.get(2) == Some(&to_h256) + }); + + assert!( + found, + "BLINDSPOT: dispatcher precompile dispatched Currencies::transfer(DAI) inside an \ + EVM frame; the substrate transfer happened, but no Transfer log made it into \ + pallet_synthetic_logs::Pending (and would be invisible to eth_getLogs). The \ + substrate hooks skip on is_in_evm(); we need them to either push to the current \ + EVM frame's logs (so they end up in info.logs / capture_logs) or to synthetic-logs." + ); + }); +} + +#[test] +fn dispatcher_precompile_omnipool_sell_emits_swap_log() { + use codec::Encode; + use hydradx_runtime::evm::precompiles::DISPATCH_ADDR; + use hydradx_runtime::evm::Executor; + use hydradx_runtime::RuntimeCall; + use hydradx_traits::evm::{CallContext, EVM as EVMTrait}; + use pallet_synthetic_logs::SWAP_TOPIC; + + TestNet::reset(); + Hydra::execute_with(|| { + crate::evm::init_omnipool_with_oracle_for_block_10(); + + assert_ok!(hydradx_runtime::EVMAccounts::bind_evm_address(RuntimeOrigin::signed( + ALICE.into() + ))); + let alice_evm = hydradx_runtime::EVMAccounts::evm_address(&AccountId::from(ALICE)); + assert_ok!(Currencies::update_balance( + RuntimeOrigin::root(), + ALICE.into(), + DOT, + (10u128.pow(10) * 100) as i128, + )); + + let amount: u128 = 10_000_000_000; + let inner = RuntimeCall::Omnipool(pallet_omnipool::Call::sell { + asset_in: DOT, + asset_out: HDX, + amount, + min_buy_amount: 0, + }); + + SyntheticLogsPending::::kill(); + frame_system::Pallet::::reset_events(); + + let context = CallContext { + contract: DISPATCH_ADDR, + sender: alice_evm, + origin: alice_evm, + }; + let result = Executor::::call(context, inner.encode(), U256::zero(), 2_000_000); + assert!( + matches!(result.exit_reason, fp_evm::ExitReason::Succeed(_)), + "dispatcher precompile call must succeed, got {:?}", + result.exit_reason + ); + + let saw_swapped3 = frame_system::Pallet::::events().into_iter().any(|r| { + matches!( + &r.event, + hydradx_runtime::RuntimeEvent::Broadcast(pallet_broadcast::Event::Swapped3 { .. }) + ) + }); + assert!( + saw_swapped3, + "Omnipool::sell via dispatcher must produce a Swapped3 substrate event" + ); + + let found = buffered_logs() + .into_iter() + .any(|(_, _, log)| log.topics.first() == Some(&SWAP_TOPIC)); + + assert!( + found, + "BLINDSPOT: dispatcher precompile dispatched Omnipool::sell inside an EVM frame; \ + Swapped3 fired on the substrate side but OnTrade::on_trade silently skips on \ + is_in_evm() and the dispatcher does not inline-emit. No uniswap-v2 Swap log is \ + visible to eth_getLogs. OnTrade should either push into the current EVM frame's \ + logs or to synthetic-logs when triggered from inside an EVM frame." + ); + }); +} + +/// intra-batch order: a dispatcher batch of N transfers produces logs in +/// dispatch order (drained inline at the precompile's call site). +#[test] +fn dispatcher_precompile_batch_preserves_substrate_transfer_order() { + use codec::Encode; + use hydradx_runtime::evm::precompiles::DISPATCH_ADDR; + use hydradx_runtime::evm::Executor; + use hydradx_runtime::RuntimeCall; + use hydradx_traits::evm::{CallContext, EVM as EVMTrait}; + + TestNet::reset(); + Hydra::execute_with(|| { + assert_ok!(hydradx_runtime::EVMAccounts::bind_evm_address(RuntimeOrigin::signed( + ALICE.into() + ))); + let alice_evm = hydradx_runtime::EVMAccounts::evm_address(&AccountId::from(ALICE)); + + // dispatch a batch of three transfers in a deterministic asset order + // covers both hook paths: HDX = pallet-balances RuntimeHooks; DAI/DOT = orml-tokens MutationHooks. + let leg_assets: [AssetId; 3] = [HDX, DAI, DOT]; + let amount: u128 = UNITS; + let calls: Vec = leg_assets + .iter() + .map(|asset| { + RuntimeCall::Currencies(pallet_currencies::Call::transfer { + dest: BOB.into(), + currency_id: *asset, + amount, + }) + }) + .collect(); + let batch = RuntimeCall::Utility(pallet_utility::Call::batch_all { calls }); + + SyntheticLogsPending::::kill(); + frame_system::Pallet::::reset_events(); + + let context = CallContext { + contract: DISPATCH_ADDR, + sender: alice_evm, + origin: alice_evm, + }; + let result = Executor::::call(context, batch.encode(), U256::zero(), 5_000_000); + assert!( + matches!(result.exit_reason, fp_evm::ExitReason::Succeed(_)), + "dispatcher batch must succeed, got {:?}", + result.exit_reason + ); + + let alice_h = alice_h160(); + let bob_h = bob_h160(); + + // extract just the Transfer logs that came from one of our three asset addresses, + // in buffer (== insertion / dispatch) order + let observed: Vec = buffered_logs() + .into_iter() + .filter_map(|(_, _, log)| { + if log.topics.first() != Some(&TRANSFER_TOPIC) { + return None; + } + if log.topics.get(1) != Some(&h160_to_h256(alice_h)) { + return None; + } + if log.topics.get(2) != Some(&h160_to_h256(bob_h)) { + return None; + } + leg_assets + .iter() + .copied() + .find(|a| HydraErc20Mapping::asset_address(*a) == log.address) + }) + .collect(); + + assert_eq!( + observed, + leg_assets.to_vec(), + "Transfer logs from a batched dispatcher call must appear in dispatch order, \ + not bunched at the end. Expected {leg_assets:?}, got {observed:?}", + ); + }); +} + +/// inline contract logs interleaved with a precompile-triggered substrate transfer +/// must produce `[Marker(0), Transfer, Marker(1)]` in log_index order. +#[test] +fn evm_inline_logs_around_precompile_call_preserve_log_index_order() { + use ethereum_types::H256; + use hex_literal::hex; + use hydradx_runtime::evm::Executor; + use hydradx_traits::evm::{CallContext, EVM as EVMTrait}; + + // keccak256("Marker(uint256)") — see node_modules ethers computation. + const MARKER_TOPIC: H256 = H256(hex!("83264c98256454386201e4c55918ea57058c5c0052e60bd0b0f9a8fd2f3c1b24")); + // first 4 bytes of keccak256("exercise(address,address,uint256)") + const EXERCISE_SELECTOR: [u8; 4] = hex!("430c9304"); + + TestNet::reset(); + Hydra::execute_with(|| { + // deploy the probe contract using ALICE as deployer + let alice_evm = hydradx_runtime::EVMAccounts::evm_address(&AccountId::from(ALICE)); + let probe = crate::utils::contracts::deploy_contract("LogOrderProbe", alice_evm); + + // fund the probe with DAI so it can transfer to BOB + let probe_acc = hydradx_runtime::EVMAccounts::truncated_account_id(probe); + assert_ok!(Currencies::update_balance( + RuntimeOrigin::root(), + probe_acc, + DAI, + (UNITS * 10) as i128, + )); + + // build calldata: exercise(token=DAI_addr, to=BOB_evm, amount=UNITS) + let dai_addr = HydraErc20Mapping::asset_address(DAI); + let bob_evm = bob_h160(); + let amount = UNITS; + let mut calldata = EXERCISE_SELECTOR.to_vec(); + calldata.extend_from_slice(&[0u8; 12]); + calldata.extend_from_slice(dai_addr.as_bytes()); + calldata.extend_from_slice(&[0u8; 12]); + calldata.extend_from_slice(bob_evm.as_bytes()); + calldata.extend_from_slice(&U256::from(amount).to_big_endian()); + + SyntheticLogsPending::::kill(); + frame_system::Pallet::::reset_events(); + + let context = CallContext { + contract: probe, + sender: alice_evm, + origin: alice_evm, + }; + let result = Executor::::call(context, calldata, U256::zero(), 5_000_000); + assert!( + matches!(result.exit_reason, fp_evm::ExitReason::Succeed(_)), + "probe.exercise must succeed, got {:?}", + result.exit_reason + ); + + // extract the 3 relevant logs in buffered order (= info.logs order = log_index order) + // classify each: 0=Marker(0), 1=Transfer, 2=Marker(1) + let from_h256 = h160_to_h256(probe); + let to_h256 = h160_to_h256(bob_evm); + + let kinds: Vec<&'static str> = buffered_logs() + .into_iter() + .filter_map(|(_, _, log)| { + if log.topics.first() == Some(&MARKER_TOPIC) && log.address == probe { + // extract the uint256 idx from data + let idx = U256::from_big_endian(&log.data); + if idx == U256::zero() { + Some("Marker0") + } else if idx == U256::one() { + Some("Marker1") + } else { + None + } + } else if log.topics.first() == Some(&TRANSFER_TOPIC) + && log.address == dai_addr + && log.topics.get(1) == Some(&from_h256) + && log.topics.get(2) == Some(&to_h256) + { + Some("Transfer") + } else { + None + } + }) + .collect(); + + assert_eq!( + kinds, + vec!["Marker0", "Transfer", "Marker1"], + "log_index ordering must match EVM execution order: \ + inline Marker(0), then precompile-emitted Transfer (drained at multicurrency precompile call site), \ + then inline Marker(1). Got: {kinds:?}", + ); + }); +} + +// reserve/unreserve mirror as `Transfer(owner, reserved_address_of(owner))`. + +#[test] +fn orml_tokens_reserve_buffers_transfer_log_to_reserved_sentinel() { + use orml_traits::MultiReservableCurrency; + + TestNet::reset(); + Hydra::execute_with(|| { + SyntheticLogsPending::::kill(); + let amount = UNITS; + assert_ok!(>::reserve( + DAI, + &ALICE.into(), + amount + )); + + let asset_addr = HydraErc20Mapping::asset_address(DAI); + let alice_h = alice_h160(); + let reserved = reserved_address_of(alice_h); + + let entry = buffered_logs().into_iter().find(|(_, emitter, log)| { + *emitter == asset_addr + && log.topics.first() == Some(&TRANSFER_TOPIC) + && log.topics.get(1) == Some(&h160_to_h256(alice_h)) + && log.topics.get(2) == Some(&h160_to_h256(reserved)) + }); + assert!( + entry.is_some(), + "orml_tokens::reserve must buffer Transfer(owner, reserved_sentinel, amount); \ + reserved_sentinel = {reserved:?} for alice = {alice_h:?}", + ); + }); +} + +#[test] +fn orml_tokens_unreserve_buffers_transfer_log_from_reserved_sentinel() { + use orml_traits::MultiReservableCurrency; + + TestNet::reset(); + Hydra::execute_with(|| { + let amount = UNITS; + assert_ok!(>::reserve( + DAI, + &ALICE.into(), + amount + )); + SyntheticLogsPending::::kill(); + + let unreserved = >::unreserve(DAI, &ALICE.into(), amount); + assert_eq!(unreserved, 0, "all of `amount` must be unreserved"); + + let asset_addr = HydraErc20Mapping::asset_address(DAI); + let alice_h = alice_h160(); + let reserved = reserved_address_of(alice_h); + + let entry = buffered_logs().into_iter().find(|(_, emitter, log)| { + *emitter == asset_addr + && log.topics.first() == Some(&TRANSFER_TOPIC) + && log.topics.get(1) == Some(&h160_to_h256(reserved)) + && log.topics.get(2) == Some(&h160_to_h256(alice_h)) + }); + assert!( + entry.is_some(), + "orml_tokens::unreserve must buffer Transfer(reserved_sentinel, owner, amount)", + ); + }); +} + +#[test] +fn balances_reserve_buffers_transfer_log_to_reserved_sentinel() { + use frame_support::traits::ReservableCurrency; + + TestNet::reset(); + Hydra::execute_with(|| { + SyntheticLogsPending::::kill(); + let amount = UNITS; + assert_ok!(>::reserve( + &ALICE.into(), + amount + )); + + let hdx_addr = HydraErc20Mapping::asset_address(HDX); + let alice_h = alice_h160(); + let reserved = reserved_address_of(alice_h); + + let entry = buffered_logs().into_iter().find(|(_, emitter, log)| { + *emitter == hdx_addr + && log.topics.first() == Some(&TRANSFER_TOPIC) + && log.topics.get(1) == Some(&h160_to_h256(alice_h)) + && log.topics.get(2) == Some(&h160_to_h256(reserved)) + }); + assert!( + entry.is_some(), + "pallet_balances::reserve must buffer Transfer(owner, reserved_sentinel, amount) for HDX", + ); + }); +} + +#[test] +fn balances_unreserve_buffers_transfer_log_from_reserved_sentinel() { + use frame_support::traits::ReservableCurrency; + + TestNet::reset(); + Hydra::execute_with(|| { + let amount = UNITS; + assert_ok!(>::reserve( + &ALICE.into(), + amount + )); + SyntheticLogsPending::::kill(); + + let unreserved = >::unreserve(&ALICE.into(), amount); + assert_eq!(unreserved, 0, "all of `amount` must be unreserved"); + + let hdx_addr = HydraErc20Mapping::asset_address(HDX); + let alice_h = alice_h160(); + let reserved = reserved_address_of(alice_h); + + let entry = buffered_logs().into_iter().find(|(_, emitter, log)| { + *emitter == hdx_addr + && log.topics.first() == Some(&TRANSFER_TOPIC) + && log.topics.get(1) == Some(&h160_to_h256(reserved)) + && log.topics.get(2) == Some(&h160_to_h256(alice_h)) + }); + assert!( + entry.is_some(), + "pallet_balances::unreserve must buffer Transfer(reserved_sentinel, owner, amount) for HDX", + ); + }); +} + +// repatriate_reserved: A.reserved → B.free or B.reserved. + +#[test] +fn orml_tokens_repatriate_to_free_buffers_transfer_log_to_beneficiary() { + use orml_traits::{BalanceStatus, MultiReservableCurrency}; + + TestNet::reset(); + Hydra::execute_with(|| { + let amount = UNITS; + assert_ok!(>::reserve( + DAI, + &ALICE.into(), + amount + )); + SyntheticLogsPending::::kill(); + + assert_ok!(>::repatriate_reserved( + DAI, + &ALICE.into(), + &BOB.into(), + amount, + BalanceStatus::Free, + )); + + let dai_addr = HydraErc20Mapping::asset_address(DAI); + let alice_reserved = reserved_address_of(alice_h160()); + let bob_h = bob_h160(); + + let entry = buffered_logs().into_iter().find(|(_, emitter, log)| { + *emitter == dai_addr + && log.topics.first() == Some(&TRANSFER_TOPIC) + && log.topics.get(1) == Some(&h160_to_h256(alice_reserved)) + && log.topics.get(2) == Some(&h160_to_h256(bob_h)) + }); + assert!( + entry.is_some(), + "orml_tokens::repatriate_reserved (status=Free) must buffer \ + Transfer(reserved_address_of(slashed), beneficiary, amount)", + ); + }); +} + +#[test] +fn orml_tokens_repatriate_to_reserved_buffers_transfer_log_between_reserved_buckets() { + use orml_traits::{BalanceStatus, MultiReservableCurrency}; + + TestNet::reset(); + Hydra::execute_with(|| { + let amount = UNITS; + assert_ok!(>::reserve( + DAI, + &ALICE.into(), + amount + )); + SyntheticLogsPending::::kill(); + + assert_ok!(>::repatriate_reserved( + DAI, + &ALICE.into(), + &BOB.into(), + amount, + BalanceStatus::Reserved, + )); + + let dai_addr = HydraErc20Mapping::asset_address(DAI); + let alice_reserved = reserved_address_of(alice_h160()); + let bob_reserved = reserved_address_of(bob_h160()); + + let entry = buffered_logs().into_iter().find(|(_, emitter, log)| { + *emitter == dai_addr + && log.topics.first() == Some(&TRANSFER_TOPIC) + && log.topics.get(1) == Some(&h160_to_h256(alice_reserved)) + && log.topics.get(2) == Some(&h160_to_h256(bob_reserved)) + }); + assert!( + entry.is_some(), + "orml_tokens::repatriate_reserved (status=Reserved) must buffer \ + Transfer(reserved_address_of(slashed), reserved_address_of(beneficiary), amount)", + ); + }); +} + +#[test] +fn orml_tokens_slash_reserved_buffers_burn_log_from_reserved_sentinel() { + use orml_traits::MultiReservableCurrency; + + TestNet::reset(); + Hydra::execute_with(|| { + let amount = UNITS; + assert_ok!(>::reserve( + DAI, + &ALICE.into(), + amount + )); + SyntheticLogsPending::::kill(); + + let remaining = >::slash_reserved(DAI, &ALICE.into(), amount); + assert_eq!(remaining, 0); + + let dai_addr = HydraErc20Mapping::asset_address(DAI); + let reserved = reserved_address_of(alice_h160()); + let entry = buffered_logs().into_iter().find(|(_, emitter, log)| { + *emitter == dai_addr + && log.topics.first() == Some(&TRANSFER_TOPIC) + && log.topics.get(1) == Some(&h160_to_h256(reserved)) + && log.topics.get(2) == Some(&h160_to_h256(H160::zero())) + }); + assert!( + entry.is_some(), + "orml_tokens::slash_reserved must buffer Transfer(reserved_sentinel, 0x0, amount)", + ); + }); +} + +#[test] +fn balances_slash_reserved_buffers_burn_log_from_reserved_sentinel() { + use frame_support::traits::ReservableCurrency; + + TestNet::reset(); + Hydra::execute_with(|| { + let amount = UNITS; + assert_ok!(>::reserve( + &ALICE.into(), + amount + )); + SyntheticLogsPending::::kill(); + + let (_imbalance, remaining) = + >::slash_reserved(&ALICE.into(), amount); + assert_eq!(remaining, 0); + + let hdx_addr = HydraErc20Mapping::asset_address(HDX); + let reserved = reserved_address_of(alice_h160()); + let entry = buffered_logs().into_iter().find(|(_, emitter, log)| { + *emitter == hdx_addr + && log.topics.first() == Some(&TRANSFER_TOPIC) + && log.topics.get(1) == Some(&h160_to_h256(reserved)) + && log.topics.get(2) == Some(&h160_to_h256(H160::zero())) + }); + assert!( + entry.is_some(), + "pallet_balances::slash_reserved must buffer Transfer(reserved_sentinel, 0x0, amount) for HDX", + ); + }); +} + +#[test] +fn balances_currency_withdraw_buffers_burn_log() { + // covers the native HDX fee path which routes through + // `BasicCurrencyAdapter::withdraw` → `pallet_balances::Currency::withdraw` + use frame_support::traits::{Currency, ExistenceRequirement, WithdrawReasons}; + + TestNet::reset(); + Hydra::execute_with(|| { + SyntheticLogsPending::::kill(); + let _imbalance = >::withdraw( + &ALICE.into(), + UNITS, + WithdrawReasons::TRANSACTION_PAYMENT, + ExistenceRequirement::AllowDeath, + ) + .expect("alice has enough HDX"); + + let hdx_addr = HydraErc20Mapping::asset_address(HDX); + let entry = buffered_logs().into_iter().find(|(_, emitter, log)| { + *emitter == hdx_addr + && log.topics.first() == Some(&TRANSFER_TOPIC) + && log.topics.get(1) == Some(&h160_to_h256(alice_h160())) + && log.topics.get(2) == Some(&h160_to_h256(H160::zero())) + }); + assert!( + entry.is_some(), + "pallet_balances::Currency::withdraw must buffer Transfer(payer, 0x0, amount); \ + this is the native HDX fee burn path", + ); + }); +} + +#[test] +fn balances_currency_deposit_creating_buffers_mint_log() { + // covers the deposit half of the fee path + // (treasury credit, etc.): `Currency::deposit_creating` was silent before. + use frame_support::traits::Currency; + + TestNet::reset(); + Hydra::execute_with(|| { + SyntheticLogsPending::::kill(); + let _imbalance = >::deposit_creating(&BOB.into(), UNITS); + + let hdx_addr = HydraErc20Mapping::asset_address(HDX); + let entry = buffered_logs().into_iter().find(|(_, emitter, log)| { + *emitter == hdx_addr + && log.topics.first() == Some(&TRANSFER_TOPIC) + && log.topics.get(1) == Some(&h160_to_h256(H160::zero())) + && log.topics.get(2) == Some(&h160_to_h256(bob_h160())) + }); + assert!( + entry.is_some(), + "pallet_balances::Currency::deposit_creating must buffer Transfer(0x0, recipient, amount)", + ); + }); +} + +/// SyntheticLogs::on_finalize must run before Ethereum::on_finalize so the +/// synth tx lands in pallet_ethereum::Pending → CurrentBlock/Statuses/Receipts. +#[test] +fn on_finalize_drains_buffer_into_pallet_ethereum_pending_before_ethereum_seal() { + use frame_support::traits::OnFinalize; + + TestNet::reset(); + Hydra::execute_with(|| { + let n = frame_system::Pallet::::block_number(); + SyntheticLogsPending::::kill(); + + // Push a Transfer log directly into the buffer (skip the extrinsic to + // avoid xcm-emulator's auto-finalize coupling). + let dai_addr = HydraErc20Mapping::asset_address(DAI); + let mut data = Vec::with_capacity(32); + data.extend_from_slice(&U256::from(UNITS).to_big_endian()); + let log = ethereum::Log { + address: dai_addr, + topics: vec![TRANSFER_TOPIC, h160_to_h256(alice_h160()), h160_to_h256(bob_h160())], + data, + }; + pallet_synthetic_logs::Pallet::::push(dai_addr, log); + assert!(!SyntheticLogsPending::::get().is_empty()); + + // Verify the runtime ordering directly: SyntheticLogs::on_finalize must + // drain the buffer into pallet_ethereum::Pending BEFORE + // Ethereum::on_finalize rolls Pending into CurrentBlock + statuses. + // (construct_runtime! order: SyntheticLogs=86 runs before Ethereum=92.) + SyntheticLogs::on_finalize(n); + + // After SyntheticLogs's flush but BEFORE Ethereum::on_finalize, the + // synth tx must already be in pallet_ethereum::Pending. + let pending: Vec<_> = pallet_ethereum::Pending::::iter().collect(); + assert!(!pending.is_empty(), "flush must write into pallet_ethereum::Pending",); + + // Now seal the ethereum block. + Ethereum::on_finalize(n); + + // Buffer drained. + assert!( + SyntheticLogsPending::::get().is_empty(), + "buffer must be empty after on_finalize flush", + ); + + // pallet_ethereum::on_finalize moves Pending → CurrentBlock + per-tx + // CurrentTransactionStatuses + CurrentReceipts. After the seal, the + // synth tx should appear in the block's tx list, statuses, and receipts. + let block = pallet_ethereum::CurrentBlock::::get().expect("ethereum block sealed"); + let statuses = + pallet_ethereum::CurrentTransactionStatuses::::get().expect("statuses stored after seal"); + let receipts = pallet_ethereum::CurrentReceipts::::get().expect("receipts stored after seal"); + + assert_eq!(block.transactions.len(), statuses.len(), "tx count == status count"); + assert_eq!(block.transactions.len(), receipts.len(), "tx count == receipt count"); + + let dai_addr = HydraErc20Mapping::asset_address(DAI); + let synth_status = statuses.iter().find(|s| { + s.from == pallet_synthetic_logs::SENTINEL_ADDRESS + && s.logs.iter().any(|log| { + log.address == dai_addr + && log.topics.first() == Some(&TRANSFER_TOPIC) + && log.topics.get(1) == Some(&h160_to_h256(alice_h160())) + && log.topics.get(2) == Some(&h160_to_h256(bob_h160())) + }) + }); + assert!( + synth_status.is_some(), + "synthetic tx with the DAI Transfer log must be in CurrentTransactionStatuses after seal; \ + got {} statuses", + statuses.len(), + ); + let synth_status = synth_status.unwrap(); + + // Receipt at the same index must have matching logs (logs_bloom too). + let receipt_logs = match &receipts[synth_status.transaction_index as usize] { + pallet_ethereum::Receipt::EIP1559(d) + | pallet_ethereum::Receipt::EIP2930(d) + | pallet_ethereum::Receipt::Legacy(d) => &d.logs, + _ => panic!("unexpected receipt variant"), + }; + assert_eq!( + receipt_logs.len(), + synth_status.logs.len(), + "receipt logs match status logs", + ); + }); +} + +/// outer EVM frame reverts → substrate state rolls back; runner end-drain +/// must NOT append buffered hook logs (would be ghost logs for non-events). +#[test] +fn evm_frame_revert_drops_buffered_substrate_hook_logs() { + use codec::Encode; + use hex_literal::hex; + use hydradx_runtime::evm::precompiles::DISPATCH_ADDR; + use hydradx_runtime::evm::Executor; + use hydradx_runtime::RuntimeCall; + use hydradx_traits::evm::{CallContext, EVM as EVMTrait}; + + // keccak256("try_dispatch_then_revert(address,bytes)")[..4] + const PROBE_SELECTOR: [u8; 4] = hex!("4351d800"); + + TestNet::reset(); + Hydra::execute_with(|| { + let alice_evm = hydradx_runtime::EVMAccounts::evm_address(&AccountId::from(ALICE)); + let probe = crate::utils::contracts::deploy_contract("RevertingDispatcher", alice_evm); + + // Fund probe with DAI so the inner dispatch would succeed if not reverted. + let probe_acc = hydradx_runtime::EVMAccounts::truncated_account_id(probe); + assert_ok!(Currencies::update_balance( + RuntimeOrigin::root(), + probe_acc, + DAI, + (UNITS * 10) as i128, + )); + + let bob_acc: AccountId = BOB.into(); + let bob_dai_before = >::free_balance(DAI, &bob_acc); + + let amount: u128 = UNITS; + let inner = RuntimeCall::Currencies(pallet_currencies::Call::transfer { + dest: BOB.into(), + currency_id: DAI, + amount, + }); + let inner_encoded = inner.encode(); + + // abi-encode try_dispatch_then_revert(address dispatcher, bytes sub_call_data): + // selector || dispatcher (32 bytes) || offset_to_bytes (=0x40, 32 bytes) + // || bytes_len (32) || bytes_payload (padded) + let mut calldata = PROBE_SELECTOR.to_vec(); + calldata.extend_from_slice(&[0u8; 12]); + calldata.extend_from_slice(DISPATCH_ADDR.as_bytes()); + calldata.extend_from_slice(&U256::from(0x40u64).to_big_endian()); + calldata.extend_from_slice(&U256::from(inner_encoded.len() as u64).to_big_endian()); + calldata.extend_from_slice(&inner_encoded); + // pad to 32-byte boundary + let pad = (32 - inner_encoded.len() % 32) % 32; + calldata.extend(std::iter::repeat_n(0u8, pad)); + + SyntheticLogsPending::::kill(); + + let context = CallContext { + contract: probe, + sender: alice_evm, + origin: alice_evm, + }; + let result = Executor::::call(context, calldata, U256::zero(), 5_000_000); + // The contract reverts intentionally — the outer call result is Revert. + assert!( + matches!(result.exit_reason, fp_evm::ExitReason::Revert(_)), + "probe must revert, got {:?}", + result.exit_reason + ); + + let bob_dai_after = >::free_balance(DAI, &bob_acc); + assert_eq!( + bob_dai_after, bob_dai_before, + "substrate state must be rolled back: bob's DAI balance must NOT change", + ); + + let dai_addr = HydraErc20Mapping::asset_address(DAI); + let leaked = buffered_logs() + .into_iter() + .any(|(_, _, log)| log.address == dai_addr && log.topics.first() == Some(&TRANSFER_TOPIC)); + assert!( + !leaked, + "BLINDSPOT: a DAI Transfer log leaked into the synth tx even though the outer EVM frame reverted; \ + the WrapRunner end-drain is appending buffered hook logs unconditionally — must gate on Succeed.", + ); + }); +} + +#[test] +fn balances_repatriate_to_free_buffers_transfer_log_to_beneficiary() { + use frame_support::traits::{tokens::BalanceStatus, ReservableCurrency}; + + TestNet::reset(); + Hydra::execute_with(|| { + let amount = UNITS; + assert_ok!(>::reserve( + &ALICE.into(), + amount + )); + SyntheticLogsPending::::kill(); + + assert_ok!(>::repatriate_reserved( + &ALICE.into(), + &BOB.into(), + amount, + BalanceStatus::Free, + )); + + let hdx_addr = HydraErc20Mapping::asset_address(HDX); + let alice_reserved = reserved_address_of(alice_h160()); + let bob_h = bob_h160(); + + let entry = buffered_logs().into_iter().find(|(_, emitter, log)| { + *emitter == hdx_addr + && log.topics.first() == Some(&TRANSFER_TOPIC) + && log.topics.get(1) == Some(&h160_to_h256(alice_reserved)) + && log.topics.get(2) == Some(&h160_to_h256(bob_h)) + }); + assert!( + entry.is_some(), + "pallet_balances::repatriate_reserved (status=Free) must buffer \ + Transfer(reserved_address_of(slashed), beneficiary, amount) for HDX", + ); + }); +} diff --git a/integration-tests/src/dca.rs b/integration-tests/src/dca.rs index 290e97da4a..f262828f34 100644 --- a/integration-tests/src/dca.rs +++ b/integration-tests/src/dca.rs @@ -3723,14 +3723,12 @@ mod stableswap { assert_eq!( alice_stable_shares_after, 0, - "User should have 0 pool shares since DCA execution failed. Got {}", - alice_stable_shares_after + "User should have 0 pool shares since DCA execution failed. Got {alice_stable_shares_after}" ); assert_eq!( router_reserved_shares, 0, - "Router should have 0 reserved shares. Got {}", - router_reserved_shares + "Router should have 0 reserved shares. Got {router_reserved_shares}" ); TransactionOutcome::Commit(DispatchResult::Ok(())) @@ -5491,9 +5489,7 @@ mod extra_gas_erc20 { assert!( fee_with_extra > base_fee, - "Fee with extra gas ({}) should be > base fee ({})", - fee_with_extra, - base_fee + "Fee with extra gas ({fee_with_extra}) should be > base fee ({base_fee})" ); // The first attempt charged base fee (before extra gas was added) diff --git a/integration-tests/src/dispatcher.rs b/integration-tests/src/dispatcher.rs index 8ec103a6b5..41de5542a3 100644 --- a/integration-tests/src/dispatcher.rs +++ b/integration-tests/src/dispatcher.rs @@ -101,7 +101,7 @@ fn dispatch_as_aave_admin_can_modify_supply_cap_on_testnet() { RuntimeEvent::Dispatcher(pallet_dispatcher::Event::AaveManagerCallDispatched { result: Ok(..), .. }) => {} - _ => panic!("Unexpected event: {:?}", event), + _ => panic!("Unexpected event: {event:?}"), } }); } @@ -248,8 +248,7 @@ fn dispatch_with_extra_gas_should_pay_for_extra_gas_used_when_it_is_not_used() { let gas_eater_paid_fee = initial_alice_hdx_balance - alice_balance_final; assert_eq!( gas_eater_paid_fee, hydra_paid_fee, - "GasEater transfer should cost the same as HydraToken transfer: {:?} == {:?}", - gas_eater_paid_fee, hydra_paid_fee + "GasEater transfer should cost the same as HydraToken transfer: {gas_eater_paid_fee:?} == {hydra_paid_fee:?}" ); }); } @@ -363,17 +362,13 @@ fn dispatch_with_extra_gas_should_not_refund_extra_gas_correctly() { // Fee charged on tx submit should be higher in the second case assert!( fee_charge_2 > fee_charge_1, - "Fee charged on tx submit should be higher in the second case: {:?} > {:?}", - fee_charge_2, - fee_charge_1 + "Fee charged on tx submit should be higher in the second case: {fee_charge_2:?} > {fee_charge_1:?}" ); // the two tx fees should be the same because it should refund correctly the unused gas assert!( actual_fee_paid_1 < actual_fee_paid_2, - "Paid fee should be higher for the second tx: {:?} < {:?}", - actual_fee_paid_1, - actual_fee_paid_2 + "Paid fee should be higher for the second tx: {actual_fee_paid_1:?} < {actual_fee_paid_2:?}" ); } diff --git a/integration-tests/src/dynamic_fees.rs b/integration-tests/src/dynamic_fees.rs index 6dc9e5e1b1..82a408781a 100644 --- a/integration-tests/src/dynamic_fees.rs +++ b/integration-tests/src/dynamic_fees.rs @@ -834,10 +834,10 @@ fn fees_should_be_applied_correctly_when_min_equals_max_in_dynamic_config() { println!("DOT asset fee: 1% (applied on DOT being sold)"); println!("HDX protocol fee: 0.5% (applied on HDX being received)"); println!("---"); - println!("Amount received with zero fees: {}", amount_out_with_zero_fee); - println!("Amount received with fees: {}", amount_out_with_fee); - println!("Difference: {}", actual_difference); - println!("Actual percentage difference: {:.4}%", actual_percentage_value); + println!("Amount received with zero fees: {amount_out_with_zero_fee}"); + println!("Amount received with fees: {amount_out_with_fee}"); + println!("Difference: {actual_difference}"); + println!("Actual percentage difference: {actual_percentage_value:.4}%"); println!("====================================\n"); // Verify the fees were applied (should see some difference) @@ -850,16 +850,10 @@ fn fees_should_be_applied_correctly_when_min_equals_max_in_dynamic_config() { assert!( actual_percentage_value >= expected_percentage - tolerance, - "Actual fee percentage ({:.4}%) is lower than expected ({:.2}% - {:.2}%)", - actual_percentage_value, - expected_percentage, - tolerance + "Actual fee percentage ({actual_percentage_value:.4}%) is lower than expected ({expected_percentage:.2}% - {tolerance:.2}%)" ); assert!( actual_percentage_value <= expected_percentage + tolerance, - "Actual fee percentage ({:.4}%) is higher than expected ({:.2}% + {:.2}%)", - actual_percentage_value, - expected_percentage, - tolerance + "Actual fee percentage ({actual_percentage_value:.4}%) is higher than expected ({expected_percentage:.2}% + {tolerance:.2}%)" ); } diff --git a/integration-tests/src/erc20.rs b/integration-tests/src/erc20.rs index 8c82de4493..c4ac5e178b 100644 --- a/integration-tests/src/erc20.rs +++ b/integration-tests/src/erc20.rs @@ -113,6 +113,119 @@ fn executor_call_wont_bump_nonce() { }); } +#[test] +fn executor_call_captures_evm_log_to_synthetic_logs() { + TestNet::reset(); + Hydra::execute_with(|| { + let token = deploy_token_contract(); + + pallet_synthetic_logs::Pending::::kill(); + frame_system::Pallet::::reset_events(); + + let mut data = Into::::into(Function::Transfer).to_be_bytes().to_vec(); + data.extend_from_slice(H256::from(evm_address()).as_bytes()); + data.extend_from_slice(H256::from_uint(&U256::from(100)).as_bytes()); + let context = CallContext { + contract: token, + sender: deployer(), + origin: deployer(), + }; + + let call_result = Executor::::call(context, data, U256::zero(), 100_000); + assert_eq!(call_result.exit_reason, Succeed(Returned)); + + let synth_log = pallet_synthetic_logs::Pending::::get() + .into_iter() + .find(|(_, _, log)| { + log.address == token + && log.topics.first() == Some(&pallet_synthetic_logs::TRANSFER_TOPIC) + && log.topics.get(1) == Some(&pallet_synthetic_logs::h160_to_h256(deployer())) + && log.topics.get(2) == Some(&pallet_synthetic_logs::h160_to_h256(evm_address())) + }) + .expect("Executor::call must capture the EVM Transfer log into the synthetic-logs buffer"); + + let (_, emitter, _) = &synth_log; + assert_eq!(*emitter, token, "synth-log emitter must be the token contract"); + + let evm_log_event = frame_system::Pallet::::events() + .into_iter() + .find(|r| { + matches!( + &r.event, + hydradx_runtime::RuntimeEvent::EVM(pallet_evm::Event::Log { log }) + if log.address == token + && log.topics.first() == Some(&pallet_synthetic_logs::TRANSFER_TOPIC) + ) + }) + .expect("pallet_evm::Event::Log must be emitted as a substrate event for the same log"); + let _ = evm_log_event; + }); +} + +#[test] +fn runner_call_direct_does_not_buffer_synthetic_log() { + TestNet::reset(); + Hydra::execute_with(|| { + let token = deploy_token_contract(); + + pallet_synthetic_logs::Pending::::kill(); + frame_system::Pallet::::reset_events(); + + let mut data = Into::::into(Function::Transfer).to_be_bytes().to_vec(); + data.extend_from_slice(H256::from(evm_address()).as_bytes()); + data.extend_from_slice(H256::from_uint(&U256::from(100)).as_bytes()); + + let evm_config = ::config(); + let info = <::Runner as pallet_evm::Runner>::call( + deployer(), + token, + data, + U256::zero(), + 500_000, + Some(U256::zero()), + None, + None, + vec![], + vec![], + false, + false, + None, + None, + evm_config, + ) + .expect("runner call must succeed"); + assert!(matches!(info.exit_reason, fp_evm::ExitReason::Succeed(_))); + assert!( + info.logs + .iter() + .any(|l| l.address == token && l.topics.first() == Some(&pallet_synthetic_logs::TRANSFER_TOPIC)), + "the EVM frame must produce the Transfer log", + ); + + let buffered = pallet_synthetic_logs::Pending::::get(); + assert!( + buffered.is_empty(), + "a direct T::Runner::call (the path pallet_ethereum::transact uses internally) bypasses \ + Executor::call, so the EVM-frame Transfer log must NOT be duplicated into the \ + synthetic-logs buffer; found {} entries", + buffered.len() + ); + + let evm_log_event = frame_system::Pallet::::events().into_iter().find(|r| { + matches!( + &r.event, + hydradx_runtime::RuntimeEvent::EVM(pallet_evm::Event::Log { log }) + if log.address == token + && log.topics.first() == Some(&pallet_synthetic_logs::TRANSFER_TOPIC) + ) + }); + assert!( + evm_log_event.is_some(), + "pallet_evm::Event::Log substrate event must be deposited on the direct-runner path so substrate observers see the log" + ); + }); +} + #[test] fn name_should_decode_correctly() { TestNet::reset(); diff --git a/integration-tests/src/evm.rs b/integration-tests/src/evm.rs index fbc6968cfc..236f5372a5 100644 --- a/integration-tests/src/evm.rs +++ b/integration-tests/src/evm.rs @@ -350,7 +350,7 @@ mod account_conversion { ExitReason::Succeed(ExitSucceed::Stopped) ); - println!("{:?}", res); + println!("{res:?}"); }); } @@ -3721,9 +3721,7 @@ fn compare_fee_in_eth_between_evm_and_native_omnipool_calls() { let native_fee = new_alice_currency_balance - alice_currency_balance_pre_dispatch; assert!( evm_fee > native_fee, - "assertion failed evm_fee > native fee. Evm fee: {:?} Native fee: {:?}", - evm_fee, - native_fee + "assertion failed evm_fee > native fee. Evm fee: {evm_fee:?} Native fee: {native_fee:?}" ); let fee_difference = evm_fee - native_fee; @@ -3734,9 +3732,7 @@ fn compare_fee_in_eth_between_evm_and_native_omnipool_calls() { // EVM fees should be not higher than 20% assert!( relative_fee_difference < tolerated_fee_difference, - "relative_fee_difference: {:?} is bigger than tolerated {:?}", - relative_fee_difference, - tolerated_fee_difference + "relative_fee_difference: {relative_fee_difference:?} is bigger than tolerated {tolerated_fee_difference:?}" ); }) } @@ -4738,7 +4734,10 @@ impl PrecompileHandle for MockHandle { } fn log(&mut self, _: H160, _: Vec, _: Vec) -> Result<(), ExitError> { - unimplemented!() + // no-op: tests using this mock handle don't inspect emitted logs; + // the precompile (e.g. multicurrency) calls `handle.log(...)` to emit + // the ERC-20 Transfer event inline, which we accept silently here. + Ok(()) } fn code_address(&self) -> H160 { diff --git a/integration-tests/src/evm_permit.rs b/integration-tests/src/evm_permit.rs index 532144983a..9b7baba36a 100644 --- a/integration-tests/src/evm_permit.rs +++ b/integration-tests/src/evm_permit.rs @@ -169,9 +169,7 @@ fn compare_fee_in_hdx_between_evm_and_native_omnipool_calls_when_permit_is_dispa // EVM fees should be not higher than 20% assert!( relative_fee_difference < tolerated_fee_difference, - "relative_fee_difference: {:?} is bigger than tolerated {:?}", - relative_fee_difference, - tolerated_fee_difference + "relative_fee_difference: {relative_fee_difference:?} is bigger than tolerated {tolerated_fee_difference:?}" ); }) } @@ -1195,13 +1193,11 @@ fn evm_permit_set_currency_dispatch_should_pay_evm_fee_in_insufficient_asset() { let payed_fee = initial_user_insufficient_balance - user_insufficient_asset_balance; assert!( payed_fee > 50_000_000, - "payed_fee: {:?} is less than 50_000_000", - payed_fee + "payed_fee: {payed_fee:?} is less than 50_000_000" ); assert!( payed_fee < 120_000_000, - "payed_fee: {:?} is more than 120_000_000", - payed_fee + "payed_fee: {payed_fee:?} is more than 120_000_000" ); TransactionOutcome::Commit(DispatchResult::Ok(())) diff --git a/integration-tests/src/global_withdraw_limit.rs b/integration-tests/src/global_withdraw_limit.rs index f5105deae7..ecf433a28f 100644 --- a/integration-tests/src/global_withdraw_limit.rs +++ b/integration-tests/src/global_withdraw_limit.rs @@ -32,7 +32,7 @@ fn xcm_message_withdraw_deposit(token_location: Location, amount: Balance) -> Xc Xcm(vec![ WithdrawAsset(asset.clone().into()), BuyExecution { - fees: asset.into(), + fees: asset, weight_limit: Unlimited, }, DepositReserveAsset { @@ -54,7 +54,7 @@ fn set_dot_external_and_get_transfer_call() -> hydradx_runtime::RuntimeCall { let dot: Asset = Asset { id: cumulus_primitives_core::AssetId(DOT_ASSET_LOCATION.into()), - fun: Fungible(1 * UNITS), + fun: Fungible(UNITS), }; let bob_beneficiary = Location::new( @@ -195,7 +195,7 @@ fn xtokens_transfer_should_fail_when_lockdown_active_and_asset_is_egress() { let call = RuntimeCall::XTokens(orml_xtokens::Call::transfer { currency_id: HDX, - amount: 1 * UNITS, + amount: UNITS, dest: Box::new(bob_location.into_versioned()), dest_weight_limit: WeightLimit::Unlimited, }); @@ -238,7 +238,7 @@ fn on_charge_transaction_skips_global_withdraw_accounting_for_native_asset() { let call = RuntimeCall::System(frame_system::Call::remark { remark: vec![1, 2, 3] }); // Act - let fee_amount = 1 * UNITS; + let fee_amount = UNITS; let _ = ::OnChargeTransaction::withdraw_fee( &alice, &call, @@ -264,7 +264,7 @@ fn on_charge_transaction_skips_global_withdraw_accounting_for_native_asset() { Currencies::withdraw( HDX, &BOB.into(), - 1 * UNITS, + UNITS, frame_support::traits::ExistenceRequirement::AllowDeath ), pallet_circuit_breaker::Error::::WithdrawLockdownActive @@ -311,7 +311,7 @@ fn on_charge_transaction_skips_global_withdraw_accounting_for_external_asset() { let call = RuntimeCall::System(frame_system::Call::remark { remark: vec![1, 2, 3] }); // Act - let fee_amount = 1 * UNITS; + let fee_amount = UNITS; let _ = ::OnChargeTransaction::withdraw_fee( &alice, &call, @@ -337,7 +337,7 @@ fn on_charge_transaction_skips_global_withdraw_accounting_for_external_asset() { Currencies::withdraw( DOT, &ALICE.into(), - 1 * UNITS, + UNITS, frame_support::traits::ExistenceRequirement::AllowDeath ), pallet_circuit_breaker::Error::::WithdrawLockdownActive @@ -407,7 +407,7 @@ fn evm_on_charge_transaction_skips_global_withdraw_accounting() { Currencies::withdraw( WETH, &evm_account, - 1 * UNITS, + UNITS, frame_support::traits::ExistenceRequirement::AllowDeath ), pallet_circuit_breaker::Error::::WithdrawLockdownActive @@ -804,7 +804,7 @@ fn dot_external_limit_trigger_fails_then_decays_to_zero() { assert_ok!(AssetRegistry::set_location(DOT, DOT_ASSET_LOCATION)); let alice: AccountId = ALICE.into(); - let amount = 1 * UNITS; + let amount = UNITS; assert!( Currencies::free_balance(DOT, &alice) >= amount * 3, "Test requires Alice to have enough DOT" @@ -877,7 +877,7 @@ fn dot_external_lockdown_blocks_withdraw_but_regular_dot_transfer_still_works() let alice: AccountId = ALICE.into(); let bob: AccountId = BOB.into(); - let amount = 1 * UNITS; + let amount = UNITS; assert!(Currencies::free_balance(DOT, &alice) >= amount * 2); assert_eq!(CircuitBreaker::withdraw_limit_accumulator().0, 0); diff --git a/integration-tests/src/hsm.rs b/integration-tests/src/hsm.rs index 1935368aba..4fb75a5b72 100644 --- a/integration-tests/src/hsm.rs +++ b/integration-tests/src/hsm.rs @@ -2768,7 +2768,7 @@ fn arb_should_repeg_continuously_when_more_hollar_in_pool() { Some(state.fee), &state.pegs, ); - println!("Block: {:?}: spot: {:?}", block_idx, spot_price); + println!("Block: {block_idx:?}: spot: {spot_price:?}"); assert!(spot_price < last_spot_price); last_spot_price = spot_price; hydradx_run_to_next_block(); @@ -2955,7 +2955,7 @@ fn arb_should_repeg_continuously_when_more_hollar_in_pool_and_collateral_has_12_ Some(state.fee), &state.pegs, ); - println!("Block: {:?}: spot: {:?}", block_idx, spot_price); + println!("Block: {block_idx:?}: spot: {spot_price:?}"); assert!(spot_price < last_spot_price); last_spot_price = spot_price; hydradx_run_to_next_block(); diff --git a/integration-tests/src/lib.rs b/integration-tests/src/lib.rs index 089926089a..df942de6e1 100644 --- a/integration-tests/src/lib.rs +++ b/integration-tests/src/lib.rs @@ -3,6 +3,7 @@ #![cfg(not(feature = "runtime-benchmarks"))] mod aave_router; mod asset_registry; +mod balances_tokens_hooks; mod bonds; mod call_filter; mod circuit_breaker; diff --git a/integration-tests/src/liquidation.rs b/integration-tests/src/liquidation.rs index c3e6a727bd..0ada91f587 100644 --- a/integration-tests/src/liquidation.rs +++ b/integration-tests/src/liquidation.rs @@ -530,8 +530,7 @@ fn assert_health_factor_is_within_tolerance(health_factor: U256, target_health_f // HF uses 18 decimal places assert!( health_factor_diff < U256::from(10).pow(15.into()), - "HF diff: {:?}", - health_factor_diff + "HF diff: {health_factor_diff:?}" ); } diff --git a/integration-tests/src/omnipool_add_all_liquidity.rs b/integration-tests/src/omnipool_add_all_liquidity.rs index 2647c26055..d1b17a90a3 100644 --- a/integration-tests/src/omnipool_add_all_liquidity.rs +++ b/integration-tests/src/omnipool_add_all_liquidity.rs @@ -35,7 +35,7 @@ fn add_all_liquidity_should_work() { // circuit-breaker's per-block add-liquidity limit (5% of the pool's reserve). // The DOT pool reserve after add_token is ~87_719_298_250_000, so the limit is // ~4_385_964_912_500. We keep 1 * UNITS (1_000_000_000_000) for ALICE to deposit. - let keep_amount = 1 * UNITS; // 1 DOT — well within 5% of the pool + let keep_amount = UNITS; // 1 DOT — well within 5% of the pool let lp_balance = Currencies::free_balance(DOT, &lp); let transfer_away = lp_balance.saturating_sub(keep_amount); assert_ok!(Currencies::transfer( @@ -145,7 +145,7 @@ fn add_all_liquidity_position_matches_explicit_add_liquidity_with_limit() { // add-liquidity limit is 5%, so we stay well within it. let prepare_lp = || { let lp = AccountId::from(ALICE); - let keep = 1 * UNITS; + let keep = UNITS; let balance = Currencies::free_balance(DOT, &lp); let transfer_away = balance.saturating_sub(keep); if transfer_away > 0 { diff --git a/integration-tests/src/omnipool_fixed_fees.rs b/integration-tests/src/omnipool_fixed_fees.rs index 75394db8dd..f4dce62a58 100644 --- a/integration-tests/src/omnipool_fixed_fees.rs +++ b/integration-tests/src/omnipool_fixed_fees.rs @@ -76,14 +76,9 @@ fn omnipool_fixed_fees_should_override_dynamic_fees() { // With 50% fixed fee, the received amount should be approximately half of the original let expected_half = hdx_received_dynamic / 2; let tolerance = hdx_received_dynamic / 10; // 10% tolerance - let difference = if hdx_received_fixed > expected_half { - hdx_received_fixed - expected_half - } else { - expected_half - hdx_received_fixed - }; + let difference = hdx_received_fixed.abs_diff(expected_half); assert!(difference <= tolerance, - "HDX received with 50% fee ({}) should be approximately half of dynamic fee amount ({}), expected around {}, tolerance: {}", - hdx_received_fixed, hdx_received_dynamic, expected_half, tolerance); + "HDX received with 50% fee ({hdx_received_fixed}) should be approximately half of dynamic fee amount ({hdx_received_dynamic}), expected around {expected_half}, tolerance: {tolerance}"); let asset_state = hydradx_runtime::Omnipool::load_asset_state(ASSET_ID_TO_TEST).unwrap(); let current_fees = pallet_dynamic_fees::UpdateAndRetrieveFees::::get((ASSET_ID_TO_TEST, asset_state.reserve)); diff --git a/integration-tests/src/omnipool_slip_fees.rs b/integration-tests/src/omnipool_slip_fees.rs index fbe446b1a0..e50a811379 100644 --- a/integration-tests/src/omnipool_slip_fees.rs +++ b/integration-tests/src/omnipool_slip_fees.rs @@ -72,9 +72,7 @@ fn sell_with_slip_fees_gives_less_output_than_without() { assert!( output_with_slip < output_no_slip, - "Slip fee should reduce sell output: no_slip={} with_slip={}", - output_no_slip, - output_with_slip + "Slip fee should reduce sell output: no_slip={output_no_slip} with_slip={output_with_slip}" ); } @@ -147,9 +145,7 @@ fn buy_with_slip_fees_costs_more_than_without() { assert!( cost_with_slip > cost_no_slip, - "Slip fee should increase buy cost: no_slip={} with_slip={}", - cost_no_slip, - cost_with_slip + "Slip fee should increase buy cost: no_slip={cost_no_slip} with_slip={cost_with_slip}" ); } @@ -206,9 +202,7 @@ fn sell_lrna_with_slip_fees_gives_less_output_than_without() { assert!( output_with_slip < output_no_slip, - "Slip fee should reduce LRNA sell output: no_slip={} with_slip={}", - output_no_slip, - output_with_slip + "Slip fee should reduce LRNA sell output: no_slip={output_no_slip} with_slip={output_with_slip}" ); } @@ -265,9 +259,7 @@ fn buy_with_lrna_with_slip_fees_costs_more_than_without() { assert!( cost_with_slip > cost_no_slip, - "Slip fee should increase LRNA buy cost: no_slip={} with_slip={}", - cost_no_slip, - cost_with_slip + "Slip fee should increase LRNA buy cost: no_slip={cost_no_slip} with_slip={cost_with_slip}" ); } @@ -340,18 +332,14 @@ fn slip_fee_deltas_are_cleared_across_blocks() { // Slip fees are active: first trade gives less than no-slip baseline assert!( first_output < output_no_slip, - "Slip fee should reduce output: no_slip={} with_slip={}", - output_no_slip, - first_output + "Slip fee should reduce output: no_slip={output_no_slip} with_slip={first_output}" ); // After delta clearing, output should be close to first trade (no accumulated penalty). // Pool state changed slightly from the first trade, but the slip fee restarts from zero. assert!( cleared_output >= first_output * 99 / 100, - "Cleared trade should not suffer accumulated slip penalty: first={} cleared={}", - first_output, - cleared_output + "Cleared trade should not suffer accumulated slip penalty: first={first_output} cleared={cleared_output}" ); } @@ -432,9 +420,7 @@ fn sequential_trades_accumulate_slip_within_block() { // Basic: second trade gets less output in both cases assert!( slip_second < slip_first, - "Second trade should get less output due to accumulated slip: first={} second={}", - slip_first, - slip_second + "Second trade should get less output due to accumulated slip: first={slip_first} second={slip_second}" ); // The drop between first and second trade should be LARGER with slip fees than without. @@ -444,8 +430,6 @@ fn sequential_trades_accumulate_slip_within_block() { let slip_drop = slip_first - slip_second; assert!( slip_drop > no_slip_drop, - "Slip fees should cause a larger drop between sequential trades: slip_drop={} no_slip_drop={}", - slip_drop, - no_slip_drop + "Slip fees should cause a larger drop between sequential trades: slip_drop={slip_drop} no_slip_drop={no_slip_drop}" ); } diff --git a/integration-tests/src/omnipool_slip_fees_xval.rs b/integration-tests/src/omnipool_slip_fees_xval.rs index 9aae067fc3..4d968467dd 100644 --- a/integration-tests/src/omnipool_slip_fees_xval.rs +++ b/integration-tests/src/omnipool_slip_fees_xval.rs @@ -23,19 +23,10 @@ fn enable_slip_fees() { /// Assert that `actual` is within `tolerance` of `expected`. fn assert_approx(actual: u128, expected: u128, tolerance: u128, label: &str) { - let diff = if actual >= expected { - actual - expected - } else { - expected - actual - }; + let diff = actual.abs_diff(expected); assert!( diff <= tolerance, - "{}: rust={} python={} diff={} tolerance={}", - label, - actual, - expected, - diff, - tolerance + "{label}: rust={actual} python={expected} diff={diff} tolerance={tolerance}" ); } @@ -64,9 +55,9 @@ fn dump_pool_state_and_fees() { let dai_reserve = Currencies::free_balance(DAI, &Omnipool::protocol_account()); println!("=== POOL STATE ==="); - println!("HDX reserve: {}", hdx_reserve); + println!("HDX reserve: {hdx_reserve}"); println!("HDX hub_reserve: {}", hdx_state.hub_reserve); - println!("DAI reserve: {}", dai_reserve); + println!("DAI reserve: {dai_reserve}"); println!("DAI hub_reserve: {}", dai_state.hub_reserve); let (hdx_asset_fee, hdx_protocol_fee) = @@ -74,8 +65,8 @@ fn dump_pool_state_and_fees() { let (dai_asset_fee, dai_protocol_fee) = pallet_dynamic_fees::UpdateAndRetrieveFees::::get((DAI, dai_state.reserve)); - println!("HDX asset_fee={:?} protocol_fee={:?}", hdx_asset_fee, hdx_protocol_fee); - println!("DAI asset_fee={:?} protocol_fee={:?}", dai_asset_fee, dai_protocol_fee); + println!("HDX asset_fee={hdx_asset_fee:?} protocol_fee={hdx_protocol_fee:?}"); + println!("DAI asset_fee={dai_asset_fee:?} protocol_fee={dai_protocol_fee:?}"); }); } @@ -168,9 +159,7 @@ fn xval_single_buy() { // Slip fees must increase cost vs baseline assert!( hdx_spent > cost_no_slip, - "Slip fee should increase buy cost: with_slip={} no_slip={}", - hdx_spent, - cost_no_slip + "Slip fee should increase buy cost: with_slip={hdx_spent} no_slip={cost_no_slip}" ); } @@ -340,9 +329,7 @@ fn xval_multiple_buys_same_direction() { let slip_total = trade1_cost + trade2_cost; assert!( slip_total > no_slip_total, - "Slip fees should increase total buy cost: with_slip={} no_slip={}", - slip_total, - no_slip_total + "Slip fees should increase total buy cost: with_slip={slip_total} no_slip={no_slip_total}" ); } @@ -432,15 +419,11 @@ fn xval_multiple_buys_opposite_direction() { // Slip fees must increase costs vs baseline assert!( trade1_cost > no_slip_trade1, - "Slip fee should increase trade1 cost: with_slip={} no_slip={}", - trade1_cost, - no_slip_trade1 + "Slip fee should increase trade1 cost: with_slip={trade1_cost} no_slip={no_slip_trade1}" ); assert!( trade2_cost > no_slip_trade2, - "Slip fee should increase trade2 cost: with_slip={} no_slip={}", - trade2_cost, - no_slip_trade2 + "Slip fee should increase trade2 cost: with_slip={trade2_cost} no_slip={no_slip_trade2}" ); } @@ -550,9 +533,7 @@ fn xval_mixed_trades() { // Slip fees must reduce trade 1 output vs no-slip baseline assert!( t1 < t1_no_slip, - "Slip fee should reduce trade1 output: no_slip={} with_slip={}", - t1_no_slip, - t1 + "Slip fee should reduce trade1 output: no_slip={t1_no_slip} with_slip={t1}" ); }); } @@ -735,9 +716,7 @@ fn xval_sell_lrna_for_dai_with_prior_delta() { let py_fresh: u128 = 2035714285714285714285; assert!( t2_dai < py_fresh, - "Prior delta should reduce sell_lrna output: {} < {}", - t2_dai, - py_fresh + "Prior delta should reduce sell_lrna output: {t2_dai} < {py_fresh}" ); }); } @@ -785,9 +764,7 @@ fn xval_buy_dai_with_lrna_after_prior_sell() { let py_fresh_cost: u128 = 4511278; assert!( t2_lrna_cost >= py_fresh_cost, - "Prior delta should increase buy_lrna cost: {} >= {}", - t2_lrna_cost, - py_fresh_cost + "Prior delta should increase buy_lrna cost: {t2_lrna_cost} >= {py_fresh_cost}" ); }); } diff --git a/integration-tests/src/oracle.rs b/integration-tests/src/oracle.rs index 81c248b5e6..7f1d242030 100644 --- a/integration-tests/src/oracle.rs +++ b/integration-tests/src/oracle.rs @@ -65,8 +65,7 @@ fn oracle_smoothing_period_matches_configuration() { let smoothing_from_period = smoothing_from_period(configured_length); assert_eq!( configured_smoothing, smoothing_from_period, - "Smoothing period for {:?} does not match configured length of {:?}", - supported_period, configured_length, + "Smoothing period for {supported_period:?} does not match configured length of {configured_length:?}", ); } } diff --git a/integration-tests/src/polkadot_test_net.rs b/integration-tests/src/polkadot_test_net.rs index 4bccb23599..755f56be73 100644 --- a/integration-tests/src/polkadot_test_net.rs +++ b/integration-tests/src/polkadot_test_net.rs @@ -336,7 +336,7 @@ pub mod rococo { /// Helper function to generate a crypto pair from seed fn get_from_seed(seed: &str) -> ::Public { - TPublic::Pair::from_string(&format!("//{}", seed), None) + TPublic::Pair::from_string(&format!("//{seed}"), None) .expect("static values are valid; qed") .public() } @@ -396,7 +396,7 @@ pub mod rococo { AuthorityDiscoveryId, ) { ( - get_account_id_from_seed::(&format!("{}//stash", seed)), + get_account_id_from_seed::(&format!("{seed}//stash")), get_account_id_from_seed::(seed), get_from_seed::(seed), get_from_seed::(seed), @@ -463,7 +463,7 @@ type AccountPublic = ::Signer; /// Helper function to generate a crypto pair from seed fn get_from_seed(seed: &str) -> ::Public { - TPublic::Pair::from_string(&format!("//{}", seed), None) + TPublic::Pair::from_string(&format!("//{seed}"), None) .expect("static values are valid; qed") .public() } @@ -896,7 +896,7 @@ pub fn hydradx_run_to_next_block() { pub fn hydradx_run_to_block(to: BlockNumber) { let b = hydradx_runtime::System::block_number(); - assert!(b <= to, "the current block number {:?} is higher than expected.", b); + assert!(b <= to, "the current block number {b:?} is higher than expected."); if b < to { go_to_block(to); diff --git a/integration-tests/src/router.rs b/integration-tests/src/router.rs index e8d107d02c..b21febc495 100644 --- a/integration-tests/src/router.rs +++ b/integration-tests/src/router.rs @@ -5320,11 +5320,7 @@ mod route_spot_price { .unwrap() .checked_mul_int(amount_to_sell) .unwrap(); - let difference = if expected_amount_out > calculated_amount_out { - expected_amount_out - calculated_amount_out - } else { - calculated_amount_out - expected_amount_out - }; + let difference = expected_amount_out.abs_diff(calculated_amount_out); let relative_difference = FixedU128::from_rational(difference, expected_amount_out); let tolerated_difference = FixedU128::from_rational(1, 100); // The difference of the amount out calculated with spot price should be less than 1% @@ -5391,11 +5387,7 @@ mod route_spot_price { .unwrap() .checked_mul_int(amount_to_sell) .unwrap(); - let difference = if expected_amount_out > calculated_amount_out { - expected_amount_out - calculated_amount_out - } else { - calculated_amount_out - expected_amount_out - }; + let difference = expected_amount_out.abs_diff(calculated_amount_out); let relative_difference = FixedU128::from_rational(difference, expected_amount_out); let tolerated_difference = FixedU128::from_rational(1, 100); // The difference of the amount out calculated with spot price should be less than 1% diff --git a/integration-tests/src/stableswap_curve_comparison.rs b/integration-tests/src/stableswap_curve_comparison.rs index 541eba7159..570ed11840 100644 --- a/integration-tests/src/stableswap_curve_comparison.rs +++ b/integration-tests/src/stableswap_curve_comparison.rs @@ -320,21 +320,10 @@ fn assert_parity(label: &str, hydra: u128, curve: u128, max_tolerance: u128, exp let diff = hydra.abs_diff(curve); assert!( diff <= max_tolerance, - "{}: diff {} exceeds tolerance {} (hydra={}, curve={})", - label, - diff, - max_tolerance, - hydra, - curve + "{label}: diff {diff} exceeds tolerance {max_tolerance} (hydra={hydra}, curve={curve})" ); if expect_hydra_gte { - assert!( - hydra >= curve, - "{}: expected hydra ({}) >= curve ({})", - label, - hydra, - curve - ); + assert!(hydra >= curve, "{label}: expected hydra ({hydra}) >= curve ({curve})"); } } @@ -345,14 +334,7 @@ fn assert_parity_with_fee(label: &str, hydra: u128, curve: u128, max_abs_toleran let tolerance = max_abs_tolerance.max(relative_tolerance); assert!( diff <= tolerance, - "{}: diff {} exceeds tolerance {} (abs={}, rel={}) (hydra={}, curve={})", - label, - diff, - tolerance, - max_abs_tolerance, - relative_tolerance, - hydra, - curve + "{label}: diff {diff} exceeds tolerance {tolerance} (abs={max_abs_tolerance}, rel={relative_tolerance}) (hydra={hydra}, curve={curve})" ); } @@ -763,7 +745,7 @@ fn run_shares_with_fee_comparison( let hydra_shares = hydra_calc_shares(old, new, amp, supply, fee); assert_parity_with_fee( - &format!("{} fee={:?}", label, fee), + &format!("{label} fee={fee:?}"), hydra_shares, curve_shares, MAX_SHARE_TOLERANCE, @@ -960,13 +942,13 @@ fn run_withdraw_with_fee_comparison( hydra_calc_withdraw_one_asset(balances, withdraw_shares, i, total_supply, amp, fee); assert_parity_with_fee( - &format!("{} withdraw amount", label), + &format!("{label} withdraw amount"), hydra_dy, curve_dy, MAX_SWAP_TOLERANCE, ); assert_parity_with_fee( - &format!("{} withdraw fee", label), + &format!("{label} withdraw fee"), hydra_fee_amount, curve_fee_amount, MAX_SWAP_TOLERANCE, diff --git a/integration-tests/src/utils/contracts.rs b/integration-tests/src/utils/contracts.rs index a14a2d4ac6..464965ca84 100644 --- a/integration-tests/src/utils/contracts.rs +++ b/integration-tests/src/utils/contracts.rs @@ -7,10 +7,7 @@ use sp_core::U256; use std::fs; pub fn get_contract_bytecode(name: &str) -> Vec { - let path = format!( - "../scripts/test-contracts/artifacts/contracts/{}.sol/{}.json", - name, name - ); + let path = format!("../scripts/test-contracts/artifacts/contracts/{name}.sol/{name}.json"); let str = fs::read_to_string(path).unwrap(); let json: serde_json::Value = serde_json::from_str(&str).unwrap(); let code = json.get("bytecode").unwrap().as_str().unwrap(); @@ -38,7 +35,7 @@ pub fn deploy_contract_code(code: Vec, deployer: EvmAddress) -> EvmAddress { let address = match info.clone().unwrap().exit_reason { ExitReason::Succeed(_) => info.unwrap().value, - reason => panic!("{:?}", reason), + reason => panic!("{reason:?}"), }; let deployed = hydradx_runtime::Runtime::account_code_at(address); diff --git a/launch-configs/fork/apply-upgrade.mjs b/launch-configs/fork/apply-upgrade.mjs new file mode 100644 index 0000000000..1326bd956a --- /dev/null +++ b/launch-configs/fork/apply-upgrade.mjs @@ -0,0 +1,52 @@ +import { ApiPromise, WsProvider, Keyring } from '@polkadot/api'; +import { hexToU8a } from '@polkadot/util'; +import fs from 'fs'; + +const WASM_PATH = process.env.WASM || + '../../target/release/wbuild/hydradx-runtime/hydradx_runtime.compact.compressed.wasm'; +const ENDPOINT = process.env.ENDPOINT || 'ws://127.0.0.1:9999'; + +const main = async () => { + const wasm = fs.readFileSync(WASM_PATH); + const api = await ApiPromise.create({ provider: new WsProvider(ENDPOINT) }); + const keyring = new Keyring({ type: 'sr25519' }); + const alice = keyring.addFromUri('//Alice'); + + console.log(`endpoint: ${ENDPOINT}`); + console.log(`wasm: ${WASM_PATH} (${wasm.length} bytes)`); + console.log(`spec_version pre: ${(await api.rpc.state.getRuntimeVersion()).specVersion.toString()}`); + const auth = await api.query.system.authorizedUpgrade(); + console.log(`authorized upgrade: ${auth.toString()}`); + + console.log('submitting system.applyAuthorizedUpgrade ...'); + await new Promise((resolve, reject) => { + api.tx.system + .applyAuthorizedUpgrade(`0x${wasm.toString('hex')}`) + .signAndSend(alice, ({ status, dispatchError }) => { + if (dispatchError) { + reject(new Error(dispatchError.toString())); + return; + } + console.log(`status: ${status.type}`); + if (status.isInBlock || status.isFinalized) resolve(); + }) + .catch(reject); + }); + + console.log('waiting for new spec version...'); + for (let i = 0; i < 60; i++) { + await new Promise((r) => setTimeout(r, 2000)); + const v = (await api.rpc.state.getRuntimeVersion()).specVersion.toNumber(); + process.stdout.write(`spec=${v} `); + if (v !== 412) { + console.log(`\nupgraded to spec_version ${v}`); + break; + } + } + await api.disconnect(); +}; + +main().catch((e) => { + console.error(e); + process.exit(1); +}); diff --git a/launch-configs/fork/check-upgrade.mjs b/launch-configs/fork/check-upgrade.mjs new file mode 100644 index 0000000000..d1fa5c2f72 --- /dev/null +++ b/launch-configs/fork/check-upgrade.mjs @@ -0,0 +1,15 @@ +import { ApiPromise, WsProvider } from '@polkadot/api'; +const api = await ApiPromise.create({ provider: new WsProvider('ws://127.0.0.1:9999') }); + +console.log('parachainSystem storage items:'); +const sys = api.query.parachainSystem || {}; +for (const k of Object.keys(sys)) console.log(' ', k); + +const auth = await api.query.system.authorizedUpgrade(); +console.log('\nSystem.AuthorizedUpgrade:', auth.toHuman()); + +const head = await api.rpc.chain.getHeader(); +console.log('Best block:', head.number.toNumber()); +console.log('Spec version:', (await api.rpc.state.getRuntimeVersion()).specVersion.toNumber()); + +await api.disconnect(); diff --git a/launch-configs/fork/clean-fork.sh b/launch-configs/fork/clean-fork.sh new file mode 100755 index 0000000000..0b89c54fed --- /dev/null +++ b/launch-configs/fork/clean-fork.sh @@ -0,0 +1,20 @@ +#!/usr/bin/env bash +# Clear zombienet's per-run artifacts under data/ so a restart picks up the +# updated chainspec / freshly injected wasm. Keeps the source files +# (data/forked-chainspec.json, data/state.json, the *.yaml templates, +# zombie-wrapper.sh). +set -euo pipefail +cd "$(dirname "$0")" + +rm -rf \ + data/alice data/alice-1 \ + data/bob data/bob-1 \ + data/charlie data/dave \ + data/cfg data/2034 \ + data/temp data/temp-1 data/temp-collator \ + data/export-genesis-state data/zombie.json \ + data/local-2034-rococo-local*.json data/rococo-local*.json \ + data/logs data/namespace data/finished.txt \ + data/*.log + +echo "cleaned data/ — keeping forked-chainspec.json, state.json, *.yaml" diff --git a/launch-configs/fork/endow-alice.mjs b/launch-configs/fork/endow-alice.mjs new file mode 100644 index 0000000000..94cdb0627e --- /dev/null +++ b/launch-configs/fork/endow-alice.mjs @@ -0,0 +1,57 @@ +import fs from 'fs'; +import { TypeRegistry } from '@polkadot/types'; +import { xxhashAsHex, blake2AsHex } from '@polkadot/util-crypto'; +import { Keyring } from '@polkadot/keyring'; +import { hexToU8a, u8aToHex } from '@polkadot/util'; + +const CHAIN_SPEC = process.argv[2] || 'data/forked-chainspec.json'; +const ALICE_PUB = '0xd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d'; + +// (asset_id, free_amount_decimal) +const ENDOWMENTS = [ + [2, 1_000_000_000_000_000_000_000n], // DAI (18 decimals): 1000 DAI + [5, 100_000_000_000_000_000_000n], // DOT (10 decimals scaled 10^20 internal): 1000 DOT + [10, 1_000_000_000_000n], // USDT (6 decimals): 1M USDT + [20, 1_000_000_000_000_000_000_000n], // WETH (18 decimals): 1000 WETH + [22, 1_000_000_000_000n], // USDC (6 decimals): 1M USDC +]; + +const tokensAccountsKey = (account, assetId) => { + const palletPrefix = xxhashAsHex('Tokens', 128).replace('0x', ''); + const itemPrefix = xxhashAsHex('Accounts', 128).replace('0x', ''); + const accBlake = blake2AsHex(hexToU8a(account), 128).replace('0x', ''); + const accHex = account.replace('0x', ''); + const idBytes = new Uint8Array(4); + new DataView(idBytes.buffer).setUint32(0, assetId, true); + const idHex = u8aToHex(idBytes).replace('0x', ''); + const idTwox = xxhashAsHex(idBytes, 64).replace('0x', ''); + return '0x' + palletPrefix + itemPrefix + accBlake + accHex + idTwox + idHex; +}; + +const encodeAccountData = (free) => { + const reg = new TypeRegistry(); + reg.register({ + AccountData: { + free: 'u128', + reserved: 'u128', + frozen: 'u128', + }, + }); + const data = reg.createType('AccountData', { free, reserved: 0, frozen: 0 }); + return u8aToHex(data.toU8a()); +}; + +const main = () => { + const spec = JSON.parse(fs.readFileSync(CHAIN_SPEC, 'utf8')); + const top = spec.genesis.raw.top; + for (const [assetId, free] of ENDOWMENTS) { + const key = tokensAccountsKey(ALICE_PUB, assetId); + const value = encodeAccountData(free); + top[key] = value; + console.log(`endowed alice asset=${assetId} free=${free}`); + } + fs.writeFileSync(CHAIN_SPEC, JSON.stringify(spec)); + console.log(`saved ${CHAIN_SPEC}`); +}; + +main(); diff --git a/launch-configs/fork/inject-wasm.mjs b/launch-configs/fork/inject-wasm.mjs new file mode 100644 index 0000000000..2202656ad5 --- /dev/null +++ b/launch-configs/fork/inject-wasm.mjs @@ -0,0 +1,33 @@ +// Replace the runtime wasm in a forked chainspec with a freshly-built local +// wasm. Faster than running a full preauth + applyAuthorizedUpgrade dance +// when iterating on the fork — the parachain comes up at the new spec from +// block 1 (no upgrade extrinsic required). +// +// Usage: +// node inject-wasm.mjs # uses defaults below +// WASM=/path/to.wasm SPEC=data/foo.json node inject-wasm.mjs +// +// Note: zombienet caches a derived spec in data/local-2034-rococo-local.json +// after the first launch — clear data/ before restart so the new wasm is +// picked up. (See `clean-fork.sh` if you have one, or rm -rf the data +// subdirs before `npm run zombie:init`.) + +import fs from 'fs'; + +const WASM_PATH = + process.env.WASM || + '../../target/release/wbuild/hydradx-runtime/hydradx_runtime.compact.compressed.wasm'; +const SPEC_PATH = process.env.SPEC || 'data/forked-chainspec.json'; +const CODE_KEY = '0x3a636f6465'; // sp_storage::well_known_keys::CODE = b":code" + +const wasm = fs.readFileSync(WASM_PATH); +const spec = JSON.parse(fs.readFileSync(SPEC_PATH, 'utf8')); + +const oldLen = (spec.genesis.raw.top[CODE_KEY] || '').length; +spec.genesis.raw.top[CODE_KEY] = '0x' + wasm.toString('hex'); + +fs.writeFileSync(SPEC_PATH, JSON.stringify(spec)); + +console.log(`wasm: ${WASM_PATH} (${wasm.length} bytes)`); +console.log(`spec: ${SPEC_PATH}`); +console.log(`:code: ${oldLen} -> ${spec.genesis.raw.top[CODE_KEY].length} hex chars`); diff --git a/launch-configs/fork/package-lock.json b/launch-configs/fork/package-lock.json index bd92f53a98..5a86284449 100644 --- a/launch-configs/fork/package-lock.json +++ b/launch-configs/fork/package-lock.json @@ -9,16 +9,26 @@ "version": "1.0.0", "license": "ISC", "dependencies": { + "@polkadot/api": "^16.5.6", "@polkadot/types": "^15.0.2", + "@polkadot/util-crypto": "^14.0.3", + "ethers": "^6.16.0", "npm-run-all": "^4.1.5" } }, + "node_modules/@adraffy/ens-normalize": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/@adraffy/ens-normalize/-/ens-normalize-1.10.1.tgz", + "integrity": "sha512-96Z2IP3mYmF1Xg2cDm8f1gWGf/HUVedQ3FMifV4kG/PQ4yEP51xDtRAEfhVNt5f/uzpNkZHwWQuUcu6D6K+Ekw==", + "license": "MIT" + }, "node_modules/@noble/curves": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.7.0.tgz", - "integrity": "sha512-UTMhXK9SeDhFJVrHeUJ5uZlI6ajXg10O6Ddocf9S6GjbSBVZsJo88HzKwXznNfGpMTRDyJkqMjNDPYgf0qFWnw==", + "version": "1.9.7", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.9.7.tgz", + "integrity": "sha512-gbKGcRUYIjA3/zCCNaWDciTMFI0dCkvou3TL8Zmy5Nc7sJ47a0jtOeZoTaMxkuqRo9cRhjOdZJXegxYE5FN/xw==", + "license": "MIT", "dependencies": { - "@noble/hashes": "1.6.0" + "@noble/hashes": "1.8.0" }, "engines": { "node": "^14.21.3 || >=16" @@ -27,110 +37,1837 @@ "url": "https://paulmillr.com/funding/" } }, - "node_modules/@noble/curves/node_modules/@noble/hashes": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.6.0.tgz", - "integrity": "sha512-YUULf0Uk4/mAA89w+k3+yUYh6NrEvxZa5T6SY3wlMvE2chHkxFUUIDI8/XW1QSC357iA5pSnqt7XEhvFOqmDyQ==", + "node_modules/@noble/hashes": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz", + "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==", + "license": "MIT", "engines": { "node": "^14.21.3 || >=16" }, - "funding": { - "url": "https://paulmillr.com/funding/" + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@polkadot-api/json-rpc-provider": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/@polkadot-api/json-rpc-provider/-/json-rpc-provider-0.0.1.tgz", + "integrity": "sha512-/SMC/l7foRjpykLTUTacIH05H3mr9ip8b5xxfwXlVezXrNVLp3Cv0GX6uItkKd+ZjzVPf3PFrDF2B2/HLSNESA==", + "license": "MIT", + "optional": true + }, + "node_modules/@polkadot-api/json-rpc-provider-proxy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@polkadot-api/json-rpc-provider-proxy/-/json-rpc-provider-proxy-0.1.0.tgz", + "integrity": "sha512-8GSFE5+EF73MCuLQm8tjrbCqlgclcHBSRaswvXziJ0ZW7iw3UEMsKkkKvELayWyBuOPa2T5i1nj6gFOeIsqvrg==", + "license": "MIT", + "optional": true + }, + "node_modules/@polkadot-api/metadata-builders": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@polkadot-api/metadata-builders/-/metadata-builders-0.3.2.tgz", + "integrity": "sha512-TKpfoT6vTb+513KDzMBTfCb/ORdgRnsS3TDFpOhAhZ08ikvK+hjHMt5plPiAX/OWkm1Wc9I3+K6W0hX5Ab7MVg==", + "license": "MIT", + "optional": true, + "dependencies": { + "@polkadot-api/substrate-bindings": "0.6.0", + "@polkadot-api/utils": "0.1.0" + } + }, + "node_modules/@polkadot-api/observable-client": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@polkadot-api/observable-client/-/observable-client-0.3.2.tgz", + "integrity": "sha512-HGgqWgEutVyOBXoGOPp4+IAq6CNdK/3MfQJmhCJb8YaJiaK4W6aRGrdQuQSTPHfERHCARt9BrOmEvTXAT257Ug==", + "license": "MIT", + "optional": true, + "dependencies": { + "@polkadot-api/metadata-builders": "0.3.2", + "@polkadot-api/substrate-bindings": "0.6.0", + "@polkadot-api/utils": "0.1.0" + }, + "peerDependencies": { + "@polkadot-api/substrate-client": "0.1.4", + "rxjs": ">=7.8.0" + } + }, + "node_modules/@polkadot-api/substrate-bindings": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@polkadot-api/substrate-bindings/-/substrate-bindings-0.6.0.tgz", + "integrity": "sha512-lGuhE74NA1/PqdN7fKFdE5C1gNYX357j1tWzdlPXI0kQ7h3kN0zfxNOpPUN7dIrPcOFZ6C0tRRVrBylXkI6xPw==", + "license": "MIT", + "optional": true, + "dependencies": { + "@noble/hashes": "^1.3.1", + "@polkadot-api/utils": "0.1.0", + "@scure/base": "^1.1.1", + "scale-ts": "^1.6.0" + } + }, + "node_modules/@polkadot-api/substrate-client": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/@polkadot-api/substrate-client/-/substrate-client-0.1.4.tgz", + "integrity": "sha512-MljrPobN0ZWTpn++da9vOvt+Ex+NlqTlr/XT7zi9sqPtDJiQcYl+d29hFAgpaeTqbeQKZwz3WDE9xcEfLE8c5A==", + "license": "MIT", + "optional": true, + "dependencies": { + "@polkadot-api/json-rpc-provider": "0.0.1", + "@polkadot-api/utils": "0.1.0" + } + }, + "node_modules/@polkadot-api/utils": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@polkadot-api/utils/-/utils-0.1.0.tgz", + "integrity": "sha512-MXzWZeuGxKizPx2Xf/47wx9sr/uxKw39bVJUptTJdsaQn/TGq+z310mHzf1RCGvC1diHM8f593KrnDgc9oNbJA==", + "license": "MIT", + "optional": true + }, + "node_modules/@polkadot/api": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/api/-/api-16.5.6.tgz", + "integrity": "sha512-5h/X3pY8WpqGk4XTaiIUjKD6Pnk8k4bJ6EIwPKLP8/kfFWKSOenpN6ggZxANr+Qj+RgXrp4TxJVcuhXSiBh9Sg==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/api-augment": "16.5.6", + "@polkadot/api-base": "16.5.6", + "@polkadot/api-derive": "16.5.6", + "@polkadot/keyring": "^14.0.3", + "@polkadot/rpc-augment": "16.5.6", + "@polkadot/rpc-core": "16.5.6", + "@polkadot/rpc-provider": "16.5.6", + "@polkadot/types": "16.5.6", + "@polkadot/types-augment": "16.5.6", + "@polkadot/types-codec": "16.5.6", + "@polkadot/types-create": "16.5.6", + "@polkadot/types-known": "16.5.6", + "@polkadot/util": "^14.0.3", + "@polkadot/util-crypto": "^14.0.3", + "eventemitter3": "^5.0.1", + "rxjs": "^7.8.1", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-augment": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/api-augment/-/api-augment-16.5.6.tgz", + "integrity": "sha512-bunJF1c3nIuDtU6iwa+reTt9U47Y8iOC8Gw7PfANlZmLJmO/XVXnWc3JJLM+g9ESDn2raHJELeWBFVOXQrbtUw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/api-base": "16.5.6", + "@polkadot/rpc-augment": "16.5.6", + "@polkadot/types": "16.5.6", + "@polkadot/types-augment": "16.5.6", + "@polkadot/types-codec": "16.5.6", + "@polkadot/util": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-augment/node_modules/@polkadot/keyring": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/keyring/-/keyring-14.0.3.tgz", + "integrity": "sha512-ozp1dQwaHCjgX/fpTTORmHjxdUNQnyiTVJszpzUaUpvtH/IGZhSU/mSHXMqNETS/g57vQa7NatIDcWfyR9abyA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/util": "14.0.3", + "@polkadot/util-crypto": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@polkadot/util": "14.0.3", + "@polkadot/util-crypto": "14.0.3" + } + }, + "node_modules/@polkadot/api-augment/node_modules/@polkadot/types": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types/-/types-16.5.6.tgz", + "integrity": "sha512-X/sfMHJS4RkRhnsc4CQqzUy7BM/s2y71TrBFHPYAjs2q/rbZ/BwvBk70SrUiSa0+iRRn3RewbBZm+AB8CbkdKw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/keyring": "^14.0.3", + "@polkadot/types-augment": "16.5.6", + "@polkadot/types-codec": "16.5.6", + "@polkadot/types-create": "16.5.6", + "@polkadot/util": "^14.0.3", + "@polkadot/util-crypto": "^14.0.3", + "rxjs": "^7.8.1", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-augment/node_modules/@polkadot/types-augment": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-augment/-/types-augment-16.5.6.tgz", + "integrity": "sha512-QN5UrluUZCVgknUDW0gps/FRQ13Qgm24w53pCd2HgD0nmTtXDt9D4psjWwx5JkGTkUAvpzFWwN41bkxAeCiV6g==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/types": "16.5.6", + "@polkadot/types-codec": "16.5.6", + "@polkadot/util": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-augment/node_modules/@polkadot/types-codec": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-codec/-/types-codec-16.5.6.tgz", + "integrity": "sha512-3tzUv1LZOL97IlQmko4dqbfRC0cg9IQ2QAHRVoDIWsXrVovp1V3kPdP0o6e3I8T2XB9IlbabK91v+ZiIxhGMZw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/util": "^14.0.3", + "@polkadot/x-bigint": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-augment/node_modules/@polkadot/types-create": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-create/-/types-create-16.5.6.tgz", + "integrity": "sha512-g7g3hrjpz4KgqQqei9PU0JY9fsFHBmThWALZk5pWB32vyDyDcXZiyhH3agDhqfmzQiolTW2FuvcNJxgS634J1w==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/types-codec": "16.5.6", + "@polkadot/util": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-augment/node_modules/@polkadot/util": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/util/-/util-14.0.3.tgz", + "integrity": "sha512-mg1NR7ixHlNiz2zbvdcdy1OXZmca2tVA4DpewGpY/qFkW/gq9HdDrHLu7g0k90QnunDcFW4emb7NB60sGJQ0bw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-bigint": "14.0.3", + "@polkadot/x-global": "14.0.3", + "@polkadot/x-textdecoder": "14.0.3", + "@polkadot/x-textencoder": "14.0.3", + "@types/bn.js": "^5.1.6", + "bn.js": "^5.2.1", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-augment/node_modules/@polkadot/x-bigint": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-bigint/-/x-bigint-14.0.3.tgz", + "integrity": "sha512-U0al6BKgldFrEbmSObRAlzv9VDs5SMa/rbvZKvvkVec0sWTzYPWQZU1ZC/biXLYdjdKML89BeuCKmXZtCcGhUQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-augment/node_modules/@polkadot/x-global": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-global/-/x-global-14.0.3.tgz", + "integrity": "sha512-MzMEynJ7HMTy/plLmdyP8rv14RS/6s29HZodUG9aCOscBnEiEDxVEax/ztRJqxhhQuHeYdx0LYDwVbdQDTkqNw==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-augment/node_modules/@polkadot/x-textdecoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textdecoder/-/x-textdecoder-14.0.3.tgz", + "integrity": "sha512-4RJYDG00iUzQ7YAuS/yvkWRZlkjYU8PUNdJHRfqtJ+SjrSPB7LYYxFhLgw43TZUtHmIueNTsml2Ukv3xXTr2kA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-augment/node_modules/@polkadot/x-textencoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textencoder/-/x-textencoder-14.0.3.tgz", + "integrity": "sha512-9HH6o2L+r99wEfXhPb5g+Xwn7qouqD32PsMux7B0dFGR2KNqP4KwO19Hu+gdij6wsEhy7delhZwzHenrWwDfhQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-base": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/api-base/-/api-base-16.5.6.tgz", + "integrity": "sha512-eBLIv86ZZY4t5OrobVoGC+QXbErOGlBpI2rJI5OMvTNPoVvtEoI++u+wwRScjkOZaUhXyQikd+0Uv71qr3xnsA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/rpc-core": "16.5.6", + "@polkadot/types": "16.5.6", + "@polkadot/util": "^14.0.3", + "rxjs": "^7.8.1", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-base/node_modules/@polkadot/keyring": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/keyring/-/keyring-14.0.3.tgz", + "integrity": "sha512-ozp1dQwaHCjgX/fpTTORmHjxdUNQnyiTVJszpzUaUpvtH/IGZhSU/mSHXMqNETS/g57vQa7NatIDcWfyR9abyA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/util": "14.0.3", + "@polkadot/util-crypto": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@polkadot/util": "14.0.3", + "@polkadot/util-crypto": "14.0.3" + } + }, + "node_modules/@polkadot/api-base/node_modules/@polkadot/types": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types/-/types-16.5.6.tgz", + "integrity": "sha512-X/sfMHJS4RkRhnsc4CQqzUy7BM/s2y71TrBFHPYAjs2q/rbZ/BwvBk70SrUiSa0+iRRn3RewbBZm+AB8CbkdKw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/keyring": "^14.0.3", + "@polkadot/types-augment": "16.5.6", + "@polkadot/types-codec": "16.5.6", + "@polkadot/types-create": "16.5.6", + "@polkadot/util": "^14.0.3", + "@polkadot/util-crypto": "^14.0.3", + "rxjs": "^7.8.1", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-base/node_modules/@polkadot/types-augment": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-augment/-/types-augment-16.5.6.tgz", + "integrity": "sha512-QN5UrluUZCVgknUDW0gps/FRQ13Qgm24w53pCd2HgD0nmTtXDt9D4psjWwx5JkGTkUAvpzFWwN41bkxAeCiV6g==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/types": "16.5.6", + "@polkadot/types-codec": "16.5.6", + "@polkadot/util": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-base/node_modules/@polkadot/types-codec": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-codec/-/types-codec-16.5.6.tgz", + "integrity": "sha512-3tzUv1LZOL97IlQmko4dqbfRC0cg9IQ2QAHRVoDIWsXrVovp1V3kPdP0o6e3I8T2XB9IlbabK91v+ZiIxhGMZw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/util": "^14.0.3", + "@polkadot/x-bigint": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-base/node_modules/@polkadot/types-create": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-create/-/types-create-16.5.6.tgz", + "integrity": "sha512-g7g3hrjpz4KgqQqei9PU0JY9fsFHBmThWALZk5pWB32vyDyDcXZiyhH3agDhqfmzQiolTW2FuvcNJxgS634J1w==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/types-codec": "16.5.6", + "@polkadot/util": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-base/node_modules/@polkadot/util": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/util/-/util-14.0.3.tgz", + "integrity": "sha512-mg1NR7ixHlNiz2zbvdcdy1OXZmca2tVA4DpewGpY/qFkW/gq9HdDrHLu7g0k90QnunDcFW4emb7NB60sGJQ0bw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-bigint": "14.0.3", + "@polkadot/x-global": "14.0.3", + "@polkadot/x-textdecoder": "14.0.3", + "@polkadot/x-textencoder": "14.0.3", + "@types/bn.js": "^5.1.6", + "bn.js": "^5.2.1", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-base/node_modules/@polkadot/x-bigint": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-bigint/-/x-bigint-14.0.3.tgz", + "integrity": "sha512-U0al6BKgldFrEbmSObRAlzv9VDs5SMa/rbvZKvvkVec0sWTzYPWQZU1ZC/biXLYdjdKML89BeuCKmXZtCcGhUQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-base/node_modules/@polkadot/x-global": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-global/-/x-global-14.0.3.tgz", + "integrity": "sha512-MzMEynJ7HMTy/plLmdyP8rv14RS/6s29HZodUG9aCOscBnEiEDxVEax/ztRJqxhhQuHeYdx0LYDwVbdQDTkqNw==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-base/node_modules/@polkadot/x-textdecoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textdecoder/-/x-textdecoder-14.0.3.tgz", + "integrity": "sha512-4RJYDG00iUzQ7YAuS/yvkWRZlkjYU8PUNdJHRfqtJ+SjrSPB7LYYxFhLgw43TZUtHmIueNTsml2Ukv3xXTr2kA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-base/node_modules/@polkadot/x-textencoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textencoder/-/x-textencoder-14.0.3.tgz", + "integrity": "sha512-9HH6o2L+r99wEfXhPb5g+Xwn7qouqD32PsMux7B0dFGR2KNqP4KwO19Hu+gdij6wsEhy7delhZwzHenrWwDfhQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-derive": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/api-derive/-/api-derive-16.5.6.tgz", + "integrity": "sha512-cHdvPvhYFch18uPTcuOZJ8VceOfercod2fi4xCnHJAmattzlgj9qCgnOoxdmBS9GZ403ZyRHOjBuUwZy/IsUWQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/api": "16.5.6", + "@polkadot/api-augment": "16.5.6", + "@polkadot/api-base": "16.5.6", + "@polkadot/rpc-core": "16.5.6", + "@polkadot/types": "16.5.6", + "@polkadot/types-codec": "16.5.6", + "@polkadot/util": "^14.0.3", + "@polkadot/util-crypto": "^14.0.3", + "rxjs": "^7.8.1", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-derive/node_modules/@polkadot/keyring": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/keyring/-/keyring-14.0.3.tgz", + "integrity": "sha512-ozp1dQwaHCjgX/fpTTORmHjxdUNQnyiTVJszpzUaUpvtH/IGZhSU/mSHXMqNETS/g57vQa7NatIDcWfyR9abyA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/util": "14.0.3", + "@polkadot/util-crypto": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@polkadot/util": "14.0.3", + "@polkadot/util-crypto": "14.0.3" + } + }, + "node_modules/@polkadot/api-derive/node_modules/@polkadot/types": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types/-/types-16.5.6.tgz", + "integrity": "sha512-X/sfMHJS4RkRhnsc4CQqzUy7BM/s2y71TrBFHPYAjs2q/rbZ/BwvBk70SrUiSa0+iRRn3RewbBZm+AB8CbkdKw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/keyring": "^14.0.3", + "@polkadot/types-augment": "16.5.6", + "@polkadot/types-codec": "16.5.6", + "@polkadot/types-create": "16.5.6", + "@polkadot/util": "^14.0.3", + "@polkadot/util-crypto": "^14.0.3", + "rxjs": "^7.8.1", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-derive/node_modules/@polkadot/types-augment": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-augment/-/types-augment-16.5.6.tgz", + "integrity": "sha512-QN5UrluUZCVgknUDW0gps/FRQ13Qgm24w53pCd2HgD0nmTtXDt9D4psjWwx5JkGTkUAvpzFWwN41bkxAeCiV6g==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/types": "16.5.6", + "@polkadot/types-codec": "16.5.6", + "@polkadot/util": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-derive/node_modules/@polkadot/types-codec": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-codec/-/types-codec-16.5.6.tgz", + "integrity": "sha512-3tzUv1LZOL97IlQmko4dqbfRC0cg9IQ2QAHRVoDIWsXrVovp1V3kPdP0o6e3I8T2XB9IlbabK91v+ZiIxhGMZw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/util": "^14.0.3", + "@polkadot/x-bigint": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-derive/node_modules/@polkadot/types-create": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-create/-/types-create-16.5.6.tgz", + "integrity": "sha512-g7g3hrjpz4KgqQqei9PU0JY9fsFHBmThWALZk5pWB32vyDyDcXZiyhH3agDhqfmzQiolTW2FuvcNJxgS634J1w==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/types-codec": "16.5.6", + "@polkadot/util": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-derive/node_modules/@polkadot/util": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/util/-/util-14.0.3.tgz", + "integrity": "sha512-mg1NR7ixHlNiz2zbvdcdy1OXZmca2tVA4DpewGpY/qFkW/gq9HdDrHLu7g0k90QnunDcFW4emb7NB60sGJQ0bw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-bigint": "14.0.3", + "@polkadot/x-global": "14.0.3", + "@polkadot/x-textdecoder": "14.0.3", + "@polkadot/x-textencoder": "14.0.3", + "@types/bn.js": "^5.1.6", + "bn.js": "^5.2.1", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-derive/node_modules/@polkadot/x-bigint": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-bigint/-/x-bigint-14.0.3.tgz", + "integrity": "sha512-U0al6BKgldFrEbmSObRAlzv9VDs5SMa/rbvZKvvkVec0sWTzYPWQZU1ZC/biXLYdjdKML89BeuCKmXZtCcGhUQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-derive/node_modules/@polkadot/x-global": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-global/-/x-global-14.0.3.tgz", + "integrity": "sha512-MzMEynJ7HMTy/plLmdyP8rv14RS/6s29HZodUG9aCOscBnEiEDxVEax/ztRJqxhhQuHeYdx0LYDwVbdQDTkqNw==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-derive/node_modules/@polkadot/x-textdecoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textdecoder/-/x-textdecoder-14.0.3.tgz", + "integrity": "sha512-4RJYDG00iUzQ7YAuS/yvkWRZlkjYU8PUNdJHRfqtJ+SjrSPB7LYYxFhLgw43TZUtHmIueNTsml2Ukv3xXTr2kA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api-derive/node_modules/@polkadot/x-textencoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textencoder/-/x-textencoder-14.0.3.tgz", + "integrity": "sha512-9HH6o2L+r99wEfXhPb5g+Xwn7qouqD32PsMux7B0dFGR2KNqP4KwO19Hu+gdij6wsEhy7delhZwzHenrWwDfhQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api/node_modules/@polkadot/keyring": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/keyring/-/keyring-14.0.3.tgz", + "integrity": "sha512-ozp1dQwaHCjgX/fpTTORmHjxdUNQnyiTVJszpzUaUpvtH/IGZhSU/mSHXMqNETS/g57vQa7NatIDcWfyR9abyA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/util": "14.0.3", + "@polkadot/util-crypto": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@polkadot/util": "14.0.3", + "@polkadot/util-crypto": "14.0.3" + } + }, + "node_modules/@polkadot/api/node_modules/@polkadot/types": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types/-/types-16.5.6.tgz", + "integrity": "sha512-X/sfMHJS4RkRhnsc4CQqzUy7BM/s2y71TrBFHPYAjs2q/rbZ/BwvBk70SrUiSa0+iRRn3RewbBZm+AB8CbkdKw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/keyring": "^14.0.3", + "@polkadot/types-augment": "16.5.6", + "@polkadot/types-codec": "16.5.6", + "@polkadot/types-create": "16.5.6", + "@polkadot/util": "^14.0.3", + "@polkadot/util-crypto": "^14.0.3", + "rxjs": "^7.8.1", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api/node_modules/@polkadot/types-augment": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-augment/-/types-augment-16.5.6.tgz", + "integrity": "sha512-QN5UrluUZCVgknUDW0gps/FRQ13Qgm24w53pCd2HgD0nmTtXDt9D4psjWwx5JkGTkUAvpzFWwN41bkxAeCiV6g==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/types": "16.5.6", + "@polkadot/types-codec": "16.5.6", + "@polkadot/util": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api/node_modules/@polkadot/types-codec": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-codec/-/types-codec-16.5.6.tgz", + "integrity": "sha512-3tzUv1LZOL97IlQmko4dqbfRC0cg9IQ2QAHRVoDIWsXrVovp1V3kPdP0o6e3I8T2XB9IlbabK91v+ZiIxhGMZw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/util": "^14.0.3", + "@polkadot/x-bigint": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api/node_modules/@polkadot/types-create": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-create/-/types-create-16.5.6.tgz", + "integrity": "sha512-g7g3hrjpz4KgqQqei9PU0JY9fsFHBmThWALZk5pWB32vyDyDcXZiyhH3agDhqfmzQiolTW2FuvcNJxgS634J1w==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/types-codec": "16.5.6", + "@polkadot/util": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api/node_modules/@polkadot/util": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/util/-/util-14.0.3.tgz", + "integrity": "sha512-mg1NR7ixHlNiz2zbvdcdy1OXZmca2tVA4DpewGpY/qFkW/gq9HdDrHLu7g0k90QnunDcFW4emb7NB60sGJQ0bw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-bigint": "14.0.3", + "@polkadot/x-global": "14.0.3", + "@polkadot/x-textdecoder": "14.0.3", + "@polkadot/x-textencoder": "14.0.3", + "@types/bn.js": "^5.1.6", + "bn.js": "^5.2.1", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api/node_modules/@polkadot/x-bigint": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-bigint/-/x-bigint-14.0.3.tgz", + "integrity": "sha512-U0al6BKgldFrEbmSObRAlzv9VDs5SMa/rbvZKvvkVec0sWTzYPWQZU1ZC/biXLYdjdKML89BeuCKmXZtCcGhUQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api/node_modules/@polkadot/x-global": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-global/-/x-global-14.0.3.tgz", + "integrity": "sha512-MzMEynJ7HMTy/plLmdyP8rv14RS/6s29HZodUG9aCOscBnEiEDxVEax/ztRJqxhhQuHeYdx0LYDwVbdQDTkqNw==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api/node_modules/@polkadot/x-textdecoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textdecoder/-/x-textdecoder-14.0.3.tgz", + "integrity": "sha512-4RJYDG00iUzQ7YAuS/yvkWRZlkjYU8PUNdJHRfqtJ+SjrSPB7LYYxFhLgw43TZUtHmIueNTsml2Ukv3xXTr2kA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/api/node_modules/@polkadot/x-textencoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textencoder/-/x-textencoder-14.0.3.tgz", + "integrity": "sha512-9HH6o2L+r99wEfXhPb5g+Xwn7qouqD32PsMux7B0dFGR2KNqP4KwO19Hu+gdij6wsEhy7delhZwzHenrWwDfhQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/keyring": { + "version": "13.2.3", + "resolved": "https://registry.npmjs.org/@polkadot/keyring/-/keyring-13.2.3.tgz", + "integrity": "sha512-pgTo6DXNXub0wGD+MnVHYhKxf80Jl+QMOCb818ioGdXz++Uw4mTueFAwtB+N7TGo0HafhChUiNJDxFdlDkcAng==", + "dependencies": { + "@polkadot/util": "13.2.3", + "@polkadot/util-crypto": "13.2.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@polkadot/util": "13.2.3", + "@polkadot/util-crypto": "13.2.3" + } + }, + "node_modules/@polkadot/keyring/node_modules/@polkadot/networks": { + "version": "13.2.3", + "resolved": "https://registry.npmjs.org/@polkadot/networks/-/networks-13.2.3.tgz", + "integrity": "sha512-mG+zkXg/33AyPrkv2xBbAo3LBUwOwBn6qznBU/4jxiZPnVvCwMaxE7xHM22B5riItbNJ169FXv3wy0v6ZmkFbw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/util": "13.2.3", + "@substrate/ss58-registry": "^1.51.0", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/keyring/node_modules/@polkadot/util-crypto": { + "version": "13.2.3", + "resolved": "https://registry.npmjs.org/@polkadot/util-crypto/-/util-crypto-13.2.3.tgz", + "integrity": "sha512-5sbggmLbn5eiuVMyPROPlT5roHRqdKHOfSpioNbGvGIZ1qIWVoC1RfsK0NWJOVGDzy6DpQe0KYT/kgcU5Xsrzw==", + "license": "Apache-2.0", + "dependencies": { + "@noble/curves": "^1.3.0", + "@noble/hashes": "^1.3.3", + "@polkadot/networks": "13.2.3", + "@polkadot/util": "13.2.3", + "@polkadot/wasm-crypto": "^7.4.1", + "@polkadot/wasm-util": "^7.4.1", + "@polkadot/x-bigint": "13.2.3", + "@polkadot/x-randomvalues": "13.2.3", + "@scure/base": "^1.1.7", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@polkadot/util": "13.2.3" + } + }, + "node_modules/@polkadot/networks": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/networks/-/networks-14.0.3.tgz", + "integrity": "sha512-/VqTLUDn+Wm8S2L/yaGFddo3oW4vRYav0Rg4pLg/semMZLaN8PJ6h927ucn9JyWdH82QfZfyiIPORt0ZF3isyw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/util": "14.0.3", + "@substrate/ss58-registry": "^1.51.0", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/networks/node_modules/@polkadot/util": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/util/-/util-14.0.3.tgz", + "integrity": "sha512-mg1NR7ixHlNiz2zbvdcdy1OXZmca2tVA4DpewGpY/qFkW/gq9HdDrHLu7g0k90QnunDcFW4emb7NB60sGJQ0bw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-bigint": "14.0.3", + "@polkadot/x-global": "14.0.3", + "@polkadot/x-textdecoder": "14.0.3", + "@polkadot/x-textencoder": "14.0.3", + "@types/bn.js": "^5.1.6", + "bn.js": "^5.2.1", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/networks/node_modules/@polkadot/x-bigint": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-bigint/-/x-bigint-14.0.3.tgz", + "integrity": "sha512-U0al6BKgldFrEbmSObRAlzv9VDs5SMa/rbvZKvvkVec0sWTzYPWQZU1ZC/biXLYdjdKML89BeuCKmXZtCcGhUQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/networks/node_modules/@polkadot/x-global": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-global/-/x-global-14.0.3.tgz", + "integrity": "sha512-MzMEynJ7HMTy/plLmdyP8rv14RS/6s29HZodUG9aCOscBnEiEDxVEax/ztRJqxhhQuHeYdx0LYDwVbdQDTkqNw==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/networks/node_modules/@polkadot/x-textdecoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textdecoder/-/x-textdecoder-14.0.3.tgz", + "integrity": "sha512-4RJYDG00iUzQ7YAuS/yvkWRZlkjYU8PUNdJHRfqtJ+SjrSPB7LYYxFhLgw43TZUtHmIueNTsml2Ukv3xXTr2kA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/networks/node_modules/@polkadot/x-textencoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textencoder/-/x-textencoder-14.0.3.tgz", + "integrity": "sha512-9HH6o2L+r99wEfXhPb5g+Xwn7qouqD32PsMux7B0dFGR2KNqP4KwO19Hu+gdij6wsEhy7delhZwzHenrWwDfhQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-augment": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/rpc-augment/-/rpc-augment-16.5.6.tgz", + "integrity": "sha512-vlrNvl2VtU09jZV/AvH7jBb/cNUO+dWu8Xj9pId5ctSUnZHm8o8wRk9ekyieKP57OUoKMd8+VScwMKd624SxTw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/rpc-core": "16.5.6", + "@polkadot/types": "16.5.6", + "@polkadot/types-codec": "16.5.6", + "@polkadot/util": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-augment/node_modules/@polkadot/keyring": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/keyring/-/keyring-14.0.3.tgz", + "integrity": "sha512-ozp1dQwaHCjgX/fpTTORmHjxdUNQnyiTVJszpzUaUpvtH/IGZhSU/mSHXMqNETS/g57vQa7NatIDcWfyR9abyA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/util": "14.0.3", + "@polkadot/util-crypto": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@polkadot/util": "14.0.3", + "@polkadot/util-crypto": "14.0.3" + } + }, + "node_modules/@polkadot/rpc-augment/node_modules/@polkadot/types": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types/-/types-16.5.6.tgz", + "integrity": "sha512-X/sfMHJS4RkRhnsc4CQqzUy7BM/s2y71TrBFHPYAjs2q/rbZ/BwvBk70SrUiSa0+iRRn3RewbBZm+AB8CbkdKw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/keyring": "^14.0.3", + "@polkadot/types-augment": "16.5.6", + "@polkadot/types-codec": "16.5.6", + "@polkadot/types-create": "16.5.6", + "@polkadot/util": "^14.0.3", + "@polkadot/util-crypto": "^14.0.3", + "rxjs": "^7.8.1", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-augment/node_modules/@polkadot/types-augment": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-augment/-/types-augment-16.5.6.tgz", + "integrity": "sha512-QN5UrluUZCVgknUDW0gps/FRQ13Qgm24w53pCd2HgD0nmTtXDt9D4psjWwx5JkGTkUAvpzFWwN41bkxAeCiV6g==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/types": "16.5.6", + "@polkadot/types-codec": "16.5.6", + "@polkadot/util": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-augment/node_modules/@polkadot/types-codec": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-codec/-/types-codec-16.5.6.tgz", + "integrity": "sha512-3tzUv1LZOL97IlQmko4dqbfRC0cg9IQ2QAHRVoDIWsXrVovp1V3kPdP0o6e3I8T2XB9IlbabK91v+ZiIxhGMZw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/util": "^14.0.3", + "@polkadot/x-bigint": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-augment/node_modules/@polkadot/types-create": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-create/-/types-create-16.5.6.tgz", + "integrity": "sha512-g7g3hrjpz4KgqQqei9PU0JY9fsFHBmThWALZk5pWB32vyDyDcXZiyhH3agDhqfmzQiolTW2FuvcNJxgS634J1w==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/types-codec": "16.5.6", + "@polkadot/util": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-augment/node_modules/@polkadot/util": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/util/-/util-14.0.3.tgz", + "integrity": "sha512-mg1NR7ixHlNiz2zbvdcdy1OXZmca2tVA4DpewGpY/qFkW/gq9HdDrHLu7g0k90QnunDcFW4emb7NB60sGJQ0bw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-bigint": "14.0.3", + "@polkadot/x-global": "14.0.3", + "@polkadot/x-textdecoder": "14.0.3", + "@polkadot/x-textencoder": "14.0.3", + "@types/bn.js": "^5.1.6", + "bn.js": "^5.2.1", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-augment/node_modules/@polkadot/x-bigint": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-bigint/-/x-bigint-14.0.3.tgz", + "integrity": "sha512-U0al6BKgldFrEbmSObRAlzv9VDs5SMa/rbvZKvvkVec0sWTzYPWQZU1ZC/biXLYdjdKML89BeuCKmXZtCcGhUQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-augment/node_modules/@polkadot/x-global": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-global/-/x-global-14.0.3.tgz", + "integrity": "sha512-MzMEynJ7HMTy/plLmdyP8rv14RS/6s29HZodUG9aCOscBnEiEDxVEax/ztRJqxhhQuHeYdx0LYDwVbdQDTkqNw==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-augment/node_modules/@polkadot/x-textdecoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textdecoder/-/x-textdecoder-14.0.3.tgz", + "integrity": "sha512-4RJYDG00iUzQ7YAuS/yvkWRZlkjYU8PUNdJHRfqtJ+SjrSPB7LYYxFhLgw43TZUtHmIueNTsml2Ukv3xXTr2kA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-augment/node_modules/@polkadot/x-textencoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textencoder/-/x-textencoder-14.0.3.tgz", + "integrity": "sha512-9HH6o2L+r99wEfXhPb5g+Xwn7qouqD32PsMux7B0dFGR2KNqP4KwO19Hu+gdij6wsEhy7delhZwzHenrWwDfhQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-core": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/rpc-core/-/rpc-core-16.5.6.tgz", + "integrity": "sha512-l6od++WlvKH4mw5mtsIh2AhiBs3H+TtdOoUHVLCx/R9il7+gl+arltzZ8vBuffyh/O+uQ36lI8yUoD1g4gi1tA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/rpc-augment": "16.5.6", + "@polkadot/rpc-provider": "16.5.6", + "@polkadot/types": "16.5.6", + "@polkadot/util": "^14.0.3", + "rxjs": "^7.8.1", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-core/node_modules/@polkadot/keyring": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/keyring/-/keyring-14.0.3.tgz", + "integrity": "sha512-ozp1dQwaHCjgX/fpTTORmHjxdUNQnyiTVJszpzUaUpvtH/IGZhSU/mSHXMqNETS/g57vQa7NatIDcWfyR9abyA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/util": "14.0.3", + "@polkadot/util-crypto": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@polkadot/util": "14.0.3", + "@polkadot/util-crypto": "14.0.3" + } + }, + "node_modules/@polkadot/rpc-core/node_modules/@polkadot/types": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types/-/types-16.5.6.tgz", + "integrity": "sha512-X/sfMHJS4RkRhnsc4CQqzUy7BM/s2y71TrBFHPYAjs2q/rbZ/BwvBk70SrUiSa0+iRRn3RewbBZm+AB8CbkdKw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/keyring": "^14.0.3", + "@polkadot/types-augment": "16.5.6", + "@polkadot/types-codec": "16.5.6", + "@polkadot/types-create": "16.5.6", + "@polkadot/util": "^14.0.3", + "@polkadot/util-crypto": "^14.0.3", + "rxjs": "^7.8.1", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-core/node_modules/@polkadot/types-augment": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-augment/-/types-augment-16.5.6.tgz", + "integrity": "sha512-QN5UrluUZCVgknUDW0gps/FRQ13Qgm24w53pCd2HgD0nmTtXDt9D4psjWwx5JkGTkUAvpzFWwN41bkxAeCiV6g==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/types": "16.5.6", + "@polkadot/types-codec": "16.5.6", + "@polkadot/util": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-core/node_modules/@polkadot/types-codec": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-codec/-/types-codec-16.5.6.tgz", + "integrity": "sha512-3tzUv1LZOL97IlQmko4dqbfRC0cg9IQ2QAHRVoDIWsXrVovp1V3kPdP0o6e3I8T2XB9IlbabK91v+ZiIxhGMZw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/util": "^14.0.3", + "@polkadot/x-bigint": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-core/node_modules/@polkadot/types-create": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-create/-/types-create-16.5.6.tgz", + "integrity": "sha512-g7g3hrjpz4KgqQqei9PU0JY9fsFHBmThWALZk5pWB32vyDyDcXZiyhH3agDhqfmzQiolTW2FuvcNJxgS634J1w==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/types-codec": "16.5.6", + "@polkadot/util": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-core/node_modules/@polkadot/util": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/util/-/util-14.0.3.tgz", + "integrity": "sha512-mg1NR7ixHlNiz2zbvdcdy1OXZmca2tVA4DpewGpY/qFkW/gq9HdDrHLu7g0k90QnunDcFW4emb7NB60sGJQ0bw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-bigint": "14.0.3", + "@polkadot/x-global": "14.0.3", + "@polkadot/x-textdecoder": "14.0.3", + "@polkadot/x-textencoder": "14.0.3", + "@types/bn.js": "^5.1.6", + "bn.js": "^5.2.1", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-core/node_modules/@polkadot/x-bigint": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-bigint/-/x-bigint-14.0.3.tgz", + "integrity": "sha512-U0al6BKgldFrEbmSObRAlzv9VDs5SMa/rbvZKvvkVec0sWTzYPWQZU1ZC/biXLYdjdKML89BeuCKmXZtCcGhUQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-core/node_modules/@polkadot/x-global": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-global/-/x-global-14.0.3.tgz", + "integrity": "sha512-MzMEynJ7HMTy/plLmdyP8rv14RS/6s29HZodUG9aCOscBnEiEDxVEax/ztRJqxhhQuHeYdx0LYDwVbdQDTkqNw==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-core/node_modules/@polkadot/x-textdecoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textdecoder/-/x-textdecoder-14.0.3.tgz", + "integrity": "sha512-4RJYDG00iUzQ7YAuS/yvkWRZlkjYU8PUNdJHRfqtJ+SjrSPB7LYYxFhLgw43TZUtHmIueNTsml2Ukv3xXTr2kA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-core/node_modules/@polkadot/x-textencoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textencoder/-/x-textencoder-14.0.3.tgz", + "integrity": "sha512-9HH6o2L+r99wEfXhPb5g+Xwn7qouqD32PsMux7B0dFGR2KNqP4KwO19Hu+gdij6wsEhy7delhZwzHenrWwDfhQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-provider": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/rpc-provider/-/rpc-provider-16.5.6.tgz", + "integrity": "sha512-46sHIjKYr4aSzBCfbyqtCwuP8MMJ3jOp0xx9eggOGbKyP8Z0j0Cp+1nNkZUYzehcdGjjrmCxCbQp17wc6cj4zA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/keyring": "^14.0.3", + "@polkadot/types": "16.5.6", + "@polkadot/types-support": "16.5.6", + "@polkadot/util": "^14.0.3", + "@polkadot/util-crypto": "^14.0.3", + "@polkadot/x-fetch": "^14.0.3", + "@polkadot/x-global": "^14.0.3", + "@polkadot/x-ws": "^14.0.3", + "eventemitter3": "^5.0.1", + "mock-socket": "^9.3.1", + "nock": "^13.5.5", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@substrate/connect": "0.8.11" + } + }, + "node_modules/@polkadot/rpc-provider/node_modules/@polkadot/keyring": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/keyring/-/keyring-14.0.3.tgz", + "integrity": "sha512-ozp1dQwaHCjgX/fpTTORmHjxdUNQnyiTVJszpzUaUpvtH/IGZhSU/mSHXMqNETS/g57vQa7NatIDcWfyR9abyA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/util": "14.0.3", + "@polkadot/util-crypto": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@polkadot/util": "14.0.3", + "@polkadot/util-crypto": "14.0.3" + } + }, + "node_modules/@polkadot/rpc-provider/node_modules/@polkadot/types": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types/-/types-16.5.6.tgz", + "integrity": "sha512-X/sfMHJS4RkRhnsc4CQqzUy7BM/s2y71TrBFHPYAjs2q/rbZ/BwvBk70SrUiSa0+iRRn3RewbBZm+AB8CbkdKw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/keyring": "^14.0.3", + "@polkadot/types-augment": "16.5.6", + "@polkadot/types-codec": "16.5.6", + "@polkadot/types-create": "16.5.6", + "@polkadot/util": "^14.0.3", + "@polkadot/util-crypto": "^14.0.3", + "rxjs": "^7.8.1", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-provider/node_modules/@polkadot/types-augment": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-augment/-/types-augment-16.5.6.tgz", + "integrity": "sha512-QN5UrluUZCVgknUDW0gps/FRQ13Qgm24w53pCd2HgD0nmTtXDt9D4psjWwx5JkGTkUAvpzFWwN41bkxAeCiV6g==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/types": "16.5.6", + "@polkadot/types-codec": "16.5.6", + "@polkadot/util": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-provider/node_modules/@polkadot/types-codec": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-codec/-/types-codec-16.5.6.tgz", + "integrity": "sha512-3tzUv1LZOL97IlQmko4dqbfRC0cg9IQ2QAHRVoDIWsXrVovp1V3kPdP0o6e3I8T2XB9IlbabK91v+ZiIxhGMZw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/util": "^14.0.3", + "@polkadot/x-bigint": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-provider/node_modules/@polkadot/types-create": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-create/-/types-create-16.5.6.tgz", + "integrity": "sha512-g7g3hrjpz4KgqQqei9PU0JY9fsFHBmThWALZk5pWB32vyDyDcXZiyhH3agDhqfmzQiolTW2FuvcNJxgS634J1w==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/types-codec": "16.5.6", + "@polkadot/util": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-provider/node_modules/@polkadot/util": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/util/-/util-14.0.3.tgz", + "integrity": "sha512-mg1NR7ixHlNiz2zbvdcdy1OXZmca2tVA4DpewGpY/qFkW/gq9HdDrHLu7g0k90QnunDcFW4emb7NB60sGJQ0bw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-bigint": "14.0.3", + "@polkadot/x-global": "14.0.3", + "@polkadot/x-textdecoder": "14.0.3", + "@polkadot/x-textencoder": "14.0.3", + "@types/bn.js": "^5.1.6", + "bn.js": "^5.2.1", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-provider/node_modules/@polkadot/x-bigint": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-bigint/-/x-bigint-14.0.3.tgz", + "integrity": "sha512-U0al6BKgldFrEbmSObRAlzv9VDs5SMa/rbvZKvvkVec0sWTzYPWQZU1ZC/biXLYdjdKML89BeuCKmXZtCcGhUQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-provider/node_modules/@polkadot/x-global": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-global/-/x-global-14.0.3.tgz", + "integrity": "sha512-MzMEynJ7HMTy/plLmdyP8rv14RS/6s29HZodUG9aCOscBnEiEDxVEax/ztRJqxhhQuHeYdx0LYDwVbdQDTkqNw==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-provider/node_modules/@polkadot/x-textdecoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textdecoder/-/x-textdecoder-14.0.3.tgz", + "integrity": "sha512-4RJYDG00iUzQ7YAuS/yvkWRZlkjYU8PUNdJHRfqtJ+SjrSPB7LYYxFhLgw43TZUtHmIueNTsml2Ukv3xXTr2kA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/rpc-provider/node_modules/@polkadot/x-textencoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textencoder/-/x-textencoder-14.0.3.tgz", + "integrity": "sha512-9HH6o2L+r99wEfXhPb5g+Xwn7qouqD32PsMux7B0dFGR2KNqP4KwO19Hu+gdij6wsEhy7delhZwzHenrWwDfhQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/types": { + "version": "15.0.2", + "resolved": "https://registry.npmjs.org/@polkadot/types/-/types-15.0.2.tgz", + "integrity": "sha512-6gZBnuXU58hQAXWI2daED2OaQwFMxbQdkE8HVGMovMobEf0PxPfIqf+GdnVmWbe09EU9mv2gCWBcdnvHSRBlQg==", + "dependencies": { + "@polkadot/keyring": "^13.2.3", + "@polkadot/types-augment": "15.0.2", + "@polkadot/types-codec": "15.0.2", + "@polkadot/types-create": "15.0.2", + "@polkadot/util": "^13.2.3", + "@polkadot/util-crypto": "^13.2.3", + "rxjs": "^7.8.1", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/types-augment": { + "version": "15.0.2", + "resolved": "https://registry.npmjs.org/@polkadot/types-augment/-/types-augment-15.0.2.tgz", + "integrity": "sha512-UiFJVEYML30+V9GdFAHPbA3s4MVQTL1CevsZMnX0+ApvlgEHJMZnVFfYF7jL2bl9BcUYM/zoxEAhj2MpqFFfxw==", + "dependencies": { + "@polkadot/types": "15.0.2", + "@polkadot/types-codec": "15.0.2", + "@polkadot/util": "^13.2.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/types-codec": { + "version": "15.0.2", + "resolved": "https://registry.npmjs.org/@polkadot/types-codec/-/types-codec-15.0.2.tgz", + "integrity": "sha512-44Q40p1rl0t7Bl1QUamewqXNVPway9xgqByyifv6ODSGhtt+lFoarb3U4JzqRUuuK0PP57ePB0L8q81Totxeew==", + "dependencies": { + "@polkadot/util": "^13.2.3", + "@polkadot/x-bigint": "^13.2.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/types-create": { + "version": "15.0.2", + "resolved": "https://registry.npmjs.org/@polkadot/types-create/-/types-create-15.0.2.tgz", + "integrity": "sha512-YhpcqbH3oI87PkgrV6Fez9jWDqFIep0KcS1YWQcwc9gsBNnuour80t2AAK41/tqAYwOZi6tpJwIevnEhVkxFYA==", + "dependencies": { + "@polkadot/types-codec": "15.0.2", + "@polkadot/util": "^13.2.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/types-known": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-known/-/types-known-16.5.6.tgz", + "integrity": "sha512-c78NcVO3LIvi4xzxB39WewE+80I4jOYUtPBaB4AzSMespEwIr92VTeX3KzFWuutxDXLSPqeVfXhaAhBB0NssiQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/networks": "^14.0.3", + "@polkadot/types": "16.5.6", + "@polkadot/types-codec": "16.5.6", + "@polkadot/types-create": "16.5.6", + "@polkadot/util": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/types-known/node_modules/@polkadot/keyring": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/keyring/-/keyring-14.0.3.tgz", + "integrity": "sha512-ozp1dQwaHCjgX/fpTTORmHjxdUNQnyiTVJszpzUaUpvtH/IGZhSU/mSHXMqNETS/g57vQa7NatIDcWfyR9abyA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/util": "14.0.3", + "@polkadot/util-crypto": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@polkadot/util": "14.0.3", + "@polkadot/util-crypto": "14.0.3" + } + }, + "node_modules/@polkadot/types-known/node_modules/@polkadot/types": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types/-/types-16.5.6.tgz", + "integrity": "sha512-X/sfMHJS4RkRhnsc4CQqzUy7BM/s2y71TrBFHPYAjs2q/rbZ/BwvBk70SrUiSa0+iRRn3RewbBZm+AB8CbkdKw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/keyring": "^14.0.3", + "@polkadot/types-augment": "16.5.6", + "@polkadot/types-codec": "16.5.6", + "@polkadot/types-create": "16.5.6", + "@polkadot/util": "^14.0.3", + "@polkadot/util-crypto": "^14.0.3", + "rxjs": "^7.8.1", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/types-known/node_modules/@polkadot/types-augment": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-augment/-/types-augment-16.5.6.tgz", + "integrity": "sha512-QN5UrluUZCVgknUDW0gps/FRQ13Qgm24w53pCd2HgD0nmTtXDt9D4psjWwx5JkGTkUAvpzFWwN41bkxAeCiV6g==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/types": "16.5.6", + "@polkadot/types-codec": "16.5.6", + "@polkadot/util": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/types-known/node_modules/@polkadot/types-codec": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-codec/-/types-codec-16.5.6.tgz", + "integrity": "sha512-3tzUv1LZOL97IlQmko4dqbfRC0cg9IQ2QAHRVoDIWsXrVovp1V3kPdP0o6e3I8T2XB9IlbabK91v+ZiIxhGMZw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/util": "^14.0.3", + "@polkadot/x-bigint": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/types-known/node_modules/@polkadot/types-create": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-create/-/types-create-16.5.6.tgz", + "integrity": "sha512-g7g3hrjpz4KgqQqei9PU0JY9fsFHBmThWALZk5pWB32vyDyDcXZiyhH3agDhqfmzQiolTW2FuvcNJxgS634J1w==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/types-codec": "16.5.6", + "@polkadot/util": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/types-known/node_modules/@polkadot/util": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/util/-/util-14.0.3.tgz", + "integrity": "sha512-mg1NR7ixHlNiz2zbvdcdy1OXZmca2tVA4DpewGpY/qFkW/gq9HdDrHLu7g0k90QnunDcFW4emb7NB60sGJQ0bw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-bigint": "14.0.3", + "@polkadot/x-global": "14.0.3", + "@polkadot/x-textdecoder": "14.0.3", + "@polkadot/x-textencoder": "14.0.3", + "@types/bn.js": "^5.1.6", + "bn.js": "^5.2.1", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/types-known/node_modules/@polkadot/x-bigint": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-bigint/-/x-bigint-14.0.3.tgz", + "integrity": "sha512-U0al6BKgldFrEbmSObRAlzv9VDs5SMa/rbvZKvvkVec0sWTzYPWQZU1ZC/biXLYdjdKML89BeuCKmXZtCcGhUQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/types-known/node_modules/@polkadot/x-global": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-global/-/x-global-14.0.3.tgz", + "integrity": "sha512-MzMEynJ7HMTy/plLmdyP8rv14RS/6s29HZodUG9aCOscBnEiEDxVEax/ztRJqxhhQuHeYdx0LYDwVbdQDTkqNw==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/types-known/node_modules/@polkadot/x-textdecoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textdecoder/-/x-textdecoder-14.0.3.tgz", + "integrity": "sha512-4RJYDG00iUzQ7YAuS/yvkWRZlkjYU8PUNdJHRfqtJ+SjrSPB7LYYxFhLgw43TZUtHmIueNTsml2Ukv3xXTr2kA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/types-known/node_modules/@polkadot/x-textencoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textencoder/-/x-textencoder-14.0.3.tgz", + "integrity": "sha512-9HH6o2L+r99wEfXhPb5g+Xwn7qouqD32PsMux7B0dFGR2KNqP4KwO19Hu+gdij6wsEhy7delhZwzHenrWwDfhQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/types-support": { + "version": "16.5.6", + "resolved": "https://registry.npmjs.org/@polkadot/types-support/-/types-support-16.5.6.tgz", + "integrity": "sha512-Hqpa/hCvXZXUTUiJMAE55UXpzAeCVLaFlzzXQXLkne0vhmv3/JkWcBnX755a/b9+C4b3MKEz2i0tSKLsa3DldA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/util": "^14.0.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/types-support/node_modules/@polkadot/util": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/util/-/util-14.0.3.tgz", + "integrity": "sha512-mg1NR7ixHlNiz2zbvdcdy1OXZmca2tVA4DpewGpY/qFkW/gq9HdDrHLu7g0k90QnunDcFW4emb7NB60sGJQ0bw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-bigint": "14.0.3", + "@polkadot/x-global": "14.0.3", + "@polkadot/x-textdecoder": "14.0.3", + "@polkadot/x-textencoder": "14.0.3", + "@types/bn.js": "^5.1.6", + "bn.js": "^5.2.1", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/types-support/node_modules/@polkadot/x-bigint": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-bigint/-/x-bigint-14.0.3.tgz", + "integrity": "sha512-U0al6BKgldFrEbmSObRAlzv9VDs5SMa/rbvZKvvkVec0sWTzYPWQZU1ZC/biXLYdjdKML89BeuCKmXZtCcGhUQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/types-support/node_modules/@polkadot/x-global": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-global/-/x-global-14.0.3.tgz", + "integrity": "sha512-MzMEynJ7HMTy/plLmdyP8rv14RS/6s29HZodUG9aCOscBnEiEDxVEax/ztRJqxhhQuHeYdx0LYDwVbdQDTkqNw==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/types-support/node_modules/@polkadot/x-textdecoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textdecoder/-/x-textdecoder-14.0.3.tgz", + "integrity": "sha512-4RJYDG00iUzQ7YAuS/yvkWRZlkjYU8PUNdJHRfqtJ+SjrSPB7LYYxFhLgw43TZUtHmIueNTsml2Ukv3xXTr2kA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/types-support/node_modules/@polkadot/x-textencoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textencoder/-/x-textencoder-14.0.3.tgz", + "integrity": "sha512-9HH6o2L+r99wEfXhPb5g+Xwn7qouqD32PsMux7B0dFGR2KNqP4KwO19Hu+gdij6wsEhy7delhZwzHenrWwDfhQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/types/node_modules/@polkadot/networks": { + "version": "13.5.9", + "resolved": "https://registry.npmjs.org/@polkadot/networks/-/networks-13.5.9.tgz", + "integrity": "sha512-nmKUKJjiLgcih0MkdlJNMnhEYdwEml2rv/h59ll2+rAvpsVWMTLCb6Cq6q7UC44+8kiWK2UUJMkFU+3PFFxndA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/util": "13.5.9", + "@substrate/ss58-registry": "^1.51.0", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" } }, - "node_modules/@noble/hashes": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.6.1.tgz", - "integrity": "sha512-pq5D8h10hHBjyqX+cfBm0i8JUXJ0UhczFc4r74zbuT9XgewFo2E3J1cOaGtdZynILNmQ685YWGzGE1Zv6io50w==", - "engines": { - "node": "^14.21.3 || >=16" + "node_modules/@polkadot/types/node_modules/@polkadot/util": { + "version": "13.5.9", + "resolved": "https://registry.npmjs.org/@polkadot/util/-/util-13.5.9.tgz", + "integrity": "sha512-pIK3XYXo7DKeFRkEBNYhf3GbCHg6dKQisSvdzZwuyzA6m7YxQq4DFw4IE464ve4Z7WsJFt3a6C9uII36hl9EWw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-bigint": "13.5.9", + "@polkadot/x-global": "13.5.9", + "@polkadot/x-textdecoder": "13.5.9", + "@polkadot/x-textencoder": "13.5.9", + "@types/bn.js": "^5.1.6", + "bn.js": "^5.2.1", + "tslib": "^2.8.0" }, - "funding": { - "url": "https://paulmillr.com/funding/" + "engines": { + "node": ">=18" } }, - "node_modules/@polkadot/keyring": { - "version": "13.2.3", - "resolved": "https://registry.npmjs.org/@polkadot/keyring/-/keyring-13.2.3.tgz", - "integrity": "sha512-pgTo6DXNXub0wGD+MnVHYhKxf80Jl+QMOCb818ioGdXz++Uw4mTueFAwtB+N7TGo0HafhChUiNJDxFdlDkcAng==", + "node_modules/@polkadot/types/node_modules/@polkadot/util-crypto": { + "version": "13.5.9", + "resolved": "https://registry.npmjs.org/@polkadot/util-crypto/-/util-crypto-13.5.9.tgz", + "integrity": "sha512-foUesMhxkTk8CZ0/XEcfvHk6I0O+aICqqVJllhOpyp/ZVnrTBKBf59T6RpsXx2pCtBlMsLRvg/6Mw7RND1HqDg==", + "license": "Apache-2.0", "dependencies": { - "@polkadot/util": "13.2.3", - "@polkadot/util-crypto": "13.2.3", + "@noble/curves": "^1.3.0", + "@noble/hashes": "^1.3.3", + "@polkadot/networks": "13.5.9", + "@polkadot/util": "13.5.9", + "@polkadot/wasm-crypto": "^7.5.3", + "@polkadot/wasm-util": "^7.5.3", + "@polkadot/x-bigint": "13.5.9", + "@polkadot/x-randomvalues": "13.5.9", + "@scure/base": "^1.1.7", "tslib": "^2.8.0" }, "engines": { "node": ">=18" }, "peerDependencies": { - "@polkadot/util": "13.2.3", - "@polkadot/util-crypto": "13.2.3" + "@polkadot/util": "13.5.9" } }, - "node_modules/@polkadot/networks": { - "version": "13.2.3", - "resolved": "https://registry.npmjs.org/@polkadot/networks/-/networks-13.2.3.tgz", - "integrity": "sha512-mG+zkXg/33AyPrkv2xBbAo3LBUwOwBn6qznBU/4jxiZPnVvCwMaxE7xHM22B5riItbNJ169FXv3wy0v6ZmkFbw==", + "node_modules/@polkadot/types/node_modules/@polkadot/x-bigint": { + "version": "13.5.9", + "resolved": "https://registry.npmjs.org/@polkadot/x-bigint/-/x-bigint-13.5.9.tgz", + "integrity": "sha512-JVW6vw3e8fkcRyN9eoc6JIl63MRxNQCP/tuLdHWZts1tcAYao0hpWUzteqJY93AgvmQ91KPsC1Kf3iuuZCi74g==", + "license": "Apache-2.0", "dependencies": { - "@polkadot/util": "13.2.3", - "@substrate/ss58-registry": "^1.51.0", + "@polkadot/x-global": "13.5.9", "tslib": "^2.8.0" }, "engines": { "node": ">=18" } }, - "node_modules/@polkadot/types": { - "version": "15.0.2", - "resolved": "https://registry.npmjs.org/@polkadot/types/-/types-15.0.2.tgz", - "integrity": "sha512-6gZBnuXU58hQAXWI2daED2OaQwFMxbQdkE8HVGMovMobEf0PxPfIqf+GdnVmWbe09EU9mv2gCWBcdnvHSRBlQg==", + "node_modules/@polkadot/types/node_modules/@polkadot/x-global": { + "version": "13.5.9", + "resolved": "https://registry.npmjs.org/@polkadot/x-global/-/x-global-13.5.9.tgz", + "integrity": "sha512-zSRWvELHd3Q+bFkkI1h2cWIqLo1ETm+MxkNXLec3lB56iyq/MjWBxfXnAFFYFayvlEVneo7CLHcp+YTFd9aVSA==", + "license": "Apache-2.0", "dependencies": { - "@polkadot/keyring": "^13.2.3", - "@polkadot/types-augment": "15.0.2", - "@polkadot/types-codec": "15.0.2", - "@polkadot/types-create": "15.0.2", - "@polkadot/util": "^13.2.3", - "@polkadot/util-crypto": "^13.2.3", - "rxjs": "^7.8.1", "tslib": "^2.8.0" }, "engines": { "node": ">=18" } }, - "node_modules/@polkadot/types-augment": { - "version": "15.0.2", - "resolved": "https://registry.npmjs.org/@polkadot/types-augment/-/types-augment-15.0.2.tgz", - "integrity": "sha512-UiFJVEYML30+V9GdFAHPbA3s4MVQTL1CevsZMnX0+ApvlgEHJMZnVFfYF7jL2bl9BcUYM/zoxEAhj2MpqFFfxw==", + "node_modules/@polkadot/types/node_modules/@polkadot/x-randomvalues": { + "version": "13.5.9", + "resolved": "https://registry.npmjs.org/@polkadot/x-randomvalues/-/x-randomvalues-13.5.9.tgz", + "integrity": "sha512-Uuuz3oubf1JCCK97fsnVUnHvk4BGp/W91mQWJlgl5TIOUSSTIRr+lb5GurCfl4kgnQq53Zi5fJV+qR9YumbnZw==", + "license": "Apache-2.0", "dependencies": { - "@polkadot/types": "15.0.2", - "@polkadot/types-codec": "15.0.2", - "@polkadot/util": "^13.2.3", + "@polkadot/x-global": "13.5.9", "tslib": "^2.8.0" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@polkadot/util": "13.5.9", + "@polkadot/wasm-util": "*" } }, - "node_modules/@polkadot/types-codec": { - "version": "15.0.2", - "resolved": "https://registry.npmjs.org/@polkadot/types-codec/-/types-codec-15.0.2.tgz", - "integrity": "sha512-44Q40p1rl0t7Bl1QUamewqXNVPway9xgqByyifv6ODSGhtt+lFoarb3U4JzqRUuuK0PP57ePB0L8q81Totxeew==", + "node_modules/@polkadot/types/node_modules/@polkadot/x-textdecoder": { + "version": "13.5.9", + "resolved": "https://registry.npmjs.org/@polkadot/x-textdecoder/-/x-textdecoder-13.5.9.tgz", + "integrity": "sha512-W2HhVNUbC/tuFdzNMbnXAWsIHSg9SC9QWDNmFD3nXdSzlXNgL8NmuiwN2fkYvCQBtp/XSoy0gDLx0C+Fo19cfw==", + "license": "Apache-2.0", "dependencies": { - "@polkadot/util": "^13.2.3", - "@polkadot/x-bigint": "^13.2.3", + "@polkadot/x-global": "13.5.9", "tslib": "^2.8.0" }, "engines": { "node": ">=18" } }, - "node_modules/@polkadot/types-create": { - "version": "15.0.2", - "resolved": "https://registry.npmjs.org/@polkadot/types-create/-/types-create-15.0.2.tgz", - "integrity": "sha512-YhpcqbH3oI87PkgrV6Fez9jWDqFIep0KcS1YWQcwc9gsBNnuour80t2AAK41/tqAYwOZi6tpJwIevnEhVkxFYA==", + "node_modules/@polkadot/types/node_modules/@polkadot/x-textencoder": { + "version": "13.5.9", + "resolved": "https://registry.npmjs.org/@polkadot/x-textencoder/-/x-textencoder-13.5.9.tgz", + "integrity": "sha512-SG0MHnLUgn1ZxFdm0KzMdTHJ47SfqFhdIPMcGA0Mg/jt2rwrfrP3jtEIJMsHfQpHvfsNPfv55XOMmoPWuQnP/Q==", + "license": "Apache-2.0", "dependencies": { - "@polkadot/types-codec": "15.0.2", - "@polkadot/util": "^13.2.3", + "@polkadot/x-global": "13.5.9", "tslib": "^2.8.0" }, "engines": { @@ -155,34 +1892,123 @@ } }, "node_modules/@polkadot/util-crypto": { - "version": "13.2.3", - "resolved": "https://registry.npmjs.org/@polkadot/util-crypto/-/util-crypto-13.2.3.tgz", - "integrity": "sha512-5sbggmLbn5eiuVMyPROPlT5roHRqdKHOfSpioNbGvGIZ1qIWVoC1RfsK0NWJOVGDzy6DpQe0KYT/kgcU5Xsrzw==", + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/util-crypto/-/util-crypto-14.0.3.tgz", + "integrity": "sha512-V00BI6XnZLCkrAmV8uN0eSB6fy48CkxdDZT29cgSMSwHPtY6oKUNgd1ST07PGCL5x8XflwjoA7CTlhdbp1Y9gw==", + "license": "Apache-2.0", "dependencies": { "@noble/curves": "^1.3.0", "@noble/hashes": "^1.3.3", - "@polkadot/networks": "13.2.3", - "@polkadot/util": "13.2.3", - "@polkadot/wasm-crypto": "^7.4.1", - "@polkadot/wasm-util": "^7.4.1", - "@polkadot/x-bigint": "13.2.3", - "@polkadot/x-randomvalues": "13.2.3", + "@polkadot/networks": "14.0.3", + "@polkadot/util": "14.0.3", + "@polkadot/wasm-crypto": "^7.5.3", + "@polkadot/wasm-util": "^7.5.3", + "@polkadot/x-bigint": "14.0.3", + "@polkadot/x-randomvalues": "14.0.3", "@scure/base": "^1.1.7", + "@scure/sr25519": "^0.2.0", "tslib": "^2.8.0" }, "engines": { "node": ">=18" }, "peerDependencies": { - "@polkadot/util": "13.2.3" + "@polkadot/util": "14.0.3" + } + }, + "node_modules/@polkadot/util-crypto/node_modules/@polkadot/util": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/util/-/util-14.0.3.tgz", + "integrity": "sha512-mg1NR7ixHlNiz2zbvdcdy1OXZmca2tVA4DpewGpY/qFkW/gq9HdDrHLu7g0k90QnunDcFW4emb7NB60sGJQ0bw==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-bigint": "14.0.3", + "@polkadot/x-global": "14.0.3", + "@polkadot/x-textdecoder": "14.0.3", + "@polkadot/x-textencoder": "14.0.3", + "@types/bn.js": "^5.1.6", + "bn.js": "^5.2.1", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/util-crypto/node_modules/@polkadot/x-bigint": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-bigint/-/x-bigint-14.0.3.tgz", + "integrity": "sha512-U0al6BKgldFrEbmSObRAlzv9VDs5SMa/rbvZKvvkVec0sWTzYPWQZU1ZC/biXLYdjdKML89BeuCKmXZtCcGhUQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/util-crypto/node_modules/@polkadot/x-global": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-global/-/x-global-14.0.3.tgz", + "integrity": "sha512-MzMEynJ7HMTy/plLmdyP8rv14RS/6s29HZodUG9aCOscBnEiEDxVEax/ztRJqxhhQuHeYdx0LYDwVbdQDTkqNw==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/util-crypto/node_modules/@polkadot/x-randomvalues": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-randomvalues/-/x-randomvalues-14.0.3.tgz", + "integrity": "sha512-qTPcrk0nIHL2tIu5e0cLj3puQvjCK7onehnqO2fvlmWeIlvDel66fwWs06Ipsib+CwLJdmE6WgNy+8Jv74r6YA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@polkadot/util": "14.0.3", + "@polkadot/wasm-util": "*" + } + }, + "node_modules/@polkadot/util-crypto/node_modules/@polkadot/x-textdecoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textdecoder/-/x-textdecoder-14.0.3.tgz", + "integrity": "sha512-4RJYDG00iUzQ7YAuS/yvkWRZlkjYU8PUNdJHRfqtJ+SjrSPB7LYYxFhLgw43TZUtHmIueNTsml2Ukv3xXTr2kA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/util-crypto/node_modules/@polkadot/x-textencoder": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-textencoder/-/x-textencoder-14.0.3.tgz", + "integrity": "sha512-9HH6o2L+r99wEfXhPb5g+Xwn7qouqD32PsMux7B0dFGR2KNqP4KwO19Hu+gdij6wsEhy7delhZwzHenrWwDfhQ==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" } }, "node_modules/@polkadot/wasm-bridge": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-bridge/-/wasm-bridge-7.4.1.tgz", - "integrity": "sha512-tdkJaV453tezBxhF39r4oeG0A39sPKGDJmN81LYLf+Fihb7astzwju+u75BRmDrHZjZIv00un3razJEWCxze6g==", + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/@polkadot/wasm-bridge/-/wasm-bridge-7.5.4.tgz", + "integrity": "sha512-6xaJVvoZbnbgpQYXNw9OHVNWjXmtcoPcWh7hlwx3NpfiLkkjljj99YS+XGZQlq7ks2fVCg7FbfknkNb8PldDaA==", + "license": "Apache-2.0", "dependencies": { - "@polkadot/wasm-util": "7.4.1", + "@polkadot/wasm-util": "7.5.4", "tslib": "^2.7.0" }, "engines": { @@ -194,15 +2020,16 @@ } }, "node_modules/@polkadot/wasm-crypto": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto/-/wasm-crypto-7.4.1.tgz", - "integrity": "sha512-kHN/kF7hYxm1y0WeFLWeWir6oTzvcFmR4N8fJJokR+ajYbdmrafPN+6iLgQVbhZnDdxyv9jWDuRRsDnBx8tPMQ==", - "dependencies": { - "@polkadot/wasm-bridge": "7.4.1", - "@polkadot/wasm-crypto-asmjs": "7.4.1", - "@polkadot/wasm-crypto-init": "7.4.1", - "@polkadot/wasm-crypto-wasm": "7.4.1", - "@polkadot/wasm-util": "7.4.1", + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto/-/wasm-crypto-7.5.4.tgz", + "integrity": "sha512-1seyClxa7Jd7kQjfnCzTTTfYhTa/KUTDUaD3DMHBk5Q4ZUN1D1unJgX+v1aUeXSPxmzocdZETPJJRZjhVOqg9g==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/wasm-bridge": "7.5.4", + "@polkadot/wasm-crypto-asmjs": "7.5.4", + "@polkadot/wasm-crypto-init": "7.5.4", + "@polkadot/wasm-crypto-wasm": "7.5.4", + "@polkadot/wasm-util": "7.5.4", "tslib": "^2.7.0" }, "engines": { @@ -214,9 +2041,10 @@ } }, "node_modules/@polkadot/wasm-crypto-asmjs": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-asmjs/-/wasm-crypto-asmjs-7.4.1.tgz", - "integrity": "sha512-pwU8QXhUW7IberyHJIQr37IhbB6DPkCG5FhozCiNTq4vFBsFPjm9q8aZh7oX1QHQaiAZa2m2/VjIVE+FHGbvHQ==", + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-asmjs/-/wasm-crypto-asmjs-7.5.4.tgz", + "integrity": "sha512-ZYwxQHAJ8pPt6kYk9XFmyuFuSS+yirJLonvP+DYbxOrARRUHfN4nzp4zcZNXUuaFhpbDobDSFn6gYzye6BUotA==", + "license": "Apache-2.0", "dependencies": { "tslib": "^2.7.0" }, @@ -228,14 +2056,15 @@ } }, "node_modules/@polkadot/wasm-crypto-init": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-init/-/wasm-crypto-init-7.4.1.tgz", - "integrity": "sha512-AVka33+f7MvXEEIGq5U0dhaA2SaXMXnxVCQyhJTaCnJ5bRDj0Xlm3ijwDEQUiaDql7EikbkkRtmlvs95eSUWYQ==", - "dependencies": { - "@polkadot/wasm-bridge": "7.4.1", - "@polkadot/wasm-crypto-asmjs": "7.4.1", - "@polkadot/wasm-crypto-wasm": "7.4.1", - "@polkadot/wasm-util": "7.4.1", + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-init/-/wasm-crypto-init-7.5.4.tgz", + "integrity": "sha512-U6s4Eo2rHs2n1iR01vTz/sOQ7eOnRPjaCsGWhPV+ZC/20hkVzwPAhiizu/IqMEol4tO2yiSheD4D6bn0KxUJhg==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/wasm-bridge": "7.5.4", + "@polkadot/wasm-crypto-asmjs": "7.5.4", + "@polkadot/wasm-crypto-wasm": "7.5.4", + "@polkadot/wasm-util": "7.5.4", "tslib": "^2.7.0" }, "engines": { @@ -247,11 +2076,12 @@ } }, "node_modules/@polkadot/wasm-crypto-wasm": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-wasm/-/wasm-crypto-wasm-7.4.1.tgz", - "integrity": "sha512-PE1OAoupFR0ZOV2O8tr7D1FEUAwaggzxtfs3Aa5gr+yxlSOaWUKeqsOYe1KdrcjmZVV3iINEAXxgrbzCmiuONg==", + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/@polkadot/wasm-crypto-wasm/-/wasm-crypto-wasm-7.5.4.tgz", + "integrity": "sha512-PsHgLsVTu43eprwSvUGnxybtOEuHPES6AbApcs7y5ZbM2PiDMzYbAjNul098xJK/CPtrxZ0ePDFnaQBmIJyTFw==", + "license": "Apache-2.0", "dependencies": { - "@polkadot/wasm-util": "7.4.1", + "@polkadot/wasm-util": "7.5.4", "tslib": "^2.7.0" }, "engines": { @@ -262,9 +2092,10 @@ } }, "node_modules/@polkadot/wasm-util": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/@polkadot/wasm-util/-/wasm-util-7.4.1.tgz", - "integrity": "sha512-RAcxNFf3zzpkr+LX/ItAsvj+QyM56TomJ0xjUMo4wKkHjwsxkz4dWJtx5knIgQz/OthqSDMR59VNEycQeNuXzA==", + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/@polkadot/wasm-util/-/wasm-util-7.5.4.tgz", + "integrity": "sha512-hqPpfhCpRAqCIn/CYbBluhh0TXmwkJnDRjxrU9Bnqtw9nMNa97D8JuOjdd2pi0rxm+eeLQ/f1rQMp71RMM9t4w==", + "license": "Apache-2.0", "dependencies": { "tslib": "^2.7.0" }, @@ -287,6 +2118,32 @@ "node": ">=18" } }, + "node_modules/@polkadot/x-fetch": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-fetch/-/x-fetch-14.0.3.tgz", + "integrity": "sha512-695c5aPBPtYcnn2zM+u0mXgyNHINlO0qGlGcJq3/0t5NVRZv5KZhk7NNm6antOay9uUjGG40F/r+LPzDT3QamA==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "node-fetch": "^3.3.2", + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/x-fetch/node_modules/@polkadot/x-global": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-global/-/x-global-14.0.3.tgz", + "integrity": "sha512-MzMEynJ7HMTy/plLmdyP8rv14RS/6s29HZodUG9aCOscBnEiEDxVEax/ztRJqxhhQuHeYdx0LYDwVbdQDTkqNw==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/@polkadot/x-global": { "version": "13.2.3", "resolved": "https://registry.npmjs.org/@polkadot/x-global/-/x-global-13.2.3.tgz", @@ -302,6 +2159,7 @@ "version": "13.2.3", "resolved": "https://registry.npmjs.org/@polkadot/x-randomvalues/-/x-randomvalues-13.2.3.tgz", "integrity": "sha512-Zf0GTfLmVk+VzPUmcQSpXjjmFzMTjPhXoLuIoE7xIu73T+vQ+TX9j7DvorN6bIRsnZ9l1SyTZsSf/NTjNZKIZg==", + "license": "Apache-2.0", "dependencies": { "@polkadot/x-global": "13.2.3", "tslib": "^2.8.0" @@ -338,6 +2196,53 @@ "node": ">=18" } }, + "node_modules/@polkadot/x-ws": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-ws/-/x-ws-14.0.3.tgz", + "integrity": "sha512-tOPdkMye3iuXnuFtdNg5+iSu7Cz9LRL8z5psMuZpUpThMYChGsS2pDFtNvXOKU8ohhO+frY9VdJ9VBg1WL9Iug==", + "license": "Apache-2.0", + "dependencies": { + "@polkadot/x-global": "14.0.3", + "tslib": "^2.8.0", + "ws": "^8.18.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/x-ws/node_modules/@polkadot/x-global": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@polkadot/x-global/-/x-global-14.0.3.tgz", + "integrity": "sha512-MzMEynJ7HMTy/plLmdyP8rv14RS/6s29HZodUG9aCOscBnEiEDxVEax/ztRJqxhhQuHeYdx0LYDwVbdQDTkqNw==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@polkadot/x-ws/node_modules/ws": { + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.20.0.tgz", + "integrity": "sha512-sAt8BhgNbzCtgGbt2OxmpuryO63ZoDk/sqaB/znQm94T4fCEsy/yV+7CdC1kJhOU9lboAEU7R3kquuycDoibVA==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, "node_modules/@scure/base": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.2.1.tgz", @@ -346,10 +2251,71 @@ "url": "https://paulmillr.com/funding/" } }, + "node_modules/@scure/sr25519": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@scure/sr25519/-/sr25519-0.2.0.tgz", + "integrity": "sha512-uUuLP7Z126XdSizKtrCGqYyR3b3hYtJ6Fg/XFUXmc2//k2aXHDLqZwFeXxL97gg4XydPROPVnuaHGF2+xriSKg==", + "license": "MIT", + "dependencies": { + "@noble/curves": "~1.9.2", + "@noble/hashes": "~1.8.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@substrate/connect": { + "version": "0.8.11", + "resolved": "https://registry.npmjs.org/@substrate/connect/-/connect-0.8.11.tgz", + "integrity": "sha512-ofLs1PAO9AtDdPbdyTYj217Pe+lBfTLltdHDs3ds8no0BseoLeAGxpz1mHfi7zB4IxI3YyAiLjH6U8cw4pj4Nw==", + "deprecated": "versions below 1.x are no longer maintained", + "license": "GPL-3.0-only", + "optional": true, + "dependencies": { + "@substrate/connect-extension-protocol": "^2.0.0", + "@substrate/connect-known-chains": "^1.1.5", + "@substrate/light-client-extension-helpers": "^1.0.0", + "smoldot": "2.0.26" + } + }, + "node_modules/@substrate/connect-extension-protocol": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@substrate/connect-extension-protocol/-/connect-extension-protocol-2.2.2.tgz", + "integrity": "sha512-t66jwrXA0s5Goq82ZtjagLNd7DPGCNjHeehRlE/gcJmJ+G56C0W+2plqOMRicJ8XGR1/YFnUSEqUFiSNbjGrAA==", + "license": "GPL-3.0-only", + "optional": true + }, + "node_modules/@substrate/connect-known-chains": { + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/@substrate/connect-known-chains/-/connect-known-chains-1.10.3.tgz", + "integrity": "sha512-OJEZO1Pagtb6bNE3wCikc2wrmvEU5x7GxFFLqqbz1AJYYxSlrPCGu4N2og5YTExo4IcloNMQYFRkBGue0BKZ4w==", + "license": "GPL-3.0-only", + "optional": true + }, + "node_modules/@substrate/light-client-extension-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@substrate/light-client-extension-helpers/-/light-client-extension-helpers-1.0.0.tgz", + "integrity": "sha512-TdKlni1mBBZptOaeVrKnusMg/UBpWUORNDv5fdCaJklP4RJiFOzBCrzC+CyVI5kQzsXBisZ+2pXm+rIjS38kHg==", + "license": "MIT", + "optional": true, + "dependencies": { + "@polkadot-api/json-rpc-provider": "^0.0.1", + "@polkadot-api/json-rpc-provider-proxy": "^0.1.0", + "@polkadot-api/observable-client": "^0.3.0", + "@polkadot-api/substrate-client": "^0.1.2", + "@substrate/connect-extension-protocol": "^2.0.0", + "@substrate/connect-known-chains": "^1.1.5", + "rxjs": "^7.8.1" + }, + "peerDependencies": { + "smoldot": "2.x" + } + }, "node_modules/@substrate/ss58-registry": { "version": "1.51.0", "resolved": "https://registry.npmjs.org/@substrate/ss58-registry/-/ss58-registry-1.51.0.tgz", - "integrity": "sha512-TWDurLiPxndFgKjVavCniytBIw+t4ViOi7TYp9h/D0NMmkEc9klFTo+827eyEJ0lELpqO207Ey7uGxUa+BS1jQ==" + "integrity": "sha512-TWDurLiPxndFgKjVavCniytBIw+t4ViOi7TYp9h/D0NMmkEc9klFTo+827eyEJ0lELpqO207Ey7uGxUa+BS1jQ==", + "license": "Apache-2.0" }, "node_modules/@types/bn.js": { "version": "5.1.6", @@ -367,6 +2333,12 @@ "undici-types": "~6.20.0" } }, + "node_modules/aes-js": { + "version": "4.0.0-beta.5", + "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-4.0.0-beta.5.tgz", + "integrity": "sha512-G965FqalsNyrPqgEGON7nIx1e/OVENSgiEIzyC63haUMuvNnwIgIjMs52hlTCKhkBny7A2ORNlfY9Zu+jmGk1Q==", + "license": "MIT" + }, "node_modules/ansi-styles": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", @@ -536,6 +2508,15 @@ "node": ">=4.8" } }, + "node_modules/data-uri-to-buffer": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz", + "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==", + "license": "MIT", + "engines": { + "node": ">= 12" + } + }, "node_modules/data-view-buffer": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", @@ -584,6 +2565,23 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, "node_modules/define-data-property": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", @@ -761,6 +2759,108 @@ "node": ">=0.8.0" } }, + "node_modules/ethers": { + "version": "6.16.0", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-6.16.0.tgz", + "integrity": "sha512-U1wulmetNymijEhpSEQ7Ct/P/Jw9/e7R1j5XIbPRydgV2DjLVMsULDlNksq3RQnFgKoLlZf88ijYtWEXcPa07A==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/ethers-io/" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "license": "MIT", + "dependencies": { + "@adraffy/ens-normalize": "1.10.1", + "@noble/curves": "1.2.0", + "@noble/hashes": "1.3.2", + "@types/node": "22.7.5", + "aes-js": "4.0.0-beta.5", + "tslib": "2.7.0", + "ws": "8.17.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/ethers/node_modules/@noble/curves": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.2.0.tgz", + "integrity": "sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw==", + "license": "MIT", + "dependencies": { + "@noble/hashes": "1.3.2" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/ethers/node_modules/@noble/hashes": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.2.tgz", + "integrity": "sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==", + "license": "MIT", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/ethers/node_modules/@types/node": { + "version": "22.7.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", + "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, + "node_modules/ethers/node_modules/tslib": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", + "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==", + "license": "0BSD" + }, + "node_modules/ethers/node_modules/undici-types": { + "version": "6.19.8", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", + "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", + "license": "MIT" + }, + "node_modules/eventemitter3": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.4.tgz", + "integrity": "sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==", + "license": "MIT" + }, + "node_modules/fetch-blob": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz", + "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "paypal", + "url": "https://paypal.me/jimmywarting" + } + ], + "license": "MIT", + "dependencies": { + "node-domexception": "^1.0.0", + "web-streams-polyfill": "^3.0.3" + }, + "engines": { + "node": "^12.20 || >= 14.13" + } + }, "node_modules/for-each": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", @@ -769,6 +2869,18 @@ "is-callable": "^1.1.3" } }, + "node_modules/formdata-polyfill": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz", + "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==", + "license": "MIT", + "dependencies": { + "fetch-blob": "^3.1.2" + }, + "engines": { + "node": ">=12.20.0" + } + }, "node_modules/function-bind": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", @@ -1288,6 +3400,12 @@ "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "license": "ISC" + }, "node_modules/load-json-file": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", @@ -1329,11 +3447,78 @@ "node": "*" } }, + "node_modules/mock-socket": { + "version": "9.3.1", + "resolved": "https://registry.npmjs.org/mock-socket/-/mock-socket-9.3.1.tgz", + "integrity": "sha512-qxBgB7Qa2sEQgHFjj0dSigq7fX4k6Saisd5Nelwp2q8mlbAFh5dHV9JTTlF8viYJLSSWgMCZFUom8PJcMNBoJw==", + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, "node_modules/nice-try": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" }, + "node_modules/nock": { + "version": "13.5.6", + "resolved": "https://registry.npmjs.org/nock/-/nock-13.5.6.tgz", + "integrity": "sha512-o2zOYiCpzRqSzPj0Zt/dQ/DqZeYoaQ7TUonc/xUPjCGl9WeHpNbxgVvOquXYAaJzI0M9BXV3HTzG0p8IUAbBTQ==", + "license": "MIT", + "dependencies": { + "debug": "^4.1.0", + "json-stringify-safe": "^5.0.1", + "propagate": "^2.0.0" + }, + "engines": { + "node": ">= 10.13" + } + }, + "node_modules/node-domexception": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", + "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==", + "deprecated": "Use your platform's native DOMException instead", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "github", + "url": "https://paypal.me/jimmywarting" + } + ], + "license": "MIT", + "engines": { + "node": ">=10.5.0" + } + }, + "node_modules/node-fetch": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.2.tgz", + "integrity": "sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==", + "license": "MIT", + "dependencies": { + "data-uri-to-buffer": "^4.0.0", + "fetch-blob": "^3.1.4", + "formdata-polyfill": "^4.0.10" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/node-fetch" + } + }, "node_modules/normalize-package-data": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", @@ -1470,6 +3655,15 @@ "node": ">= 0.4" } }, + "node_modules/propagate": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/propagate/-/propagate-2.0.1.tgz", + "integrity": "sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==", + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, "node_modules/read-pkg": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", @@ -1582,6 +3776,13 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/scale-ts": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/scale-ts/-/scale-ts-1.6.1.tgz", + "integrity": "sha512-PBMc2AWc6wSEqJYBDPcyCLUj9/tMKnLX70jLOSndMtcUoLQucP/DM0vnQo1wJAYjTrQiq8iG9rD0q6wFzgjH7g==", + "license": "MIT", + "optional": true + }, "node_modules/semver": { "version": "5.7.2", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", @@ -1718,6 +3919,16 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/smoldot": { + "version": "2.0.26", + "resolved": "https://registry.npmjs.org/smoldot/-/smoldot-2.0.26.tgz", + "integrity": "sha512-F+qYmH4z2s2FK+CxGj8moYcd1ekSIKH8ywkdqlOz88Dat35iB1DIYL11aILN46YSGMzQW/lbJNS307zBSDN5Ig==", + "license": "GPL-3.0-or-later WITH Classpath-exception-2.0", + "optional": true, + "dependencies": { + "ws": "^8.8.1" + } + }, "node_modules/spdx-correct": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", @@ -1952,6 +4163,15 @@ "spdx-expression-parse": "^3.0.0" } }, + "node_modules/web-streams-polyfill": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz", + "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==", + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, "node_modules/which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", @@ -2042,6 +4262,27 @@ "funding": { "url": "https://github.com/sponsors/ljharb" } + }, + "node_modules/ws": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } } } -} \ No newline at end of file +} diff --git a/launch-configs/fork/package.json b/launch-configs/fork/package.json index 71140e923f..19d1f4e1b3 100644 --- a/launch-configs/fork/package.json +++ b/launch-configs/fork/package.json @@ -28,7 +28,10 @@ "author": "", "license": "ISC", "dependencies": { + "@polkadot/api": "^16.5.6", "@polkadot/types": "^15.0.2", + "@polkadot/util-crypto": "^14.0.3", + "ethers": "^6.16.0", "npm-run-all": "^4.1.5" } } diff --git a/launch-configs/fork/prepare-state-for-zombienet.js b/launch-configs/fork/prepare-state-for-zombienet.js index 8d28fd505a..f8b17fd621 100644 --- a/launch-configs/fork/prepare-state-for-zombienet.js +++ b/launch-configs/fork/prepare-state-for-zombienet.js @@ -9,7 +9,7 @@ const NEW_ID = process.env.CHAIN_ID || "local_testnet"; const NEW_RELAY_CHAIN = "rococo_local_testnet"; // Define replacement values -const AURA_AUTHORITIES_VALUE = "0x08be4f21c56d926b91f020b5071f14935cb93f001f1127c53d3eac6eed23ffea64dc4d79aad5a9d01a359995838830a80733a0bff7e4eb087bfc621ef1873fec49"; +const AURA_AUTHORITIES_VALUE = "0x08d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48"; const COUNCIL_AND_TECHNICAL_COMMITTEE_VALUE = "0x04d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d"; const SYSTEM_ACCOUNT_VALUE = "0x00000000000000000100000000000000ba31bc09df123864f700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"; diff --git a/pallets/broadcast/Cargo.toml b/pallets/broadcast/Cargo.toml index 2ee0b1366e..32467be906 100644 --- a/pallets/broadcast/Cargo.toml +++ b/pallets/broadcast/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-broadcast" -version = "1.7.0" +version = "1.8.0" authors = ["GalacticCouncil"] edition = "2021" license = "Apache 2.0" diff --git a/pallets/broadcast/src/lib.rs b/pallets/broadcast/src/lib.rs index 44f059e608..13a8bb0703 100644 --- a/pallets/broadcast/src/lib.rs +++ b/pallets/broadcast/src/lib.rs @@ -40,6 +40,36 @@ const LOG_TARGET: &str = "runtime::broadcast"; type ExecutionIdStack = BoundedVec>; +/// Hook fired after every `Swapped3` event is emitted from +/// [`Pallet::deposit_trade_event`]. Implementors translate the trade into +/// EVM-shaped logs (e.g. uniswap v2 `Swap`). Default is `()` — no-op. +pub trait OnTrade { + fn on_trade( + swapper: &AccountId, + filler: &AccountId, + filler_type: &types::Filler, + operation: &types::TradeOperation, + inputs: &[types::Asset], + outputs: &[types::Asset], + fees: &[types::Fee], + operation_stack: &[types::ExecutionType], + ); +} + +impl OnTrade for () { + fn on_trade( + _: &AccountId, + _: &AccountId, + _: &types::Filler, + _: &types::TradeOperation, + _: &[types::Asset], + _: &[types::Asset], + _: &[types::Fee], + _: &[types::ExecutionType], + ) { + } +} + #[frame_support::pallet] pub mod pallet { use super::*; @@ -53,7 +83,10 @@ pub mod pallet { pub struct Pallet(_); #[pallet::config] - pub trait Config: frame_system::Config {} + pub trait Config: frame_system::Config { + /// Hook called after every `Swapped3` emission. Default `()`. + type OnTrade: OnTrade; + } #[pallet::storage] /// Next available incremental ID @@ -126,6 +159,19 @@ impl Pallet { ) { let trade_swapper = Swapper::::get().unwrap_or(swapper); let operation_stack = Self::get_context(); + // Fire the OnTrade hook before depositing the substrate event so + // downstream consumers (e.g. evm log translator) can read the same + // data the event carries. + T::OnTrade::on_trade( + &trade_swapper, + &filler, + &filler_type, + &operation, + &inputs, + &outputs, + &fees, + &operation_stack, + ); Self::deposit_event(Event::::Swapped3 { swapper: trade_swapper, filler, diff --git a/pallets/broadcast/src/tests/mock.rs b/pallets/broadcast/src/tests/mock.rs index 95e61cfa20..fb236ded5f 100644 --- a/pallets/broadcast/src/tests/mock.rs +++ b/pallets/broadcast/src/tests/mock.rs @@ -47,7 +47,9 @@ construct_runtime!( } ); -impl crate::Config for Test {} +impl crate::Config for Test { + type OnTrade = (); +} impl frame_system::Config for Test { type BaseCallFilter = Everything; diff --git a/pallets/circuit-breaker/Cargo.toml b/pallets/circuit-breaker/Cargo.toml index ba20b01af1..49e6e21b1d 100644 --- a/pallets/circuit-breaker/Cargo.toml +++ b/pallets/circuit-breaker/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-circuit-breaker" -version = "1.6.3" +version = "1.6.4" authors = ["GalacticCouncil "] edition = "2021" license = "Apache-2.0" diff --git a/pallets/circuit-breaker/src/tests/mock.rs b/pallets/circuit-breaker/src/tests/mock.rs index 09e0949b33..d836db5d5d 100644 --- a/pallets/circuit-breaker/src/tests/mock.rs +++ b/pallets/circuit-breaker/src/tests/mock.rs @@ -255,6 +255,7 @@ impl pallet_balances::Config for Test { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } parameter_type_with_key! { @@ -318,7 +319,9 @@ impl pallet_omnipool::Config for Test { type BurnProtocolFee = BurnFee; } -impl pallet_broadcast::Config for Test {} +impl pallet_broadcast::Config for Test { + type OnTrade = (); +} pub struct CircuitBreakerHooks(PhantomData); @@ -862,6 +865,12 @@ impl MutationHooks for Hooks { type PostDeposit = crate::fuses::issuance::IssuanceIncreaseFuse; type PreTransfer = (); type PostTransfer = (); + type PreWithdraw = (); + type PostWithdraw = (); + type PostReserve = (); + type PostUnreserve = (); + type PostSlashReserved = (); + type PostRepatriate = (); type OnNewTokenAccount = (); type OnKilledTokenAccount = (); } diff --git a/pallets/claims/Cargo.toml b/pallets/claims/Cargo.toml index 887096257b..8ad2436834 100644 --- a/pallets/claims/Cargo.toml +++ b/pallets/claims/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-claims" -version = "3.6.0" +version = "3.6.1" description = "HydraDX Claims Module" authors = ["GalacticCouncil"] edition = "2021" diff --git a/pallets/claims/src/mock.rs b/pallets/claims/src/mock.rs index df5e70a90a..9efc8092da 100644 --- a/pallets/claims/src/mock.rs +++ b/pallets/claims/src/mock.rs @@ -96,6 +96,7 @@ impl pallet_balances::Config for Test { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } parameter_types! { diff --git a/pallets/collator-rewards/Cargo.toml b/pallets/collator-rewards/Cargo.toml index bc3e5e009a..ec18c23f3d 100644 --- a/pallets/collator-rewards/Cargo.toml +++ b/pallets/collator-rewards/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-collator-rewards" -version = "1.3.0" +version = "1.3.1" description = "Pallet for collator rewards" authors = ["GalacticCouncil"] edition = "2021" diff --git a/pallets/collator-rewards/src/mock.rs b/pallets/collator-rewards/src/mock.rs index 3f10ced65b..a5744e10c0 100644 --- a/pallets/collator-rewards/src/mock.rs +++ b/pallets/collator-rewards/src/mock.rs @@ -125,6 +125,7 @@ impl pallet_balances::Config for Test { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } parameter_types! { diff --git a/pallets/currencies/Cargo.toml b/pallets/currencies/Cargo.toml index 9c6b9646d7..40220d72fd 100644 --- a/pallets/currencies/Cargo.toml +++ b/pallets/currencies/Cargo.toml @@ -3,7 +3,7 @@ name = "pallet-currencies" description = "Provide `MultiCurrency` implementation using `pallet-balances` and `orml-tokens` module." repository = "https://github.com/open-web3-stack/open-runtime-module-library/tree/master/currencies" license = "Apache-2.0" -version = "4.1.1" +version = "4.1.2" authors = ["Laminar Developers "] edition = "2021" diff --git a/pallets/currencies/src/mock.rs b/pallets/currencies/src/mock.rs index f37c525159..e71e04d29a 100644 --- a/pallets/currencies/src/mock.rs +++ b/pallets/currencies/src/mock.rs @@ -68,6 +68,7 @@ impl pallet_balances::Config for Runtime { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } parameter_type_with_key! { diff --git a/pallets/dca/Cargo.toml b/pallets/dca/Cargo.toml index b65f45a524..91ee6eaae7 100644 --- a/pallets/dca/Cargo.toml +++ b/pallets/dca/Cargo.toml @@ -1,6 +1,6 @@ [package] name = 'pallet-dca' -version = "1.18.1" +version = "1.18.2" description = 'A pallet to manage DCA scheduling' authors = ['GalacticCouncil'] edition = '2021' diff --git a/pallets/dca/src/tests/mock.rs b/pallets/dca/src/tests/mock.rs index c9ad9dbafd..fb925aed17 100644 --- a/pallets/dca/src/tests/mock.rs +++ b/pallets/dca/src/tests/mock.rs @@ -340,6 +340,7 @@ impl pallet_balances::Config for Test { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } impl pallet_currencies::Config for Test { @@ -363,7 +364,9 @@ parameter_types! { } -impl pallet_broadcast::Config for Test {} +impl pallet_broadcast::Config for Test { + type OnTrade = (); +} type Pools = (OmniPool, Xyk); diff --git a/pallets/democracy/Cargo.toml b/pallets/democracy/Cargo.toml index 5ee10de73a..dd73a17714 100644 --- a/pallets/democracy/Cargo.toml +++ b/pallets/democracy/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-democracy" -version = "4.5.0" +version = "4.5.1" authors = ["Parity Technologies "] edition = "2021" license = "Apache-2.0" diff --git a/pallets/democracy/src/tests.rs b/pallets/democracy/src/tests.rs index b259a41938..7a1a77b8af 100644 --- a/pallets/democracy/src/tests.rs +++ b/pallets/democracy/src/tests.rs @@ -165,6 +165,7 @@ impl pallet_balances::Config for Test { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } parameter_types! { pub static PreimageByteDeposit: u64 = 0; diff --git a/pallets/dispenser/Cargo.toml b/pallets/dispenser/Cargo.toml index 8671ddfca2..e9aefcedd9 100644 --- a/pallets/dispenser/Cargo.toml +++ b/pallets/dispenser/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-dispenser" -version = "0.4.0" +version = "0.4.1" edition = "2021" [package.metadata.docs.rs] diff --git a/pallets/dispenser/src/tests/mod.rs b/pallets/dispenser/src/tests/mod.rs index 9a9cde652a..beedb70066 100644 --- a/pallets/dispenser/src/tests/mod.rs +++ b/pallets/dispenser/src/tests/mod.rs @@ -111,6 +111,7 @@ impl pallet_balances::Config for Test { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } parameter_types! { diff --git a/pallets/duster/Cargo.toml b/pallets/duster/Cargo.toml index 68d698344a..90be16338a 100644 --- a/pallets/duster/Cargo.toml +++ b/pallets/duster/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-duster" -version = "3.8.0" +version = "3.8.1" description = "Account duster" authors = ["GalacticCouncil"] edition = "2021" diff --git a/pallets/duster/src/mock.rs b/pallets/duster/src/mock.rs index d725366968..2677ba81e0 100644 --- a/pallets/duster/src/mock.rs +++ b/pallets/duster/src/mock.rs @@ -238,6 +238,7 @@ impl pallet_balances::Config for Test { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } pub struct ExtBuilder { diff --git a/pallets/dynamic-evm-fee/Cargo.toml b/pallets/dynamic-evm-fee/Cargo.toml index e46b8c968e..0058f84f4c 100644 --- a/pallets/dynamic-evm-fee/Cargo.toml +++ b/pallets/dynamic-evm-fee/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-dynamic-evm-fee" -version = "1.3.0" +version = "1.3.1" description = "Storing and mutating the dynamic fee for EVM transactions." authors = ["GalacticCoucil"] edition = "2021" diff --git a/pallets/dynamic-evm-fee/src/tests/mock.rs b/pallets/dynamic-evm-fee/src/tests/mock.rs index 09410deb6d..22e03d2689 100644 --- a/pallets/dynamic-evm-fee/src/tests/mock.rs +++ b/pallets/dynamic-evm-fee/src/tests/mock.rs @@ -204,6 +204,7 @@ impl pallet_balances::Config for Test { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } parameter_types! { diff --git a/pallets/evm-accounts/Cargo.toml b/pallets/evm-accounts/Cargo.toml index 9204ffbebc..40e75655bd 100644 --- a/pallets/evm-accounts/Cargo.toml +++ b/pallets/evm-accounts/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-evm-accounts" -version = "1.6.1" +version = "1.6.2" authors = ["GalacticCouncil"] edition = "2021" license = "Apache-2.0" diff --git a/pallets/evm-accounts/src/mock.rs b/pallets/evm-accounts/src/mock.rs index bbd7ae9c6c..9e6ce7d6d5 100644 --- a/pallets/evm-accounts/src/mock.rs +++ b/pallets/evm-accounts/src/mock.rs @@ -164,6 +164,7 @@ impl pallet_balances::Config for Test { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } impl pallet_currencies::Config for Test { diff --git a/pallets/hsm/Cargo.toml b/pallets/hsm/Cargo.toml index 40d41754ab..d4337f84d3 100644 --- a/pallets/hsm/Cargo.toml +++ b/pallets/hsm/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-hsm" -version = "1.7.0" +version = "1.7.1" edition = "2021" description = "Hollar stability module" authors = ["GalacticCouncil"] diff --git a/pallets/hsm/src/tests/mock.rs b/pallets/hsm/src/tests/mock.rs index bbeb7ddd24..9257a1fe73 100644 --- a/pallets/hsm/src/tests/mock.rs +++ b/pallets/hsm/src/tests/mock.rs @@ -138,7 +138,9 @@ impl frame_system::Config for Test { type ExtensionsWeightInfo = (); } -impl pallet_broadcast::Config for Test {} +impl pallet_broadcast::Config for Test { + type OnTrade = (); +} parameter_type_with_key! { pub ExistentialDeposits: |_currency_id: AssetId| -> Balance { diff --git a/pallets/lbp/Cargo.toml b/pallets/lbp/Cargo.toml index ac26e80037..42195324b3 100644 --- a/pallets/lbp/Cargo.toml +++ b/pallets/lbp/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-lbp" -version = "4.13.0" +version = "4.13.1" description = "HydraDX Liquidity Bootstrapping Pool Pallet" authors = ["GalacticCouncil"] edition = "2021" diff --git a/pallets/lbp/src/mock.rs b/pallets/lbp/src/mock.rs index 01ff7c6098..86caf8ca4a 100644 --- a/pallets/lbp/src/mock.rs +++ b/pallets/lbp/src/mock.rs @@ -171,7 +171,9 @@ impl LockedBalance for MultiLockedBalance { } } -impl pallet_broadcast::Config for Test {} +impl pallet_broadcast::Config for Test { + type OnTrade = (); +} impl Config for Test { type MultiCurrency = Currency; diff --git a/pallets/liquidation/Cargo.toml b/pallets/liquidation/Cargo.toml index be3216b6cf..c1a0924d4b 100644 --- a/pallets/liquidation/Cargo.toml +++ b/pallets/liquidation/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-liquidation" -version = "2.4.2" +version = "2.4.3" description = "A pallet for money market liquidations" authors = ["GalacticCouncil"] edition = "2021" diff --git a/pallets/liquidation/src/tests/mock.rs b/pallets/liquidation/src/tests/mock.rs index 430ba9e57b..4fcebaec85 100644 --- a/pallets/liquidation/src/tests/mock.rs +++ b/pallets/liquidation/src/tests/mock.rs @@ -279,7 +279,9 @@ impl pallet_route_executor::Config for Test { type WeightInfo = (); } -impl pallet_broadcast::Config for Test {} +impl pallet_broadcast::Config for Test { + type OnTrade = (); +} parameter_types! { pub const BlockHashCount: u64 = 250; @@ -370,6 +372,7 @@ impl pallet_balances::Config for Test { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } impl pallet_currencies::Config for Test { diff --git a/pallets/liquidity-mining/Cargo.toml b/pallets/liquidity-mining/Cargo.toml index 6bc0c52aa4..1bace5bf2e 100644 --- a/pallets/liquidity-mining/Cargo.toml +++ b/pallets/liquidity-mining/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-liquidity-mining" -version = "4.7.0" +version = "4.7.1" description = "Liquidity mining" authors = ["GalacticCouncil"] edition = "2021" diff --git a/pallets/liquidity-mining/src/tests/mock.rs b/pallets/liquidity-mining/src/tests/mock.rs index 2b3db59265..45f7e22317 100644 --- a/pallets/liquidity-mining/src/tests/mock.rs +++ b/pallets/liquidity-mining/src/tests/mock.rs @@ -284,6 +284,7 @@ impl pallet_balances::Config for Test { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } impl orml_tokens::Config for Test { diff --git a/pallets/nft/Cargo.toml b/pallets/nft/Cargo.toml index 8f7db0d3dc..b45fa2be00 100644 --- a/pallets/nft/Cargo.toml +++ b/pallets/nft/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-nft" -version = "7.3.0" +version = "7.3.1" description = "A generic NFT pallet for managing non-fungible tokens" authors = ["GalacticCoucil"] edition = "2021" diff --git a/pallets/nft/src/mock.rs b/pallets/nft/src/mock.rs index 6407ebe95e..2b5d22b120 100644 --- a/pallets/nft/src/mock.rs +++ b/pallets/nft/src/mock.rs @@ -175,6 +175,7 @@ impl pallet_balances::Config for Test { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } pub const ALICE: AccountId = AccountId::new([1u8; 32]); diff --git a/pallets/omnipool-liquidity-mining/Cargo.toml b/pallets/omnipool-liquidity-mining/Cargo.toml index 77e0d67a7c..0a1ceef617 100644 --- a/pallets/omnipool-liquidity-mining/Cargo.toml +++ b/pallets/omnipool-liquidity-mining/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-omnipool-liquidity-mining" -version = "3.4.0" +version = "3.4.1" authors = ['GalacticCouncil'] edition = "2021" license = "Apache-2.0" diff --git a/pallets/omnipool-liquidity-mining/src/tests/mock.rs b/pallets/omnipool-liquidity-mining/src/tests/mock.rs index 8c6f695d40..d6a835e713 100644 --- a/pallets/omnipool-liquidity-mining/src/tests/mock.rs +++ b/pallets/omnipool-liquidity-mining/src/tests/mock.rs @@ -266,6 +266,7 @@ impl pallet_balances::Config for Test { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } parameter_type_with_key! { @@ -350,7 +351,9 @@ impl pallet_omnipool::Config for Test { type BurnProtocolFee = BurnFee; } -impl pallet_broadcast::Config for Test {} +impl pallet_broadcast::Config for Test { + type OnTrade = (); +} pub struct ExtBuilder { endowed_accounts: Vec<(AccountId, AssetId, Balance)>, diff --git a/pallets/omnipool/Cargo.toml b/pallets/omnipool/Cargo.toml index 063996a7ec..71854fc5f5 100644 --- a/pallets/omnipool/Cargo.toml +++ b/pallets/omnipool/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-omnipool" -version = "7.3.1" +version = "7.3.2" authors = ['GalacticCouncil'] edition = "2021" license = "Apache-2.0" diff --git a/pallets/omnipool/src/tests/mock.rs b/pallets/omnipool/src/tests/mock.rs index d448f7166b..f123fa966a 100644 --- a/pallets/omnipool/src/tests/mock.rs +++ b/pallets/omnipool/src/tests/mock.rs @@ -141,6 +141,7 @@ impl pallet_balances::Config for Test { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } parameter_type_with_key! { @@ -186,7 +187,9 @@ parameter_types! { pub MinWithdrawFee: Permill = WITHDRAWAL_FEE.with(|v| *v.borrow()); } -impl pallet_broadcast::Config for Test {} +impl pallet_broadcast::Config for Test { + type OnTrade = (); +} impl Config for Test { type AssetId = AssetId; diff --git a/pallets/otc-settlements/Cargo.toml b/pallets/otc-settlements/Cargo.toml index 5d7c2027fa..91b5d89d1a 100644 --- a/pallets/otc-settlements/Cargo.toml +++ b/pallets/otc-settlements/Cargo.toml @@ -1,6 +1,6 @@ [package] name = 'pallet-otc-settlements' -version = '1.4.1' +version = "1.4.2" description = 'A pallet with offchain worker closing OTC arbs' authors = ['GalacticCouncil'] edition = '2021' diff --git a/pallets/otc-settlements/src/mock.rs b/pallets/otc-settlements/src/mock.rs index 1302bc910f..e3a5cb44e5 100644 --- a/pallets/otc-settlements/src/mock.rs +++ b/pallets/otc-settlements/src/mock.rs @@ -234,6 +234,7 @@ impl pallet_balances::Config for Test { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } impl pallet_currencies::Config for Test { @@ -248,7 +249,9 @@ impl pallet_currencies::Config for Test { type WeightInfo = (); } -impl pallet_broadcast::Config for Test {} +impl pallet_broadcast::Config for Test { + type OnTrade = (); +} parameter_types! { pub const MinTradingLimit: Balance = 1_000; diff --git a/pallets/otc/Cargo.toml b/pallets/otc/Cargo.toml index e6feaafcf4..25f59ae8a8 100644 --- a/pallets/otc/Cargo.toml +++ b/pallets/otc/Cargo.toml @@ -1,6 +1,6 @@ [package] name = 'pallet-otc' -version = '2.4.0' +version = "2.4.1" description = 'A pallet for trustless over-the-counter trading' authors = ['GalacticCouncil'] edition = '2021' diff --git a/pallets/otc/src/tests/mock.rs b/pallets/otc/src/tests/mock.rs index 06821e7f31..3fd044f712 100644 --- a/pallets/otc/src/tests/mock.rs +++ b/pallets/otc/src/tests/mock.rs @@ -144,7 +144,9 @@ impl orml_tokens::Config for Test { type CurrencyHooks = (); } -impl pallet_broadcast::Config for Test {} +impl pallet_broadcast::Config for Test { + type OnTrade = (); +} pub struct DummyRegistry(sp_std::marker::PhantomData); diff --git a/pallets/route-executor/Cargo.toml b/pallets/route-executor/Cargo.toml index d923a5d9a7..1c1734eb32 100644 --- a/pallets/route-executor/Cargo.toml +++ b/pallets/route-executor/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-route-executor" -version = "2.12.0" +version = "2.12.1" description = "A pallet to execute a route containing a sequence of trades" authors = ["GalacticCouncil"] edition = "2021" diff --git a/pallets/route-executor/src/tests/mock.rs b/pallets/route-executor/src/tests/mock.rs index 2684a7ac01..66c27a87f6 100644 --- a/pallets/route-executor/src/tests/mock.rs +++ b/pallets/route-executor/src/tests/mock.rs @@ -135,6 +135,7 @@ impl pallet_balances::Config for Test { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } impl pallet_currencies::Config for Test { @@ -149,7 +150,9 @@ impl pallet_currencies::Config for Test { type WeightInfo = (); } -impl pallet_broadcast::Config for Test {} +impl pallet_broadcast::Config for Test { + type OnTrade = (); +} type Pools = (XYK, StableSwap, OmniPool, LBP); diff --git a/pallets/signet/Cargo.toml b/pallets/signet/Cargo.toml index 5f8b8e30b8..779d45ac35 100644 --- a/pallets/signet/Cargo.toml +++ b/pallets/signet/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-signet" -version = "1.3.0" +version = "1.3.1" authors = ["Signet"] edition = "2021" license = "Apache-2.0" diff --git a/pallets/signet/src/tests/mod.rs b/pallets/signet/src/tests/mod.rs index 86962cb014..59263131bf 100644 --- a/pallets/signet/src/tests/mod.rs +++ b/pallets/signet/src/tests/mod.rs @@ -123,6 +123,7 @@ impl pallet_balances::Config for Test { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } parameter_types! { diff --git a/pallets/stableswap/Cargo.toml b/pallets/stableswap/Cargo.toml index 8de5ff2942..b35b62ce55 100644 --- a/pallets/stableswap/Cargo.toml +++ b/pallets/stableswap/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-stableswap" -version = "7.3.0" +version = "7.3.1" description = "AMM for correlated assets" authors = ["GalacticCouncil"] edition = "2021" diff --git a/pallets/stableswap/src/tests/mock.rs b/pallets/stableswap/src/tests/mock.rs index 2f92858a99..0077ae70f6 100644 --- a/pallets/stableswap/src/tests/mock.rs +++ b/pallets/stableswap/src/tests/mock.rs @@ -197,7 +197,9 @@ impl DustRemovalAccountWhitelist for Whitelist { } } -impl pallet_broadcast::Config for Test {} +impl pallet_broadcast::Config for Test { + type OnTrade = (); +} impl Config for Test { type AssetId = AssetId; @@ -706,6 +708,12 @@ impl MutationHooks for Hooks { type PostDeposit = pallet_circuit_breaker::fuses::issuance::IssuanceIncreaseFuse; type PreTransfer = (); type PostTransfer = (); + type PreWithdraw = (); + type PostWithdraw = (); + type PostReserve = (); + type PostUnreserve = (); + type PostSlashReserved = (); + type PostRepatriate = (); type OnNewTokenAccount = (); type OnKilledTokenAccount = (); } diff --git a/pallets/staking/Cargo.toml b/pallets/staking/Cargo.toml index 6d7bbe8df6..8133cfd1b2 100644 --- a/pallets/staking/Cargo.toml +++ b/pallets/staking/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-staking" -version = "4.3.1" +version = "4.3.2" authors = ['GalacticCouncil'] edition = "2021" license = "Apache-2.0" diff --git a/pallets/staking/src/tests/mock.rs b/pallets/staking/src/tests/mock.rs index e1ee86d8c7..df722feaea 100644 --- a/pallets/staking/src/tests/mock.rs +++ b/pallets/staking/src/tests/mock.rs @@ -135,6 +135,7 @@ impl pallet_balances::Config for Test { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } parameter_types! { diff --git a/pallets/synthetic-logs/Cargo.toml b/pallets/synthetic-logs/Cargo.toml new file mode 100644 index 0000000000..77143bc963 --- /dev/null +++ b/pallets/synthetic-logs/Cargo.toml @@ -0,0 +1,57 @@ +[package] +name = "pallet-synthetic-logs" +version = "0.2.0" +authors = ["GalacticCouncil"] +edition = "2021" +license = "Apache 2.0" +homepage = 'https://github.com/galacticcouncil/hydration-node' +repository = 'https://github.com/galacticcouncil/hydration-node' +description = "Buffer of synthetic ethereum logs from substrate-side events; flushes them as synthetic pallet_ethereum transactions on on_finalize so eth-rpc surfaces them." +readme = "README.md" + +[dependencies] +codec = { workspace = true } +scale-info = { workspace = true } +serde = { workspace = true, optional = true } +log = { workspace = true } + +# Substrate +sp-std = { workspace = true } +sp-io = { workspace = true } +sp-core = { workspace = true } +sp-runtime = { workspace = true } +frame-support = { workspace = true } +frame-system = { workspace = true } + +# Ethereum / Frontier +ethereum = { workspace = true } +ethereum-types = { workspace = true } +pallet-ethereum = { workspace = true } + +# HydraDX +pallet-broadcast = { workspace = true } +primitives = { workspace = true } + +[features] +default = ["std"] +std = [ + "codec/std", + "scale-info/std", + "serde", + "log/std", + "sp-std/std", + "sp-io/std", + "sp-core/std", + "sp-runtime/std", + "frame-support/std", + "frame-system/std", + "ethereum/std", + "ethereum-types/std", + "pallet-ethereum/std", + "pallet-broadcast/std", + "primitives/std", +] +try-runtime = [ + "frame-support/try-runtime", + "frame-system/try-runtime", +] diff --git a/pallets/synthetic-logs/src/lib.rs b/pallets/synthetic-logs/src/lib.rs new file mode 100644 index 0000000000..ede2237011 --- /dev/null +++ b/pallets/synthetic-logs/src/lib.rs @@ -0,0 +1,307 @@ +// This file is part of hydration-node. +// +// Copyright (C) 2020-2026 Intergalactic, Limited (GIB). +// SPDX-License-Identifier: Apache-2.0 + +//! buffers ethereum-shaped logs from substrate hooks; on_finalize flushes them +//! as synthetic `pallet_ethereum::Transaction` records so eth json-rpc surfaces +//! them. one synth tx per bucket: per-extrinsic, or per hook-phase + broadcast +//! origin (so each dca schedule etc. gets its own tx). +//! +//! must be declared before `pallet_ethereum` in `construct_runtime!`. + +#![cfg_attr(not(feature = "std"), no_std)] + +#[cfg(test)] +mod tests; + +use codec::{Decode, Encode, MaxEncodedLen}; +use ethereum::EIP1559Transaction; +use ethereum_types::{Bloom, BloomInput, H160, H256, U256}; +use frame_support::pallet_prelude::*; +use frame_system::pallet_prelude::*; +use pallet_broadcast::types::ExecutionType; +use pallet_ethereum::{Receipt, Transaction, TransactionAction, TransactionStatus}; +use scale_info::TypeInfo; +use sp_std::prelude::*; + +pub use pallet::*; + +/// `from`/`to` for synthetic txs. logs inside carry their own emitter address. +pub const SENTINEL_ADDRESS: H160 = H160([ + 0xde, 0xad, 0xbe, 0xef, 0xde, 0xad, 0xbe, 0xef, 0xde, 0xad, 0xbe, 0xef, 0xde, 0xad, 0xbe, 0xef, 0xde, 0xad, 0xbe, + 0xef, +]); + +/// Constant fake `r`/`s`. Inside ECDSA range so the envelope decodes; never recovered. +pub const SYNTH_SIG_RS: H256 = H256([ + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, +]); + +pub const MAX_PENDING_LOGS: u32 = 4096; + +#[derive(Clone, Copy, Encode, Decode, MaxEncodedLen, TypeInfo, RuntimeDebug, PartialEq, Eq)] +pub enum HookPhase { + Initialization, + Finalization, +} + +#[derive(Clone, Copy, Encode, Decode, MaxEncodedLen, TypeInfo, RuntimeDebug, PartialEq, Eq)] +pub enum Bucket { + Extrinsic(u32), + Hook { + phase: HookPhase, + origin: Option, + }, +} + +#[frame_support::pallet] +pub mod pallet { + use super::*; + + #[pallet::pallet] + pub struct Pallet(_); + + #[pallet::config] + pub trait Config: frame_system::Config + pallet_ethereum::Config + pallet_broadcast::Config { + type ChainId: Get; + } + + #[pallet::storage] + #[pallet::whitelist_storage] + #[pallet::unbounded] + pub type Pending = StorageValue<_, Vec<(Bucket, H160, ethereum::Log)>, ValueQuery>; + + #[pallet::hooks] + impl Hooks> for Pallet { + fn on_finalize(_n: BlockNumberFor) { + let drained = Pending::::take(); + if drained.is_empty() { + return; + } + Self::flush(drained); + } + } +} + +impl Pallet { + pub fn push(emitter: H160, log: ethereum::Log) { + let bucket = Self::current_bucket(); + Pending::::mutate(|v| { + if v.len() as u32 >= MAX_PENDING_LOGS { + let n = v.len(); + log::warn!( + target: "runtime::synthetic-logs", + "pending buffer full ({n} entries); dropping log for {emitter:?}", + ); + return; + } + v.push((bucket, emitter, log)); + }); + } + + // reads `frame_system::ExecutionPhase` directly so on_idle (where substrate + // has already set Phase=Finalization) buckets as Finalization too. + fn current_bucket() -> Bucket { + use frame_system::Phase; + let phase_key = frame_support::storage::storage_prefix(b"System", b"ExecutionPhase"); + let phase: Phase = frame_support::storage::unhashed::get::(&phase_key).unwrap_or_default(); + match phase { + Phase::ApplyExtrinsic(i) => Bucket::Extrinsic(i), + Phase::Finalization => Bucket::Hook { + phase: HookPhase::Finalization, + origin: pallet_broadcast::Pallet::::get_context().first().copied(), + }, + Phase::Initialization => Bucket::Hook { + phase: HookPhase::Initialization, + origin: pallet_broadcast::Pallet::::get_context().first().copied(), + }, + } + } + + fn flush(entries: Vec<(Bucket, H160, ethereum::Log)>) { + let mut groups: Vec<(Bucket, Vec)> = Vec::new(); + for (bucket, _emitter, log) in entries { + match groups.iter_mut().find(|(b, _)| *b == bucket) { + Some((_, logs)) => logs.push(log), + None => groups.push((bucket, vec![log])), + } + } + + groups.sort_by(|a, b| bucket_sort_key(&a.0).cmp(&bucket_sort_key(&b.0))); + + for (idx, (bucket, logs)) in groups.into_iter().enumerate() { + Self::insert_synth_tx(bucket, logs, idx as u32); + } + } + + fn insert_synth_tx(bucket: Bucket, logs: Vec, group_index: u32) { + let chain_id = ::ChainId::get(); + let nonce = bucket_nonce(bucket); + + let signature = ethereum::eip2930::TransactionSignature::new(false, SYNTH_SIG_RS, SYNTH_SIG_RS) + .expect("synthetic signature constants are within valid ECDSA range; qed"); + // `value = group_index` so two synth txs sharing the same bucket-nonce in + // one block produce distinct envelope hashes (frontier indexes by hash). + let transaction = Transaction::EIP1559(EIP1559Transaction { + chain_id, + nonce: U256::from(nonce), + max_priority_fee_per_gas: U256::zero(), + max_fee_per_gas: U256::zero(), + gas_limit: U256::zero(), + action: TransactionAction::Call(SENTINEL_ADDRESS), + value: U256::from(group_index), + input: Vec::new(), + access_list: Vec::new(), + signature, + }); + + // canonical envelope hash so frontier's tx-index resolves it. + let transaction_hash = transaction.hash(); + + let mut bloom: Bloom = Bloom::default(); + Self::compute_logs_bloom(&logs, &mut bloom); + + let tx_index = pallet_ethereum::Pending::::count(); + + let status = TransactionStatus { + transaction_hash, + transaction_index: tx_index, + from: SENTINEL_ADDRESS, + to: Some(SENTINEL_ADDRESS), + contract_address: None, + logs: logs.clone(), + logs_bloom: bloom, + }; + + let receipt = Receipt::EIP1559(ethereum::EIP658ReceiptData { + status_code: 1, + used_gas: U256::zero(), + logs_bloom: bloom, + logs, + }); + + pallet_ethereum::Pending::::insert(tx_index, (transaction, status, receipt)); + } + + fn compute_logs_bloom(logs: &[ethereum::Log], bloom: &mut Bloom) { + for log in logs { + bloom.accrue(BloomInput::Raw(&log.address[..])); + for topic in log.topics.iter() { + bloom.accrue(BloomInput::Raw(&topic[..])); + } + } + } +} + +/// keccak256("Transfer(address,address,uint256)") +pub const TRANSFER_TOPIC: H256 = H256([ + 0xdd, 0xf2, 0x52, 0xad, 0x1b, 0xe2, 0xc8, 0x9b, 0x69, 0xc2, 0xb0, 0x68, 0xfc, 0x37, 0x8d, 0xaa, 0x95, 0x2b, 0xa7, + 0xf1, 0x63, 0xc4, 0xa1, 0x16, 0x28, 0xf5, 0x5a, 0x4d, 0xf5, 0x23, 0xb3, 0xef, +]); + +/// keccak256("Swap(address,uint256,uint256,uint256,uint256,address)") (uniswap v2) +pub const SWAP_TOPIC: H256 = H256([ + 0xd7, 0x8a, 0xd9, 0x5f, 0xa4, 0x6c, 0x99, 0x4b, 0x65, 0x51, 0xd0, 0xda, 0x85, 0xfc, 0x27, 0x5f, 0xe6, 0x13, 0xce, + 0x37, 0x65, 0x7f, 0xb8, 0xd5, 0xe3, 0xd1, 0x30, 0x84, 0x01, 0x59, 0xd8, 0x22, +]); + +/// keccak256("Approval(address,address,uint256)") +pub const APPROVAL_TOPIC: H256 = H256([ + 0x8c, 0x5b, 0xe1, 0xe5, 0xeb, 0xec, 0x7d, 0x5b, 0xd1, 0x4f, 0x71, 0x42, 0x7d, 0x1e, 0x84, 0xf3, 0xdd, 0x03, 0x14, + 0xc0, 0xf7, 0xb2, 0x29, 0x1e, 0x5b, 0x20, 0x0a, 0xc8, 0xc7, 0xc3, 0xb9, 0x25, +]); + +pub fn h160_to_h256(addr: H160) -> H256 { + let mut bytes = [0u8; 32]; + bytes[12..].copy_from_slice(&addr.0); + H256(bytes) +} + +/// per-owner sentinel for reserved balance: `Transfer(owner, reserved_address_of(owner))` +/// on reserve, inverse on unreserve. derivation: xor first byte with `0xEE` +/// (reversible). collision with asset-prefix range `0x000…01` is `2^-128`. +pub fn reserved_address_of(owner: H160) -> H160 { + let mut bytes = owner.0; + bytes[0] ^= 0xEE; + H160(bytes) +} + +pub fn encode_u256_be(value: U256) -> [u8; 32] { + value.to_big_endian() +} + +/// 4 × u256 = 128 bytes — abi shape of uniswap v2 `Swap` non-indexed fields. +pub fn encode_uint256_quad(a: U256, b: U256, c: U256, d: U256) -> Vec { + let mut data = Vec::with_capacity(128); + data.extend_from_slice(&encode_u256_be(a)); + data.extend_from_slice(&encode_u256_be(b)); + data.extend_from_slice(&encode_u256_be(c)); + data.extend_from_slice(&encode_u256_be(d)); + data +} + +// 0=init hooks, 1=extrinsics (by index), 2=finalize hooks — preserves wall-clock order. +fn bucket_sort_key(bucket: &Bucket) -> (u8, u64) { + match bucket { + Bucket::Hook { + phase: HookPhase::Initialization, + origin: None, + } => (0, 0), + Bucket::Hook { + phase: HookPhase::Initialization, + origin: Some(_), + } => (0, bucket_nonce(*bucket)), + Bucket::Extrinsic(i) => (1, *i as u64), + Bucket::Hook { + phase: HookPhase::Finalization, + origin: None, + } => (2, 0), + Bucket::Hook { + phase: HookPhase::Finalization, + origin: Some(_), + } => (2, bucket_nonce(*bucket)), + } +} + +/// `nonce` field on the synth tx. lets indexers reverse a synth tx to its origin. +/// +/// layout: +/// Extrinsic(i) → i (low) +/// Hook { Init, None } → MAX - 3 +/// Hook { Init, Some(t) } → 0xDCA0… | tag(t) +/// Hook { Final, None } → MAX - 2 +/// Hook { Final, Some(t) } → 0xF1A1… | tag(t) +pub fn bucket_nonce(bucket: Bucket) -> u64 { + match bucket { + Bucket::Extrinsic(i) => i as u64, + Bucket::Hook { + phase: HookPhase::Initialization, + origin: None, + } => u64::MAX - 3, + Bucket::Hook { + phase: HookPhase::Initialization, + origin: Some(o), + } => 0xDCA0_0000_0000_0000u64 | origin_tag(&o), + Bucket::Hook { + phase: HookPhase::Finalization, + origin: None, + } => u64::MAX - 2, + Bucket::Hook { + phase: HookPhase::Finalization, + origin: Some(o), + } => 0xF1A1_0000_0000_0000u64 | origin_tag(&o), + } +} + +fn origin_tag(origin: &ExecutionType) -> u64 { + match origin { + ExecutionType::Router(id) => 0x0100_0000_0000 | (*id as u64), + ExecutionType::DCA(schedule_id, _) => 0x0200_0000_0000 | (*schedule_id as u64), + ExecutionType::Batch(id) => 0x0300_0000_0000 | (*id as u64), + ExecutionType::Omnipool(id) => 0x0400_0000_0000 | (*id as u64), + ExecutionType::XcmExchange(id) => 0x0500_0000_0000 | (*id as u64), + ExecutionType::Xcm(_, id) => 0x0600_0000_0000 | (*id as u64), + } +} diff --git a/pallets/synthetic-logs/src/tests.rs b/pallets/synthetic-logs/src/tests.rs new file mode 100644 index 0000000000..bae6141acd --- /dev/null +++ b/pallets/synthetic-logs/src/tests.rs @@ -0,0 +1,245 @@ +// This file is part of hydration-node. +// +// Copyright (C) 2020-2026 Intergalactic, Limited (GIB). +// SPDX-License-Identifier: Apache-2.0 + +//! Unit tests for the pure helpers exported by `pallet-synthetic-logs`. +//! +//! End-to-end tests (push -> on_finalize -> pallet_ethereum::Pending writes) +//! live in `integration-tests` because they require a runtime that wires +//! pallet_ethereum, pallet_evm, frame_system, and pallet_broadcast together. + +use super::*; +use ethereum_types::{H160, U256}; + +#[test] +fn h160_to_h256_left_pads_with_zeros() { + let addr = H160([ + 0x12, 0x34, 0x56, 0x78, 0x9a, 0xbc, 0xde, 0xf0, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88, 0x99, 0xaa, + 0xbb, 0xcc, + ]); + let topic = h160_to_h256(addr); + // First 12 bytes zero, last 20 bytes are the address. + assert_eq!(&topic.0[..12], &[0u8; 12]); + assert_eq!(&topic.0[12..], &addr.0[..]); +} + +#[test] +fn encode_u256_be_round_trip() { + let value = U256::from(123_456_789u64); + let encoded = encode_u256_be(value); + assert_eq!(encoded.len(), 32); + assert_eq!(U256::from_big_endian(&encoded), value); +} + +#[test] +fn encode_uint256_quad_is_128_bytes() { + let data = encode_uint256_quad(U256::from(1u64), U256::from(2u64), U256::from(3u64), U256::from(4u64)); + assert_eq!(data.len(), 128); + assert_eq!(U256::from_big_endian(&data[0..32]), U256::from(1u64)); + assert_eq!(U256::from_big_endian(&data[32..64]), U256::from(2u64)); + assert_eq!(U256::from_big_endian(&data[64..96]), U256::from(3u64)); + assert_eq!(U256::from_big_endian(&data[96..128]), U256::from(4u64)); +} + +#[test] +fn synth_signature_is_in_valid_range() { + // Confirms our constant signature passes the ECDSA range check; the + // flusher panics with a message if this regresses. + let sig = ethereum::eip2930::TransactionSignature::new(false, SYNTH_SIG_RS, SYNTH_SIG_RS); + assert!(sig.is_some(), "synthetic signature constants must satisfy ECDSA range"); +} + +#[test] +fn known_topic_constants_match_expected_keccak256() { + // ERC-20 Transfer(address,address,uint256) + let expected_transfer = [ + 0xdd, 0xf2, 0x52, 0xad, 0x1b, 0xe2, 0xc8, 0x9b, 0x69, 0xc2, 0xb0, 0x68, 0xfc, 0x37, 0x8d, 0xaa, 0x95, 0x2b, + 0xa7, 0xf1, 0x63, 0xc4, 0xa1, 0x16, 0x28, 0xf5, 0x5a, 0x4d, 0xf5, 0x23, 0xb3, 0xef, + ]; + assert_eq!(TRANSFER_TOPIC.0, expected_transfer); + + // Uniswap V2 Swap(address,uint256,uint256,uint256,uint256,address) + let expected_swap = [ + 0xd7, 0x8a, 0xd9, 0x5f, 0xa4, 0x6c, 0x99, 0x4b, 0x65, 0x51, 0xd0, 0xda, 0x85, 0xfc, 0x27, 0x5f, 0xe6, 0x13, + 0xce, 0x37, 0x65, 0x7f, 0xb8, 0xd5, 0xe3, 0xd1, 0x30, 0x84, 0x01, 0x59, 0xd8, 0x22, + ]; + assert_eq!(SWAP_TOPIC.0, expected_swap); + + // ERC-20 Approval(address,address,uint256) + let expected_approval = [ + 0x8c, 0x5b, 0xe1, 0xe5, 0xeb, 0xec, 0x7d, 0x5b, 0xd1, 0x4f, 0x71, 0x42, 0x7d, 0x1e, 0x84, 0xf3, 0xdd, 0x03, + 0x14, 0xc0, 0xf7, 0xb2, 0x29, 0x1e, 0x5b, 0x20, 0x0a, 0xc8, 0xc7, 0xc3, 0xb9, 0x25, + ]; + assert_eq!(APPROVAL_TOPIC.0, expected_approval); +} + +#[test] +fn reserved_address_of_is_reversible() { + let owner = H160([ + 0x12, 0x34, 0x56, 0x78, 0x9a, 0xbc, 0xde, 0xf0, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88, 0x99, 0xaa, + 0xbb, 0xcc, + ]); + let sentinel = reserved_address_of(owner); + assert_ne!(owner, sentinel); + assert_eq!(reserved_address_of(sentinel), owner, "xor with 0xEE is its own inverse"); +} + +// Two synth txs sharing the same bucket-nonce class but different group_index +// must have distinct canonical envelope hashes — frontier indexes by hash, so +// a collision would mean one synth tx shadows the other in eth_getTransactionByHash. +#[test] +fn synth_envelope_hash_is_unique_per_group_index() { + use crate::Transaction; + use ethereum::{eip2930::TransactionSignature, EIP1559Transaction, TransactionAction}; + + let signature = TransactionSignature::new(false, SYNTH_SIG_RS, SYNTH_SIG_RS).expect("synth sig in range"); + let mk = |group_index: u32, nonce: u64| { + Transaction::EIP1559(EIP1559Transaction { + chain_id: 222_222, + nonce: U256::from(nonce), + max_priority_fee_per_gas: U256::zero(), + max_fee_per_gas: U256::zero(), + gas_limit: U256::zero(), + action: TransactionAction::Call(SENTINEL_ADDRESS), + value: U256::from(group_index), + input: Vec::new(), + access_list: Vec::new(), + signature: signature.clone(), + }) + }; + + // same nonce (same bucket-nonce class) but different group_index → distinct hashes + let nonce = u64::MAX - 3; // Hook { Init, None } + assert_ne!(mk(0, nonce).hash(), mk(1, nonce).hash()); + assert_ne!(mk(0, nonce).hash(), mk(2, nonce).hash()); + assert_ne!(mk(1, nonce).hash(), mk(2, nonce).hash()); + + // determinism: same (group_index, nonce) → same hash + assert_eq!(mk(7, 42).hash(), mk(7, 42).hash()); +} + +// Bucket grouping must (a) collapse repeated (bucket, log) entries from the +// same bucket into one group, and (b) sort init < extrinsic < finalize. +#[test] +fn flush_bucket_grouping_and_sort_order() { + use pallet_broadcast::types::ExecutionType; + + // Bare grouping helper that mirrors `flush`'s grouping step (without + // driving the full pallet runtime). We test the visible invariants: + // 1. preserves insertion order within a bucket + // 2. produces one group per distinct bucket + let entries: Vec<(Bucket, ethereum::Log)> = vec![ + (Bucket::Extrinsic(2), log(1)), + ( + Bucket::Hook { + phase: HookPhase::Initialization, + origin: None, + }, + log(2), + ), + (Bucket::Extrinsic(2), log(3)), + ( + Bucket::Hook { + phase: HookPhase::Finalization, + origin: None, + }, + log(4), + ), + (Bucket::Extrinsic(0), log(5)), + ( + Bucket::Hook { + phase: HookPhase::Initialization, + origin: Some(ExecutionType::DCA(7, 1)), + }, + log(6), + ), + ]; + + let mut groups: Vec<(Bucket, Vec)> = Vec::new(); + for (bucket, log) in entries { + match groups.iter_mut().find(|(b, _)| *b == bucket) { + Some((_, logs)) => logs.push(log), + None => groups.push((bucket, vec![log])), + } + } + groups.sort_by(|a, b| bucket_sort_key(&a.0).cmp(&bucket_sort_key(&b.0))); + + // 5 distinct buckets, in order: Init/None < Init/DCA < Extrinsic(0) < Extrinsic(2) < Final/None + let order: Vec = groups.iter().map(|(b, _)| *b).collect(); + assert!(matches!( + order[0], + Bucket::Hook { + phase: HookPhase::Initialization, + origin: None + } + )); + assert!(matches!( + order[1], + Bucket::Hook { + phase: HookPhase::Initialization, + origin: Some(ExecutionType::DCA(_, _)) + } + )); + assert!(matches!(order[2], Bucket::Extrinsic(0))); + assert!(matches!(order[3], Bucket::Extrinsic(2))); + assert!(matches!( + order[4], + Bucket::Hook { + phase: HookPhase::Finalization, + origin: None + } + )); + + // Extrinsic(2) holds both its logs in insertion order. + let ext2_logs = &groups + .iter() + .find(|(b, _)| matches!(b, Bucket::Extrinsic(2))) + .unwrap() + .1; + assert_eq!(ext2_logs.len(), 2); + assert_eq!(ext2_logs[0].address.0[19], 1); + assert_eq!(ext2_logs[1].address.0[19], 3); +} + +#[test] +fn bucket_nonce_layout_is_distinct_per_class() { + use pallet_broadcast::types::ExecutionType; + let cases = [ + Bucket::Extrinsic(0), + Bucket::Extrinsic(7), + Bucket::Hook { + phase: HookPhase::Initialization, + origin: None, + }, + Bucket::Hook { + phase: HookPhase::Initialization, + origin: Some(ExecutionType::DCA(123, 1)), + }, + Bucket::Hook { + phase: HookPhase::Finalization, + origin: None, + }, + Bucket::Hook { + phase: HookPhase::Finalization, + origin: Some(ExecutionType::Router(99)), + }, + ]; + let nonces: Vec = cases.iter().map(|b| bucket_nonce(*b)).collect(); + let unique: std::collections::BTreeSet<_> = nonces.iter().collect(); + assert_eq!( + unique.len(), + cases.len(), + "every bucket class must produce a distinct nonce" + ); +} + +fn log(tag: u8) -> ethereum::Log { + let mut addr = [0u8; 20]; + addr[19] = tag; + ethereum::Log { + address: H160(addr), + topics: vec![TRANSFER_TOPIC], + data: Vec::new(), + } +} diff --git a/pallets/transaction-multi-payment/Cargo.toml b/pallets/transaction-multi-payment/Cargo.toml index d49d16783a..2b1ff313bc 100644 --- a/pallets/transaction-multi-payment/Cargo.toml +++ b/pallets/transaction-multi-payment/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-transaction-multi-payment" -version = "10.5.0" +version = "10.5.1" description = "Transaction multi currency payment support module" authors = ["GalacticCoucil"] edition = "2021" diff --git a/pallets/transaction-multi-payment/src/mock.rs b/pallets/transaction-multi-payment/src/mock.rs index dbc78e45ae..ec975b61ec 100644 --- a/pallets/transaction-multi-payment/src/mock.rs +++ b/pallets/transaction-multi-payment/src/mock.rs @@ -298,6 +298,7 @@ impl pallet_balances::Config for Test { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } impl pallet_transaction_payment::Config for Test { @@ -333,6 +334,12 @@ impl MutationHooks for CurrencyHooks { type PostDeposit = (); type PreTransfer = (); type PostTransfer = (); + type PreWithdraw = (); + type PostWithdraw = (); + type PostReserve = (); + type PostUnreserve = (); + type PostSlashReserved = (); + type PostRepatriate = (); type OnNewTokenAccount = AddTxAssetOnAccount; type OnKilledTokenAccount = RemoveTxAssetOnKilled; } diff --git a/pallets/transaction-pause/Cargo.toml b/pallets/transaction-pause/Cargo.toml index 668a91ebd3..5b6ae31bfd 100644 --- a/pallets/transaction-pause/Cargo.toml +++ b/pallets/transaction-pause/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-transaction-pause" -version = "1.3.0" +version = "1.3.1" authors = ["Acala Developers", "GalacticCouncil"] edition = "2021" diff --git a/pallets/transaction-pause/src/mock.rs b/pallets/transaction-pause/src/mock.rs index d5b78f2d61..2960fc00ee 100644 --- a/pallets/transaction-pause/src/mock.rs +++ b/pallets/transaction-pause/src/mock.rs @@ -90,6 +90,7 @@ impl pallet_balances::Config for Runtime { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } parameter_type_with_key! { diff --git a/pallets/xyk-liquidity-mining/Cargo.toml b/pallets/xyk-liquidity-mining/Cargo.toml index c5d2133797..ffa1e31b54 100644 --- a/pallets/xyk-liquidity-mining/Cargo.toml +++ b/pallets/xyk-liquidity-mining/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-xyk-liquidity-mining" -version = "1.8.0" +version = "1.8.1" description = "Liquidity mining" authors = ["GalacticCouncil"] edition = "2021" diff --git a/pallets/xyk-liquidity-mining/src/tests/mock.rs b/pallets/xyk-liquidity-mining/src/tests/mock.rs index 05193487ab..7195eeb8e8 100644 --- a/pallets/xyk-liquidity-mining/src/tests/mock.rs +++ b/pallets/xyk-liquidity-mining/src/tests/mock.rs @@ -892,6 +892,7 @@ impl pallet_balances::Config for Test { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } parameter_type_with_key! { diff --git a/pallets/xyk/Cargo.toml b/pallets/xyk/Cargo.toml index e2656944e3..de0054c9ed 100644 --- a/pallets/xyk/Cargo.toml +++ b/pallets/xyk/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pallet-xyk" -version = "8.2.0" +version = "8.2.1" description = "XYK automated market maker" authors = ["GalacticCouncil"] edition = "2021" diff --git a/pallets/xyk/src/tests/mock.rs b/pallets/xyk/src/tests/mock.rs index da422fb446..5e4ef2947e 100644 --- a/pallets/xyk/src/tests/mock.rs +++ b/pallets/xyk/src/tests/mock.rs @@ -192,7 +192,9 @@ impl CanCreatePool for Disallow10_10Pool { } } -impl pallet_broadcast::Config for Test {} +impl pallet_broadcast::Config for Test { + type OnTrade = (); +} impl xyk::Config for Test { type AssetRegistry = AssetRegistry; diff --git a/precompiles/call-permit/Cargo.toml b/precompiles/call-permit/Cargo.toml index f06c671dfc..21c8e5ae94 100644 --- a/precompiles/call-permit/Cargo.toml +++ b/precompiles/call-permit/Cargo.toml @@ -2,7 +2,7 @@ name = "pallet-evm-precompile-call-permit" description = "A Precompile to dispatch a call with a ERC712 permit." edition = "2021" -version = "0.3.0" +version = "0.3.1" authors = ["PureStake"] repository = "https://github.com/PureStake/moonbeam" diff --git a/precompiles/call-permit/src/mock.rs b/precompiles/call-permit/src/mock.rs index 594cd9c509..7999d6532e 100644 --- a/precompiles/call-permit/src/mock.rs +++ b/precompiles/call-permit/src/mock.rs @@ -100,6 +100,7 @@ impl pallet_balances::Config for Runtime { type MaxFreezes = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } mock_account!(CallPermit, |_| MockAccount::from_u64(1)); diff --git a/runtime/adapters/Cargo.toml b/runtime/adapters/Cargo.toml index 45b41ea38b..d1efb7767b 100644 --- a/runtime/adapters/Cargo.toml +++ b/runtime/adapters/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "hydradx-adapters" -version = "1.13.1" +version = "1.13.2" description = "Structs and other generic types for building runtimes." authors = ["GalacticCouncil"] edition = "2021" diff --git a/runtime/adapters/src/tests/mock.rs b/runtime/adapters/src/tests/mock.rs index 1d6c454fbb..053dd38410 100644 --- a/runtime/adapters/src/tests/mock.rs +++ b/runtime/adapters/src/tests/mock.rs @@ -173,6 +173,7 @@ impl pallet_balances::Config for Test { type RuntimeHoldReason = (); type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = (); } parameter_type_with_key! { @@ -292,7 +293,9 @@ impl pallet_xyk::Config for Test { type NonDustableWhitelistHandler = DummyDuster; } -impl pallet_broadcast::Config for Test {} +impl pallet_broadcast::Config for Test { + type OnTrade = (); +} pub struct CircuitBreakerWhitelist; diff --git a/runtime/hydradx/Cargo.toml b/runtime/hydradx/Cargo.toml index 455c12e0c0..9f03b6cb3d 100644 --- a/runtime/hydradx/Cargo.toml +++ b/runtime/hydradx/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "hydradx-runtime" -version = "412.0.0" +version = "413.0.0" authors = ["GalacticCouncil"] edition = "2021" license = "Apache 2.0" @@ -21,6 +21,7 @@ smallvec = { workspace = true } log = { workspace = true } num_enum = { workspace = true, default-features = false } evm = { workspace = true, features = ["with-codec"] } +environmental = { workspace = true } alloy-primitives = { workspace = true } alloy-sol-types = { workspace = true } @@ -43,6 +44,7 @@ pallet-lbp = { workspace = true } pallet-xyk = { workspace = true } pallet-referrals = { workspace = true } pallet-broadcast = { workspace = true } +pallet-synthetic-logs = { workspace = true } pallet-evm-accounts = { workspace = true } pallet-evm-accounts-rpc-runtime-api = { workspace = true } pallet-xyk-liquidity-mining = { workspace = true } @@ -274,6 +276,7 @@ std = [ "codec/std", "serde", "scale-info/std", + "environmental/std", "frame-executive/std", "frame-support/std", "frame-system/std", @@ -395,6 +398,7 @@ std = [ "pallet-referenda/std", "pallet-whitelist/std", "pallet-broadcast/std", + "pallet-synthetic-logs/std", "pallet-dispatcher/std", "pallet-signet/std", "pallet-dispenser/std", diff --git a/runtime/hydradx/src/assets.rs b/runtime/hydradx/src/assets.rs index 1697ed391a..6fe0219fb3 100644 --- a/runtime/hydradx/src/assets.rs +++ b/runtime/hydradx/src/assets.rs @@ -120,16 +120,24 @@ impl pallet_balances::Config for Runtime { type MaxFreezes = MaxFreezes; type RuntimeFreezeReason = (); type DoneSlashHandler = (); + type RuntimeHooks = EmitErc20TransferLog; } pub struct CurrencyHooks; impl MutationHooks for CurrencyHooks { type OnDust = Duster; - type OnSlash = (); + type OnSlash = EmitErc20TransferLog; type PreDeposit = SufficiencyCheck; - type PostDeposit = pallet_circuit_breaker::fuses::issuance::IssuanceIncreaseFuse; + type PostDeposit = + OnDepositTuple, EmitErc20TransferLog>; type PreTransfer = SufficiencyCheck; - type PostTransfer = (); + type PostTransfer = EmitErc20TransferLog; + type PreWithdraw = (); + type PostWithdraw = EmitErc20TransferLog; + type PostReserve = EmitErc20TransferLog; + type PostUnreserve = EmitErc20TransferLog; + type PostSlashReserved = EmitErc20TransferLog; + type PostRepatriate = EmitErc20TransferLog; type OnNewTokenAccount = AddTxAssetOnAccount; type OnKilledTokenAccount = (RemoveTxAssetOnKilled, OnKilledTokenAccount); } @@ -1799,7 +1807,9 @@ impl pallet_liquidation::Config for Runtime { type AuthorityOrigin = EitherOf, GeneralAdmin>; } -impl pallet_broadcast::Config for Runtime {} +impl pallet_broadcast::Config for Runtime { + type OnTrade = crate::evm::swap_logs::EmitUniswapV2SwapLog; +} parameter_types! { pub const HsmGasLimit: u64 = 400_000; @@ -1993,6 +2003,7 @@ impl GetByKey for ReferralsLevelVolumeAndRewa } use crate::evm::aave_trade_executor::Aave; +use crate::evm::erc20_logs::{EmitErc20TransferLog, OnDepositTuple}; #[cfg(feature = "runtime-benchmarks")] use crate::helpers::benchmark_helpers::CircuitBreakerBenchmarkHelper; #[cfg(feature = "runtime-benchmarks")] diff --git a/runtime/hydradx/src/evm/aave_trade_executor.rs b/runtime/hydradx/src/evm/aave_trade_executor.rs index 6bc4fbfa2c..acd3ab40d0 100644 --- a/runtime/hydradx/src/evm/aave_trade_executor.rs +++ b/runtime/hydradx/src/evm/aave_trade_executor.rs @@ -126,6 +126,7 @@ where + pallet_evm_accounts::Config + pallet_broadcast::Config + pallet_dispatcher::Config + + pallet_synthetic_logs::Config + frame_system::Config, T::AssetNativeLocation: Into, BalanceOf: TryFrom + Into, @@ -424,7 +425,8 @@ where + pallet_evm_accounts::Config + pallet_broadcast::Config + frame_system::Config - + pallet_dispatcher::Config, + + pallet_dispatcher::Config + + pallet_synthetic_logs::Config, T::AssetNativeLocation: Into, BalanceOf: TryFrom + Into, T::AddressMapping: pallet_evm::AddressMapping, diff --git a/runtime/hydradx/src/evm/erc20_currency.rs b/runtime/hydradx/src/evm/erc20_currency.rs index 4d5e2e7c75..c5beb54c8e 100644 --- a/runtime/hydradx/src/evm/erc20_currency.rs +++ b/runtime/hydradx/src/evm/erc20_currency.rs @@ -44,7 +44,7 @@ pub const HOLDING_ADDRESS: EvmAddress = EvmAddress::repeat_byte(0xFF); impl ERC20 for Erc20Currency where - T: pallet_evm::Config + pallet_dispatcher::Config + frame_system::Config, + T: pallet_evm::Config + pallet_dispatcher::Config + frame_system::Config + pallet_synthetic_logs::Config, T::AddressMapping: pallet_evm::AddressMapping, pallet_evm::AccountIdOf: From, ::AccountId: AsRef<[u8]>, @@ -222,6 +222,7 @@ where + pallet_liquidation::Config + pallet_evm_accounts::Config + pallet_broadcast::Config + + pallet_synthetic_logs::Config + frame_system::Config, pallet_evm_accounts::Pallet: InspectEvmAccounts, AccountId: AsRef<[u8; 32]> + IsType, diff --git a/runtime/hydradx/src/evm/erc20_logs.rs b/runtime/hydradx/src/evm/erc20_logs.rs new file mode 100644 index 0000000000..dcf76eaeb0 --- /dev/null +++ b/runtime/hydradx/src/evm/erc20_logs.rs @@ -0,0 +1,214 @@ +// This file is part of hydration-node. +// +// Copyright (C) 2020-2026 Intergalactic, Limited (GIB). +// SPDX-License-Identifier: Apache-2.0 + +use crate::evm::precompiles::erc20_mapping::HydraErc20Mapping; +use crate::Runtime; +use frame_support::sp_runtime::DispatchResult; +use hydradx_traits::evm::{Erc20Mapping, InspectEvmAccounts}; +use orml_traits::currency::{ + OnDeposit, OnRepatriate, OnReserve, OnSlash, OnSlashReserved, OnTransfer, OnUnreserve, OnWithdraw, +}; +use orml_traits::BalanceStatus; +use pallet_synthetic_logs::{ + encode_u256_be, h160_to_h256, reserved_address_of, Pallet as SyntheticLogs, TRANSFER_TOPIC, +}; +use primitive_types::{H160, U256}; +use primitives::constants::chain::CORE_ASSET_ID; +use primitives::{AccountId, AssetId, Balance}; +use sp_std::{marker::PhantomData, vec::Vec}; + +pub struct EmitErc20TransferLog; + +fn evm_address_of(account: &AccountId) -> H160 { + pallet_evm_accounts::Pallet::::evm_address(account) +} + +fn push_transfer_log(asset: AssetId, from: H160, to: H160, amount: Balance) { + let address = HydraErc20Mapping::asset_address(asset); + let mut data = Vec::with_capacity(32); + data.extend_from_slice(&encode_u256_be(U256::from(amount))); + let log = ethereum::Log { + address, + topics: sp_std::vec![TRANSFER_TOPIC, h160_to_h256(from), h160_to_h256(to)], + data, + }; + if !crate::evm::runner::append_to_current_evm_frame(log.clone()) { + SyntheticLogs::::push(address, log); + } +} + +impl OnTransfer for EmitErc20TransferLog { + fn on_transfer(asset: AssetId, from: &AccountId, to: &AccountId, amount: Balance) -> DispatchResult { + if amount == 0 { + return Ok(()); + } + push_transfer_log(asset, evm_address_of(from), evm_address_of(to), amount); + Ok(()) + } +} + +impl OnDeposit for EmitErc20TransferLog { + fn on_deposit(asset: AssetId, who: &AccountId, amount: Balance) -> DispatchResult { + if amount == 0 { + return Ok(()); + } + push_transfer_log(asset, H160::zero(), evm_address_of(who), amount); + Ok(()) + } +} + +impl OnSlash for EmitErc20TransferLog { + fn on_slash(asset: AssetId, who: &AccountId, amount: Balance) { + if amount == 0 { + return; + } + push_transfer_log(asset, evm_address_of(who), H160::zero(), amount); + } +} + +impl OnWithdraw for EmitErc20TransferLog { + fn on_withdraw(asset: AssetId, who: &AccountId, amount: Balance) -> DispatchResult { + if amount == 0 { + return Ok(()); + } + push_transfer_log(asset, evm_address_of(who), H160::zero(), amount); + Ok(()) + } +} + +impl OnReserve for EmitErc20TransferLog { + fn on_reserve(asset: AssetId, who: &AccountId, amount: Balance) { + if amount == 0 { + return; + } + let owner = evm_address_of(who); + push_transfer_log(asset, owner, reserved_address_of(owner), amount); + } +} + +impl OnUnreserve for EmitErc20TransferLog { + fn on_unreserve(asset: AssetId, who: &AccountId, amount: Balance) { + if amount == 0 { + return; + } + let owner = evm_address_of(who); + push_transfer_log(asset, reserved_address_of(owner), owner, amount); + } +} + +impl OnSlashReserved for EmitErc20TransferLog { + fn on_slash_reserved(asset: AssetId, who: &AccountId, amount: Balance) { + if amount == 0 { + return; + } + let owner = evm_address_of(who); + push_transfer_log(asset, reserved_address_of(owner), H160::zero(), amount); + } +} + +impl OnRepatriate for EmitErc20TransferLog { + fn on_repatriate( + asset: AssetId, + slashed: &AccountId, + beneficiary: &AccountId, + amount: Balance, + status: BalanceStatus, + ) { + if amount == 0 { + return; + } + let from = reserved_address_of(evm_address_of(slashed)); + let to = match status { + BalanceStatus::Free => evm_address_of(beneficiary), + BalanceStatus::Reserved => reserved_address_of(evm_address_of(beneficiary)), + }; + push_transfer_log(asset, from, to, amount); + } +} + +impl pallet_balances::BalancesHooks for EmitErc20TransferLog { + fn on_transfer(from: &AccountId, to: &AccountId, amount: Balance) { + if amount == 0 { + return; + } + push_transfer_log(CORE_ASSET_ID, evm_address_of(from), evm_address_of(to), amount); + } + + fn on_mint(who: &AccountId, amount: Balance) { + if amount == 0 { + return; + } + push_transfer_log(CORE_ASSET_ID, H160::zero(), evm_address_of(who), amount); + } + + fn on_burn(who: &AccountId, amount: Balance) { + if amount == 0 { + return; + } + push_transfer_log(CORE_ASSET_ID, evm_address_of(who), H160::zero(), amount); + } + + fn on_dust_lost(who: &AccountId, amount: Balance) { + if amount == 0 { + return; + } + push_transfer_log(CORE_ASSET_ID, evm_address_of(who), H160::zero(), amount); + } + + fn on_reserve(who: &AccountId, amount: Balance) { + if amount == 0 { + return; + } + let owner = evm_address_of(who); + push_transfer_log(CORE_ASSET_ID, owner, reserved_address_of(owner), amount); + } + + fn on_unreserve(who: &AccountId, amount: Balance) { + if amount == 0 { + return; + } + let owner = evm_address_of(who); + push_transfer_log(CORE_ASSET_ID, reserved_address_of(owner), owner, amount); + } + + fn on_slash_reserved(who: &AccountId, amount: Balance) { + if amount == 0 { + return; + } + let owner = evm_address_of(who); + push_transfer_log(CORE_ASSET_ID, reserved_address_of(owner), H160::zero(), amount); + } + + fn on_repatriate( + slashed: &AccountId, + beneficiary: &AccountId, + amount: Balance, + status: frame_support::traits::tokens::BalanceStatus, + ) { + if amount == 0 { + return; + } + let from = reserved_address_of(evm_address_of(slashed)); + let to = match status { + frame_support::traits::tokens::BalanceStatus::Free => evm_address_of(beneficiary), + frame_support::traits::tokens::BalanceStatus::Reserved => reserved_address_of(evm_address_of(beneficiary)), + }; + push_transfer_log(CORE_ASSET_ID, from, to, amount); + } +} + +pub struct OnDepositTuple(PhantomData<(A, B)>); + +impl OnDeposit for OnDepositTuple +where + A: OnDeposit, + B: OnDeposit, +{ + fn on_deposit(currency_id: AssetId, who: &AccountId, amount: Balance) -> DispatchResult { + A::on_deposit(currency_id, who, amount)?; + B::on_deposit(currency_id, who, amount)?; + Ok(()) + } +} diff --git a/runtime/hydradx/src/evm/executor.rs b/runtime/hydradx/src/evm/executor.rs index 179361f335..c80e9f4922 100644 --- a/runtime/hydradx/src/evm/executor.rs +++ b/runtime/hydradx/src/evm/executor.rs @@ -24,9 +24,24 @@ pub type NonceIdOf = <::AccountProvider as AccountProvider>::Non pub struct Executor(sp_std::marker::PhantomData); +// surfaces evm-frame logs from non-transact paths (hsm, dispatcher-driven +// evm calls) into pallet_synthetic_logs. transact bypasses Executor::call. +fn capture_logs(logs: &[pallet_evm::Log]) { + for log in logs { + pallet_synthetic_logs::Pallet::::push( + log.address, + ethereum::Log { + address: log.address, + topics: log.topics.clone(), + data: log.data.clone(), + }, + ); + } +} + impl Executor where - T: Config + frame_system::Config, + T: Config + frame_system::Config + pallet_synthetic_logs::Config, BalanceOf: TryFrom + Into, T::AddressMapping: AddressMapping, pallet_evm::AccountIdOf: From, @@ -56,7 +71,7 @@ where impl EVM for Executor where - T: frame_system::Config + pallet_evm::Config + pallet_dispatcher::Config, + T: frame_system::Config + pallet_evm::Config + pallet_dispatcher::Config + pallet_synthetic_logs::Config, BalanceOf: TryFrom + Into + Default, NonceIdOf: Into, T::AddressMapping: AddressMapping, @@ -96,6 +111,9 @@ where match call_info_result { Ok(info) => { log::trace!(target: "evm::executor", "Call executed - used gas {:?}", info.used_gas); + if matches!(info.exit_reason, ExitReason::Succeed(_)) { + capture_logs::(&info.logs); + } if extra_gas > 0 { match u64::try_from(info.used_gas.effective) { Ok(standard_gas_u64) => { diff --git a/runtime/hydradx/src/evm/mod.rs b/runtime/hydradx/src/evm/mod.rs index ba6d3607f5..191ffc83fb 100644 --- a/runtime/hydradx/src/evm/mod.rs +++ b/runtime/hydradx/src/evm/mod.rs @@ -55,6 +55,7 @@ use sp_core::{crypto::AccountId32, Get, U256}; pub mod aave_trade_executor; mod accounts_conversion; mod erc20_currency; +pub mod erc20_logs; pub mod evm_error_decoder; mod evm_fee; mod executor; @@ -62,6 +63,7 @@ mod gas_to_weight_mapping; pub mod permit; pub mod precompiles; mod runner; +pub mod swap_logs; use crate::circuit_breaker::IgnoreWithdrawFuse; pub use erc20_currency::Erc20Currency; @@ -225,6 +227,10 @@ impl pallet_ethereum::Config for Runtime { type ExtraDataLength = sp_core::ConstU32<1>; } +impl pallet_synthetic_logs::Config for Runtime { + type ChainId = ::ChainId; +} + pub struct EvmNonceProvider; impl pallet_evm_accounts::EvmNonceProvider for EvmNonceProvider { fn get_nonce(evm_address: sp_core::H160) -> U256 { diff --git a/runtime/hydradx/src/evm/precompiles/mod.rs b/runtime/hydradx/src/evm/precompiles/mod.rs index 0a21a61b22..9244b38391 100644 --- a/runtime/hydradx/src/evm/precompiles/mod.rs +++ b/runtime/hydradx/src/evm/precompiles/mod.rs @@ -191,6 +191,23 @@ where } } + // Drain logs that substrate hooks pushed during the dispatch + // (e.g. orml-tokens PostTransfer, pallet_balances RuntimeHooks, + // pallet_broadcast OnTrade) and emit them inline at the dispatcher + // precompile's call site so log_index ordering matches execution + // order in the resulting eth tx receipt / info.logs. + if matches!( + &dispatch_precompile_result, + Ok(PrecompileOutput { + exit_status: ExitSucceed::Stopped | ExitSucceed::Returned | ExitSucceed::Suicided, + .. + }) + ) { + if let Err(e) = emit_buffered_evm_frame_logs(handle) { + return Some(Err(e)); + } + } + Some(dispatch_precompile_result) } else if is_asset_address(address) { Some(MultiCurrencyPrecompile::::execute(handle)) @@ -213,6 +230,38 @@ pub fn is_precompile(address: H160) -> bool { address == DISPATCH_ADDR || is_asset_address(address) || is_standard_precompile(address) } +/// drains hook logs buffered during the current frame and emits each via +/// `handle.log()` so they land at the precompile's call site (preserves log_index). +pub fn emit_buffered_evm_frame_logs(handle: &mut impl PrecompileHandle) -> EvmResult<()> { + for log in crate::evm::runner::drain_current_evm_frame_logs() { + let cost = costs::log_costs(log.topics.len(), log.data.len()).map_err(|_| PrecompileFailure::Error { + exit_status: ExitError::OutOfGas, + })?; + handle.record_cost(cost)?; + handle.log(log.address, log.topics, log.data)?; + } + Ok(()) +} + +/// emits ERC-20 `Approval(owner, spender, value)` inline at the precompile's address. +pub fn emit_approval_log( + handle: &mut impl PrecompileHandle, + owner: H160, + spender: H160, + amount: U256, +) -> EvmResult<()> { + use pallet_synthetic_logs::{encode_u256_be, h160_to_h256, APPROVAL_TOPIC}; + let topics = sp_std::vec![APPROVAL_TOPIC, h160_to_h256(owner), h160_to_h256(spender)]; + let data = encode_u256_be(amount).to_vec(); + let cost = costs::log_costs(topics.len(), data.len()).map_err(|_| PrecompileFailure::Error { + exit_status: ExitError::OutOfGas, + })?; + handle.record_cost(cost)?; + let address = handle.code_address(); + handle.log(address, topics, data)?; + Ok(()) +} + // This is a reimplementation of the upstream u64->H160 conversion // function, made `const` to make our precompile address `const`s a // bit cleaner. It can be removed when upstream has a const conversion diff --git a/runtime/hydradx/src/evm/precompiles/multicurrency.rs b/runtime/hydradx/src/evm/precompiles/multicurrency.rs index 06bfce14c2..66dc6e6bb4 100644 --- a/runtime/hydradx/src/evm/precompiles/multicurrency.rs +++ b/runtime/hydradx/src/evm/precompiles/multicurrency.rs @@ -39,7 +39,7 @@ use hydradx_traits::evm::{Erc20Encoding, InspectEvmAccounts}; use hydradx_traits::registry::Inspect as InspectRegistry; use orml_traits::{MultiCurrency as MultiCurrencyT, MultiCurrency}; use pallet_evm::{AddressMapping, ExitRevert, Precompile, PrecompileFailure, PrecompileHandle, PrecompileResult}; -use primitive_types::H160; +use primitive_types::{H160, U256}; use primitives::{AssetId, Balance}; use sp_runtime::traits::Dispatchable; use sp_std::marker::PhantomData; @@ -214,11 +214,12 @@ where let mut input = handle.read_input()?; input.expect_arguments(2)?; - let to: H160 = input.read::
()?.into(); + let to_h160: H160 = input.read::
()?.into(); + let from_h160: H160 = handle.context().caller; let amount = input.read::()?; - let origin = ExtendedAddressMapping::into_account_id(handle.context().caller); - let to = ExtendedAddressMapping::into_account_id(to); + let origin = ExtendedAddressMapping::into_account_id(from_h160); + let to = ExtendedAddressMapping::into_account_id(to_h160); log::debug!(target: "evm", "multicurrency: transfer from: {origin:?}, to: {to:?}, amount: {amount:?}"); @@ -234,6 +235,8 @@ where output: e.encode(), })?; + crate::evm::precompiles::emit_buffered_evm_frame_logs(handle)?; + Ok(succeed(EvmDataWriter::new().write(true).build())) } @@ -273,6 +276,8 @@ where pallet_evm_accounts::Pallet::::set_allowance(asset_id.into(), owner, spender, amount); + crate::evm::precompiles::emit_approval_log(handle, owner, spender, U256::from(amount))?; + Ok(succeed(EvmDataWriter::new().write(true).build())) } @@ -313,15 +318,15 @@ where } } - let from = ExtendedAddressMapping::into_account_id(from); - let to = ExtendedAddressMapping::into_account_id(to); + let from_acc = ExtendedAddressMapping::into_account_id(from); + let to_acc = ExtendedAddressMapping::into_account_id(to); - log::debug!(target: "evm", "multicurrency: transferFrom from: {from:?}, to: {to:?}, amount: {amount:?}"); + log::debug!(target: "evm", "multicurrency: transferFrom from: {from_acc:?}, to: {to_acc:?}, amount: {amount:?}"); as MultiCurrency>::transfer( asset_id, - &(>::into(from)), - &(>::into(to)), + &(>::into(from_acc)), + &(>::into(to_acc)), amount, ExistenceRequirement::AllowDeath, ) @@ -330,6 +335,8 @@ where output: e.encode(), })?; + crate::evm::precompiles::emit_buffered_evm_frame_logs(handle)?; + Ok(succeed(EvmDataWriter::new().write(true).build())) } } diff --git a/runtime/hydradx/src/evm/runner.rs b/runtime/hydradx/src/evm/runner.rs index b982dbf06a..f5c0a01e60 100644 --- a/runtime/hydradx/src/evm/runner.rs +++ b/runtime/hydradx/src/evm/runner.rs @@ -26,7 +26,7 @@ use crate::evm::evm_fee::evm_fee_payer; use crate::evm::WethAssetId; use ethereum::AuthorizationList; -use fp_evm::{Account, TransactionValidationError}; +use fp_evm::{Account, ExitReason, TransactionValidationError}; use frame_support::traits::Get; use hydradx_traits::AccountFeeCurrencyBalanceInCurrency; use pallet_evm::runner::Runner; @@ -37,6 +37,43 @@ use primitives::{AccountId, AssetId, Balance}; use sp_runtime::traits::UniqueSaturatedInto; use sp_std::vec::Vec; +// per-evm-frame buffer of substrate-hook logs. precompiles that trigger +// substrate dispatches drain it inline (preserves log_index order); the +// runner's end-drain is a safety net. +mod evm_frame_logs { + use sp_std::vec::Vec; + environmental::environmental!(EVM_FRAME_LOGS: Vec); + + pub fn append(log: ethereum::Log) -> bool { + EVM_FRAME_LOGS::with(|buf| buf.push(log)).is_some() + } + + pub fn using R>(buf: &mut Vec, f: F) -> R { + EVM_FRAME_LOGS::using_once(buf, f) + } + + pub fn drain() -> Vec { + EVM_FRAME_LOGS::with(sp_std::mem::take).unwrap_or_default() + } +} + +/// returns true if a frame is active; false → caller should fall back to synthetic-logs. +pub fn append_to_current_evm_frame(log: ethereum::Log) -> bool { + evm_frame_logs::append(log) +} + +pub fn drain_current_evm_frame_logs() -> Vec { + evm_frame_logs::drain() +} + +fn evm_log_to_fp(log: ethereum::Log) -> pallet_evm::Log { + pallet_evm::Log { + address: log.address, + topics: log.topics, + data: log.data, + } +} + pub struct WrapRunner(sp_std::marker::PhantomData<(T, R, B)>); impl Runner for WrapRunner @@ -155,24 +192,29 @@ where let source_account_id = T::AddressMapping::into_account_id(source); let original_nonce = frame_system::Pallet::::account_nonce(source_account_id.clone()); - // Validated, flag set to false - let result = R::call( - source, - target, - input, - value, - gas_limit, - max_fee_per_gas, - max_priority_fee_per_gas, - nonce, - access_list, - authorization_list, - is_transactional, - false, - weight_limit, - proof_size_base_cost, - config, - )?; + let mut frame_logs: Vec = Vec::new(); + let mut result = evm_frame_logs::using(&mut frame_logs, || { + R::call( + source, + target, + input, + value, + gas_limit, + max_fee_per_gas, + max_priority_fee_per_gas, + nonce, + access_list, + authorization_list, + is_transactional, + false, + weight_limit, + proof_size_base_cost, + config, + ) + })?; + if matches!(result.exit_reason, ExitReason::Succeed(_)) { + result.logs.extend(frame_logs.into_iter().map(evm_log_to_fp)); + } if validate && is_transactional && nonce.is_none() && max_priority_fee_per_gas.is_none() { let current_nonce = frame_system::Pallet::::account_nonce(source_account_id.clone()); @@ -220,23 +262,29 @@ where config, )?; } - // Validated, flag set to false - R::create( - source, - init, - value, - gas_limit, - max_fee_per_gas, - max_priority_fee_per_gas, - nonce, - access_list, - authorization_list, - is_transactional, - false, - weight_limit, - proof_size_base_cost, - config, - ) + let mut frame_logs: Vec = Vec::new(); + let mut result = evm_frame_logs::using(&mut frame_logs, || { + R::create( + source, + init, + value, + gas_limit, + max_fee_per_gas, + max_priority_fee_per_gas, + nonce, + access_list, + authorization_list, + is_transactional, + false, + weight_limit, + proof_size_base_cost, + config, + ) + })?; + if matches!(result.exit_reason, ExitReason::Succeed(_)) { + result.logs.extend(frame_logs.into_iter().map(evm_log_to_fp)); + } + Ok(result) } fn create2( @@ -274,24 +322,30 @@ where config, )?; } - //Validated, flag set to false - R::create2( - source, - init, - salt, - value, - gas_limit, - max_fee_per_gas, - max_priority_fee_per_gas, - nonce, - access_list, - authorization_list, - is_transactional, - false, - weight_limit, - proof_size_base_cost, - config, - ) + let mut frame_logs: Vec = Vec::new(); + let mut result = evm_frame_logs::using(&mut frame_logs, || { + R::create2( + source, + init, + salt, + value, + gas_limit, + max_fee_per_gas, + max_priority_fee_per_gas, + nonce, + access_list, + authorization_list, + is_transactional, + false, + weight_limit, + proof_size_base_cost, + config, + ) + })?; + if matches!(result.exit_reason, ExitReason::Succeed(_)) { + result.logs.extend(frame_logs.into_iter().map(evm_log_to_fp)); + } + Ok(result) } fn create_force_address( @@ -329,24 +383,30 @@ where config, )?; } - //Validated, flag set to false - R::create_force_address( - source, - init, - value, - gas_limit, - max_fee_per_gas, - max_priority_fee_per_gas, - nonce, - access_list, - authorization_list, - is_transactional, - false, - weight_limit, - proof_size_base_cost, - config, - contract_address, - ) + let mut frame_logs: Vec = Vec::new(); + let mut result = evm_frame_logs::using(&mut frame_logs, || { + R::create_force_address( + source, + init, + value, + gas_limit, + max_fee_per_gas, + max_priority_fee_per_gas, + nonce, + access_list, + authorization_list, + is_transactional, + false, + weight_limit, + proof_size_base_cost, + config, + contract_address, + ) + })?; + if matches!(result.exit_reason, ExitReason::Succeed(_)) { + result.logs.extend(frame_logs.into_iter().map(evm_log_to_fp)); + } + Ok(result) } } diff --git a/runtime/hydradx/src/evm/swap_logs.rs b/runtime/hydradx/src/evm/swap_logs.rs new file mode 100644 index 0000000000..4d0e68e1cd --- /dev/null +++ b/runtime/hydradx/src/evm/swap_logs.rs @@ -0,0 +1,98 @@ +// This file is part of hydration-node. +// +// Copyright (C) 2020-2026 Intergalactic, Limited (GIB). +// SPDX-License-Identifier: Apache-2.0 + +//! translates `Swapped3` events to uniswap-v2 `Swap` logs (every defi aggregator +//! indexes by that signature). v1: bilateral `ExactIn`/`ExactOut` only. + +use crate::evm::precompiles::erc20_mapping::is_asset_address; +use crate::Runtime; +use hydradx_traits::evm::InspectEvmAccounts; +use pallet_broadcast::types::{Asset, ExecutionType, Fee, Filler, TradeOperation}; +use pallet_broadcast::OnTrade; +use pallet_synthetic_logs::{encode_uint256_quad, h160_to_h256, Pallet as SyntheticLogs, SWAP_TOPIC}; +use primitive_types::{H160, U256}; +use primitives::AccountId; +use sp_std::vec; + +pub struct EmitUniswapV2SwapLog; + +fn evm_address_of(account: &AccountId) -> H160 { + pallet_evm_accounts::Pallet::::evm_address(account) +} + +// pool's evm address = h160-derivation of the filler's substrate accountid. +fn derive_pool_address(filler: &AccountId) -> H160 { + evm_address_of(filler) +} + +impl OnTrade for EmitUniswapV2SwapLog { + fn on_trade( + swapper: &AccountId, + filler: &AccountId, + _filler_type: &Filler, + operation: &TradeOperation, + inputs: &[Asset], + outputs: &[Asset], + _fees: &[Fee], + _operation_stack: &[ExecutionType], + ) { + if !matches!(operation, TradeOperation::ExactIn | TradeOperation::ExactOut) { + return; + } + if inputs.len() != 1 || outputs.len() != 1 { + return; + } + + let in_asset = inputs[0].asset; + let in_amount = inputs[0].amount; + let out_asset = outputs[0].asset; + let out_amount = outputs[0].amount; + + if in_amount == 0 && out_amount == 0 { + return; + } + + // token0 < token1 by id so amounts map deterministically. + let token0_id = in_asset.min(out_asset); + let (a0_in, a1_in, a0_out, a1_out) = if in_asset == token0_id { + ( + U256::from(in_amount), + U256::zero(), + U256::zero(), + U256::from(out_amount), + ) + } else { + ( + U256::zero(), + U256::from(in_amount), + U256::from(out_amount), + U256::zero(), + ) + }; + + let pool_address = derive_pool_address(filler); + // would clash with HydraErc20Mapping; skip (probability ~2^-128). + if is_asset_address(pool_address) { + log::warn!( + target: "runtime::synthetic-logs", + "pool address collides with erc20 prefix; skipping swap log for filler {filler:?}", + ); + return; + } + + let sender = evm_address_of(swapper); + let recipient = sender; + + let log = ethereum::Log { + address: pool_address, + topics: vec![SWAP_TOPIC, h160_to_h256(sender), h160_to_h256(recipient)], + data: encode_uint256_quad(a0_in, a1_in, a0_out, a1_out), + }; + + if !crate::evm::runner::append_to_current_evm_frame(log.clone()) { + SyntheticLogs::::push(pool_address, log); + } + } +} diff --git a/runtime/hydradx/src/lib.rs b/runtime/hydradx/src/lib.rs index 622b7dd081..0eb0c154da 100644 --- a/runtime/hydradx/src/lib.rs +++ b/runtime/hydradx/src/lib.rs @@ -129,7 +129,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: Cow::Borrowed("hydradx"), impl_name: Cow::Borrowed("hydradx"), authoring_version: 1, - spec_version: 412, + spec_version: 413, impl_version: 0, apis: RUNTIME_API_VERSIONS, transaction_version: 1, @@ -211,6 +211,11 @@ construct_runtime!( // Frontier and EVM pallets EVM: pallet_evm = 90, EVMChainId: pallet_evm_chain_id = 91, + // must be declared before Ethereum so on_finalize flushes into + // pallet_ethereum::Pending before the block is sealed. hooks fired + // during on_finalize of pallets declared AFTER Ethereum are not + // captured (none currently emit token-balance hooks there). + SyntheticLogs: pallet_synthetic_logs = 86, Ethereum: pallet_ethereum = 92, EVMAccounts: pallet_evm_accounts = 93, DynamicEvmFee: pallet_dynamic_evm_fee = 94, diff --git a/scripts/test-contracts/artifacts/contracts/GasEatingToken.sol/GasEatingToken.json b/scripts/test-contracts/artifacts/contracts/GasEatingToken.sol/GasEatingToken.json new file mode 100644 index 0000000000..194c93ded2 --- /dev/null +++ b/scripts/test-contracts/artifacts/contracts/GasEatingToken.sol/GasEatingToken.json @@ -0,0 +1,324 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GasEatingToken", + "sourceName": "contracts/GasEatingToken.sol", + "abi": [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "allowance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "needed", + "type": "uint256" + } + ], + "name": "ERC20InsufficientAllowance", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "needed", + "type": "uint256" + } + ], + "name": "ERC20InsufficientBalance", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "approver", + "type": "address" + } + ], + "name": "ERC20InvalidApprover", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "ERC20InvalidReceiver", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + } + ], + "name": "ERC20InvalidSender", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "ERC20InvalidSpender", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x60806040523480156200001157600080fd5b506040518060400160405280600881526020017f47617345617465720000000000000000000000000000000000000000000000008152506040518060400160405280600581526020017f454154455200000000000000000000000000000000000000000000000000000081525081600390816200008f91906200062a565b508060049081620000a191906200062a565b505050620000e433620000b9620000ea60201b60201c565b600a620000c79190620008a1565b633b9aca00620000d89190620008f2565b620000f360201b60201c565b62000a45565b60006012905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620001685760006040517fec442f050000000000000000000000000000000000000000000000000000000081526004016200015f919062000982565b60405180910390fd5b6200017c600083836200018060201b60201c565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603620001d6578060026000828254620001c991906200099f565b92505081905550620002ac565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508181101562000265578381836040517fe450d38c0000000000000000000000000000000000000000000000000000000081526004016200025c93929190620009eb565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620002f7578060026000828254039250508190555062000344565b806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620003a3919062000a28565b60405180910390a3505050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200043257607f821691505b602082108103620004485762000447620003ea565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620004b27fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000473565b620004be868362000473565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b60006200050b62000505620004ff84620004d6565b620004e0565b620004d6565b9050919050565b6000819050919050565b6200052783620004ea565b6200053f620005368262000512565b84845462000480565b825550505050565b600090565b6200055662000547565b620005638184846200051c565b505050565b5b818110156200058b576200057f6000826200054c565b60018101905062000569565b5050565b601f821115620005da57620005a4816200044e565b620005af8462000463565b81016020851015620005bf578190505b620005d7620005ce8562000463565b83018262000568565b50505b505050565b600082821c905092915050565b6000620005ff60001984600802620005df565b1980831691505092915050565b60006200061a8383620005ec565b9150826002028217905092915050565b6200063582620003b0565b67ffffffffffffffff811115620006515762000650620003bb565b5b6200065d825462000419565b6200066a8282856200058f565b600060209050601f831160018114620006a257600084156200068d578287015190505b6200069985826200060c565b86555062000709565b601f198416620006b2866200044e565b60005b82811015620006dc57848901518255600182019150602085019450602081019050620006b5565b86831015620006fc5784890151620006f8601f891682620005ec565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156200079f5780860481111562000777576200077662000711565b5b6001851615620007875780820291505b8081029050620007978562000740565b945062000757565b94509492505050565b600082620007ba57600190506200088d565b81620007ca57600090506200088d565b8160018114620007e35760028114620007ee5762000824565b60019150506200088d565b60ff84111562000803576200080262000711565b5b8360020a9150848211156200081d576200081c62000711565b5b506200088d565b5060208310610133831016604e8410600b84101617156200085e5782820a90508381111562000858576200085762000711565b5b6200088d565b6200086d84848460016200074d565b9250905081840481111562000887576200088662000711565b5b81810290505b9392505050565b600060ff82169050919050565b6000620008ae82620004d6565b9150620008bb8362000894565b9250620008ea7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620007a8565b905092915050565b6000620008ff82620004d6565b91506200090c83620004d6565b92508282026200091c81620004d6565b9150828204841483151762000936576200093562000711565b5b5092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200096a826200093d565b9050919050565b6200097c816200095d565b82525050565b600060208201905062000999600083018462000971565b92915050565b6000620009ac82620004d6565b9150620009b983620004d6565b9250828201905080821115620009d457620009d362000711565b5b92915050565b620009e581620004d6565b82525050565b600060608201905062000a02600083018662000971565b62000a116020830185620009da565b62000a206040830184620009da565b949350505050565b600060208201905062000a3f6000830184620009da565b92915050565b610f658062000a556000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c8063313ce56711610066578063313ce5671461013457806370a082311461015257806395d89b4114610182578063a9059cbb146101a0578063dd62ed3e146101d057610093565b806306fdde0314610098578063095ea7b3146100b657806318160ddd146100e657806323b872dd14610104575b600080fd5b6100a0610200565b6040516100ad9190610b3d565b60405180910390f35b6100d060048036038101906100cb9190610bf8565b610292565b6040516100dd9190610c53565b60405180910390f35b6100ee6102b5565b6040516100fb9190610c7d565b60405180910390f35b61011e60048036038101906101199190610c98565b6102bf565b60405161012b9190610c53565b60405180910390f35b61013c61030a565b6040516101499190610d07565b60405180910390f35b61016c60048036038101906101679190610d22565b610313565b6040516101799190610c7d565b60405180910390f35b61018a61035b565b6040516101979190610b3d565b60405180910390f35b6101ba60048036038101906101b59190610bf8565b6103ed565b6040516101c79190610c53565b60405180910390f35b6101ea60048036038101906101e59190610d4f565b610436565b6040516101f79190610c7d565b60405180910390f35b60606003805461020f90610dbe565b80601f016020809104026020016040519081016040528092919081815260200182805461023b90610dbe565b80156102885780601f1061025d57610100808354040283529160200191610288565b820191906000526020600020905b81548152906001019060200180831161026b57829003601f168201915b5050505050905090565b60008061029d6104bd565b90506102aa8185856104c5565b600191505092915050565b6000600254905090565b60006205cc6060005a905060005b825a836102da9190610e1e565b10156102f35780806102eb90610e52565b9150506102cd565b6102fe8787876104d7565b93505050509392505050565b60006012905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60606004805461036a90610dbe565b80601f016020809104026020016040519081016040528092919081815260200182805461039690610dbe565b80156103e35780601f106103b8576101008083540402835291602001916103e3565b820191906000526020600020905b8154815290600101906020018083116103c657829003601f168201915b5050505050905090565b60006205cc6060005a905060005b825a836104089190610e1e565b101561042157808061041990610e52565b9150506103fb565b61042b8686610506565b935050505092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b6104d28383836001610529565b505050565b6000806104e26104bd565b90506104ef858285610700565b6104fa858585610794565b60019150509392505050565b6000806105116104bd565b905061051e818585610794565b600191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff160361059b5760006040517fe602df050000000000000000000000000000000000000000000000000000000081526004016105929190610ea9565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361060d5760006040517f94280d620000000000000000000000000000000000000000000000000000000081526004016106049190610ea9565b60405180910390fd5b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080156106fa578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516106f19190610c7d565b60405180910390a35b50505050565b600061070c8484610436565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461078e578181101561077e578281836040517ffb8f41b200000000000000000000000000000000000000000000000000000000815260040161077593929190610ec4565b60405180910390fd5b61078d84848484036000610529565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036108065760006040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081526004016107fd9190610ea9565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036108785760006040517fec442f0500000000000000000000000000000000000000000000000000000000815260040161086f9190610ea9565b60405180910390fd5b610883838383610888565b505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036108da5780600260008282546108ce9190610efb565b925050819055506109ad565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610966578381836040517fe450d38c00000000000000000000000000000000000000000000000000000000815260040161095d93929190610ec4565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036109f65780600260008282540392505081905550610a43565b806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610aa09190610c7d565b60405180910390a3505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610ae7578082015181840152602081019050610acc565b60008484015250505050565b6000601f19601f8301169050919050565b6000610b0f82610aad565b610b198185610ab8565b9350610b29818560208601610ac9565b610b3281610af3565b840191505092915050565b60006020820190508181036000830152610b578184610b04565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610b8f82610b64565b9050919050565b610b9f81610b84565b8114610baa57600080fd5b50565b600081359050610bbc81610b96565b92915050565b6000819050919050565b610bd581610bc2565b8114610be057600080fd5b50565b600081359050610bf281610bcc565b92915050565b60008060408385031215610c0f57610c0e610b5f565b5b6000610c1d85828601610bad565b9250506020610c2e85828601610be3565b9150509250929050565b60008115159050919050565b610c4d81610c38565b82525050565b6000602082019050610c686000830184610c44565b92915050565b610c7781610bc2565b82525050565b6000602082019050610c926000830184610c6e565b92915050565b600080600060608486031215610cb157610cb0610b5f565b5b6000610cbf86828701610bad565b9350506020610cd086828701610bad565b9250506040610ce186828701610be3565b9150509250925092565b600060ff82169050919050565b610d0181610ceb565b82525050565b6000602082019050610d1c6000830184610cf8565b92915050565b600060208284031215610d3857610d37610b5f565b5b6000610d4684828501610bad565b91505092915050565b60008060408385031215610d6657610d65610b5f565b5b6000610d7485828601610bad565b9250506020610d8585828601610bad565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680610dd657607f821691505b602082108103610de957610de8610d8f565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000610e2982610bc2565b9150610e3483610bc2565b9250828203905081811115610e4c57610e4b610def565b5b92915050565b6000610e5d82610bc2565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610e8f57610e8e610def565b5b600182019050919050565b610ea381610b84565b82525050565b6000602082019050610ebe6000830184610e9a565b92915050565b6000606082019050610ed96000830186610e9a565b610ee66020830185610c6e565b610ef36040830184610c6e565b949350505050565b6000610f0682610bc2565b9150610f1183610bc2565b9250828201905080821115610f2957610f28610def565b5b9291505056fea26469706673582212203bafddc7b544e22a6f9cb5cc7ac40e036ecc256d79e905ac7755e127f009825464736f6c63430008180033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100935760003560e01c8063313ce56711610066578063313ce5671461013457806370a082311461015257806395d89b4114610182578063a9059cbb146101a0578063dd62ed3e146101d057610093565b806306fdde0314610098578063095ea7b3146100b657806318160ddd146100e657806323b872dd14610104575b600080fd5b6100a0610200565b6040516100ad9190610b3d565b60405180910390f35b6100d060048036038101906100cb9190610bf8565b610292565b6040516100dd9190610c53565b60405180910390f35b6100ee6102b5565b6040516100fb9190610c7d565b60405180910390f35b61011e60048036038101906101199190610c98565b6102bf565b60405161012b9190610c53565b60405180910390f35b61013c61030a565b6040516101499190610d07565b60405180910390f35b61016c60048036038101906101679190610d22565b610313565b6040516101799190610c7d565b60405180910390f35b61018a61035b565b6040516101979190610b3d565b60405180910390f35b6101ba60048036038101906101b59190610bf8565b6103ed565b6040516101c79190610c53565b60405180910390f35b6101ea60048036038101906101e59190610d4f565b610436565b6040516101f79190610c7d565b60405180910390f35b60606003805461020f90610dbe565b80601f016020809104026020016040519081016040528092919081815260200182805461023b90610dbe565b80156102885780601f1061025d57610100808354040283529160200191610288565b820191906000526020600020905b81548152906001019060200180831161026b57829003601f168201915b5050505050905090565b60008061029d6104bd565b90506102aa8185856104c5565b600191505092915050565b6000600254905090565b60006205cc6060005a905060005b825a836102da9190610e1e565b10156102f35780806102eb90610e52565b9150506102cd565b6102fe8787876104d7565b93505050509392505050565b60006012905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60606004805461036a90610dbe565b80601f016020809104026020016040519081016040528092919081815260200182805461039690610dbe565b80156103e35780601f106103b8576101008083540402835291602001916103e3565b820191906000526020600020905b8154815290600101906020018083116103c657829003601f168201915b5050505050905090565b60006205cc6060005a905060005b825a836104089190610e1e565b101561042157808061041990610e52565b9150506103fb565b61042b8686610506565b935050505092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b6104d28383836001610529565b505050565b6000806104e26104bd565b90506104ef858285610700565b6104fa858585610794565b60019150509392505050565b6000806105116104bd565b905061051e818585610794565b600191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff160361059b5760006040517fe602df050000000000000000000000000000000000000000000000000000000081526004016105929190610ea9565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361060d5760006040517f94280d620000000000000000000000000000000000000000000000000000000081526004016106049190610ea9565b60405180910390fd5b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080156106fa578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516106f19190610c7d565b60405180910390a35b50505050565b600061070c8484610436565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461078e578181101561077e578281836040517ffb8f41b200000000000000000000000000000000000000000000000000000000815260040161077593929190610ec4565b60405180910390fd5b61078d84848484036000610529565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036108065760006040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081526004016107fd9190610ea9565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036108785760006040517fec442f0500000000000000000000000000000000000000000000000000000000815260040161086f9190610ea9565b60405180910390fd5b610883838383610888565b505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036108da5780600260008282546108ce9190610efb565b925050819055506109ad565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610966578381836040517fe450d38c00000000000000000000000000000000000000000000000000000000815260040161095d93929190610ec4565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036109f65780600260008282540392505081905550610a43565b806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610aa09190610c7d565b60405180910390a3505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610ae7578082015181840152602081019050610acc565b60008484015250505050565b6000601f19601f8301169050919050565b6000610b0f82610aad565b610b198185610ab8565b9350610b29818560208601610ac9565b610b3281610af3565b840191505092915050565b60006020820190508181036000830152610b578184610b04565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610b8f82610b64565b9050919050565b610b9f81610b84565b8114610baa57600080fd5b50565b600081359050610bbc81610b96565b92915050565b6000819050919050565b610bd581610bc2565b8114610be057600080fd5b50565b600081359050610bf281610bcc565b92915050565b60008060408385031215610c0f57610c0e610b5f565b5b6000610c1d85828601610bad565b9250506020610c2e85828601610be3565b9150509250929050565b60008115159050919050565b610c4d81610c38565b82525050565b6000602082019050610c686000830184610c44565b92915050565b610c7781610bc2565b82525050565b6000602082019050610c926000830184610c6e565b92915050565b600080600060608486031215610cb157610cb0610b5f565b5b6000610cbf86828701610bad565b9350506020610cd086828701610bad565b9250506040610ce186828701610be3565b9150509250925092565b600060ff82169050919050565b610d0181610ceb565b82525050565b6000602082019050610d1c6000830184610cf8565b92915050565b600060208284031215610d3857610d37610b5f565b5b6000610d4684828501610bad565b91505092915050565b60008060408385031215610d6657610d65610b5f565b5b6000610d7485828601610bad565b9250506020610d8585828601610bad565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680610dd657607f821691505b602082108103610de957610de8610d8f565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000610e2982610bc2565b9150610e3483610bc2565b9250828203905081811115610e4c57610e4b610def565b5b92915050565b6000610e5d82610bc2565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610e8f57610e8e610def565b5b600182019050919050565b610ea381610b84565b82525050565b6000602082019050610ebe6000830184610e9a565b92915050565b6000606082019050610ed96000830186610e9a565b610ee66020830185610c6e565b610ef36040830184610c6e565b949350505050565b6000610f0682610bc2565b9150610f1183610bc2565b9250828201905080821115610f2957610f28610def565b5b9291505056fea26469706673582212203bafddc7b544e22a6f9cb5cc7ac40e036ecc256d79e905ac7755e127f009825464736f6c63430008180033", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/scripts/test-contracts/artifacts/contracts/LogOrderProbe.sol/IERC20.json b/scripts/test-contracts/artifacts/contracts/LogOrderProbe.sol/IERC20.json new file mode 100644 index 0000000000..66919cc8e0 --- /dev/null +++ b/scripts/test-contracts/artifacts/contracts/LogOrderProbe.sol/IERC20.json @@ -0,0 +1,35 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "IERC20", + "sourceName": "contracts/LogOrderProbe.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/scripts/test-contracts/artifacts/contracts/LogOrderProbe.sol/LogOrderProbe.json b/scripts/test-contracts/artifacts/contracts/LogOrderProbe.sol/LogOrderProbe.json new file mode 100644 index 0000000000..e027268945 --- /dev/null +++ b/scripts/test-contracts/artifacts/contracts/LogOrderProbe.sol/LogOrderProbe.json @@ -0,0 +1,47 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "LogOrderProbe", + "sourceName": "contracts/LogOrderProbe.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "idx", + "type": "uint256" + } + ], + "name": "Marker", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "exercise", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506103c4806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063430c930414610030575b600080fd5b61004a600480360381019061004591906101d9565b61004c565b005b7f83264c98256454386201e4c55918ea57058c5c0052e60bd0b0f9a8fd2f3c1b24600060405161007c9190610271565b60405180910390a18273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b81526004016100bf9291906102aa565b6020604051808303816000875af11580156100de573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610102919061030b565b507f83264c98256454386201e4c55918ea57058c5c0052e60bd0b0f9a8fd2f3c1b2460016040516101339190610373565b60405180910390a1505050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061017082610145565b9050919050565b61018081610165565b811461018b57600080fd5b50565b60008135905061019d81610177565b92915050565b6000819050919050565b6101b6816101a3565b81146101c157600080fd5b50565b6000813590506101d3816101ad565b92915050565b6000806000606084860312156101f2576101f1610140565b5b60006102008682870161018e565b93505060206102118682870161018e565b9250506040610222868287016101c4565b9150509250925092565b6000819050919050565b6000819050919050565b600061025b6102566102518461022c565b610236565b6101a3565b9050919050565b61026b81610240565b82525050565b60006020820190506102866000830184610262565b92915050565b61029581610165565b82525050565b6102a4816101a3565b82525050565b60006040820190506102bf600083018561028c565b6102cc602083018461029b565b9392505050565b60008115159050919050565b6102e8816102d3565b81146102f357600080fd5b50565b600081519050610305816102df565b92915050565b60006020828403121561032157610320610140565b5b600061032f848285016102f6565b91505092915050565b6000819050919050565b600061035d61035861035384610338565b610236565b6101a3565b9050919050565b61036d81610342565b82525050565b60006020820190506103886000830184610364565b9291505056fea2646970667358221220737d96a602a1437aee784f9959dfb12b28e1ed46dc9f2f6dda81d7bb84adf3b164736f6c63430008180033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063430c930414610030575b600080fd5b61004a600480360381019061004591906101d9565b61004c565b005b7f83264c98256454386201e4c55918ea57058c5c0052e60bd0b0f9a8fd2f3c1b24600060405161007c9190610271565b60405180910390a18273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b81526004016100bf9291906102aa565b6020604051808303816000875af11580156100de573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610102919061030b565b507f83264c98256454386201e4c55918ea57058c5c0052e60bd0b0f9a8fd2f3c1b2460016040516101339190610373565b60405180910390a1505050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061017082610145565b9050919050565b61018081610165565b811461018b57600080fd5b50565b60008135905061019d81610177565b92915050565b6000819050919050565b6101b6816101a3565b81146101c157600080fd5b50565b6000813590506101d3816101ad565b92915050565b6000806000606084860312156101f2576101f1610140565b5b60006102008682870161018e565b93505060206102118682870161018e565b9250506040610222868287016101c4565b9150509250925092565b6000819050919050565b6000819050919050565b600061025b6102566102518461022c565b610236565b6101a3565b9050919050565b61026b81610240565b82525050565b60006020820190506102866000830184610262565b92915050565b61029581610165565b82525050565b6102a4816101a3565b82525050565b60006040820190506102bf600083018561028c565b6102cc602083018461029b565b9392505050565b60008115159050919050565b6102e8816102d3565b81146102f357600080fd5b50565b600081519050610305816102df565b92915050565b60006020828403121561032157610320610140565b5b600061032f848285016102f6565b91505092915050565b6000819050919050565b600061035d61035861035384610338565b610236565b6101a3565b9050919050565b61036d81610342565b82525050565b60006020820190506103886000830184610364565b9291505056fea2646970667358221220737d96a602a1437aee784f9959dfb12b28e1ed46dc9f2f6dda81d7bb84adf3b164736f6c63430008180033", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/scripts/test-contracts/artifacts/contracts/RevertingDispatcher.sol/IDispatcher.json b/scripts/test-contracts/artifacts/contracts/RevertingDispatcher.sol/IDispatcher.json new file mode 100644 index 0000000000..b7120d49e0 --- /dev/null +++ b/scripts/test-contracts/artifacts/contracts/RevertingDispatcher.sol/IDispatcher.json @@ -0,0 +1,30 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "IDispatcher", + "sourceName": "contracts/RevertingDispatcher.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "dispatch", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/scripts/test-contracts/artifacts/contracts/RevertingDispatcher.sol/RevertingDispatcher.json b/scripts/test-contracts/artifacts/contracts/RevertingDispatcher.sol/RevertingDispatcher.json new file mode 100644 index 0000000000..fea037c8fd --- /dev/null +++ b/scripts/test-contracts/artifacts/contracts/RevertingDispatcher.sol/RevertingDispatcher.json @@ -0,0 +1,42 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "RevertingDispatcher", + "sourceName": "contracts/RevertingDispatcher.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "idx", + "type": "uint256" + } + ], + "name": "Marker", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "dispatcher", + "type": "address" + }, + { + "internalType": "bytes", + "name": "sub_call_data", + "type": "bytes" + } + ], + "name": "try_dispatch_then_revert", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610530806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80634351d80014610030575b600080fd5b61004a60048036038101906100459190610273565b61004c565b005b7f83264c98256454386201e4c55918ea57058c5c0052e60bd0b0f9a8fd2f3c1b24600060405161007c9190610322565b60405180910390a160008373ffffffffffffffffffffffffffffffffffffffff1683836040516100ad92919061037c565b6000604051808303816000865af19150503d80600081146100ea576040519150601f19603f3d011682016040523d82523d6000602084013e6100ef565b606091505b5050905080610133576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161012a906103f2565b60405180910390fd5b7f83264c98256454386201e4c55918ea57058c5c0052e60bd0b0f9a8fd2f3c1b246001604051610163919061044d565b60405180910390a16040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161019d906104da565b60405180910390fd5b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006101db826101b0565b9050919050565b6101eb816101d0565b81146101f657600080fd5b50565b600081359050610208816101e2565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126102335761023261020e565b5b8235905067ffffffffffffffff8111156102505761024f610213565b5b60208301915083600182028301111561026c5761026b610218565b5b9250929050565b60008060006040848603121561028c5761028b6101a6565b5b600061029a868287016101f9565b935050602084013567ffffffffffffffff8111156102bb576102ba6101ab565b5b6102c78682870161021d565b92509250509250925092565b6000819050919050565b6000819050919050565b6000819050919050565b600061030c610307610302846102d3565b6102e7565b6102dd565b9050919050565b61031c816102f1565b82525050565b60006020820190506103376000830184610313565b92915050565b600081905092915050565b82818337600083830152505050565b6000610363838561033d565b9350610370838584610348565b82840190509392505050565b6000610389828486610357565b91508190509392505050565b600082825260208201905092915050565b7f6469737061746368206661696c65640000000000000000000000000000000000600082015250565b60006103dc600f83610395565b91506103e7826103a6565b602082019050919050565b6000602082019050818103600083015261040b816103cf565b9050919050565b6000819050919050565b600061043761043261042d84610412565b6102e7565b6102dd565b9050919050565b6104478161041c565b82525050565b6000602082019050610462600083018461043e565b92915050565b7f696e74656e74696f6e616c20726576657274206166746572206469737061746360008201527f6800000000000000000000000000000000000000000000000000000000000000602082015250565b60006104c4602183610395565b91506104cf82610468565b604082019050919050565b600060208201905081810360008301526104f3816104b7565b905091905056fea264697066735822122006a2182eb335756d2c37f9d3e077a3a7856fa3899cb4f90410c9cca0029aee4464736f6c63430008180033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c80634351d80014610030575b600080fd5b61004a60048036038101906100459190610273565b61004c565b005b7f83264c98256454386201e4c55918ea57058c5c0052e60bd0b0f9a8fd2f3c1b24600060405161007c9190610322565b60405180910390a160008373ffffffffffffffffffffffffffffffffffffffff1683836040516100ad92919061037c565b6000604051808303816000865af19150503d80600081146100ea576040519150601f19603f3d011682016040523d82523d6000602084013e6100ef565b606091505b5050905080610133576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161012a906103f2565b60405180910390fd5b7f83264c98256454386201e4c55918ea57058c5c0052e60bd0b0f9a8fd2f3c1b246001604051610163919061044d565b60405180910390a16040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161019d906104da565b60405180910390fd5b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006101db826101b0565b9050919050565b6101eb816101d0565b81146101f657600080fd5b50565b600081359050610208816101e2565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126102335761023261020e565b5b8235905067ffffffffffffffff8111156102505761024f610213565b5b60208301915083600182028301111561026c5761026b610218565b5b9250929050565b60008060006040848603121561028c5761028b6101a6565b5b600061029a868287016101f9565b935050602084013567ffffffffffffffff8111156102bb576102ba6101ab565b5b6102c78682870161021d565b92509250509250925092565b6000819050919050565b6000819050919050565b6000819050919050565b600061030c610307610302846102d3565b6102e7565b6102dd565b9050919050565b61031c816102f1565b82525050565b60006020820190506103376000830184610313565b92915050565b600081905092915050565b82818337600083830152505050565b6000610363838561033d565b9350610370838584610348565b82840190509392505050565b6000610389828486610357565b91508190509392505050565b600082825260208201905092915050565b7f6469737061746368206661696c65640000000000000000000000000000000000600082015250565b60006103dc600f83610395565b91506103e7826103a6565b602082019050919050565b6000602082019050818103600083015261040b816103cf565b9050919050565b6000819050919050565b600061043761043261042d84610412565b6102e7565b6102dd565b9050919050565b6104478161041c565b82525050565b6000602082019050610462600083018461043e565b92915050565b7f696e74656e74696f6e616c20726576657274206166746572206469737061746360008201527f6800000000000000000000000000000000000000000000000000000000000000602082015250565b60006104c4602183610395565b91506104cf82610468565b604082019050919050565b600060208201905081810360008301526104f3816104b7565b905091905056fea264697066735822122006a2182eb335756d2c37f9d3e077a3a7856fa3899cb4f90410c9cca0029aee4464736f6c63430008180033", + "linkReferences": {}, + "deployedLinkReferences": {} +} diff --git a/scripts/test-contracts/contracts/LogOrderProbe.sol b/scripts/test-contracts/contracts/LogOrderProbe.sol new file mode 100644 index 0000000000..b1eede4aa6 --- /dev/null +++ b/scripts/test-contracts/contracts/LogOrderProbe.sol @@ -0,0 +1,28 @@ +// SPDX-License-Identifier: UNLICENSED +pragma solidity ^0.8.24; + +interface IERC20 { + function transfer(address to, uint256 amount) external returns (bool); +} + +/// Probe contract used to verify EVM log ordering. +/// +/// `exercise(token, to, amount)` emits Marker(0), then calls +/// token.transfer(to, amount) (which goes through the multicurrency +/// precompile and triggers the substrate-side hook), then emits Marker(1). +/// +/// In the resulting receipt logs we expect log_index ordering: +/// [Marker(0), Transfer(from=this, to=to, value=amount), Marker(1)] +/// +/// — proving that substrate-hook-emitted logs land at the precompile's +/// call site (via the per-precompile drain) and are NOT bunched at the +/// end of the EVM frame's logs. +contract LogOrderProbe { + event Marker(uint256 idx); + + function exercise(address token, address to, uint256 amount) external { + emit Marker(0); + IERC20(token).transfer(to, amount); + emit Marker(1); + } +} diff --git a/scripts/test-contracts/contracts/RevertingDispatcher.sol b/scripts/test-contracts/contracts/RevertingDispatcher.sol new file mode 100644 index 0000000000..8662cfd4c8 --- /dev/null +++ b/scripts/test-contracts/contracts/RevertingDispatcher.sol @@ -0,0 +1,28 @@ +// SPDX-License-Identifier: UNLICENSED +pragma solidity ^0.8.24; + +interface IDispatcher { + function dispatch(bytes calldata) external returns (bool); +} + +/// Probe for the "revert with substrate state changes pending" path. +/// +/// `try_dispatch_then_revert(target, data)` calls `target.call(data)` (assumed +/// to be the dispatcher precompile) and then unconditionally reverts. +/// The dispatch's substrate state changes get rolled back by pallet_evm's +/// `with_storage_layer` wrapping; the dispatcher's inline-emitted logs get +/// dropped by frontier when the outer frame reverts (substate logs are +/// cleared on revert). This contract verifies that NO Transfer logs leak +/// into the resulting eth-tx receipt or the synthetic-logs buffer when the +/// outer EVM frame reverts. +contract RevertingDispatcher { + event Marker(uint256 idx); + + function try_dispatch_then_revert(address dispatcher, bytes calldata sub_call_data) external { + emit Marker(0); + (bool ok, ) = dispatcher.call(sub_call_data); + require(ok, "dispatch failed"); + emit Marker(1); + revert("intentional revert after dispatch"); + } +}