diff --git a/operator/Cargo.lock b/operator/Cargo.lock index f0af667c..44f7f03e 100644 --- a/operator/Cargo.lock +++ b/operator/Cargo.lock @@ -1037,7 +1037,7 @@ dependencies = [ "miniz_oxide", "object 0.37.3", "rustc-demangle", - "windows-link", + "windows-link 0.2.1", ] [[package]] @@ -1755,7 +1755,7 @@ dependencies = [ "js-sys", "num-traits", "wasm-bindgen", - "windows-link", + "windows-link 0.2.1", ] [[package]] @@ -2863,6 +2863,7 @@ dependencies = [ "sp-transaction-pool", "substrate-build-script-utils", "substrate-frame-rpc-system", + "substrate-prometheus-endpoint", "toml 0.8.23", "url", ] @@ -5388,6 +5389,11 @@ name = "hashbrown" version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d" +dependencies = [ + "allocator-api2", + "equivalent", + "foldhash 0.2.0", +] [[package]] name = "hashlink" @@ -5926,7 +5932,7 @@ dependencies = [ "rtnetlink", "system-configuration", "tokio", - "windows", + "windows 0.53.0", ] [[package]] @@ -6684,7 +6690,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55" dependencies = [ "cfg-if", - "windows-link", + "windows-link 0.2.1", ] [[package]] @@ -6813,7 +6819,7 @@ dependencies = [ "libp2p-identity", "libp2p-swarm", "log", - "lru", + "lru 0.12.5", "quick-protobuf", "quick-protobuf-codec", "smallvec", @@ -7362,6 +7368,15 @@ dependencies = [ "hashbrown 0.15.5", ] +[[package]] +name = "lru" +version = "0.16.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1dc47f592c06f33f8e3aea9591776ec7c9f9e4124778ff8a3c3b87159f7e593" +dependencies = [ + "hashbrown 0.16.0", +] + [[package]] name = "lru-cache" version = "0.1.2" @@ -8100,6 +8115,15 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be" +[[package]] +name = "ntapi" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c70f219e21142367c70c0b30c6a9e3a14d55b4d12a204d897fbec83a0363f081" +dependencies = [ + "winapi", +] + [[package]] name = "nu-ansi-term" version = "0.50.1" @@ -8231,6 +8255,25 @@ dependencies = [ "syn 2.0.106", ] +[[package]] +name = "objc2-core-foundation" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a180dd8642fa45cdb7dd721cd4c11b1cadd4929ce112ebd8b9f5803cc79d536" +dependencies = [ + "bitflags 2.9.4", +] + +[[package]] +name = "objc2-io-kit" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33fafba39597d6dc1fb709123dfa8289d39406734be322956a69f0931c73bb15" +dependencies = [ + "libc", + "objc2-core-foundation", +] + [[package]] name = "object" version = "0.30.4" @@ -8572,7 +8615,7 @@ dependencies = [ [[package]] name = "pallet-bucket-nfts" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "frame-benchmarking", "frame-support", @@ -8629,7 +8672,7 @@ dependencies = [ [[package]] name = "pallet-cr-randomness" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "frame-support", "frame-system", @@ -8913,7 +8956,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-file-system" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "fp-account", "fp-evm", @@ -9153,7 +9196,7 @@ dependencies = [ [[package]] name = "pallet-file-system" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "frame-benchmarking", "frame-support", @@ -9180,7 +9223,7 @@ dependencies = [ [[package]] name = "pallet-file-system-runtime-api" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "parity-scale-codec", "scale-info", @@ -9376,7 +9419,7 @@ dependencies = [ [[package]] name = "pallet-payment-streams" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "frame-benchmarking", "frame-support", @@ -9396,7 +9439,7 @@ dependencies = [ [[package]] name = "pallet-payment-streams-runtime-api" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "parity-scale-codec", "scale-info", @@ -9424,7 +9467,7 @@ dependencies = [ [[package]] name = "pallet-proofs-dealer" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "frame-benchmarking", "frame-support", @@ -9446,7 +9489,7 @@ dependencies = [ [[package]] name = "pallet-proofs-dealer-runtime-api" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "parity-scale-codec", "scale-info", @@ -9468,7 +9511,7 @@ dependencies = [ [[package]] name = "pallet-randomness" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "frame-benchmarking", "frame-support", @@ -9609,7 +9652,7 @@ dependencies = [ [[package]] name = "pallet-storage-providers" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "frame-benchmarking", "frame-support", @@ -9631,7 +9674,7 @@ dependencies = [ [[package]] name = "pallet-storage-providers-runtime-api" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "parity-scale-codec", "scale-info", @@ -9946,7 +9989,7 @@ dependencies = [ "libc", "redox_syscall 0.5.18", "smallvec", - "windows-link", + "windows-link 0.2.1", ] [[package]] @@ -13794,7 +13837,7 @@ dependencies = [ [[package]] name = "shc-actors-derive" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "once_cell", "proc-macro2", @@ -13807,7 +13850,7 @@ dependencies = [ [[package]] name = "shc-actors-framework" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "anyhow", "bincode", @@ -13817,6 +13860,7 @@ dependencies = [ "sc-utils", "serde", "serde_json", + "shc-telemetry", "sp-core", "sp-runtime", "tokio", @@ -13825,7 +13869,7 @@ dependencies = [ [[package]] name = "shc-blockchain-service" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "anyhow", "array-bytes", @@ -13862,6 +13906,7 @@ dependencies = [ "shc-blockchain-service-db", "shc-common", "shc-forest-manager", + "shc-telemetry", "shp-constants", "shp-file-key-verifier", "shp-file-metadata", @@ -13880,7 +13925,7 @@ dependencies = [ [[package]] name = "shc-blockchain-service-db" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "chrono", "diesel", @@ -13904,7 +13949,7 @@ dependencies = [ [[package]] name = "shc-client" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "anyhow", "array-bytes", @@ -13924,6 +13969,7 @@ dependencies = [ "kvdb-rocksdb", "lazy_static", "log", + "lru 0.16.3", "ordered-float", "pallet-file-system", "pallet-file-system-runtime-api", @@ -13956,6 +14002,7 @@ dependencies = [ "shc-indexer-db", "shc-indexer-service", "shc-rpc", + "shc-telemetry", "shp-constants", "shp-file-metadata", "shp-traits", @@ -13965,6 +14012,8 @@ dependencies = [ "sp-runtime", "sp-trie", "substrate-build-script-utils", + "substrate-prometheus-endpoint", + "sysinfo", "thiserror 1.0.69", "tokio", "tokio-stream", @@ -13974,7 +14023,7 @@ dependencies = [ [[package]] name = "shc-common" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "anyhow", "bigdecimal", @@ -14038,7 +14087,7 @@ dependencies = [ [[package]] name = "shc-file-manager" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "bincode", "hash-db", @@ -14062,7 +14111,7 @@ dependencies = [ [[package]] name = "shc-file-transfer-service" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "anyhow", "array-bytes", @@ -14091,7 +14140,7 @@ dependencies = [ [[package]] name = "shc-fisherman-service" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "async-trait", "diesel", @@ -14110,6 +14159,7 @@ dependencies = [ "shc-actors-framework", "shc-common", "shc-indexer-db", + "shc-telemetry", "shp-types", "sp-api", "sp-core", @@ -14121,8 +14171,9 @@ dependencies = [ [[package]] name = "shc-forest-manager" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ + "anyhow", "async-trait", "bincode", "hash-db", @@ -14146,7 +14197,7 @@ dependencies = [ [[package]] name = "shc-indexer-db" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "bigdecimal", "chrono", @@ -14174,7 +14225,7 @@ dependencies = [ [[package]] name = "shc-indexer-service" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "anyhow", "array-bytes", @@ -14225,7 +14276,7 @@ dependencies = [ [[package]] name = "shc-rpc" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "array-bytes", "async-trait", @@ -14268,6 +14319,17 @@ dependencies = [ "url", ] +[[package]] +name = "shc-telemetry" +version = "0.1.0" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" +dependencies = [ + "log", + "substrate-prometheus-endpoint", + "sysinfo", + "tokio", +] + [[package]] name = "shlex" version = "1.3.0" @@ -14277,7 +14339,7 @@ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] name = "shp-constants" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "sp-core", "sp-runtime", @@ -14286,7 +14348,7 @@ dependencies = [ [[package]] name = "shp-data-price-updater" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "frame-support", "parity-scale-codec", @@ -14301,7 +14363,7 @@ dependencies = [ [[package]] name = "shp-file-key-verifier" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "frame-support", "parity-scale-codec", @@ -14319,7 +14381,7 @@ dependencies = [ [[package]] name = "shp-file-metadata" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "hex", "num-bigint", @@ -14335,7 +14397,7 @@ dependencies = [ [[package]] name = "shp-forest-verifier" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "frame-support", "parity-scale-codec", @@ -14352,7 +14414,7 @@ dependencies = [ [[package]] name = "shp-opaque" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "sp-runtime", ] @@ -14360,7 +14422,7 @@ dependencies = [ [[package]] name = "shp-session-keys" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "async-trait", "parity-scale-codec", @@ -14375,7 +14437,7 @@ dependencies = [ [[package]] name = "shp-traits" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "frame-support", "parity-scale-codec", @@ -14389,7 +14451,7 @@ dependencies = [ [[package]] name = "shp-treasury-funding" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "log", "shp-traits", @@ -14400,7 +14462,7 @@ dependencies = [ [[package]] name = "shp-tx-implicits-runtime-api" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "parity-scale-codec", "scale-info", @@ -14413,7 +14475,7 @@ dependencies = [ [[package]] name = "shp-types" version = "0.3.0" -source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.0#a41f0bef38c164585e84d7951e8db14e236de37a" +source = "git+https://github.com/Moonsong-Labs/storage-hub.git?tag=v0.3.1#e135f65ad54d5c500259d0f6d3b6c34ea66dc2a4" dependencies = [ "sp-core", "sp-runtime", @@ -14621,7 +14683,7 @@ dependencies = [ "hex", "itertools 0.12.1", "log", - "lru", + "lru 0.12.5", "no-std-net", "parking_lot 0.12.5", "pin-project", @@ -16652,6 +16714,20 @@ dependencies = [ "syn 2.0.106", ] +[[package]] +name = "sysinfo" +version = "0.37.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16607d5caffd1c07ce073528f9ed972d88db15dd44023fa57142963be3feb11f" +dependencies = [ + "libc", + "memchr", + "ntapi", + "objc2-core-foundation", + "objc2-io-kit", + "windows 0.61.3", +] + [[package]] name = "system-configuration" version = "0.6.1" @@ -18332,6 +18408,28 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "windows" +version = "0.61.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9babd3a767a4c1aef6900409f85f5d53ce2544ccdfaa86dad48c91782c6d6893" +dependencies = [ + "windows-collections", + "windows-core 0.61.2", + "windows-future", + "windows-link 0.1.3", + "windows-numerics", +] + +[[package]] +name = "windows-collections" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3beeceb5e5cfd9eb1d76b381630e82c4241ccd0d27f1a39ed41b2760b255c5e8" +dependencies = [ + "windows-core 0.61.2", +] + [[package]] name = "windows-core" version = "0.53.0" @@ -18342,6 +18440,19 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "windows-core" +version = "0.61.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3" +dependencies = [ + "windows-implement", + "windows-interface", + "windows-link 0.1.3", + "windows-result 0.3.4", + "windows-strings 0.4.2", +] + [[package]] name = "windows-core" version = "0.62.2" @@ -18350,9 +18461,20 @@ checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb" dependencies = [ "windows-implement", "windows-interface", - "windows-link", + "windows-link 0.2.1", "windows-result 0.4.1", - "windows-strings", + "windows-strings 0.5.1", +] + +[[package]] +name = "windows-future" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc6a41e98427b19fe4b73c550f060b59fa592d7d686537eebf9385621bfbad8e" +dependencies = [ + "windows-core 0.61.2", + "windows-link 0.1.3", + "windows-threading", ] [[package]] @@ -18377,12 +18499,28 @@ dependencies = [ "syn 2.0.106", ] +[[package]] +name = "windows-link" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" + [[package]] name = "windows-link" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" +[[package]] +name = "windows-numerics" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9150af68066c4c5c07ddc0ce30421554771e528bde427614c61038bc2c92c2b1" +dependencies = [ + "windows-core 0.61.2", + "windows-link 0.1.3", +] + [[package]] name = "windows-result" version = "0.1.2" @@ -18392,13 +18530,31 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "windows-result" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6" +dependencies = [ + "windows-link 0.1.3", +] + [[package]] name = "windows-result" version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5" dependencies = [ - "windows-link", + "windows-link 0.2.1", +] + +[[package]] +name = "windows-strings" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57" +dependencies = [ + "windows-link 0.1.3", ] [[package]] @@ -18407,7 +18563,7 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091" dependencies = [ - "windows-link", + "windows-link 0.2.1", ] [[package]] @@ -18461,7 +18617,7 @@ version = "0.61.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" dependencies = [ - "windows-link", + "windows-link 0.2.1", ] [[package]] @@ -18516,7 +18672,7 @@ version = "0.53.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3" dependencies = [ - "windows-link", + "windows-link 0.2.1", "windows_aarch64_gnullvm 0.53.1", "windows_aarch64_msvc 0.53.1", "windows_i686_gnu 0.53.1", @@ -18527,6 +18683,15 @@ dependencies = [ "windows_x86_64_msvc 0.53.1", ] +[[package]] +name = "windows-threading" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b66463ad2e0ea3bbf808b7f1d371311c80e115c0b71d60efc142cafbcfb057a6" +dependencies = [ + "windows-link 0.1.3", +] + [[package]] name = "windows_aarch64_gnullvm" version = "0.42.2" diff --git a/operator/Cargo.toml b/operator/Cargo.toml index e37e2835..81b3f59a 100644 --- a/operator/Cargo.toml +++ b/operator/Cargo.toml @@ -204,6 +204,7 @@ sp-trie = { git = "https://github.com/paritytech/polkadot-sdk", tag = "polkadot- sp-version = { git = "https://github.com/paritytech/polkadot-sdk", tag = "polkadot-stable2412-6", default-features = false } substrate-build-script-utils = { git = "https://github.com/paritytech/polkadot-sdk", tag = "polkadot-stable2412-6", default-features = false } substrate-frame-rpc-system = { git = "https://github.com/paritytech/polkadot-sdk", tag = "polkadot-stable2412-6", default-features = false } +substrate-prometheus-endpoint = { git = "https://github.com/paritytech/polkadot-sdk", tag = "polkadot-stable2412-6", default-features = false } substrate-wasm-builder = { git = "https://github.com/paritytech/polkadot-sdk", tag = "polkadot-stable2412-6", default-features = false } xcm = { git = "https://github.com/paritytech/polkadot-sdk", tag = "polkadot-stable2412-6", default-features = false, package = "staging-xcm" } xcm-builder = { git = "https://github.com/paritytech/polkadot-sdk", tag = "polkadot-stable2412-6", default-features = false, package = "staging-xcm-builder" } @@ -264,42 +265,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.0", default-features = false } -pallet-cr-randomness = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -pallet-file-system = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -pallet-file-system-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -pallet-payment-streams = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -pallet-payment-streams-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -pallet-proofs-dealer = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -pallet-proofs-dealer-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -pallet-randomness = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -pallet-storage-providers = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -pallet-storage-providers-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -shp-constants = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -shp-data-price-updater = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -shp-file-key-verifier = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -shp-file-metadata = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -shp-forest-verifier = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -shp-traits = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -shp-treasury-funding = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } +pallet-bucket-nfts = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +pallet-cr-randomness = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +pallet-file-system = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +pallet-file-system-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +pallet-payment-streams = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +pallet-payment-streams-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +pallet-proofs-dealer = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +pallet-proofs-dealer-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +pallet-randomness = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +pallet-storage-providers = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +pallet-storage-providers-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +shp-constants = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +shp-data-price-updater = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +shp-file-key-verifier = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +shp-file-metadata = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +shp-forest-verifier = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +shp-traits = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +shp-treasury-funding = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } ## Client -shc-actors-derive = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -shc-actors-framework = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -shc-blockchain-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -shc-client = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -shc-common = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -shc-file-manager = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -shc-file-transfer-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -shc-fisherman-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -shc-forest-manager = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -shc-indexer-db = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -shc-indexer-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -shc-rpc = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -shp-opaque = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -shp-tx-implicits-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } -shp-types = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } +shc-actors-derive = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +shc-actors-framework = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +shc-blockchain-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +shc-client = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +shc-common = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +shc-file-manager = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +shc-file-transfer-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +shc-fisherman-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +shc-forest-manager = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +shc-indexer-db = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +shc-indexer-service = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +shc-rpc = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +shp-opaque = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +shp-tx-implicits-runtime-api = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } +shp-types = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } ## Precompiles -pallet-evm-precompile-file-system = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.0", default-features = false } +pallet-evm-precompile-file-system = { git = "https://github.com/Moonsong-Labs/storage-hub.git", tag = "v0.3.1", default-features = false } # Static linking diff --git a/operator/node/Cargo.toml b/operator/node/Cargo.toml index 40b25033..00bf7da0 100644 --- a/operator/node/Cargo.toml +++ b/operator/node/Cargo.toml @@ -22,6 +22,7 @@ datahaven-stagenet-runtime = { workspace = true } datahaven-testnet-runtime = { workspace = true } # Crates.io +async-channel = { workspace = true } clap = { features = ["derive"], workspace = true } codec = { workspace = true } flume = { workspace = true } @@ -32,7 +33,6 @@ log = { workspace = true } openssl-sys = { workspace = true } serde_json = { workspace = true, default-features = true } url = { workspace = true } -async-channel = { workspace = true } #MMR mmr-rpc = { workspace = true, default-features = true } @@ -92,7 +92,10 @@ fc-cli = { workspace = true } fc-consensus = { workspace = true } fc-db = { workspace = true } fc-mapping-sync = { workspace = true, features = ["sql"] } -fc-rpc = { workspace = true, features = ["txpool", "rpc-binary-search-estimate"] } +fc-rpc = { workspace = true, features = [ + "txpool", + "rpc-binary-search-estimate", +] } fc-rpc-core = { workspace = true, features = ["txpool"] } fc-storage = { workspace = true } fp-account = { workspace = true } @@ -109,18 +112,19 @@ pallet-proofs-dealer = { workspace = true } pallet-proofs-dealer-runtime-api = { workspace = true } pallet-storage-providers = { workspace = true } pallet-storage-providers-runtime-api = { workspace = true } -shc-actors-framework = { workspace = true } +serde = { workspace = true, default-features = true } shc-actors-derive = { workspace = true } +shc-actors-framework = { workspace = true } shc-blockchain-service = { workspace = true } -shc-file-transfer-service = { workspace = true } +shc-client = { workspace = true } shc-common = { workspace = true } shc-file-manager = { workspace = true } +shc-file-transfer-service = { workspace = true } shc-fisherman-service = { workspace = true } shc-forest-manager = { workspace = true } shc-indexer-db = { workspace = true } shc-indexer-service = { workspace = true } shc-rpc = { workspace = true } -shc-client = { workspace = true } shp-constants = { workspace = true } shp-file-key-verifier = { workspace = true } shp-file-metadata = { workspace = true } @@ -128,7 +132,7 @@ shp-opaque = { workspace = true } shp-traits = { workspace = true } shp-types = { workspace = true } sp-keystore = { workspace = true } -serde = { workspace = true, default-features = true } +substrate-prometheus-endpoint = { workspace = true } toml = { workspace = true } # Static linking @@ -146,7 +150,7 @@ std = [ "datahaven-stagenet-runtime/std", "datahaven-mainnet-runtime/std", "datahaven-testnet-runtime/std", - "shp-opaque/std" + "shp-opaque/std", ] # Dependencies that are only required if runtime benchmarking should be build. @@ -173,10 +177,10 @@ try-runtime = [ ] metadata-hash = [ - "datahaven-stagenet-runtime/metadata-hash", - "datahaven-mainnet-runtime/metadata-hash", - "datahaven-testnet-runtime/metadata-hash", + "datahaven-stagenet-runtime/metadata-hash", + "datahaven-mainnet-runtime/metadata-hash", + "datahaven-testnet-runtime/metadata-hash", ] # Bundle the postgres source in the binary to avoid having to install the deps in the system (simplify installation) -static = ["pq-sys", "pq-sys/bundled"] \ No newline at end of file +static = ["pq-sys", "pq-sys/bundled"] diff --git a/operator/node/src/cli.rs b/operator/node/src/cli.rs index c8f432a3..4ce67df6 100644 --- a/operator/node/src/cli.rs +++ b/operator/node/src/cli.rs @@ -61,7 +61,7 @@ pub struct Cli { /// Provider configurations file path (allow to specify the provider configuration in a file instead of the cli) #[arg(long, conflicts_with_all = [ "provider", "provider_type", "max_storage_capacity", "jump_capacity", - "storage_layer", "storage_path", "extrinsic_retry_timeout", + "storage_layer", "storage_path", "max_open_forests", "extrinsic_retry_timeout", "check_for_pending_proofs_period", "msp_charging_period", "msp_charge_fees_task", "msp_charge_fees_min_debt", "msp_move_bucket_task", "msp_move_bucket_max_try_count", "msp_move_bucket_max_tip", @@ -229,6 +229,14 @@ pub struct ProviderConfigurations { #[arg(long, required_if_eq("storage_layer", "rocks-db"))] pub storage_path: Option, + /// Maximum number of forest storage instances to keep open simultaneously. + /// MSPs have one forest per bucket; this controls how many can be open at once. + /// BSPs typically use a single forest, so this setting is effectively ignored for them. + /// Default: 512. With RocksDB's default of 512 open files per instance, + /// this results in a maximum of ~262K file descriptors. + #[arg(long, value_name = "COUNT", default_value = "512")] + pub max_open_forests: Option, + /// Extrinsic retry timeout in seconds. #[arg(long, default_value = "60")] pub extrinsic_retry_timeout: Option, @@ -617,6 +625,7 @@ impl ProviderConfigurations { trusted_file_transfer_server: self.trusted_file_transfer_server, trusted_file_transfer_server_host: self.trusted_file_transfer_server_host.clone(), trusted_file_transfer_server_port: self.trusted_file_transfer_server_port, + max_open_forests: self.max_open_forests, // We don't support maintenance mode for now. // maintenance_mode: self.maintenance_mode, } diff --git a/operator/node/src/command.rs b/operator/node/src/command.rs index 69a9bcd0..7346833a 100644 --- a/operator/node/src/command.rs +++ b/operator/node/src/command.rs @@ -47,6 +47,9 @@ pub struct ProviderOptions { pub storage_layer: StorageLayer, /// RocksDB Path. pub storage_path: Option, + /// Maximum number of forest storage instances to keep open simultaneously. + #[serde(default, skip_serializing_if = "Option::is_none")] + pub max_open_forests: Option, /// Maximum storage capacity of the Storage Provider (bytes). pub max_storage_capacity: Option, /// Jump capacity (bytes). diff --git a/operator/node/src/service.rs b/operator/node/src/service.rs index 9fe4f1dd..fe92dbfd 100644 --- a/operator/node/src/service.rs +++ b/operator/node/src/service.rs @@ -77,6 +77,7 @@ use sp_runtime::SaturatedConversion; use std::path::PathBuf; use std::sync::atomic::{AtomicU64, Ordering}; use std::{default::Default, path::Path, sync::Arc, time::Duration}; +use substrate_prometheus_endpoint::Registry; pub(crate) type FullClient = StorageHubClient; @@ -602,6 +603,9 @@ where ); } + // Get prometheus registry for metrics + let prometheus_registry = config.prometheus_registry().cloned(); + // Storage Hub builder let (sh_builder, maybe_storage_hub_client_rpc_config) = match init_sh_builder::( &role_options, @@ -611,6 +615,7 @@ where network.clone(), keystore_container.keystore(), client.clone(), + prometheus_registry.as_ref(), ) .await? { @@ -1113,6 +1118,7 @@ async fn init_sh_builder( network: Arc, keystore: KeystorePtr, client: Arc>, + prometheus_registry: Option<&Registry>, ) -> Result< Option<( StorageHubBuilder, @@ -1150,7 +1156,7 @@ where RoleOptions::Fisherman(_) => "fisherman-service", }; let task_spawner = TaskSpawner::new(task_manager.spawn_handle(), task_spawner_name); - let mut builder = StorageHubBuilder::::new(task_spawner); + let mut builder = StorageHubBuilder::::new(task_spawner, prometheus_registry); // Setup file transfer service (common to all roles) let (file_transfer_request_protocol_name, file_transfer_request_receiver) = @@ -1171,6 +1177,7 @@ where rpc_config, provider_type, storage_path, + max_open_forests, max_storage_capacity, jump_capacity, msp_charging_period, @@ -1194,7 +1201,7 @@ where // Setup the storage layer and capacity config builder - .setup_storage_layer(storage_path.clone()) + .setup_storage_layer(storage_path.clone(), max_open_forests.unwrap_or(512)) .with_capacity_config(Some(CapacityConfig::new( max_storage_capacity.unwrap_or_default().saturated_into(), jump_capacity.unwrap_or_default().saturated_into(), @@ -1259,7 +1266,7 @@ where ); // Setup the storage layer (ephemeral for fisherman) - builder.setup_storage_layer(None); + builder.setup_storage_layer(None, 0); // Set the indexer db pool builder.with_indexer_db_pool(Some(db_pool)); diff --git a/operator/runtime/mainnet/src/lib.rs b/operator/runtime/mainnet/src/lib.rs index 209eadf3..f7095fd9 100644 --- a/operator/runtime/mainnet/src/lib.rs +++ b/operator/runtime/mainnet/src/lib.rs @@ -1269,6 +1269,9 @@ impl_runtime_apis! { fn get_current_price_per_giga_unit_per_tick() -> Balance { PaymentStreams::get_current_price_per_giga_unit_per_tick() } + fn get_number_of_active_users_of_provider(provider_id: &ProviderIdFor) -> u32 { + PaymentStreams::get_number_of_active_users_of_provider(provider_id) + } } impl pallet_proofs_dealer_runtime_api::ProofsDealerApi, BlockNumber, KeyFor, RandomnessOutputFor, CustomChallenge> for Runtime { diff --git a/operator/runtime/stagenet/src/lib.rs b/operator/runtime/stagenet/src/lib.rs index edecd84d..4ae87599 100644 --- a/operator/runtime/stagenet/src/lib.rs +++ b/operator/runtime/stagenet/src/lib.rs @@ -1272,6 +1272,9 @@ impl_runtime_apis! { fn get_current_price_per_giga_unit_per_tick() -> Balance { PaymentStreams::get_current_price_per_giga_unit_per_tick() } + fn get_number_of_active_users_of_provider(provider_id: &ProviderIdFor) -> u32 { + PaymentStreams::get_number_of_active_users_of_provider(provider_id) + } } impl pallet_proofs_dealer_runtime_api::ProofsDealerApi, BlockNumber, KeyFor, RandomnessOutputFor, CustomChallenge> for Runtime { diff --git a/operator/runtime/testnet/src/lib.rs b/operator/runtime/testnet/src/lib.rs index 99cfb000..0fdd6b65 100644 --- a/operator/runtime/testnet/src/lib.rs +++ b/operator/runtime/testnet/src/lib.rs @@ -1269,6 +1269,9 @@ impl_runtime_apis! { fn get_current_price_per_giga_unit_per_tick() -> Balance { PaymentStreams::get_current_price_per_giga_unit_per_tick() } + fn get_number_of_active_users_of_provider(provider_id: &ProviderIdFor) -> u32 { + PaymentStreams::get_number_of_active_users_of_provider(provider_id) + } } impl pallet_proofs_dealer_runtime_api::ProofsDealerApi, BlockNumber, KeyFor, RandomnessOutputFor, CustomChallenge> for Runtime { diff --git a/operator/scripts/verify-licenses.sh b/operator/scripts/verify-licenses.sh index 29e26615..ca0d3aff 100755 --- a/operator/scripts/verify-licenses.sh +++ b/operator/scripts/verify-licenses.sh @@ -30,6 +30,7 @@ LICENSES=( "BSD-3-Clause" "CC0-1.0" "CDLA-Permissive-2.0" + "GPL-3.0" "GPL-3.0-only" "GPL-3.0-or-later WITH Classpath-exception-2.0" "ISC" diff --git a/test/.papi/descriptors/package.json b/test/.papi/descriptors/package.json index 8b72ba14..83c4b3ef 100644 --- a/test/.papi/descriptors/package.json +++ b/test/.papi/descriptors/package.json @@ -1,5 +1,5 @@ { - "version": "0.1.0-autogenerated.1756386890464564642", + "version": "0.1.0-autogenerated.11986612280028596972", "name": "@polkadot-api/descriptors", "files": [ "dist" diff --git a/test/.papi/metadata/datahaven.scale b/test/.papi/metadata/datahaven.scale index fdfccb00..2bcfb63e 100644 Binary files a/test/.papi/metadata/datahaven.scale and b/test/.papi/metadata/datahaven.scale differ