mirror of
https://github.com/datahaven-xyz/datahaven
synced 2026-05-24 09:50:01 +00:00
Merge branch 'main' into fix/dont-pop-slash-on-failure
This commit is contained in:
commit
9b0c334096
18 changed files with 701 additions and 174 deletions
287
operator/Cargo.lock
generated
287
operator/Cargo.lock
generated
|
|
@ -1521,7 +1521,7 @@ dependencies = [
|
|||
"pallet-message-queue",
|
||||
"parity-scale-codec",
|
||||
"scale-info",
|
||||
"snowbridge-core 0.20.0",
|
||||
"snowbridge-core 0.21.0",
|
||||
"sp-core",
|
||||
"sp-runtime",
|
||||
"sp-std",
|
||||
|
|
@ -2607,7 +2607,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "datahaven-mainnet-runtime"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"alloy-core",
|
||||
"bridge-hub-common 0.13.1",
|
||||
|
|
@ -2684,6 +2684,7 @@ dependencies = [
|
|||
"pallet-proofs-dealer",
|
||||
"pallet-proofs-dealer-runtime-api",
|
||||
"pallet-proxy",
|
||||
"pallet-proxy-genesis-companion",
|
||||
"pallet-randomness",
|
||||
"pallet-referenda",
|
||||
"pallet-safe-mode",
|
||||
|
|
@ -2705,6 +2706,7 @@ dependencies = [
|
|||
"polkadot-runtime-common",
|
||||
"precompile-utils",
|
||||
"scale-info",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"shc-common",
|
||||
"shp-constants",
|
||||
|
|
@ -2716,8 +2718,8 @@ dependencies = [
|
|||
"shp-treasury-funding",
|
||||
"shp-tx-implicits-runtime-api",
|
||||
"smallvec",
|
||||
"snowbridge-beacon-primitives 0.20.0",
|
||||
"snowbridge-core 0.20.0",
|
||||
"snowbridge-beacon-primitives 0.21.0",
|
||||
"snowbridge-core 0.21.0",
|
||||
"snowbridge-inbound-queue-primitives",
|
||||
"snowbridge-merkle-tree",
|
||||
"snowbridge-outbound-queue-primitives",
|
||||
|
|
@ -2760,7 +2762,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "datahaven-node"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"async-channel 1.9.0",
|
||||
"clap",
|
||||
|
|
@ -2871,7 +2873,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "datahaven-runtime-common"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"alloy-core",
|
||||
"fp-account",
|
||||
|
|
@ -2905,7 +2907,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "datahaven-stagenet-runtime"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"alloy-core",
|
||||
"bridge-hub-common 0.13.1",
|
||||
|
|
@ -2982,6 +2984,7 @@ dependencies = [
|
|||
"pallet-proofs-dealer",
|
||||
"pallet-proofs-dealer-runtime-api",
|
||||
"pallet-proxy",
|
||||
"pallet-proxy-genesis-companion",
|
||||
"pallet-randomness",
|
||||
"pallet-referenda",
|
||||
"pallet-safe-mode",
|
||||
|
|
@ -3003,6 +3006,7 @@ dependencies = [
|
|||
"polkadot-runtime-common",
|
||||
"precompile-utils",
|
||||
"scale-info",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"shc-common",
|
||||
"shp-constants",
|
||||
|
|
@ -3014,8 +3018,8 @@ dependencies = [
|
|||
"shp-treasury-funding",
|
||||
"shp-tx-implicits-runtime-api",
|
||||
"smallvec",
|
||||
"snowbridge-beacon-primitives 0.20.0",
|
||||
"snowbridge-core 0.20.0",
|
||||
"snowbridge-beacon-primitives 0.21.0",
|
||||
"snowbridge-core 0.21.0",
|
||||
"snowbridge-inbound-queue-primitives",
|
||||
"snowbridge-merkle-tree",
|
||||
"snowbridge-outbound-queue-primitives",
|
||||
|
|
@ -3058,7 +3062,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "datahaven-testnet-runtime"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"alloy-core",
|
||||
"bridge-hub-common 0.13.1",
|
||||
|
|
@ -3135,6 +3139,7 @@ dependencies = [
|
|||
"pallet-proofs-dealer",
|
||||
"pallet-proofs-dealer-runtime-api",
|
||||
"pallet-proxy",
|
||||
"pallet-proxy-genesis-companion",
|
||||
"pallet-randomness",
|
||||
"pallet-referenda",
|
||||
"pallet-safe-mode",
|
||||
|
|
@ -3156,6 +3161,7 @@ dependencies = [
|
|||
"polkadot-runtime-common",
|
||||
"precompile-utils",
|
||||
"scale-info",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"shc-common",
|
||||
"shp-constants",
|
||||
|
|
@ -3167,8 +3173,8 @@ dependencies = [
|
|||
"shp-treasury-funding",
|
||||
"shp-tx-implicits-runtime-api",
|
||||
"smallvec",
|
||||
"snowbridge-beacon-primitives 0.20.0",
|
||||
"snowbridge-core 0.20.0",
|
||||
"snowbridge-beacon-primitives 0.21.0",
|
||||
"snowbridge-core 0.21.0",
|
||||
"snowbridge-inbound-queue-primitives",
|
||||
"snowbridge-merkle-tree",
|
||||
"snowbridge-outbound-queue-primitives",
|
||||
|
|
@ -3360,7 +3366,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "dhp-bridge"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"frame-support",
|
||||
"frame-system",
|
||||
|
|
@ -3368,7 +3374,7 @@ dependencies = [
|
|||
"pallet-datahaven-native-transfer",
|
||||
"pallet-external-validators",
|
||||
"parity-scale-codec",
|
||||
"snowbridge-core 0.20.0",
|
||||
"snowbridge-core 0.21.0",
|
||||
"snowbridge-inbound-queue-primitives",
|
||||
"sp-core",
|
||||
"sp-std",
|
||||
|
|
@ -8618,8 +8624,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pallet-bucket-nfts"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"frame-benchmarking",
|
||||
"frame-support",
|
||||
|
|
@ -8675,8 +8681,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pallet-cr-randomness"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"frame-support",
|
||||
"frame-system",
|
||||
|
|
@ -8695,7 +8701,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pallet-datahaven-native-transfer"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"frame-benchmarking",
|
||||
"frame-support",
|
||||
|
|
@ -8703,7 +8709,7 @@ dependencies = [
|
|||
"pallet-balances",
|
||||
"parity-scale-codec",
|
||||
"scale-info",
|
||||
"snowbridge-core 0.20.0",
|
||||
"snowbridge-core 0.21.0",
|
||||
"snowbridge-outbound-queue-primitives",
|
||||
"sp-core",
|
||||
"sp-io",
|
||||
|
|
@ -8807,7 +8813,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pallet-evm-precompile-balances-erc20"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"fp-evm",
|
||||
"frame-support",
|
||||
|
|
@ -8830,7 +8836,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pallet-evm-precompile-batch"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"evm",
|
||||
"fp-evm",
|
||||
|
|
@ -8869,7 +8875,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pallet-evm-precompile-call-permit"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"evm",
|
||||
"fp-evm",
|
||||
|
|
@ -8935,7 +8941,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pallet-evm-precompile-datahaven-native-transfer"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"evm",
|
||||
"fp-evm",
|
||||
|
|
@ -8949,7 +8955,7 @@ dependencies = [
|
|||
"parity-scale-codec",
|
||||
"precompile-utils",
|
||||
"scale-info",
|
||||
"snowbridge-core 0.20.0",
|
||||
"snowbridge-core 0.21.0",
|
||||
"snowbridge-outbound-queue-primitives",
|
||||
"sp-core",
|
||||
"sp-io",
|
||||
|
|
@ -8959,8 +8965,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pallet-evm-precompile-file-system"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"fp-account",
|
||||
"fp-evm",
|
||||
|
|
@ -9028,7 +9034,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pallet-evm-precompile-proxy"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"evm",
|
||||
"fp-evm",
|
||||
|
|
@ -9072,7 +9078,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pallet-evm-precompile-registry"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"fp-evm",
|
||||
"frame-support",
|
||||
|
|
@ -9123,7 +9129,7 @@ dependencies = [
|
|||
"parity-scale-codec",
|
||||
"scale-info",
|
||||
"serde",
|
||||
"snowbridge-core 0.20.0",
|
||||
"snowbridge-core 0.21.0",
|
||||
"snowbridge-outbound-queue-primitives",
|
||||
"sp-core",
|
||||
"sp-io",
|
||||
|
|
@ -9133,7 +9139,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pallet-external-validators"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"frame-benchmarking",
|
||||
"frame-support",
|
||||
|
|
@ -9157,7 +9163,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pallet-external-validators-rewards"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"frame-benchmarking",
|
||||
"frame-support",
|
||||
|
|
@ -9170,7 +9176,7 @@ dependencies = [
|
|||
"pallet-timestamp",
|
||||
"parity-scale-codec",
|
||||
"scale-info",
|
||||
"snowbridge-core 0.20.0",
|
||||
"snowbridge-core 0.21.0",
|
||||
"snowbridge-outbound-queue-primitives",
|
||||
"sp-core",
|
||||
"sp-io",
|
||||
|
|
@ -9199,8 +9205,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pallet-file-system"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"frame-benchmarking",
|
||||
"frame-support",
|
||||
|
|
@ -9226,8 +9232,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pallet-file-system-runtime-api"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"parity-scale-codec",
|
||||
"scale-info",
|
||||
|
|
@ -9394,7 +9400,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pallet-outbound-commitment-store"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"frame-support",
|
||||
"frame-system",
|
||||
|
|
@ -9422,8 +9428,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pallet-payment-streams"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"frame-benchmarking",
|
||||
"frame-support",
|
||||
|
|
@ -9442,8 +9448,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pallet-payment-streams-runtime-api"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"parity-scale-codec",
|
||||
"scale-info",
|
||||
|
|
@ -9470,8 +9476,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pallet-proofs-dealer"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"frame-benchmarking",
|
||||
"frame-support",
|
||||
|
|
@ -9492,8 +9498,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pallet-proofs-dealer-runtime-api"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"parity-scale-codec",
|
||||
"scale-info",
|
||||
|
|
@ -9512,10 +9518,27 @@ dependencies = [
|
|||
"scale-info",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "pallet-proxy-genesis-companion"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"frame-support",
|
||||
"frame-system",
|
||||
"pallet-balances",
|
||||
"pallet-proxy",
|
||||
"parity-scale-codec",
|
||||
"scale-info",
|
||||
"serde",
|
||||
"sp-core",
|
||||
"sp-io",
|
||||
"sp-runtime",
|
||||
"sp-std",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "pallet-randomness"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"frame-benchmarking",
|
||||
"frame-support",
|
||||
|
|
@ -9655,8 +9678,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pallet-storage-providers"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"frame-benchmarking",
|
||||
"frame-support",
|
||||
|
|
@ -9677,8 +9700,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "pallet-storage-providers-runtime-api"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"parity-scale-codec",
|
||||
"scale-info",
|
||||
|
|
@ -13840,8 +13863,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shc-actors-derive"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"once_cell",
|
||||
"proc-macro2",
|
||||
|
|
@ -13853,8 +13876,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shc-actors-framework"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"bincode",
|
||||
|
|
@ -13872,8 +13895,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shc-blockchain-service"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"array-bytes",
|
||||
|
|
@ -13928,8 +13951,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shc-blockchain-service-db"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"chrono",
|
||||
"diesel",
|
||||
|
|
@ -13952,8 +13975,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shc-client"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"array-bytes",
|
||||
|
|
@ -14026,8 +14049,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shc-common"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"bigdecimal",
|
||||
|
|
@ -14090,8 +14113,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shc-file-manager"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"bincode",
|
||||
"hash-db",
|
||||
|
|
@ -14114,8 +14137,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shc-file-transfer-service"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"array-bytes",
|
||||
|
|
@ -14143,8 +14166,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shc-fisherman-service"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"async-trait",
|
||||
"diesel",
|
||||
|
|
@ -14174,8 +14197,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shc-forest-manager"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"async-trait",
|
||||
|
|
@ -14200,8 +14223,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shc-indexer-db"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"bigdecimal",
|
||||
"chrono",
|
||||
|
|
@ -14228,8 +14251,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shc-indexer-service"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"array-bytes",
|
||||
|
|
@ -14279,8 +14302,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shc-rpc"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"array-bytes",
|
||||
"async-trait",
|
||||
|
|
@ -14325,8 +14348,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shc-telemetry"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"log",
|
||||
"substrate-prometheus-endpoint",
|
||||
|
|
@ -14342,8 +14365,8 @@ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
|
|||
|
||||
[[package]]
|
||||
name = "shp-constants"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"sp-core",
|
||||
"sp-runtime",
|
||||
|
|
@ -14351,8 +14374,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shp-data-price-updater"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"frame-support",
|
||||
"parity-scale-codec",
|
||||
|
|
@ -14366,8 +14389,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shp-file-key-verifier"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"frame-support",
|
||||
"parity-scale-codec",
|
||||
|
|
@ -14384,8 +14407,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shp-file-metadata"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"hex",
|
||||
"num-bigint",
|
||||
|
|
@ -14400,8 +14423,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shp-forest-verifier"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"frame-support",
|
||||
"parity-scale-codec",
|
||||
|
|
@ -14417,16 +14440,16 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shp-opaque"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"sp-runtime",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "shp-session-keys"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"async-trait",
|
||||
"parity-scale-codec",
|
||||
|
|
@ -14440,8 +14463,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shp-traits"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"frame-support",
|
||||
"parity-scale-codec",
|
||||
|
|
@ -14454,8 +14477,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shp-treasury-funding"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"log",
|
||||
"shp-traits",
|
||||
|
|
@ -14465,8 +14488,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shp-tx-implicits-runtime-api"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"parity-scale-codec",
|
||||
"scale-info",
|
||||
|
|
@ -14478,8 +14501,8 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "shp-types"
|
||||
version = "0.3.3"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.3#57d2a195d58d39e0d6e38a927ec312dd0f640522"
|
||||
version = "0.3.5"
|
||||
source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.5#e21f2316c07e9fc43fc67f20373e6c24a8f4d5ae"
|
||||
dependencies = [
|
||||
"sp-core",
|
||||
"sp-runtime",
|
||||
|
|
@ -14759,7 +14782,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "snowbridge-beacon-primitives"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"byte-slice-cast",
|
||||
"frame-support",
|
||||
|
|
@ -14804,7 +14827,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "snowbridge-core"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"bp-relayers",
|
||||
"ethabi-decode",
|
||||
|
|
@ -14881,8 +14904,8 @@ dependencies = [
|
|||
"log",
|
||||
"parity-scale-codec",
|
||||
"scale-info",
|
||||
"snowbridge-beacon-primitives 0.20.0",
|
||||
"snowbridge-core 0.20.0",
|
||||
"snowbridge-beacon-primitives 0.21.0",
|
||||
"snowbridge-core 0.21.0",
|
||||
"snowbridge-verification-primitives",
|
||||
"sp-core",
|
||||
"sp-io",
|
||||
|
|
@ -14895,7 +14918,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "snowbridge-merkle-tree"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"array-bytes",
|
||||
"hex",
|
||||
|
|
@ -14936,7 +14959,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "snowbridge-outbound-queue-primitives"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"alloy-core",
|
||||
"ethabi-decode",
|
||||
|
|
@ -14948,7 +14971,7 @@ dependencies = [
|
|||
"parity-scale-codec",
|
||||
"polkadot-parachain-primitives",
|
||||
"scale-info",
|
||||
"snowbridge-core 0.20.0",
|
||||
"snowbridge-core 0.21.0",
|
||||
"snowbridge-verification-primitives",
|
||||
"sp-arithmetic",
|
||||
"sp-core",
|
||||
|
|
@ -14962,12 +14985,12 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "snowbridge-outbound-queue-v2-runtime-api"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"frame-support",
|
||||
"parity-scale-codec",
|
||||
"scale-info",
|
||||
"snowbridge-core 0.20.0",
|
||||
"snowbridge-core 0.21.0",
|
||||
"snowbridge-merkle-tree",
|
||||
"snowbridge-outbound-queue-primitives",
|
||||
"sp-api",
|
||||
|
|
@ -14977,7 +15000,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "snowbridge-pallet-ethereum-client"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"frame-benchmarking",
|
||||
"frame-support",
|
||||
|
|
@ -14990,8 +15013,8 @@ dependencies = [
|
|||
"scale-info",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"snowbridge-beacon-primitives 0.20.0",
|
||||
"snowbridge-core 0.20.0",
|
||||
"snowbridge-beacon-primitives 0.21.0",
|
||||
"snowbridge-core 0.21.0",
|
||||
"snowbridge-ethereum 0.3.0",
|
||||
"snowbridge-inbound-queue-primitives",
|
||||
"snowbridge-pallet-ethereum-client-fixtures",
|
||||
|
|
@ -15007,8 +15030,8 @@ name = "snowbridge-pallet-ethereum-client-fixtures"
|
|||
version = "0.9.0"
|
||||
dependencies = [
|
||||
"hex-literal 0.3.4",
|
||||
"snowbridge-beacon-primitives 0.20.0",
|
||||
"snowbridge-core 0.20.0",
|
||||
"snowbridge-beacon-primitives 0.21.0",
|
||||
"snowbridge-core 0.21.0",
|
||||
"snowbridge-inbound-queue-primitives",
|
||||
"sp-core",
|
||||
"sp-std",
|
||||
|
|
@ -15016,7 +15039,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "snowbridge-pallet-inbound-queue-v2"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"alloy-core",
|
||||
"bp-relayers",
|
||||
|
|
@ -15030,8 +15053,8 @@ dependencies = [
|
|||
"parity-scale-codec",
|
||||
"scale-info",
|
||||
"serde",
|
||||
"snowbridge-beacon-primitives 0.20.0",
|
||||
"snowbridge-core 0.20.0",
|
||||
"snowbridge-beacon-primitives 0.21.0",
|
||||
"snowbridge-core 0.21.0",
|
||||
"snowbridge-inbound-queue-primitives",
|
||||
"snowbridge-pallet-ethereum-client",
|
||||
"snowbridge-pallet-inbound-queue-v2-fixtures",
|
||||
|
|
@ -15052,8 +15075,8 @@ name = "snowbridge-pallet-inbound-queue-v2-fixtures"
|
|||
version = "0.10.0"
|
||||
dependencies = [
|
||||
"hex-literal 0.3.4",
|
||||
"snowbridge-beacon-primitives 0.20.0",
|
||||
"snowbridge-core 0.20.0",
|
||||
"snowbridge-beacon-primitives 0.21.0",
|
||||
"snowbridge-core 0.21.0",
|
||||
"snowbridge-inbound-queue-primitives",
|
||||
"sp-core",
|
||||
"sp-std",
|
||||
|
|
@ -15083,7 +15106,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "snowbridge-pallet-outbound-queue-v2"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"alloy-core",
|
||||
"bp-relayers",
|
||||
|
|
@ -15097,8 +15120,8 @@ dependencies = [
|
|||
"parity-scale-codec",
|
||||
"scale-info",
|
||||
"serde",
|
||||
"snowbridge-beacon-primitives 0.20.0",
|
||||
"snowbridge-core 0.20.0",
|
||||
"snowbridge-beacon-primitives 0.21.0",
|
||||
"snowbridge-core 0.21.0",
|
||||
"snowbridge-inbound-queue-primitives",
|
||||
"snowbridge-merkle-tree",
|
||||
"snowbridge-outbound-queue-primitives",
|
||||
|
|
@ -15129,7 +15152,7 @@ dependencies = [
|
|||
"parity-scale-codec",
|
||||
"polkadot-primitives",
|
||||
"scale-info",
|
||||
"snowbridge-core 0.20.0",
|
||||
"snowbridge-core 0.21.0",
|
||||
"snowbridge-outbound-queue-primitives",
|
||||
"snowbridge-pallet-outbound-queue",
|
||||
"sp-core",
|
||||
|
|
@ -15142,7 +15165,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "snowbridge-pallet-system-v2"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"frame-benchmarking",
|
||||
"frame-support",
|
||||
|
|
@ -15154,7 +15177,7 @@ dependencies = [
|
|||
"parity-scale-codec",
|
||||
"polkadot-primitives",
|
||||
"scale-info",
|
||||
"snowbridge-core 0.20.0",
|
||||
"snowbridge-core 0.21.0",
|
||||
"snowbridge-outbound-queue-primitives",
|
||||
"snowbridge-pallet-outbound-queue-v2",
|
||||
"snowbridge-pallet-system",
|
||||
|
|
@ -15170,10 +15193,10 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "snowbridge-system-v2-runtime-api"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"parity-scale-codec",
|
||||
"snowbridge-core 0.20.0",
|
||||
"snowbridge-core 0.21.0",
|
||||
"sp-api",
|
||||
"sp-std",
|
||||
"staging-xcm",
|
||||
|
|
@ -15181,7 +15204,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "snowbridge-test-utils"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"frame-benchmarking",
|
||||
"frame-support",
|
||||
|
|
@ -15201,12 +15224,12 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "snowbridge-verification-primitives"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
dependencies = [
|
||||
"frame-support",
|
||||
"parity-scale-codec",
|
||||
"scale-info",
|
||||
"snowbridge-beacon-primitives 0.20.0",
|
||||
"snowbridge-beacon-primitives 0.21.0",
|
||||
"sp-core",
|
||||
"sp-std",
|
||||
]
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ edition = "2021"
|
|||
homepage = "https://datahaven.xyz/"
|
||||
license = "GPL-3"
|
||||
repository = "https://github.com/datahavenxyz/datahaven"
|
||||
version = "0.20.0"
|
||||
version = "0.21.0"
|
||||
|
||||
[workspace]
|
||||
members = [
|
||||
|
|
@ -43,6 +43,7 @@ pallet-external-validator-slashes = { path = "./pallets/external-validator-slash
|
|||
pallet-external-validators = { path = "./pallets/external-validators", default-features = false }
|
||||
pallet-external-validators-rewards = { path = "./pallets/external-validators-rewards", default-features = false }
|
||||
pallet-outbound-commitment-store = { path = "./pallets/outbound-commitment-store", default-features = false }
|
||||
pallet-proxy-genesis-companion = { path = "./pallets/proxy-genesis-companion", default-features = false }
|
||||
|
||||
# Crates.io (wasm)
|
||||
alloy-core = { version = "0.8.15", default-features = false }
|
||||
|
|
@ -265,42 +266,42 @@ fc-storage = { git = "https://github.com/polkadot-evm/frontier", branch = "stabl
|
|||
|
||||
# StorageHub
|
||||
## Runtime
|
||||
pallet-bucket-nfts = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
pallet-cr-randomness = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
pallet-file-system = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
pallet-file-system-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
pallet-payment-streams = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
pallet-payment-streams-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
pallet-proofs-dealer = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
pallet-proofs-dealer-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
pallet-randomness = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
pallet-storage-providers = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
pallet-storage-providers-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shp-constants = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shp-data-price-updater = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shp-file-key-verifier = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shp-file-metadata = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shp-forest-verifier = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shp-traits = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shp-treasury-funding = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
pallet-bucket-nfts = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
pallet-cr-randomness = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
pallet-file-system = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
pallet-file-system-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
pallet-payment-streams = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
pallet-payment-streams-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
pallet-proofs-dealer = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
pallet-proofs-dealer-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
pallet-randomness = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
pallet-storage-providers = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
pallet-storage-providers-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
shp-constants = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
shp-data-price-updater = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
shp-file-key-verifier = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
shp-file-metadata = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
shp-forest-verifier = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
shp-traits = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
shp-treasury-funding = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
## Client
|
||||
shc-actors-derive = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shc-actors-framework = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shc-blockchain-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shc-client = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shc-common = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shc-file-manager = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shc-file-transfer-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shc-fisherman-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shc-forest-manager = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shc-indexer-db = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shc-indexer-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shc-rpc = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shp-opaque = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shp-tx-implicits-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shp-types = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
shc-actors-derive = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
shc-actors-framework = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
shc-blockchain-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
shc-client = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
shc-common = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
shc-file-manager = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
shc-file-transfer-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
shc-fisherman-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
shc-forest-manager = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
shc-indexer-db = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
shc-indexer-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
shc-rpc = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
shp-opaque = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
shp-tx-implicits-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
shp-types = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
## Precompiles
|
||||
pallet-evm-precompile-file-system = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.3", default-features = false }
|
||||
pallet-evm-precompile-file-system = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.5", default-features = false }
|
||||
|
||||
|
||||
# Static linking
|
||||
|
|
|
|||
|
|
@ -24,6 +24,7 @@ use shc_client::builder::{
|
|||
BspUploadFileOptions, FishermanOptions, IndexerOptions, MspChargeFeesOptions,
|
||||
MspMoveBucketOptions,
|
||||
};
|
||||
use shc_indexer_db::models::{FileFiltering, FileOrdering};
|
||||
use shc_indexer_service::IndexerMode;
|
||||
use shc_rpc::RpcConfig;
|
||||
use shp_types::StorageDataUnit;
|
||||
|
|
@ -300,6 +301,15 @@ pub struct ProviderConfigurations {
|
|||
#[arg(long, value_name = "COUNT", default_value = "1024")]
|
||||
pub internal_buffer_size: Option<u64>,
|
||||
|
||||
/// Maximum number of MSP respond storage requests to batch together (default: 20)
|
||||
#[arg(
|
||||
long,
|
||||
value_name = "COUNT",
|
||||
help_heading = "Blockchain Service Options",
|
||||
default_value = "20"
|
||||
)]
|
||||
pub msp_respond_storage_batch_size: Option<u32>,
|
||||
|
||||
// ============== MSP Charge Fees task options ==============
|
||||
/// Enable and configure MSP Charge Fees task.
|
||||
#[arg(long)]
|
||||
|
|
@ -383,6 +393,15 @@ pub struct ProviderConfigurations {
|
|||
)]
|
||||
pub bsp_upload_file_max_tip: Option<u128>,
|
||||
|
||||
/// Maximum number of BSP confirm storing requests to batch together (default: 20)
|
||||
#[arg(
|
||||
long,
|
||||
value_name = "COUNT",
|
||||
help_heading = "Blockchain Service Options",
|
||||
default_value = "20"
|
||||
)]
|
||||
pub bsp_confirm_file_batch_size: Option<u32>,
|
||||
|
||||
// ============== BSP Move Bucket task options ==============
|
||||
/// Enable and configure BSP Move Bucket task.
|
||||
#[arg(long)]
|
||||
|
|
@ -593,6 +612,16 @@ impl ProviderConfigurations {
|
|||
bs_changed = true;
|
||||
}
|
||||
|
||||
if let Some(bsp_confirm_file_batch_size) = self.bsp_confirm_file_batch_size {
|
||||
bs_options.bsp_confirm_file_batch_size = Some(bsp_confirm_file_batch_size);
|
||||
bs_changed = true;
|
||||
}
|
||||
|
||||
if let Some(msp_respond_storage_batch_size) = self.msp_respond_storage_batch_size {
|
||||
bs_options.msp_respond_storage_batch_size = Some(msp_respond_storage_batch_size);
|
||||
bs_changed = true;
|
||||
}
|
||||
|
||||
// Set MSP distribution flag if provided on CLI and role is MSP
|
||||
if self.msp_distribute_files && provider_type == ProviderType::Msp {
|
||||
bs_options.enable_msp_distribute_files = Some(true);
|
||||
|
|
@ -674,6 +703,26 @@ impl IndexerConfigurations {
|
|||
}
|
||||
}
|
||||
|
||||
/// Filtering strategy for fisherman pending deletion queries.
|
||||
#[derive(ValueEnum, Clone, Debug, Default)]
|
||||
pub enum FishermanFiltering {
|
||||
/// No filtering - process all pending deletions (default).
|
||||
#[default]
|
||||
None,
|
||||
/// TTL-based filtering - skip deletions pending longer than threshold.
|
||||
Ttl,
|
||||
}
|
||||
|
||||
/// Ordering strategy for fisherman pending deletion queries.
|
||||
#[derive(ValueEnum, Clone, Debug, Default)]
|
||||
pub enum FishermanOrdering {
|
||||
/// Chronological ordering - process oldest deletions first (FIFO, default).
|
||||
#[default]
|
||||
Chronological,
|
||||
/// Randomized ordering - shuffle processing order.
|
||||
Randomized,
|
||||
}
|
||||
|
||||
#[derive(Debug, Parser, Clone)]
|
||||
pub struct FishermanConfigurations {
|
||||
/// Enable the fisherman service.
|
||||
|
|
@ -698,11 +747,55 @@ pub struct FishermanConfigurations {
|
|||
/// Maximum number of files to process per batch deletion cycle.
|
||||
#[arg(long, default_value = "1000", value_parser = clap::value_parser!(u64).range(1..))]
|
||||
pub fisherman_batch_deletion_limit: u64,
|
||||
|
||||
/// Filtering strategy for pending deletions.
|
||||
#[arg(
|
||||
long,
|
||||
value_enum,
|
||||
default_value = "none",
|
||||
help_heading = "Fisherman Strategy Options"
|
||||
)]
|
||||
pub fisherman_filtering: FishermanFiltering,
|
||||
|
||||
/// Ordering strategy for pending deletions.
|
||||
#[arg(
|
||||
long,
|
||||
value_enum,
|
||||
default_value = "chronological",
|
||||
help_heading = "Fisherman Strategy Options"
|
||||
)]
|
||||
pub fisherman_ordering: FishermanOrdering,
|
||||
|
||||
/// TTL threshold in seconds for pending deletions.
|
||||
/// Files that have been pending deletion for longer than this threshold are skipped.
|
||||
/// Required when --fisherman-filtering=ttl.
|
||||
#[arg(
|
||||
long,
|
||||
value_parser = clap::value_parser!(u64).range(1..),
|
||||
required_if_eq("fisherman_filtering", "ttl"),
|
||||
help_heading = "Fisherman Strategy Options"
|
||||
)]
|
||||
pub fisherman_ttl_threshold_seconds: Option<u64>,
|
||||
}
|
||||
|
||||
impl FishermanConfigurations {
|
||||
pub fn fisherman_options(&self) -> Option<FishermanOptions> {
|
||||
if self.fisherman {
|
||||
// Convert CLI enums to indexer-db enums
|
||||
let filtering = match self.fisherman_filtering {
|
||||
FishermanFiltering::None => FileFiltering::None,
|
||||
FishermanFiltering::Ttl => FileFiltering::Ttl {
|
||||
threshold_seconds: self
|
||||
.fisherman_ttl_threshold_seconds
|
||||
.expect("Required when filtering=ttl"),
|
||||
},
|
||||
};
|
||||
|
||||
let ordering = match self.fisherman_ordering {
|
||||
FishermanOrdering::Chronological => FileOrdering::Chronological,
|
||||
FishermanOrdering::Randomized => FileOrdering::Randomized,
|
||||
};
|
||||
|
||||
Some(FishermanOptions {
|
||||
database_url: self
|
||||
.fisherman_database_url
|
||||
|
|
@ -711,6 +804,8 @@ impl FishermanConfigurations {
|
|||
batch_interval_seconds: self.fisherman_batch_interval_seconds,
|
||||
batch_deletion_limit: self.fisherman_batch_deletion_limit,
|
||||
maintenance_mode: false, // Skipping maintenance mode for now
|
||||
filtering,
|
||||
ordering,
|
||||
})
|
||||
} else {
|
||||
None
|
||||
|
|
|
|||
40
operator/pallets/proxy-genesis-companion/Cargo.toml
Normal file
40
operator/pallets/proxy-genesis-companion/Cargo.toml
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
[package]
|
||||
name = "pallet-proxy-genesis-companion"
|
||||
authors = { workspace = true }
|
||||
description = "A simple pallet that expands pallet-proxy with a genesis configuration"
|
||||
edition = { workspace = true }
|
||||
version = { workspace = true }
|
||||
license = { workspace = true }
|
||||
|
||||
[dependencies]
|
||||
codec = { workspace = true }
|
||||
frame-support = { workspace = true }
|
||||
frame-system = { workspace = true }
|
||||
pallet-proxy = { workspace = true }
|
||||
scale-info = { workspace = true, features = ["derive"] }
|
||||
sp-runtime = { workspace = true }
|
||||
sp-std = { workspace = true }
|
||||
|
||||
[dev-dependencies]
|
||||
pallet-balances = { workspace = true, features = ["insecure_zero_ed", "std"] }
|
||||
serde = { workspace = true, features = ["derive", "std"] }
|
||||
sp-core = { workspace = true, features = ["std"] }
|
||||
sp-io = { workspace = true, features = ["std"] }
|
||||
|
||||
[features]
|
||||
default = ["std"]
|
||||
std = [
|
||||
"codec/std",
|
||||
"frame-support/std",
|
||||
"frame-system/std",
|
||||
"pallet-proxy/std",
|
||||
"scale-info/std",
|
||||
"sp-runtime/std",
|
||||
"sp-std/std",
|
||||
]
|
||||
try-runtime = [
|
||||
"frame-support/try-runtime",
|
||||
"frame-system/try-runtime",
|
||||
"pallet-proxy/try-runtime",
|
||||
"sp-runtime/try-runtime",
|
||||
]
|
||||
85
operator/pallets/proxy-genesis-companion/src/lib.rs
Normal file
85
operator/pallets/proxy-genesis-companion/src/lib.rs
Normal file
|
|
@ -0,0 +1,85 @@
|
|||
// Copyright 2019-2025 PureStake Inc.
|
||||
// This file is part of Moonbeam.
|
||||
|
||||
// Moonbeam is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
|
||||
// Moonbeam is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Moonbeam. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
//! A companion pallet to pallet-proxy
|
||||
//!
|
||||
//! This pallet allows you to specify proxy accounts that will exist from genesis. This
|
||||
//! functionality could be moved upstream into pallet proxy eventually, but for now there are fewer
|
||||
//! obstacles to including it here.
|
||||
|
||||
#![cfg_attr(not(feature = "std"), no_std)]
|
||||
|
||||
#[cfg(test)]
|
||||
mod mock;
|
||||
#[cfg(test)]
|
||||
mod tests;
|
||||
|
||||
use frame_support::pallet;
|
||||
pub use pallet::*;
|
||||
|
||||
#[pallet]
|
||||
pub mod pallet {
|
||||
use frame_support::pallet_prelude::*;
|
||||
use frame_system::pallet_prelude::BlockNumberFor;
|
||||
use sp_std::vec::Vec;
|
||||
|
||||
/// Pallet for configuring proxy at genesis
|
||||
#[pallet::pallet]
|
||||
#[pallet::without_storage_info]
|
||||
pub struct Pallet<T>(PhantomData<T>);
|
||||
|
||||
/// This pallet requires pallet-proxy to be installed.
|
||||
#[pallet::config]
|
||||
pub trait Config:
|
||||
frame_system::Config + pallet_proxy::Config<ProxyType = <Self as Config>::ProxyType>
|
||||
{
|
||||
/// This MUST be the same as in pallet_proxy or it won't compile
|
||||
type ProxyType: MaybeSerializeDeserialize + Clone;
|
||||
}
|
||||
|
||||
#[pallet::genesis_config]
|
||||
pub struct GenesisConfig<T: Config> {
|
||||
pub proxies: Vec<(
|
||||
T::AccountId,
|
||||
T::AccountId,
|
||||
<T as Config>::ProxyType,
|
||||
BlockNumberFor<T>,
|
||||
)>,
|
||||
}
|
||||
|
||||
impl<T: Config> Default for GenesisConfig<T> {
|
||||
fn default() -> Self {
|
||||
Self {
|
||||
proxies: Vec::new(),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[pallet::genesis_build]
|
||||
impl<T: Config> BuildGenesisConfig for GenesisConfig<T> {
|
||||
fn build(&self) {
|
||||
for (delegator, delegatee, proxy_type, delay) in &self.proxies {
|
||||
pallet_proxy::Pallet::<T>::add_proxy_delegate(
|
||||
delegator,
|
||||
delegatee.clone(),
|
||||
proxy_type.clone(),
|
||||
*delay,
|
||||
)
|
||||
.expect("Genesis proxy could not be added");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
172
operator/pallets/proxy-genesis-companion/src/mock.rs
Normal file
172
operator/pallets/proxy-genesis-companion/src/mock.rs
Normal file
|
|
@ -0,0 +1,172 @@
|
|||
// Copyright 2019-2025 PureStake Inc.
|
||||
// This file is part of Moonbeam.
|
||||
|
||||
// Moonbeam is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
|
||||
// Moonbeam is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Moonbeam. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
//! A minimal runtime including the proxy-genesis-companion pallet
|
||||
use super::*;
|
||||
use crate as proxy_companion;
|
||||
use codec::{Decode, Encode, MaxEncodedLen};
|
||||
use frame_support::{
|
||||
construct_runtime, derive_impl, parameter_types,
|
||||
traits::{ConstU32, InstanceFilter},
|
||||
};
|
||||
use sp_runtime::{traits::BlakeTwo256, BuildStorage};
|
||||
|
||||
pub type AccountId = u64;
|
||||
pub type Balance = u128;
|
||||
|
||||
type Block = frame_system::mocking::MockBlock<Test>;
|
||||
|
||||
// Configure a mock runtime to test the pallet.
|
||||
construct_runtime!(
|
||||
pub enum Test
|
||||
{
|
||||
System: frame_system,
|
||||
Balances: pallet_balances,
|
||||
Proxy: pallet_proxy,
|
||||
ProxyGenesisCompanion: proxy_companion,
|
||||
}
|
||||
);
|
||||
|
||||
#[derive_impl(frame_system::config_preludes::TestDefaultConfig)]
|
||||
impl frame_system::Config for Test {
|
||||
type Block = Block;
|
||||
type AccountData = pallet_balances::AccountData<Balance>;
|
||||
}
|
||||
|
||||
parameter_types! {
|
||||
pub const ExistentialDeposit: u128 = 0;
|
||||
}
|
||||
|
||||
#[derive_impl(pallet_balances::config_preludes::TestDefaultConfig)]
|
||||
impl pallet_balances::Config for Test {
|
||||
type Balance = Balance;
|
||||
type ExistentialDeposit = ExistentialDeposit;
|
||||
type AccountStore = System;
|
||||
}
|
||||
|
||||
parameter_types! {
|
||||
pub const ProxyDepositBase: Balance = 1;
|
||||
pub const ProxyDepositFactor: Balance = 1;
|
||||
pub const MaxProxies: u16 = 32;
|
||||
pub const AnnouncementDepositBase: Balance = 1;
|
||||
pub const AnnouncementDepositFactor: Balance = 1;
|
||||
pub const MaxPending: u16 = 32;
|
||||
}
|
||||
|
||||
/// The type used to represent the kinds of proxying allowed.
|
||||
#[derive(
|
||||
Copy,
|
||||
Clone,
|
||||
Eq,
|
||||
PartialEq,
|
||||
Ord,
|
||||
PartialOrd,
|
||||
Encode,
|
||||
Decode,
|
||||
Debug,
|
||||
MaxEncodedLen,
|
||||
scale_info::TypeInfo,
|
||||
serde::Serialize,
|
||||
serde::Deserialize,
|
||||
Default,
|
||||
)]
|
||||
pub struct ProxyType;
|
||||
|
||||
impl InstanceFilter<RuntimeCall> for ProxyType {
|
||||
fn filter(&self, _c: &RuntimeCall) -> bool {
|
||||
true
|
||||
}
|
||||
|
||||
fn is_superset(&self, _o: &Self) -> bool {
|
||||
true
|
||||
}
|
||||
}
|
||||
|
||||
impl pallet_proxy::Config for Test {
|
||||
type RuntimeEvent = RuntimeEvent;
|
||||
type RuntimeCall = RuntimeCall;
|
||||
type Currency = Balances;
|
||||
type ProxyType = ProxyType;
|
||||
type ProxyDepositBase = ProxyDepositBase;
|
||||
type ProxyDepositFactor = ProxyDepositFactor;
|
||||
type MaxProxies = ConstU32<32>;
|
||||
type WeightInfo = ();
|
||||
type MaxPending = ConstU32<32>;
|
||||
type CallHasher = BlakeTwo256;
|
||||
type AnnouncementDepositBase = AnnouncementDepositBase;
|
||||
type AnnouncementDepositFactor = AnnouncementDepositFactor;
|
||||
}
|
||||
|
||||
impl Config for Test {
|
||||
type ProxyType = ProxyType;
|
||||
}
|
||||
|
||||
/// Externality builder for pallet proxy genesis companion's mock runtime
|
||||
pub(crate) struct ExtBuilder {
|
||||
proxies: Vec<(AccountId, AccountId)>,
|
||||
balances: Vec<(AccountId, Balance)>,
|
||||
}
|
||||
|
||||
impl Default for ExtBuilder {
|
||||
fn default() -> ExtBuilder {
|
||||
ExtBuilder {
|
||||
proxies: Vec::new(),
|
||||
balances: Vec::new(),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl ExtBuilder {
|
||||
pub(crate) fn with_balances(mut self, balances: Vec<(AccountId, Balance)>) -> Self {
|
||||
self.balances = balances;
|
||||
self
|
||||
}
|
||||
|
||||
pub(crate) fn with_proxies(mut self, proxies: Vec<(AccountId, AccountId)>) -> Self {
|
||||
self.proxies = proxies;
|
||||
self
|
||||
}
|
||||
|
||||
pub(crate) fn build(self) -> sp_io::TestExternalities {
|
||||
let mut t = frame_system::GenesisConfig::<Test>::default()
|
||||
.build_storage()
|
||||
.expect("Frame system builds valid default genesis config");
|
||||
|
||||
pallet_balances::GenesisConfig::<Test> {
|
||||
balances: self.balances,
|
||||
..Default::default()
|
||||
}
|
||||
.assimilate_storage(&mut t)
|
||||
.expect("Pallet balances storage can be assimilated");
|
||||
|
||||
let genesis_config = proxy_companion::GenesisConfig::<Test> {
|
||||
// Here we add the trivial proxy type and default duration.
|
||||
// This saves the test writer from having to always specify this.
|
||||
proxies: self
|
||||
.proxies
|
||||
.into_iter()
|
||||
.map(|(a, b)| (a, b, ProxyType, 100))
|
||||
.collect(),
|
||||
};
|
||||
genesis_config
|
||||
.assimilate_storage(&mut t)
|
||||
.expect("Pallet proxy genesis companion storage can be assimilated");
|
||||
|
||||
let mut ext = sp_io::TestExternalities::new(t);
|
||||
ext.execute_with(|| System::set_block_number(1));
|
||||
ext
|
||||
}
|
||||
}
|
||||
63
operator/pallets/proxy-genesis-companion/src/tests.rs
Normal file
63
operator/pallets/proxy-genesis-companion/src/tests.rs
Normal file
|
|
@ -0,0 +1,63 @@
|
|||
// Copyright 2019-2025 PureStake Inc.
|
||||
// This file is part of Moonbeam.
|
||||
|
||||
// Moonbeam is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
|
||||
// Moonbeam is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Moonbeam. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
//! Unit testing
|
||||
use crate::mock::{ExtBuilder, Proxy, ProxyType, Test};
|
||||
use pallet_proxy::ProxyDefinition;
|
||||
|
||||
#[test]
|
||||
fn empty_genesis_works() {
|
||||
ExtBuilder::default()
|
||||
.build()
|
||||
.execute_with(|| assert_eq!(pallet_proxy::Proxies::<Test>::iter().count(), 0))
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn non_empty_genesis_works() {
|
||||
ExtBuilder::default()
|
||||
// Account 1 delegates to account 2
|
||||
.with_proxies(vec![(1, 2)])
|
||||
// Account 1 is funded to pay the proxy deposit
|
||||
.with_balances(vec![(1, 10)])
|
||||
.build()
|
||||
.execute_with(|| {
|
||||
// Lookup info that we expect to be stored from genesis
|
||||
let (proxy_defs, deposit) = Proxy::proxies(1);
|
||||
|
||||
// Make sure that Account 1 delegates to Account 2 and nobody else
|
||||
assert_eq!(proxy_defs.len(), 1);
|
||||
assert_eq!(
|
||||
proxy_defs[0],
|
||||
ProxyDefinition {
|
||||
delegate: 2,
|
||||
proxy_type: ProxyType,
|
||||
delay: 100
|
||||
}
|
||||
);
|
||||
|
||||
// Make sure that Account 1 has the proper deposit amount reserved
|
||||
assert_eq!(deposit, 2);
|
||||
})
|
||||
}
|
||||
|
||||
#[test]
|
||||
#[should_panic(expected = "Genesis proxy could not be added")]
|
||||
fn genesis_fails_if_balance_insufficient() {
|
||||
ExtBuilder::default()
|
||||
.with_proxies(vec![(1, 2)])
|
||||
.build()
|
||||
.execute_with(|| ())
|
||||
}
|
||||
|
|
@ -67,6 +67,7 @@ pallet-outbound-commitment-store = { workspace = true }
|
|||
pallet-parameters = { workspace = true }
|
||||
pallet-preimage = { workspace = true }
|
||||
pallet-proxy = { workspace = true }
|
||||
pallet-proxy-genesis-companion = { workspace = true }
|
||||
pallet-referenda = { workspace = true }
|
||||
pallet-safe-mode = { workspace = true }
|
||||
pallet-scheduler = { workspace = true }
|
||||
|
|
@ -84,6 +85,7 @@ polkadot-primitives = { workspace = true }
|
|||
polkadot-runtime-common = { workspace = true }
|
||||
precompile-utils = { workspace = true }
|
||||
scale-info = { workspace = true, features = ["derive", "serde"] }
|
||||
serde = { workspace = true, features = ["derive"] }
|
||||
serde_json = { workspace = true, default-features = false, features = [
|
||||
"alloc",
|
||||
] }
|
||||
|
|
@ -235,6 +237,7 @@ std = [
|
|||
"pallet-tx-pause/std",
|
||||
"pallet-referenda/std",
|
||||
"pallet-proxy/std",
|
||||
"pallet-proxy-genesis-companion/std",
|
||||
"pallet-scheduler/std",
|
||||
"pallet-session/std",
|
||||
"pallet-sudo/std",
|
||||
|
|
@ -248,6 +251,7 @@ std = [
|
|||
"polkadot-runtime-common/std",
|
||||
"precompile-utils/std",
|
||||
"scale-info/std",
|
||||
"serde/std",
|
||||
"serde_json/std",
|
||||
"snowbridge-beacon-primitives/std",
|
||||
"snowbridge-inbound-queue-primitives/std",
|
||||
|
|
@ -390,6 +394,7 @@ try-runtime = [
|
|||
"pallet-tx-pause/try-runtime",
|
||||
"pallet-referenda/try-runtime",
|
||||
"pallet-proxy/try-runtime",
|
||||
"pallet-proxy-genesis-companion/try-runtime",
|
||||
"pallet-scheduler/try-runtime",
|
||||
"pallet-session/try-runtime",
|
||||
"pallet-sudo/try-runtime",
|
||||
|
|
|
|||
|
|
@ -49,6 +49,8 @@ use sp_runtime::{traits::AccountIdConversion, RuntimeDebug};
|
|||
RuntimeDebug,
|
||||
MaxEncodedLen,
|
||||
TypeInfo,
|
||||
serde::Serialize,
|
||||
serde::Deserialize,
|
||||
)]
|
||||
pub enum ProxyType {
|
||||
/// Allow any call to be made by the proxy account
|
||||
|
|
@ -595,6 +597,8 @@ parameter_types! {
|
|||
pub const MaxAdditionalFields: u32 = 100;
|
||||
pub const MaxRegistrars: u32 = 20;
|
||||
pub const PendingUsernameExpiration: u32 = 7 * DAYS;
|
||||
pub const UsernameGracePeriod: u32 = 30 * DAYS;
|
||||
pub const UsernameDeposit: Balance = deposit(0, MaxUsernameLength::get());
|
||||
pub const MaxSuffixLength: u32 = 7;
|
||||
pub const MaxUsernameLength: u32 = 32;
|
||||
}
|
||||
|
|
@ -626,8 +630,8 @@ impl pallet_identity::Config for Runtime {
|
|||
type MaxSuffixLength = MaxSuffixLength;
|
||||
type MaxUsernameLength = MaxUsernameLength;
|
||||
type WeightInfo = pallet_identity::weights::SubstrateWeight<Runtime>;
|
||||
type UsernameDeposit = ();
|
||||
type UsernameGracePeriod = ();
|
||||
type UsernameDeposit = UsernameDeposit;
|
||||
type UsernameGracePeriod = UsernameGracePeriod;
|
||||
|
||||
// TODO: Re-enable after upgrade to Polkadot SDK stable2412-8
|
||||
// see https://github.com/paritytech/polkadot-sdk/releases/tag/polkadot-stable2412-8
|
||||
|
|
@ -827,6 +831,10 @@ impl pallet_proxy::Config for Runtime {
|
|||
type AnnouncementDepositFactor = AnnouncementDepositFactor;
|
||||
}
|
||||
|
||||
impl pallet_proxy_genesis_companion::Config for Runtime {
|
||||
type ProxyType = ProxyType;
|
||||
}
|
||||
|
||||
impl pallet_parameters::Config for Runtime {
|
||||
type AdminOrigin = EnsureRoot<AccountId>;
|
||||
type RuntimeEvent = RuntimeEvent;
|
||||
|
|
|
|||
|
|
@ -500,6 +500,9 @@ mod runtime {
|
|||
|
||||
#[runtime::pallet_index(105)]
|
||||
pub type ExternalValidatorsSlashes = pallet_external_validator_slashes;
|
||||
|
||||
#[runtime::pallet_index(106)]
|
||||
pub type ProxyGenesisCompanion = pallet_proxy_genesis_companion;
|
||||
// ╚═══════════════════ DataHaven-specific Pallets ══════════════════╝
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -67,6 +67,7 @@ pallet-outbound-commitment-store = { workspace = true }
|
|||
pallet-parameters = { workspace = true }
|
||||
pallet-preimage = { workspace = true }
|
||||
pallet-proxy = { workspace = true }
|
||||
pallet-proxy-genesis-companion = { workspace = true }
|
||||
pallet-referenda = { workspace = true }
|
||||
pallet-safe-mode = { workspace = true }
|
||||
pallet-scheduler = { workspace = true }
|
||||
|
|
@ -84,6 +85,7 @@ polkadot-primitives = { workspace = true }
|
|||
polkadot-runtime-common = { workspace = true }
|
||||
precompile-utils = { workspace = true }
|
||||
scale-info = { workspace = true, features = ["derive", "serde"] }
|
||||
serde = { workspace = true, features = ["derive"] }
|
||||
serde_json = { workspace = true, default-features = false, features = [
|
||||
"alloc",
|
||||
] }
|
||||
|
|
@ -236,6 +238,7 @@ std = [
|
|||
"pallet-tx-pause/std",
|
||||
"pallet-referenda/std",
|
||||
"pallet-proxy/std",
|
||||
"pallet-proxy-genesis-companion/std",
|
||||
"pallet-scheduler/std",
|
||||
"pallet-session/std",
|
||||
"pallet-sudo/std",
|
||||
|
|
@ -249,6 +252,7 @@ std = [
|
|||
"polkadot-runtime-common/std",
|
||||
"precompile-utils/std",
|
||||
"scale-info/std",
|
||||
"serde/std",
|
||||
"serde_json/std",
|
||||
"snowbridge-beacon-primitives/std",
|
||||
"snowbridge-inbound-queue-primitives/std",
|
||||
|
|
@ -391,6 +395,7 @@ try-runtime = [
|
|||
"pallet-tx-pause/try-runtime",
|
||||
"pallet-referenda/try-runtime",
|
||||
"pallet-proxy/try-runtime",
|
||||
"pallet-proxy-genesis-companion/try-runtime",
|
||||
"pallet-scheduler/try-runtime",
|
||||
"pallet-session/try-runtime",
|
||||
"pallet-sudo/try-runtime",
|
||||
|
|
|
|||
|
|
@ -49,6 +49,8 @@ use sp_runtime::{traits::AccountIdConversion, RuntimeDebug};
|
|||
RuntimeDebug,
|
||||
MaxEncodedLen,
|
||||
TypeInfo,
|
||||
serde::Serialize,
|
||||
serde::Deserialize,
|
||||
)]
|
||||
pub enum ProxyType {
|
||||
/// Allow any call to be made by the proxy account
|
||||
|
|
@ -592,6 +594,8 @@ parameter_types! {
|
|||
pub const MaxAdditionalFields: u32 = 100;
|
||||
pub const MaxRegistrars: u32 = 20;
|
||||
pub const PendingUsernameExpiration: u32 = 7 * DAYS;
|
||||
pub const UsernameGracePeriod: u32 = 30 * DAYS;
|
||||
pub const UsernameDeposit: Balance = deposit(0, MaxUsernameLength::get());
|
||||
pub const MaxSuffixLength: u32 = 7;
|
||||
pub const MaxUsernameLength: u32 = 32;
|
||||
}
|
||||
|
|
@ -623,8 +627,8 @@ impl pallet_identity::Config for Runtime {
|
|||
type MaxSuffixLength = MaxSuffixLength;
|
||||
type MaxUsernameLength = MaxUsernameLength;
|
||||
type WeightInfo = pallet_identity::weights::SubstrateWeight<Runtime>;
|
||||
type UsernameDeposit = ();
|
||||
type UsernameGracePeriod = ();
|
||||
type UsernameDeposit = UsernameDeposit;
|
||||
type UsernameGracePeriod = UsernameGracePeriod;
|
||||
|
||||
// TODO: Re-enable after upgrade to Polkadot SDK stable2412-8
|
||||
// see https://github.com/paritytech/polkadot-sdk/releases/tag/polkadot-stable2412-8
|
||||
|
|
@ -824,6 +828,10 @@ impl pallet_proxy::Config for Runtime {
|
|||
type AnnouncementDepositFactor = AnnouncementDepositFactor;
|
||||
}
|
||||
|
||||
impl pallet_proxy_genesis_companion::Config for Runtime {
|
||||
type ProxyType = ProxyType;
|
||||
}
|
||||
|
||||
impl pallet_parameters::Config for Runtime {
|
||||
type AdminOrigin = EnsureRoot<AccountId>;
|
||||
type RuntimeEvent = RuntimeEvent;
|
||||
|
|
|
|||
|
|
@ -502,6 +502,9 @@ mod runtime {
|
|||
|
||||
#[runtime::pallet_index(105)]
|
||||
pub type ExternalValidatorsSlashes = pallet_external_validator_slashes;
|
||||
|
||||
#[runtime::pallet_index(106)]
|
||||
pub type ProxyGenesisCompanion = pallet_proxy_genesis_companion;
|
||||
// ╚═══════════════════ DataHaven-specific Pallets ══════════════════╝
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -68,6 +68,7 @@ pallet-outbound-commitment-store = { workspace = true }
|
|||
pallet-parameters = { workspace = true }
|
||||
pallet-preimage = { workspace = true }
|
||||
pallet-proxy = { workspace = true }
|
||||
pallet-proxy-genesis-companion = { workspace = true }
|
||||
pallet-referenda = { workspace = true }
|
||||
pallet-safe-mode = { workspace = true }
|
||||
pallet-scheduler = { workspace = true }
|
||||
|
|
@ -85,6 +86,7 @@ polkadot-primitives = { workspace = true }
|
|||
polkadot-runtime-common = { workspace = true }
|
||||
precompile-utils = { workspace = true }
|
||||
scale-info = { workspace = true, features = ["derive", "serde"] }
|
||||
serde = { workspace = true, features = ["derive"] }
|
||||
serde_json = { workspace = true, default-features = false, features = [
|
||||
"alloc",
|
||||
] }
|
||||
|
|
@ -234,6 +236,7 @@ std = [
|
|||
"pallet-tx-pause/std",
|
||||
"pallet-referenda/std",
|
||||
"pallet-proxy/std",
|
||||
"pallet-proxy-genesis-companion/std",
|
||||
"pallet-scheduler/std",
|
||||
"pallet-session/std",
|
||||
"pallet-sudo/std",
|
||||
|
|
@ -246,6 +249,7 @@ std = [
|
|||
"polkadot-primitives/std",
|
||||
"polkadot-runtime-common/std",
|
||||
"scale-info/std",
|
||||
"serde/std",
|
||||
"serde_json/std",
|
||||
"snowbridge-beacon-primitives/std",
|
||||
"snowbridge-inbound-queue-primitives/std",
|
||||
|
|
@ -387,6 +391,7 @@ try-runtime = [
|
|||
"pallet-tx-pause/try-runtime",
|
||||
"pallet-referenda/try-runtime",
|
||||
"pallet-proxy/try-runtime",
|
||||
"pallet-proxy-genesis-companion/try-runtime",
|
||||
"pallet-scheduler/try-runtime",
|
||||
"pallet-session/try-runtime",
|
||||
"pallet-sudo/try-runtime",
|
||||
|
|
|
|||
|
|
@ -49,6 +49,8 @@ use sp_runtime::{traits::AccountIdConversion, RuntimeDebug};
|
|||
RuntimeDebug,
|
||||
MaxEncodedLen,
|
||||
TypeInfo,
|
||||
serde::Serialize,
|
||||
serde::Deserialize,
|
||||
)]
|
||||
pub enum ProxyType {
|
||||
/// Allow any call to be made by the proxy account
|
||||
|
|
@ -595,6 +597,8 @@ parameter_types! {
|
|||
pub const MaxAdditionalFields: u32 = 100;
|
||||
pub const MaxRegistrars: u32 = 20;
|
||||
pub const PendingUsernameExpiration: u32 = 7 * DAYS;
|
||||
pub const UsernameGracePeriod: u32 = 30 * DAYS;
|
||||
pub const UsernameDeposit: Balance = deposit(0, MaxUsernameLength::get());
|
||||
pub const MaxSuffixLength: u32 = 7;
|
||||
pub const MaxUsernameLength: u32 = 32;
|
||||
}
|
||||
|
|
@ -626,8 +630,8 @@ impl pallet_identity::Config for Runtime {
|
|||
type MaxSuffixLength = MaxSuffixLength;
|
||||
type MaxUsernameLength = MaxUsernameLength;
|
||||
type WeightInfo = pallet_identity::weights::SubstrateWeight<Runtime>;
|
||||
type UsernameDeposit = ();
|
||||
type UsernameGracePeriod = ();
|
||||
type UsernameDeposit = UsernameDeposit;
|
||||
type UsernameGracePeriod = UsernameGracePeriod;
|
||||
|
||||
// TODO: Re-enable after upgrade to Polkadot SDK stable2412-8
|
||||
// see https://github.com/paritytech/polkadot-sdk/releases/tag/polkadot-stable2412-8
|
||||
|
|
@ -827,6 +831,10 @@ impl pallet_proxy::Config for Runtime {
|
|||
type AnnouncementDepositFactor = AnnouncementDepositFactor;
|
||||
}
|
||||
|
||||
impl pallet_proxy_genesis_companion::Config for Runtime {
|
||||
type ProxyType = ProxyType;
|
||||
}
|
||||
|
||||
impl pallet_parameters::Config for Runtime {
|
||||
type AdminOrigin = EnsureRoot<AccountId>;
|
||||
type RuntimeEvent = RuntimeEvent;
|
||||
|
|
|
|||
|
|
@ -500,6 +500,9 @@ mod runtime {
|
|||
|
||||
#[runtime::pallet_index(105)]
|
||||
pub type ExternalValidatorsSlashes = pallet_external_validator_slashes;
|
||||
|
||||
#[runtime::pallet_index(106)]
|
||||
pub type ProxyGenesisCompanion = pallet_proxy_genesis_companion;
|
||||
// ╚═══════════════════ DataHaven-specific Pallets ══════════════════╝
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"version": "0.1.0-autogenerated.18110841939960448741",
|
||||
"version": "0.1.0-autogenerated.14314240478086326730",
|
||||
"name": "@polkadot-api/descriptors",
|
||||
"files": [
|
||||
"dist"
|
||||
|
|
|
|||
Binary file not shown.
Loading…
Reference in a new issue