diff --git a/operator/Cargo.lock b/operator/Cargo.lock
index d6e3380f..5b97e009 100644
--- a/operator/Cargo.lock
+++ b/operator/Cargo.lock
@@ -23,11 +23,11 @@ dependencies = [
[[package]]
name = "addr2line"
-version = "0.25.1"
+version = "0.24.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b5d307320b3181d6d7954e663bd7c774a838b8220fe0593c86d9fb09f498b4b"
+checksum = "dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1"
dependencies = [
- "gimli 0.32.3",
+ "gimli 0.31.1",
]
[[package]]
@@ -154,7 +154,7 @@ dependencies = [
"derive_more 2.0.1",
"foldhash 0.1.5",
"hashbrown 0.15.5",
- "indexmap 2.11.4",
+ "indexmap 2.11.0",
"itoa",
"k256",
"keccak-asm",
@@ -201,7 +201,7 @@ dependencies = [
"alloy-sol-macro-input",
"const-hex",
"heck 0.5.0",
- "indexmap 2.11.4",
+ "indexmap 2.11.0",
"proc-macro-error2",
"proc-macro2",
"quote",
@@ -281,9 +281,9 @@ dependencies = [
[[package]]
name = "anstyle"
-version = "1.0.13"
+version = "1.0.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5192cca8006f1fd4f7237516f40fa183bb07f8fbdfedaa0036de5ea9b0b45e78"
+checksum = "862ed96ca487e809f1c8e5a8447f6ee2cf102f846893800b20cebdf541fc6bbd"
[[package]]
name = "anstyle-parse"
@@ -316,9 +316,9 @@ dependencies = [
[[package]]
name = "anyhow"
-version = "1.0.100"
+version = "1.0.99"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61"
+checksum = "b0674a1ddeecb70197781e945de4b3b8ffb61fa939a5597bcf48503737663100"
[[package]]
name = "approx"
@@ -421,26 +421,6 @@ dependencies = [
"zeroize",
]
-[[package]]
-name = "ark-ff"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a177aba0ed1e0fbb62aa9f6d0502e9b46dad8c2eab04c14258a1212d2557ea70"
-dependencies = [
- "ark-ff-asm 0.5.0",
- "ark-ff-macros 0.5.0",
- "ark-serialize 0.5.0",
- "ark-std 0.5.0",
- "arrayvec 0.7.6",
- "digest 0.10.7",
- "educe",
- "itertools 0.13.0",
- "num-bigint",
- "num-traits",
- "paste",
- "zeroize",
-]
-
[[package]]
name = "ark-ff-asm"
version = "0.3.0"
@@ -461,16 +441,6 @@ dependencies = [
"syn 1.0.109",
]
-[[package]]
-name = "ark-ff-asm"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62945a2f7e6de02a31fe400aa489f0e0f5b2502e69f95f853adb82a96c7a6b60"
-dependencies = [
- "quote",
- "syn 2.0.106",
-]
-
[[package]]
name = "ark-ff-macros"
version = "0.3.0"
@@ -496,19 +466,6 @@ dependencies = [
"syn 1.0.109",
]
-[[package]]
-name = "ark-ff-macros"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09be120733ee33f7693ceaa202ca41accd5653b779563608f1234f78ae07c4b3"
-dependencies = [
- "num-bigint",
- "num-traits",
- "proc-macro2",
- "quote",
- "syn 2.0.106",
-]
-
[[package]]
name = "ark-poly"
version = "0.4.2"
@@ -544,18 +501,6 @@ dependencies = [
"num-bigint",
]
-[[package]]
-name = "ark-serialize"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f4d068aaf107ebcd7dfb52bc748f8030e0fc930ac8e360146ca54c1203088f7"
-dependencies = [
- "ark-std 0.5.0",
- "arrayvec 0.7.6",
- "digest 0.10.7",
- "num-bigint",
-]
-
[[package]]
name = "ark-serialize-derive"
version = "0.4.2"
@@ -587,16 +532,6 @@ dependencies = [
"rand 0.8.5",
]
-[[package]]
-name = "ark-std"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "246a225cc6131e9ee4f24619af0f19d67761fff15d7ccc22e42b80846e69449a"
-dependencies = [
- "num-traits",
- "rand 0.8.5",
-]
-
[[package]]
name = "array-bytes"
version = "6.2.3"
@@ -652,7 +587,7 @@ dependencies = [
"nom",
"num-traits",
"rusticata-macros",
- "thiserror 2.0.17",
+ "thiserror 2.0.16",
"time",
]
@@ -759,9 +694,9 @@ dependencies = [
[[package]]
name = "async-fs"
-version = "2.2.0"
+version = "2.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8034a681df4aed8b8edbd7fbe472401ecf009251c8b40556b304567052e294c5"
+checksum = "09f7e37c0ed80b2a977691c47dae8625cfb21e205827106c64f7c588766b2e50"
dependencies = [
"async-lock 3.4.1",
"blocking",
@@ -776,7 +711,7 @@ checksum = "05b1b633a2115cd122d73b955eadd9916c18c8f510ec9cd1686404c60ad1c29c"
dependencies = [
"async-channel 2.5.0",
"async-executor",
- "async-io 2.6.0",
+ "async-io 2.5.0",
"async-lock 3.4.1",
"blocking",
"futures-lite 2.6.1",
@@ -805,20 +740,20 @@ dependencies = [
[[package]]
name = "async-io"
-version = "2.6.0"
+version = "2.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "456b8a8feb6f42d237746d4b3e9a178494627745c3c56c6ea55d92ba50d026fc"
+checksum = "19634d6336019ef220f09fd31168ce5c184b295cbf80345437cc36094ef223ca"
dependencies = [
- "autocfg",
+ "async-lock 3.4.1",
"cfg-if",
"concurrent-queue",
"futures-io",
"futures-lite 2.6.1",
"parking",
- "polling 3.11.0",
- "rustix 1.1.2",
+ "polling 3.10.0",
+ "rustix 1.0.8",
"slab",
- "windows-sys 0.61.1",
+ "windows-sys 0.60.2",
]
[[package]]
@@ -858,7 +793,7 @@ version = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b948000fad4873c1c9339d60f2623323a0cfd3816e5181033c6a5cb68b2accf7"
dependencies = [
- "async-io 2.6.0",
+ "async-io 2.5.0",
"blocking",
"futures-lite 2.6.1",
]
@@ -882,12 +817,12 @@ dependencies = [
[[package]]
name = "async-process"
-version = "2.5.0"
+version = "2.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fc50921ec0055cdd8a16de48773bfeec5c972598674347252c0399676be7da75"
+checksum = "65daa13722ad51e6ab1a1b9c01299142bc75135b337923cfa10e79bbbd669f00"
dependencies = [
"async-channel 2.5.0",
- "async-io 2.6.0",
+ "async-io 2.5.0",
"async-lock 3.4.1",
"async-signal",
"async-task",
@@ -895,25 +830,25 @@ dependencies = [
"cfg-if",
"event-listener 5.4.1",
"futures-lite 2.6.1",
- "rustix 1.1.2",
+ "rustix 1.0.8",
]
[[package]]
name = "async-signal"
-version = "0.2.13"
+version = "0.2.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43c070bbf59cd3570b6b2dd54cd772527c7c3620fce8be898406dd3ed6adc64c"
+checksum = "f567af260ef69e1d52c2b560ce0ea230763e6fbb9214a85d768760a920e3e3c1"
dependencies = [
- "async-io 2.6.0",
+ "async-io 2.5.0",
"async-lock 3.4.1",
"atomic-waker",
"cfg-if",
"futures-core",
"futures-io",
- "rustix 1.1.2",
+ "rustix 1.0.8",
"signal-hook-registry",
"slab",
- "windows-sys 0.61.1",
+ "windows-sys 0.60.2",
]
[[package]]
@@ -924,7 +859,7 @@ checksum = "2c8e079a4ab67ae52b7403632e4618815d6db36d2a010cfe41b02c1b1578f93b"
dependencies = [
"async-channel 1.9.0",
"async-global-executor",
- "async-io 2.6.0",
+ "async-io 2.5.0",
"async-lock 3.4.1",
"crossbeam-utils",
"futures-channel",
@@ -1023,17 +958,17 @@ checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8"
[[package]]
name = "backtrace"
-version = "0.3.76"
+version = "0.3.75"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb531853791a215d7c62a30daf0dde835f381ab5de4589cfe7c649d2cbe92bd6"
+checksum = "6806a6321ec58106fea15becdad98371e28d92ccbc7c8f1b3b6dd724fe8f1002"
dependencies = [
- "addr2line 0.25.1",
+ "addr2line 0.24.2",
"cfg-if",
"libc",
"miniz_oxide",
- "object 0.37.3",
+ "object 0.36.7",
"rustc-demangle",
- "windows-link",
+ "windows-targets 0.52.6",
]
[[package]]
@@ -1048,16 +983,6 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf"
-[[package]]
-name = "base256emoji"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5e9430d9a245a77c92176e649af6e275f20839a48389859d1661e9a128d077c"
-dependencies = [
- "const-str",
- "match-lookup",
-]
-
[[package]]
name = "base58"
version = "0.2.0"
@@ -1172,7 +1097,7 @@ dependencies = [
"bitflags 2.9.4",
"cexpr",
"clang-sys",
- "itertools 0.13.0",
+ "itertools 0.12.1",
"proc-macro2",
"quote",
"regex",
@@ -1543,7 +1468,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "234113d19d0d7d613b40e86fb654acf958910802bcceab913a4f9e7cda03b1a4"
dependencies = [
"memchr",
- "regex-automata",
+ "regex-automata 0.4.10",
"serde",
]
@@ -1617,11 +1542,11 @@ dependencies = [
[[package]]
name = "camino"
-version = "1.2.1"
+version = "1.1.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "276a59bf2b2c967788139340c9f0c5b12d7fd6630315c15c217e559de85d2609"
+checksum = "dd0b03af37dad7a14518b7691d81acb0f8222604ad3d1b02f6b4bed5188c0cd5"
dependencies = [
- "serde_core",
+ "serde",
]
[[package]]
@@ -1641,7 +1566,7 @@ checksum = "eee4243f1f26fc7a42710e7439c149e2b10b05472f88090acce52632f231a73a"
dependencies = [
"camino",
"cargo-platform",
- "semver 1.0.27",
+ "semver 1.0.26",
"serde",
"serde_json",
"thiserror 1.0.69",
@@ -1655,9 +1580,9 @@ checksum = "fd6c0e7b807d60291f42f33f58480c0bfafe28ed08286446f45e463728cf9c1c"
[[package]]
name = "cc"
-version = "1.2.39"
+version = "1.2.36"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1354349954c6fc9cb0deab020f27f783cf0b604e8bb754dc4658ecf0d29c35f"
+checksum = "5252b3d2648e5eedbc1a6f501e3c795e07025c1e93bbf8bbdd6eef7f447a6d54"
dependencies = [
"find-msvc-tools",
"jobserver",
@@ -1751,7 +1676,7 @@ dependencies = [
"js-sys",
"num-traits",
"wasm-bindgen",
- "windows-link",
+ "windows-link 0.2.0",
]
[[package]]
@@ -1812,9 +1737,9 @@ dependencies = [
[[package]]
name = "clap"
-version = "4.5.48"
+version = "4.5.47"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2134bb3ea021b78629caa971416385309e0131b351b25e01dc16fb54e1b5fae"
+checksum = "7eac00902d9d136acd712710d71823fb8ac8004ca445a89e73a41d45aa712931"
dependencies = [
"clap_builder",
"clap_derive",
@@ -1822,9 +1747,9 @@ dependencies = [
[[package]]
name = "clap_builder"
-version = "4.5.48"
+version = "4.5.47"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2ba64afa3c0a6df7fa517765e31314e983f51dda798ffba27b988194fb65dc9"
+checksum = "2ad9bbf750e73b5884fb8a211a9424a1906c1e156724260fdae972f31d70e1d6"
dependencies = [
"anstream",
"anstyle",
@@ -1891,9 +1816,9 @@ dependencies = [
[[package]]
name = "comfy-table"
-version = "7.2.1"
+version = "7.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b03b7db8e0b4b2fdad6c551e634134e99ec000e5c8c3b6856c65e8bbaded7a3b"
+checksum = "3f8e18d0dca9578507f13f9803add0df13362b02c501c1c17734f0dbb52eaf0b"
dependencies = [
"unicode-segmentation",
"unicode-width",
@@ -1929,14 +1854,15 @@ dependencies = [
[[package]]
name = "const-hex"
-version = "1.16.0"
+version = "1.15.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b6407bff74dea37e0fa3dc1c1c974e5d46405f0c987bf9997a0762adce71eda6"
+checksum = "dccd746bf9b1038c0507b7cec21eb2b11222db96a2902c96e8c185d6d20fb9c4"
dependencies = [
"cfg-if",
"cpufeatures",
+ "hex",
"proptest",
- "serde_core",
+ "serde",
]
[[package]]
@@ -1965,12 +1891,6 @@ dependencies = [
"tiny-keccak",
]
-[[package]]
-name = "const-str"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2f421161cb492475f1661ddc9815a745a1c894592070661180fdec3d4872e9c3"
-
[[package]]
name = "const_format"
version = "0.2.34"
@@ -2730,12 +2650,11 @@ dependencies = [
[[package]]
name = "cxx"
-version = "1.0.186"
+version = "1.0.179"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4e9c4fe7f2f5dc5c62871a1b43992d197da6fa1394656a94276ac2894a90a6fe"
+checksum = "85b04ade63e106c145cdcd3482932299c2dcd36b15f1d5c596c06edf365966fe"
dependencies = [
"cc",
- "cxx-build",
"cxxbridge-cmd",
"cxxbridge-flags",
"cxxbridge-macro",
@@ -2745,13 +2664,13 @@ dependencies = [
[[package]]
name = "cxx-build"
-version = "1.0.186"
+version = "1.0.179"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5cf2909d37d80633ddd208676fc27c2608a7f035fff69c882421168038b26dd"
+checksum = "ba16a03d510b0e52be1952831ae1656e3ac9f6ac0c293a7b261670a0c7ff3b54"
dependencies = [
"cc",
"codespan-reporting",
- "indexmap 2.11.4",
+ "indexmap 2.11.0",
"proc-macro2",
"quote",
"scratch",
@@ -2760,13 +2679,13 @@ dependencies = [
[[package]]
name = "cxxbridge-cmd"
-version = "1.0.186"
+version = "1.0.179"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "077f5ee3d3bfd8d27f83208fdaa96ddd50af7f096c77077cc4b94da10bfacefd"
+checksum = "1c3aefd0d58a2df90cd67fe2eccdf7fb6e6905e9886ae5feb2258ce0dec23063"
dependencies = [
"clap",
"codespan-reporting",
- "indexmap 2.11.4",
+ "indexmap 2.11.0",
"proc-macro2",
"quote",
"syn 2.0.106",
@@ -2774,17 +2693,17 @@ dependencies = [
[[package]]
name = "cxxbridge-flags"
-version = "1.0.186"
+version = "1.0.179"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0108748615125b9f2e915dfafdffcbdabbca9b15102834f6d7e9a768f2f2864"
+checksum = "0b735d976ca632f9e94b9de9b0ab8283de65e2641e7ae9d5abc3e6b467ea6673"
[[package]]
name = "cxxbridge-macro"
-version = "1.0.186"
+version = "1.0.179"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6e896681ef9b8dc462cfa6961d61909704bde0984b30bcb4082fe102b478890"
+checksum = "42fffb686dc0b7bab364ee41fcf5a04c295c7e7a5f07cd38155c1c3bda437666"
dependencies = [
- "indexmap 2.11.4",
+ "indexmap 2.11.0",
"proc-macro2",
"quote",
"rustversion",
@@ -2897,7 +2816,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8d162beedaa69905488a8da94f5ac3edb4dd4788b732fadb7bd120b2625c1976"
dependencies = [
"data-encoding",
- "syn 2.0.106",
+ "syn 1.0.109",
]
[[package]]
@@ -2944,6 +2863,7 @@ dependencies = [
"pallet-evm-precompile-bn128",
"pallet-evm-precompile-call-permit",
"pallet-evm-precompile-collective",
+ "pallet-evm-precompile-conviction-voting",
"pallet-evm-precompile-file-system",
"pallet-evm-precompile-identity",
"pallet-evm-precompile-modexp",
@@ -3224,6 +3144,7 @@ dependencies = [
"pallet-evm-precompile-bn128",
"pallet-evm-precompile-call-permit",
"pallet-evm-precompile-collective",
+ "pallet-evm-precompile-conviction-voting",
"pallet-evm-precompile-file-system",
"pallet-evm-precompile-identity",
"pallet-evm-precompile-modexp",
@@ -3368,6 +3289,7 @@ dependencies = [
"pallet-evm-precompile-bn128",
"pallet-evm-precompile-call-permit",
"pallet-evm-precompile-collective",
+ "pallet-evm-precompile-conviction-voting",
"pallet-evm-precompile-file-system",
"pallet-evm-precompile-identity",
"pallet-evm-precompile-modexp",
@@ -3509,9 +3431,9 @@ dependencies = [
[[package]]
name = "deranged"
-version = "0.5.4"
+version = "0.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a41953f86f8a05768a6cda24def994fd2f424b04ec5c719cf89989779f199071"
+checksum = "d630bccd429a5bb5a64b5e94f693bfc48c9f8566418fda4c494cc94f911f87cc"
dependencies = [
"powerfmt",
]
@@ -3930,18 +3852,6 @@ dependencies = [
"zeroize",
]
-[[package]]
-name = "educe"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d7bc049e1bd8cdeb31b68bbd586a9464ecf9f3944af3958a7a9d0f8b9799417"
-dependencies = [
- "enum-ordinalize",
- "proc-macro2",
- "quote",
- "syn 2.0.106",
-]
-
[[package]]
name = "either"
version = "1.15.0"
@@ -4001,26 +3911,6 @@ dependencies = [
"syn 2.0.106",
]
-[[package]]
-name = "enum-ordinalize"
-version = "4.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fea0dcfa4e54eeb516fe454635a95753ddd39acda650ce703031c6973e315dd5"
-dependencies = [
- "enum-ordinalize-derive",
-]
-
-[[package]]
-name = "enum-ordinalize-derive"
-version = "4.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d28318a75d4aead5c4db25382e8ef717932d0346600cacae6357eb5941bc5ff"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.106",
-]
-
[[package]]
name = "enumflags2"
version = "0.7.12"
@@ -4079,12 +3969,12 @@ checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f"
[[package]]
name = "errno"
-version = "0.3.14"
+version = "0.3.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb"
+checksum = "778e2ac28f6c47af28e4907f13ffd1e1ddbd400980a9abd7c8df189bf578a5ad"
dependencies = [
"libc",
- "windows-sys 0.61.1",
+ "windows-sys 0.60.2",
]
[[package]]
@@ -4337,8 +4227,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eb42427514b063d97ce21d5199f36c0c307d981434a6be32582bc79fe5bd2303"
dependencies = [
"expander",
- "indexmap 2.11.4",
- "proc-macro-crate 3.4.0",
+ "indexmap 2.11.0",
+ "proc-macro-crate 3.3.0",
"proc-macro2",
"quote",
"syn 2.0.106",
@@ -4602,9 +4492,9 @@ dependencies = [
[[package]]
name = "find-msvc-tools"
-version = "0.1.2"
+version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ced73b1dacfc750a6db6c0a0c3a3853c8b41997e2e2c563dc90804ae6867959"
+checksum = "7fd99930f64d146689264c637b5af2f0233a933bef0d8570e2526bf9e083192d"
[[package]]
name = "finito"
@@ -4925,7 +4815,7 @@ name = "frame-election-provider-solution-type"
version = "14.0.2"
source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2412-6#bbc435c7667d3283ba280a8fec44676357392753"
dependencies = [
- "proc-macro-crate 3.4.0",
+ "proc-macro-crate 3.3.0",
"proc-macro2",
"quote",
"syn 2.0.106",
@@ -5085,7 +4975,7 @@ version = "13.0.1"
source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2412-6#bbc435c7667d3283ba280a8fec44676357392753"
dependencies = [
"frame-support-procedural-tools-derive",
- "proc-macro-crate 3.4.0",
+ "proc-macro-crate 3.3.0",
"proc-macro2",
"quote",
"syn 2.0.106",
@@ -5395,6 +5285,20 @@ dependencies = [
"byteorder",
]
+[[package]]
+name = "generator"
+version = "0.8.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "605183a538e3e2a9c1038635cc5c2d194e2ee8fd0d1b66b8349fad7dbacce5a2"
+dependencies = [
+ "cc",
+ "cfg-if",
+ "libc",
+ "log",
+ "rustversion",
+ "windows 0.61.3",
+]
+
[[package]]
name = "generic-array"
version = "0.12.4"
@@ -5448,7 +5352,7 @@ dependencies = [
"js-sys",
"libc",
"r-efi",
- "wasi 0.14.7+wasi-0.2.4",
+ "wasi 0.14.4+wasi-0.2.4",
"wasm-bindgen",
]
@@ -5495,9 +5399,9 @@ dependencies = [
[[package]]
name = "gimli"
-version = "0.32.3"
+version = "0.31.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e629b9b98ef3dd8afe6ca2bd0f89306cec16d43d907889945bc5d6687f2f13c7"
+checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f"
[[package]]
name = "glob"
@@ -5560,7 +5464,7 @@ dependencies = [
"futures-sink",
"futures-util",
"http 0.2.12",
- "indexmap 2.11.4",
+ "indexmap 2.11.0",
"slab",
"tokio",
"tokio-util",
@@ -5579,7 +5483,7 @@ dependencies = [
"futures-core",
"futures-sink",
"http 1.3.1",
- "indexmap 2.11.4",
+ "indexmap 2.11.0",
"slab",
"tokio",
"tokio-util",
@@ -5653,12 +5557,6 @@ dependencies = [
"serde",
]
-[[package]]
-name = "hashbrown"
-version = "0.16.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d"
-
[[package]]
name = "hashlink"
version = "0.8.4"
@@ -5700,6 +5598,9 @@ name = "hex"
version = "0.4.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
+dependencies = [
+ "serde",
+]
[[package]]
name = "hex-conservative"
@@ -5737,7 +5638,7 @@ dependencies = [
"once_cell",
"rand 0.9.2",
"ring 0.17.14",
- "thiserror 2.0.17",
+ "thiserror 2.0.16",
"tinyvec",
"tokio",
"tracing",
@@ -5760,7 +5661,7 @@ dependencies = [
"rand 0.9.2",
"resolv-conf",
"smallvec",
- "thiserror 2.0.17",
+ "thiserror 2.0.16",
"tokio",
"tracing",
]
@@ -5874,9 +5775,9 @@ checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
[[package]]
name = "humantime"
-version = "2.3.0"
+version = "2.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "135b12329e5e3ce057a9f972339ea52bc954fe1e9358ef27f95e89716fbc5424"
+checksum = "9b112acc8b3adf4b107a8ec20977da0273a8c386765a3ec0229bd500a1443f9f"
[[package]]
name = "hyper"
@@ -5951,20 +5852,20 @@ dependencies = [
"hyper 1.7.0",
"hyper-util",
"log",
- "rustls 0.23.32",
+ "rustls 0.23.31",
"rustls-native-certs 0.8.1",
"rustls-pki-types",
"tokio",
- "tokio-rustls 0.26.4",
+ "tokio-rustls 0.26.2",
"tower-service",
"webpki-roots 1.0.2",
]
[[package]]
name = "hyper-util"
-version = "0.1.17"
+version = "0.1.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c6995591a8f1380fcb4ba966a252a4b29188d51d2b89e3a252f5305be65aea8"
+checksum = "8d9b05277c7e8da2c93a568989bb6207bef0112e8d17df7a6eda4a3cf143bc5e"
dependencies = [
"base64 0.22.1",
"bytes",
@@ -5986,9 +5887,9 @@ dependencies = [
[[package]]
name = "iana-time-zone"
-version = "0.1.64"
+version = "0.1.63"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "33e57f83510bb73707521ebaffa789ec8caf86f9657cad665b092b581d40e9fb"
+checksum = "b0c919e5debc312ad217002b8048a17b7d83f80703865bbfcfebb0458b0b27d8"
dependencies = [
"android_system_properties",
"core-foundation-sys",
@@ -5996,7 +5897,7 @@ dependencies = [
"js-sys",
"log",
"wasm-bindgen",
- "windows-core 0.62.1",
+ "windows-core 0.61.2",
]
[[package]]
@@ -6158,7 +6059,7 @@ version = "3.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cdf9d64cfcf380606e64f9a0bcf493616b65331199f984151a6fa11a7b3cde38"
dependencies = [
- "async-io 2.6.0",
+ "async-io 2.5.0",
"core-foundation 0.9.4",
"fnv",
"futures",
@@ -6172,7 +6073,7 @@ dependencies = [
"rtnetlink",
"system-configuration",
"tokio",
- "windows",
+ "windows 0.53.0",
]
[[package]]
@@ -6293,14 +6194,13 @@ dependencies = [
[[package]]
name = "indexmap"
-version = "2.11.4"
+version = "2.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b0f83760fb341a774ed326568e19f5a863af4a952def8c39f9ab92fd95b88e5"
+checksum = "f2481980430f9f78649238835720ddccc57e52df14ffce1c6f37391d61b563e9"
dependencies = [
"equivalent",
- "hashbrown 0.16.0",
+ "hashbrown 0.15.5",
"serde",
- "serde_core",
]
[[package]]
@@ -6445,15 +6345,6 @@ dependencies = [
"either",
]
-[[package]]
-name = "itertools"
-version = "0.13.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186"
-dependencies = [
- "either",
-]
-
[[package]]
name = "itertools"
version = "0.14.0"
@@ -6517,9 +6408,9 @@ dependencies = [
[[package]]
name = "js-sys"
-version = "0.3.81"
+version = "0.3.78"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec48937a97411dcb524a265206ccd4c90bb711fca92b2792c407f268825b9305"
+checksum = "0c0b063578492ceec17683ef2f8c5e89121fbd0b172cbc280635ab7567db2738"
dependencies = [
"once_cell",
"wasm-bindgen",
@@ -6595,13 +6486,13 @@ dependencies = [
"http 1.3.1",
"jsonrpsee-core 0.23.2",
"pin-project",
- "rustls 0.23.32",
+ "rustls 0.23.31",
"rustls-pki-types",
"rustls-platform-verifier 0.3.4",
"soketto 0.8.1",
"thiserror 1.0.69",
"tokio",
- "tokio-rustls 0.26.4",
+ "tokio-rustls 0.26.2",
"tokio-util",
"tracing",
"url",
@@ -6618,13 +6509,13 @@ dependencies = [
"http 1.3.1",
"jsonrpsee-core 0.24.9",
"pin-project",
- "rustls 0.23.32",
+ "rustls 0.23.31",
"rustls-pki-types",
"rustls-platform-verifier 0.5.3",
"soketto 0.8.1",
"thiserror 1.0.69",
"tokio",
- "tokio-rustls 0.26.4",
+ "tokio-rustls 0.26.2",
"tokio-util",
"tracing",
"url",
@@ -6728,7 +6619,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5e65763c942dfc9358146571911b0cd1c361c2d63e2d2305622d40d36376ca80"
dependencies = [
"heck 0.5.0",
- "proc-macro-crate 3.4.0",
+ "proc-macro-crate 3.3.0",
"proc-macro2",
"quote",
"syn 2.0.106",
@@ -6979,18 +6870,18 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
[[package]]
name = "libc"
-version = "0.2.176"
+version = "0.2.175"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58f929b4d672ea937a23a1ab494143d968337a5f47e56d0815df1e0890ddf174"
+checksum = "6a82ae493e598baaea5209805c49bbf2ea7de956d50d7da0da1164f9c6d28543"
[[package]]
name = "libloading"
-version = "0.8.9"
+version = "0.8.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55"
+checksum = "07033963ba89ebaf1584d767badaa2e8fcec21aedea6b8c0346d487d49c28667"
dependencies = [
"cfg-if",
- "windows-link",
+ "windows-targets 0.53.3",
]
[[package]]
@@ -7140,7 +7031,7 @@ dependencies = [
"quick-protobuf",
"rand 0.8.5",
"sha2 0.10.9",
- "thiserror 2.0.17",
+ "thiserror 2.0.16",
"tracing",
"zeroize",
]
@@ -7435,9 +7326,9 @@ dependencies = [
[[package]]
name = "libredox"
-version = "0.1.10"
+version = "0.1.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "416f7e718bdb06000964960ffa43b4335ad4012ae8b99060261aa4a8088d5ccb"
+checksum = "391290121bad3d37fbddad76d8f5d1c1c314cfc646d143d7e07a3086ddff0ce3"
dependencies = [
"bitflags 2.9.4",
"libc",
@@ -7584,9 +7475,9 @@ checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab"
[[package]]
name = "linux-raw-sys"
-version = "0.11.0"
+version = "0.9.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039"
+checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12"
[[package]]
name = "lioness"
@@ -7620,7 +7511,7 @@ dependencies = [
"futures",
"futures-timer",
"hickory-resolver",
- "indexmap 2.11.4",
+ "indexmap 2.11.0",
"libc",
"mockall 0.13.1",
"multiaddr 0.17.1",
@@ -7637,7 +7528,7 @@ dependencies = [
"smallvec",
"snow",
"socket2 0.5.10",
- "thiserror 2.0.17",
+ "thiserror 2.0.16",
"tokio",
"tokio-stream",
"tokio-tungstenite",
@@ -7648,7 +7539,7 @@ dependencies = [
"url",
"x25519-dalek",
"x509-parser 0.17.0",
- "yamux 0.13.7",
+ "yamux 0.13.6",
"yasna",
"zeroize",
]
@@ -7672,6 +7563,19 @@ dependencies = [
"value-bag",
]
+[[package]]
+name = "loom"
+version = "0.7.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "419e0dc8046cb947daa77eb95ae174acfbddb7673b4151f56d1eed8e93fbfaca"
+dependencies = [
+ "cfg-if",
+ "generator",
+ "scoped-tls",
+ "tracing",
+ "tracing-subscriber",
+]
+
[[package]]
name = "lru"
version = "0.11.1"
@@ -7789,24 +7693,13 @@ dependencies = [
"syn 2.0.106",
]
-[[package]]
-name = "match-lookup"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1265724d8cb29dbbc2b0f06fffb8bf1a8c0cf73a78eede9ba73a4a66c52a981e"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 1.0.109",
-]
-
[[package]]
name = "matchers"
-version = "0.2.0"
+version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d1525a2a28c7f4fa0fc98bb91ae755d1e2d1505079e05539e35bc876b5d65ae9"
+checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558"
dependencies = [
- "regex-automata",
+ "regex-automata 0.1.10",
]
[[package]]
@@ -7837,9 +7730,9 @@ dependencies = [
[[package]]
name = "memchr"
-version = "2.7.6"
+version = "2.7.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f52b00d39961fc5b2736ea853c9cc86238e165017a493d1d5c8eac6bdc4cc273"
+checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0"
[[package]]
name = "memfd"
@@ -7847,7 +7740,7 @@ version = "0.6.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ad38eb12aea514a0466ea40a80fd8cc83637065948eb4a426e4aa46261175227"
dependencies = [
- "rustix 1.1.2",
+ "rustix 1.0.8",
]
[[package]]
@@ -8068,19 +7961,20 @@ dependencies = [
[[package]]
name = "moka"
-version = "0.12.11"
+version = "0.12.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8261cd88c312e0004c1d51baad2980c66528dfdb2bee62003e643a4d8f86b077"
+checksum = "a9321642ca94a4282428e6ea4af8cc2ca4eac48ac7a6a4ea8f33f76d0ce70926"
dependencies = [
"crossbeam-channel",
"crossbeam-epoch",
"crossbeam-utils",
- "equivalent",
+ "loom",
"parking_lot 0.12.4",
"portable-atomic",
"rustc_version 0.4.1",
"smallvec",
"tagptr",
+ "thiserror 1.0.69",
"uuid",
]
@@ -8124,12 +8018,11 @@ dependencies = [
[[package]]
name = "multibase"
-version = "0.9.2"
+version = "0.9.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8694bb4835f452b0e3bb06dbebb1d6fc5385b6ca1caf2e55fd165c042390ec77"
+checksum = "9b3539ec3c1f04ac9748a260728e855f261b4977f5c3406612c884564f329404"
dependencies = [
"base-x",
- "base256emoji",
"data-encoding",
"data-encoding-macro",
]
@@ -8293,7 +8186,7 @@ dependencies = [
"log",
"netlink-packet-core",
"netlink-sys",
- "thiserror 2.0.17",
+ "thiserror 2.0.16",
]
[[package]]
@@ -8317,7 +8210,7 @@ checksum = "07709a6d4eba90ab10ec170a0530b3aafc81cb8a2d380e4423ae41fc55fe5745"
dependencies = [
"cc",
"libc",
- "thiserror 2.0.17",
+ "thiserror 2.0.16",
"winapi",
]
@@ -8398,11 +8291,12 @@ checksum = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be"
[[package]]
name = "nu-ansi-term"
-version = "0.50.1"
+version = "0.46.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d4a28e057d01f97e61255210fcff094d74ed0466038633e95017f5beb68e4399"
+checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84"
dependencies = [
- "windows-sys 0.52.0",
+ "overload",
+ "winapi",
]
[[package]]
@@ -8521,7 +8415,7 @@ version = "0.7.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "77e878c846a8abae00dd069496dbe8751b16ac1c3d6bd2a7283a938e8228f90d"
dependencies = [
- "proc-macro-crate 3.4.0",
+ "proc-macro-crate 3.3.0",
"proc-macro2",
"quote",
"syn 2.0.106",
@@ -8550,9 +8444,9 @@ dependencies = [
[[package]]
name = "object"
-version = "0.37.3"
+version = "0.36.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff76201f031d8863c38aa7f905eca4f53abbfa15f609db4277d44cd8938f33fe"
+checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87"
dependencies = [
"memchr",
]
@@ -8637,9 +8531,9 @@ checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e"
[[package]]
name = "openssl-src"
-version = "300.5.3+3.5.4"
+version = "300.5.2+3.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc6bad8cd0233b63971e232cc9c5e83039375b8586d2312f31fda85db8f888c2"
+checksum = "d270b79e2926f5150189d475bc7e9d2c69f9c4697b185fa917d5a32b792d21b4"
dependencies = [
"cc",
]
@@ -8687,10 +8581,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "43dfaf083aef571385fccfdc3a2f8ede8d0a1863160455d4f2b014d8f7d04a3f"
dependencies = [
"expander",
- "indexmap 2.11.4",
+ "indexmap 2.11.0",
"itertools 0.11.0",
"petgraph 0.6.5",
- "proc-macro-crate 3.4.0",
+ "proc-macro-crate 3.3.0",
"proc-macro2",
"quote",
"syn 1.0.109",
@@ -8705,6 +8599,12 @@ dependencies = [
"num-traits",
]
+[[package]]
+name = "overload"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
+
[[package]]
name = "pallet-asset-conversion"
version = "21.1.0"
@@ -9212,6 +9112,27 @@ dependencies = [
"sp-std",
]
+[[package]]
+name = "pallet-evm-precompile-conviction-voting"
+version = "0.1.0"
+dependencies = [
+ "fp-evm",
+ "frame-support",
+ "frame-system",
+ "log",
+ "pallet-balances",
+ "pallet-conviction-voting",
+ "pallet-evm",
+ "pallet-timestamp",
+ "parity-scale-codec",
+ "precompile-utils",
+ "scale-info",
+ "sp-core",
+ "sp-io",
+ "sp-runtime",
+ "sp-std",
+]
+
[[package]]
name = "pallet-evm-precompile-file-system"
version = "0.1.0"
@@ -10142,7 +10063,7 @@ version = "3.7.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "34b4653168b563151153c9e4c08ebed57fb8262bebfa79711552fa983c623e7a"
dependencies = [
- "proc-macro-crate 3.4.0",
+ "proc-macro-crate 3.3.0",
"proc-macro2",
"quote",
"syn 2.0.106",
@@ -10273,20 +10194,20 @@ checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220"
[[package]]
name = "pest"
-version = "2.8.2"
+version = "2.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "21e0a3a33733faeaf8651dfee72dd0f388f0c8e5ad496a3478fa5a922f49cfa8"
+checksum = "1db05f56d34358a8b1066f67cbb203ee3e7ed2ba674a6263a1d5ec6db2204323"
dependencies = [
"memchr",
- "thiserror 2.0.17",
+ "thiserror 2.0.16",
"ucd-trie",
]
[[package]]
name = "pest_derive"
-version = "2.8.2"
+version = "2.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bc58706f770acb1dbd0973e6530a3cff4746fb721207feb3a8a6064cd0b6c663"
+checksum = "bb056d9e8ea77922845ec74a1c4e8fb17e7c218cc4fc11a15c5d25e189aa40bc"
dependencies = [
"pest",
"pest_generator",
@@ -10294,9 +10215,9 @@ dependencies = [
[[package]]
name = "pest_generator"
-version = "2.8.2"
+version = "2.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d4f36811dfe07f7b8573462465d5cb8965fffc2e71ae377a33aecf14c2c9a2f"
+checksum = "87e404e638f781eb3202dc82db6760c8ae8a1eeef7fb3fa8264b2ef280504966"
dependencies = [
"pest",
"pest_meta",
@@ -10307,9 +10228,9 @@ dependencies = [
[[package]]
name = "pest_meta"
-version = "2.8.2"
+version = "2.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "42919b05089acbd0a5dcd5405fb304d17d1053847b81163d09c4ad18ce8e8420"
+checksum = "edd1101f170f5903fde0914f899bb503d9ff5271d7ba76bbb70bea63690cc0d5"
dependencies = [
"pest",
"sha2 0.10.9",
@@ -10322,7 +10243,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db"
dependencies = [
"fixedbitset 0.4.2",
- "indexmap 2.11.4",
+ "indexmap 2.11.0",
]
[[package]]
@@ -10332,24 +10253,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3672b37090dbd86368a4145bc067582552b29c27377cad4e0a306c97f9bd7772"
dependencies = [
"fixedbitset 0.5.7",
- "indexmap 2.11.4",
+ "indexmap 2.11.0",
]
[[package]]
name = "phf"
-version = "0.13.1"
+version = "0.11.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1562dc717473dbaa4c1f85a36410e03c047b2e7df7f45ee938fbef64ae7fadf"
+checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078"
dependencies = [
"phf_shared",
- "serde",
]
[[package]]
name = "phf_shared"
-version = "0.13.1"
+version = "0.11.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e57fef6bc5981e38c2ce2d63bfa546861309f875b8a75f092d1d54ae2d64f266"
+checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5"
dependencies = [
"siphasher 1.0.1",
]
@@ -10576,7 +10496,7 @@ dependencies = [
"fatality",
"futures",
"futures-timer",
- "indexmap 2.11.4",
+ "indexmap 2.11.0",
"parity-scale-codec",
"polkadot-erasure-coding",
"polkadot-node-network-protocol",
@@ -11504,7 +11424,7 @@ dependencies = [
"fatality",
"futures",
"futures-timer",
- "indexmap 2.11.4",
+ "indexmap 2.11.0",
"parity-scale-codec",
"polkadot-node-network-protocol",
"polkadot-node-primitives",
@@ -11629,16 +11549,16 @@ dependencies = [
[[package]]
name = "polling"
-version = "3.11.0"
+version = "3.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d0e4f59085d47d8241c88ead0f274e8a0cb551f3625263c05eb8dd897c34218"
+checksum = "b5bd19146350fe804f7cb2669c851c03d69da628803dab0d98018142aaa5d829"
dependencies = [
"cfg-if",
"concurrent-queue",
"hermit-abi 0.5.2",
"pin-project-lite",
- "rustix 1.1.2",
- "windows-sys 0.61.1",
+ "rustix 1.0.8",
+ "windows-sys 0.60.2",
]
[[package]]
@@ -11672,9 +11592,9 @@ checksum = "f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483"
[[package]]
name = "postgres-protocol"
-version = "0.6.9"
+version = "0.6.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fbef655056b916eb868048276cfd5d6a7dea4f81560dfd047f97c8c6fe3fcfd4"
+checksum = "76ff0abab4a9b844b93ef7b81f1efc0a366062aaef2cd702c76256b5dc075c54"
dependencies = [
"base64 0.22.1",
"byteorder",
@@ -11690,9 +11610,9 @@ dependencies = [
[[package]]
name = "postgres-types"
-version = "0.2.10"
+version = "0.2.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77a120daaabfcb0e324d5bf6e411e9222994cb3795c79943a0ef28ed27ea76e4"
+checksum = "613283563cd90e1dfc3518d548caee47e0e725455ed619881f5cf21f36de4b48"
dependencies = [
"bytes",
"fallible-iterator 0.2.0",
@@ -11725,12 +11645,11 @@ dependencies = [
[[package]]
name = "pq-sys"
-version = "0.7.3"
+version = "0.7.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "412a4cb9e93795c0594dab7c1c4ec1c8b42b514e1baf6e9f63d14aa376e5bd04"
+checksum = "dfd6cf44cca8f9624bc19df234fc4112873432f5fda1caff174527846d026fa9"
dependencies = [
"libc",
- "pkg-config",
"vcpkg",
]
@@ -11903,11 +11822,11 @@ dependencies = [
[[package]]
name = "proc-macro-crate"
-version = "3.4.0"
+version = "3.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "219cb19e96be00ab2e37d6e299658a0cfa83e52429179969b0f0121b4ac46983"
+checksum = "edce586971a4dfaa28950c6f18ed55e0406c1ab88bbce2c6f6293a7aaba73d35"
dependencies = [
- "toml_edit 0.23.6",
+ "toml_edit",
]
[[package]]
@@ -12026,9 +11945,9 @@ dependencies = [
[[package]]
name = "proptest"
-version = "1.8.0"
+version = "1.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2bb0be07becd10686a0bb407298fb425360a5c44a663774406340c59a22de4ce"
+checksum = "6fcdab19deb5195a31cf7726a210015ff1496ba1464fd42cb4f537b8b01b471f"
dependencies = [
"bit-set",
"bit-vec",
@@ -12038,7 +11957,7 @@ dependencies = [
"rand 0.9.2",
"rand_chacha 0.9.0",
"rand_xorshift",
- "regex-syntax",
+ "regex-syntax 0.8.6",
"rusty-fork",
"tempfile",
"unarray",
@@ -12231,9 +12150,9 @@ dependencies = [
"quinn-proto 0.11.13",
"quinn-udp 0.5.14",
"rustc-hash 2.1.1",
- "rustls 0.23.32",
+ "rustls 0.23.31",
"socket2 0.6.0",
- "thiserror 2.0.17",
+ "thiserror 2.0.16",
"tokio",
"tracing",
"web-time",
@@ -12268,10 +12187,10 @@ dependencies = [
"rand 0.9.2",
"ring 0.17.14",
"rustc-hash 2.1.1",
- "rustls 0.23.32",
+ "rustls 0.23.31",
"rustls-pki-types",
"slab",
- "thiserror 2.0.17",
+ "thiserror 2.0.16",
"tinyvec",
"tracing",
"web-time",
@@ -12306,9 +12225,9 @@ dependencies = [
[[package]]
name = "quote"
-version = "1.0.41"
+version = "1.0.40"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce25767e7b499d1b604768e7cde645d14cc8584231ea6b295e9c9eb22c02e1d1"
+checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d"
dependencies = [
"proc-macro2",
]
@@ -12519,18 +12438,18 @@ dependencies = [
[[package]]
name = "ref-cast"
-version = "1.0.25"
+version = "1.0.24"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f354300ae66f76f1c85c5f84693f0ce81d747e2c3f21a45fef496d89c960bf7d"
+checksum = "4a0ae411dbe946a674d89546582cea4ba2bb8defac896622d6496f14c23ba5cf"
dependencies = [
"ref-cast-impl",
]
[[package]]
name = "ref-cast-impl"
-version = "1.0.25"
+version = "1.0.24"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b7186006dcb21920990093f30e3dea63b7d6e977bf1256be20c3563a5db070da"
+checksum = "1165225c21bff1f3bbce98f5a1f889949bc902d3575308cc7b0de30b4f6d27c7"
dependencies = [
"proc-macro2",
"quote",
@@ -12579,27 +12498,42 @@ dependencies = [
[[package]]
name = "regex"
-version = "1.11.3"
+version = "1.11.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b5288124840bee7b386bc413c487869b360b2b4ec421ea56425128692f2a82c"
+checksum = "23d7fd106d8c02486a8d64e778353d1cffe08ce79ac2e82f540c86d0facf6912"
dependencies = [
"aho-corasick",
"memchr",
- "regex-automata",
- "regex-syntax",
+ "regex-automata 0.4.10",
+ "regex-syntax 0.8.6",
]
[[package]]
name = "regex-automata"
-version = "0.4.11"
+version = "0.1.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "833eb9ce86d40ef33cb1306d8accf7bc8ec2bfea4355cbdebb3df68b40925cad"
+checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
+dependencies = [
+ "regex-syntax 0.6.29",
+]
+
+[[package]]
+name = "regex-automata"
+version = "0.4.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6b9458fa0bfeeac22b5ca447c63aaf45f28439a709ccd244698632f9aa6394d6"
dependencies = [
"aho-corasick",
"memchr",
- "regex-syntax",
+ "regex-syntax 0.8.6",
]
+[[package]]
+name = "regex-syntax"
+version = "0.6.29"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
+
[[package]]
name = "regex-syntax"
version = "0.8.6"
@@ -12627,14 +12561,14 @@ dependencies = [
"percent-encoding",
"pin-project-lite",
"quinn 0.11.9",
- "rustls 0.23.32",
+ "rustls 0.23.31",
"rustls-pki-types",
"serde",
"serde_json",
"serde_urlencoded",
"sync_wrapper",
"tokio",
- "tokio-rustls 0.26.4",
+ "tokio-rustls 0.26.2",
"tokio-util",
"tower 0.5.2",
"tower-http 0.6.6",
@@ -12649,9 +12583,9 @@ dependencies = [
[[package]]
name = "resolv-conf"
-version = "0.7.5"
+version = "0.7.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6b3789b30bd25ba102de4beabd95d21ac45b69b1be7d14522bab988c526d6799"
+checksum = "95325155c684b1c89f7765e30bc1c42e4a6da51ca513615660cb8a62ef9a88e3"
[[package]]
name = "rfc6979"
@@ -12790,14 +12724,13 @@ dependencies = [
[[package]]
name = "ruint"
-version = "1.17.0"
+version = "1.16.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a68df0380e5c9d20ce49534f292a36a7514ae21350726efe1865bdb1fa91d278"
+checksum = "9ecb38f82477f20c5c3d62ef52d7c4e536e38ea9b73fb570a20c5cae0e14bcf6"
dependencies = [
"alloy-rlp",
"ark-ff 0.3.0",
"ark-ff 0.4.2",
- "ark-ff 0.5.0",
"bytes",
"fastrlp 0.3.1",
"fastrlp 0.4.0",
@@ -12811,7 +12744,7 @@ dependencies = [
"rand 0.9.2",
"rlp 0.5.2",
"ruint-macro",
- "serde_core",
+ "serde",
"valuable",
"zeroize",
]
@@ -12861,7 +12794,7 @@ version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92"
dependencies = [
- "semver 1.0.27",
+ "semver 1.0.26",
]
[[package]]
@@ -12916,15 +12849,15 @@ dependencies = [
[[package]]
name = "rustix"
-version = "1.1.2"
+version = "1.0.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e"
+checksum = "11181fbabf243db407ef8df94a6ce0b2f9a733bd8be4ad02b4eda9602296cac8"
dependencies = [
"bitflags 2.9.4",
"errno",
"libc",
- "linux-raw-sys 0.11.0",
- "windows-sys 0.61.1",
+ "linux-raw-sys 0.9.4",
+ "windows-sys 0.60.2",
]
[[package]]
@@ -12955,15 +12888,15 @@ dependencies = [
[[package]]
name = "rustls"
-version = "0.23.32"
+version = "0.23.31"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd3c25631629d034ce7cd9940adc9d45762d46de2b0f57193c4443b92c6d4d40"
+checksum = "c0ebcbd2f03de0fc1122ad9bb24b127a5a6cd51d72604a3f3c50ac459762b6cc"
dependencies = [
"log",
"once_cell",
"ring 0.17.14",
"rustls-pki-types",
- "rustls-webpki 0.103.7",
+ "rustls-webpki 0.103.4",
"subtle 2.6.1",
"zeroize",
]
@@ -13002,7 +12935,7 @@ dependencies = [
"openssl-probe",
"rustls-pki-types",
"schannel",
- "security-framework 3.5.1",
+ "security-framework 3.4.0",
]
[[package]]
@@ -13044,7 +12977,7 @@ dependencies = [
"jni 0.19.0",
"log",
"once_cell",
- "rustls 0.23.32",
+ "rustls 0.23.31",
"rustls-native-certs 0.7.3",
"rustls-platform-verifier-android",
"rustls-webpki 0.102.8",
@@ -13065,11 +12998,11 @@ dependencies = [
"jni 0.21.1",
"log",
"once_cell",
- "rustls 0.23.32",
+ "rustls 0.23.31",
"rustls-native-certs 0.8.1",
"rustls-platform-verifier-android",
- "rustls-webpki 0.103.7",
- "security-framework 3.5.1",
+ "rustls-webpki 0.103.4",
+ "security-framework 3.4.0",
"security-framework-sys",
"webpki-root-certs 0.26.11",
"windows-sys 0.59.0",
@@ -13104,9 +13037,9 @@ dependencies = [
[[package]]
name = "rustls-webpki"
-version = "0.103.7"
+version = "0.103.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e10b3f4191e8a80e6b43eebabfac91e5dcecebb27a71f04e820c47ec41d314bf"
+checksum = "0a17884ae0c1b773f1ccd2bd4a8c72f16da897310a98b0e84bf349ad5ead92fc"
dependencies = [
"ring 0.17.14",
"rustls-pki-types",
@@ -13298,7 +13231,7 @@ name = "sc-chain-spec-derive"
version = "12.0.0"
source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2412-6#bbc435c7667d3283ba280a8fec44676357392753"
dependencies = [
- "proc-macro-crate 3.4.0",
+ "proc-macro-crate 3.3.0",
"proc-macro2",
"quote",
"syn 2.0.106",
@@ -14027,7 +13960,7 @@ dependencies = [
"parity-scale-codec",
"parking_lot 0.12.4",
"rand 0.8.5",
- "rustls 0.23.32",
+ "rustls 0.23.31",
"sc-client-api",
"sc-network",
"sc-network-common",
@@ -14342,7 +14275,7 @@ name = "sc-tracing-proc-macro"
version = "11.0.0"
source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2412-6#bbc435c7667d3283ba280a8fec44676357392753"
dependencies = [
- "proc-macro-crate 3.4.0",
+ "proc-macro-crate 3.3.0",
"proc-macro2",
"quote",
"syn 2.0.106",
@@ -14356,7 +14289,7 @@ dependencies = [
"async-trait",
"futures",
"futures-timer",
- "indexmap 2.11.4",
+ "indexmap 2.11.0",
"itertools 0.11.0",
"linked-hash-map",
"log",
@@ -14470,7 +14403,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bef2618f123c88da9cd8853b69d766068f1eddc7692146d7dfe9b89e25ce2efd"
dependencies = [
"darling 0.20.11",
- "proc-macro-crate 3.4.0",
+ "proc-macro-crate 3.3.0",
"proc-macro2",
"quote",
"syn 2.0.106",
@@ -14496,7 +14429,7 @@ version = "2.11.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c6630024bf739e2179b91fb424b28898baf819414262c5d376677dbff1fe7ebf"
dependencies = [
- "proc-macro-crate 3.4.0",
+ "proc-macro-crate 3.3.0",
"proc-macro2",
"quote",
"syn 2.0.106",
@@ -14548,11 +14481,11 @@ dependencies = [
[[package]]
name = "schannel"
-version = "0.1.28"
+version = "0.1.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "891d81b926048e76efe18581bf793546b4c0eaf8448d72be8de2bbee5fd166e1"
+checksum = "1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d"
dependencies = [
- "windows-sys 0.61.1",
+ "windows-sys 0.59.0",
]
[[package]]
@@ -14610,6 +14543,12 @@ dependencies = [
"pin-project-lite",
]
+[[package]]
+name = "scoped-tls"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294"
+
[[package]]
name = "scopeguard"
version = "1.2.0"
@@ -14717,9 +14656,9 @@ dependencies = [
[[package]]
name = "security-framework"
-version = "3.5.1"
+version = "3.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b3297343eaf830f66ede390ea39da1d462b6b0c1b000f420d0a83f898bbbe6ef"
+checksum = "60b369d18893388b345804dc0007963c99b7d665ae71d275812d828c6f089640"
dependencies = [
"bitflags 2.9.4",
"core-foundation 0.10.1",
@@ -14758,12 +14697,11 @@ dependencies = [
[[package]]
name = "semver"
-version = "1.0.27"
+version = "1.0.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2"
+checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0"
dependencies = [
"serde",
- "serde_core",
]
[[package]]
@@ -14789,11 +14727,10 @@ checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73"
[[package]]
name = "serde"
-version = "1.0.228"
+version = "1.0.219"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e"
+checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6"
dependencies = [
- "serde_core",
"serde_derive",
]
@@ -14808,28 +14745,18 @@ dependencies = [
[[package]]
name = "serde_bytes"
-version = "0.11.19"
+version = "0.11.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a5d440709e79d88e51ac01c4b72fc6cb7314017bb7da9eeff678aa94c10e3ea8"
+checksum = "8437fd221bde2d4ca316d61b90e337e9e702b3820b87d63caa9ba6c02bd06d96"
dependencies = [
"serde",
- "serde_core",
-]
-
-[[package]]
-name = "serde_core"
-version = "1.0.228"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad"
-dependencies = [
- "serde_derive",
]
[[package]]
name = "serde_derive"
-version = "1.0.228"
+version = "1.0.219"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79"
+checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00"
dependencies = [
"proc-macro2",
"quote",
@@ -14838,15 +14765,14 @@ dependencies = [
[[package]]
name = "serde_json"
-version = "1.0.145"
+version = "1.0.143"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c"
+checksum = "d401abef1d108fbd9cbaebc3e46611f4b1021f714a0597a71f41ee463f5f4a5a"
dependencies = [
"itoa",
"memchr",
"ryu",
"serde",
- "serde_core",
]
[[package]]
@@ -14860,11 +14786,11 @@ dependencies = [
[[package]]
name = "serde_spanned"
-version = "1.0.2"
+version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5417783452c2be558477e104686f7de5dae53dba813c28435e0e70f82d9b04ee"
+checksum = "40734c41988f7306bb04f0ecf60ec0f3f1caa34290e4e8ea471dcd3346483b83"
dependencies = [
- "serde_core",
+ "serde",
]
[[package]]
@@ -15685,11 +15611,11 @@ checksum = "a33bd3e260892199c3ccfc487c88b2da2265080acb316cd920da72fdfd7c599f"
dependencies = [
"async-channel 2.5.0",
"async-executor",
- "async-fs 2.2.0",
- "async-io 2.6.0",
+ "async-fs 2.1.3",
+ "async-io 2.5.0",
"async-lock 3.4.1",
"async-net 2.0.0",
- "async-process 2.5.0",
+ "async-process 2.4.0",
"blocking",
"futures-lite 2.6.1",
]
@@ -16475,7 +16401,7 @@ dependencies = [
"Inflector",
"blake2 0.10.6",
"expander",
- "proc-macro-crate 3.4.0",
+ "proc-macro-crate 3.3.0",
"proc-macro2",
"quote",
"syn 2.0.106",
@@ -16973,7 +16899,7 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable
dependencies = [
"Inflector",
"expander",
- "proc-macro-crate 3.4.0",
+ "proc-macro-crate 3.3.0",
"proc-macro2",
"quote",
"syn 2.0.106",
@@ -17266,7 +17192,7 @@ dependencies = [
"futures-util",
"hashlink",
"hex",
- "indexmap 2.11.4",
+ "indexmap 2.11.0",
"log",
"memchr",
"native-tls",
@@ -17857,8 +17783,8 @@ dependencies = [
"lazy-regex",
"log",
"pin-project",
- "rustls 0.23.32",
- "thiserror 2.0.17",
+ "rustls 0.23.31",
+ "thiserror 2.0.16",
]
[[package]]
@@ -17974,15 +17900,15 @@ checksum = "1ac9aa371f599d22256307c24a9d748c041e548cbf599f35d890f9d365361790"
[[package]]
name = "tempfile"
-version = "3.23.0"
+version = "3.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d31c77bdf42a745371d260a26ca7163f1e0924b64afa0b688e61b5a9fa02f16"
+checksum = "15b61f8f20e3a6f7e0649d825294eaf317edce30f82cf6026e7e4cb9222a7d1e"
dependencies = [
"fastrand 2.3.0",
"getrandom 0.3.3",
"once_cell",
- "rustix 1.1.2",
- "windows-sys 0.61.1",
+ "rustix 1.0.8",
+ "windows-sys 0.60.2",
]
[[package]]
@@ -18000,7 +17926,7 @@ version = "0.4.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "60b8cb979cb11c32ce1603f8137b22262a9d131aaa5c37b5678025f22b8becd0"
dependencies = [
- "rustix 1.1.2",
+ "rustix 1.0.8",
"windows-sys 0.60.2",
]
@@ -18021,11 +17947,11 @@ dependencies = [
[[package]]
name = "thiserror"
-version = "2.0.17"
+version = "2.0.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f63587ca0f12b72a0600bcba1d40081f830876000bb46dd2337a3051618f4fc8"
+checksum = "3467d614147380f2e4e374161426ff399c91084acd2363eaf549172b3d5e60c0"
dependencies = [
- "thiserror-impl 2.0.17",
+ "thiserror-impl 2.0.16",
]
[[package]]
@@ -18061,9 +17987,9 @@ dependencies = [
[[package]]
name = "thiserror-impl"
-version = "2.0.17"
+version = "2.0.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913"
+checksum = "6c5e1be1c48b9172ee610da68fd9cd2770e7a4056cb3fc98710ee6906f0c7960"
dependencies = [
"proc-macro2",
"quote",
@@ -18117,12 +18043,11 @@ dependencies = [
[[package]]
name = "time"
-version = "0.3.44"
+version = "0.3.43"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "91e7d9e3bb61134e77bde20dd4825b97c010155709965fedf0f49bb138e52a9d"
+checksum = "83bde6f1ec10e72d583d91623c939f623002284ef622b87de38cfd546cbf2031"
dependencies = [
"deranged",
- "itoa",
"num-conv",
"powerfmt",
"serde",
@@ -18213,9 +18138,9 @@ dependencies = [
[[package]]
name = "tokio-postgres"
-version = "0.7.14"
+version = "0.7.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a156efe7fff213168257853e1dfde202eed5f487522cbbbf7d219941d753d853"
+checksum = "6c95d533c83082bb6490e0189acaa0bbeef9084e60471b696ca6988cd0541fb0"
dependencies = [
"async-trait",
"byteorder",
@@ -18231,7 +18156,7 @@ dependencies = [
"postgres-protocol",
"postgres-types",
"rand 0.9.2",
- "socket2 0.6.0",
+ "socket2 0.5.10",
"tokio",
"tokio-util",
"whoami",
@@ -18260,11 +18185,11 @@ dependencies = [
[[package]]
name = "tokio-rustls"
-version = "0.26.4"
+version = "0.26.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1729aa945f29d91ba541258c8df89027d5792d85a8841fb65e8bf0f4ede4ef61"
+checksum = "8e727b36a1a0e8b74c376ac2211e40c2c8af09fb4013c60d910495810f008e9b"
dependencies = [
- "rustls 0.23.32",
+ "rustls 0.23.31",
"tokio",
]
@@ -18288,11 +18213,11 @@ checksum = "7a9daff607c6d2bf6c16fd681ccb7eecc83e4e2cdc1ca067ffaadfca5de7f084"
dependencies = [
"futures-util",
"log",
- "rustls 0.23.32",
+ "rustls 0.23.31",
"rustls-native-certs 0.8.1",
"rustls-pki-types",
"tokio",
- "tokio-rustls 0.26.4",
+ "tokio-rustls 0.26.2",
"tungstenite",
]
@@ -18328,19 +18253,19 @@ dependencies = [
"serde",
"serde_spanned 0.6.9",
"toml_datetime 0.6.11",
- "toml_edit 0.22.27",
+ "toml_edit",
]
[[package]]
name = "toml"
-version = "0.9.7"
+version = "0.9.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00e5e5d9bf2475ac9d4f0d9edab68cc573dc2fd644b0dba36b0c30a92dd9eaa0"
+checksum = "75129e1dc5000bfbaa9fee9d1b21f974f9fbad9daec557a521ee6e080825f6e8"
dependencies = [
- "indexmap 2.11.4",
- "serde_core",
- "serde_spanned 1.0.2",
- "toml_datetime 0.7.2",
+ "indexmap 2.11.0",
+ "serde",
+ "serde_spanned 1.0.0",
+ "toml_datetime 0.7.0",
"toml_parser",
"toml_writer",
"winnow",
@@ -18357,11 +18282,11 @@ dependencies = [
[[package]]
name = "toml_datetime"
-version = "0.7.2"
+version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "32f1085dec27c2b6632b04c80b3bb1b4300d6495d1e129693bdda7d91e72eec1"
+checksum = "bade1c3e902f58d73d3f294cd7f20391c1cb2fbcb643b73566bc773971df91e3"
dependencies = [
- "serde_core",
+ "serde",
]
[[package]]
@@ -18370,7 +18295,7 @@ version = "0.22.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a"
dependencies = [
- "indexmap 2.11.4",
+ "indexmap 2.11.0",
"serde",
"serde_spanned 0.6.9",
"toml_datetime 0.6.11",
@@ -18378,23 +18303,11 @@ dependencies = [
"winnow",
]
-[[package]]
-name = "toml_edit"
-version = "0.23.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f3effe7c0e86fdff4f69cdd2ccc1b96f933e24811c5441d44904e8683e27184b"
-dependencies = [
- "indexmap 2.11.4",
- "toml_datetime 0.7.2",
- "toml_parser",
- "winnow",
-]
-
[[package]]
name = "toml_parser"
-version = "1.0.3"
+version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4cf893c33be71572e0e9aa6dd15e6677937abd686b066eac3f8cd3531688a627"
+checksum = "b551886f449aa90d4fe2bdaa9f4a2577ad2dde302c61ecf262d80b116db95c10"
dependencies = [
"winnow",
]
@@ -18407,9 +18320,9 @@ checksum = "5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801"
[[package]]
name = "toml_writer"
-version = "1.0.3"
+version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d163a63c116ce562a22cda521fcc4d79152e7aba014456fb5eb442f6d6a10109"
+checksum = "fcc842091f2def52017664b53082ecbbeb5c7731092bad69d2c63050401dfd64"
[[package]]
name = "tower"
@@ -18547,7 +18460,7 @@ version = "5.0.0"
source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2412-6#bbc435c7667d3283ba280a8fec44676357392753"
dependencies = [
"expander",
- "proc-macro-crate 3.4.0",
+ "proc-macro-crate 3.3.0",
"proc-macro2",
"quote",
"syn 2.0.106",
@@ -18566,15 +18479,15 @@ dependencies = [
[[package]]
name = "tracing-subscriber"
-version = "0.3.20"
+version = "0.3.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2054a14f5307d601f88daf0553e1cbf472acc4f2c51afab632431cdcd72124d5"
+checksum = "e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008"
dependencies = [
"matchers",
"nu-ansi-term",
"once_cell",
"parking_lot 0.12.4",
- "regex-automata",
+ "regex",
"sharded-slab",
"smallvec",
"thread_local",
@@ -18698,9 +18611,9 @@ checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b"
[[package]]
name = "trybuild"
-version = "1.0.111"
+version = "1.0.110"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ded9fdb81f30a5708920310bfcd9ea7482ff9cba5f54601f7a19a877d5c2392"
+checksum = "32e257d7246e7a9fd015fb0b28b330a8d4142151a33f03e6a497754f4b1f6a8e"
dependencies = [
"dissimilar",
"glob",
@@ -18709,7 +18622,7 @@ dependencies = [
"serde_json",
"target-triple",
"termcolor",
- "toml 0.9.7",
+ "toml 0.9.5",
]
[[package]]
@@ -18730,10 +18643,10 @@ dependencies = [
"httparse",
"log",
"rand 0.9.2",
- "rustls 0.23.32",
+ "rustls 0.23.31",
"rustls-pki-types",
"sha1",
- "thiserror 2.0.17",
+ "thiserror 2.0.16",
"url",
"utf-8",
]
@@ -18758,9 +18671,9 @@ dependencies = [
[[package]]
name = "typenum"
-version = "1.19.0"
+version = "1.18.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb"
+checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f"
[[package]]
name = "ucd-trie"
@@ -18812,9 +18725,9 @@ checksum = "5c1cb5db39152898a79168971543b1cb5020dff7fe43c8dc468b0885f5e29df5"
[[package]]
name = "unicode-ident"
-version = "1.0.19"
+version = "1.0.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f63a545481291138910575129486daeaf8ac54aee4387fe7906919f7830c7d9d"
+checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512"
[[package]]
name = "unicode-normalization"
@@ -19040,18 +18953,9 @@ checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b"
[[package]]
name = "wasi"
-version = "0.14.7+wasi-0.2.4"
+version = "0.14.4+wasi-0.2.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "883478de20367e224c0090af9cf5f9fa85bed63a95c1abf3afc5c083ebc06e8c"
-dependencies = [
- "wasip2",
-]
-
-[[package]]
-name = "wasip2"
-version = "1.0.1+wasi-0.2.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0562428422c63773dad2c345a1882263bbf4d65cf3f42e90921f787ef5ad58e7"
+checksum = "88a5f4a424faf49c3c2c344f166f0662341d470ea185e939657aaff130f0ec4a"
dependencies = [
"wit-bindgen",
]
@@ -19073,9 +18977,9 @@ dependencies = [
[[package]]
name = "wasm-bindgen"
-version = "0.2.104"
+version = "0.2.101"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1da10c01ae9f1ae40cbfac0bac3b1e724b320abfcf52229f80b547c0d250e2d"
+checksum = "7e14915cadd45b529bb8d1f343c4ed0ac1de926144b746e2710f9cd05df6603b"
dependencies = [
"cfg-if",
"once_cell",
@@ -19086,9 +18990,9 @@ dependencies = [
[[package]]
name = "wasm-bindgen-backend"
-version = "0.2.104"
+version = "0.2.101"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "671c9a5a66f49d8a47345ab942e2cb93c7d1d0339065d4f8139c486121b43b19"
+checksum = "e28d1ba982ca7923fd01448d5c30c6864d0a14109560296a162f80f305fb93bb"
dependencies = [
"bumpalo",
"log",
@@ -19100,9 +19004,9 @@ dependencies = [
[[package]]
name = "wasm-bindgen-futures"
-version = "0.4.54"
+version = "0.4.51"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e038d41e478cc73bae0ff9b36c60cff1c98b8f38f8d7e8061e79ee63608ac5c"
+checksum = "0ca85039a9b469b38336411d6d6ced91f3fc87109a2a27b0c197663f5144dffe"
dependencies = [
"cfg-if",
"js-sys",
@@ -19113,9 +19017,9 @@ dependencies = [
[[package]]
name = "wasm-bindgen-macro"
-version = "0.2.104"
+version = "0.2.101"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ca60477e4c59f5f2986c50191cd972e3a50d8a95603bc9434501cf156a9a119"
+checksum = "7c3d463ae3eff775b0c45df9da45d68837702ac35af998361e2c84e7c5ec1b0d"
dependencies = [
"quote",
"wasm-bindgen-macro-support",
@@ -19123,9 +19027,9 @@ dependencies = [
[[package]]
name = "wasm-bindgen-macro-support"
-version = "0.2.104"
+version = "0.2.101"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f07d2f20d4da7b26400c9f4a0511e6e0345b040694e8a75bd41d578fa4421d7"
+checksum = "7bb4ce89b08211f923caf51d527662b75bdc9c9c7aab40f86dcb9fb85ac552aa"
dependencies = [
"proc-macro2",
"quote",
@@ -19136,9 +19040,9 @@ dependencies = [
[[package]]
name = "wasm-bindgen-shared"
-version = "0.2.104"
+version = "0.2.101"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bad67dc8b2a1a6e5448428adec4c3e84c43e561d8c9ee8a9e5aabeb193ec41d1"
+checksum = "f143854a3b13752c6950862c906306adb27c7e839f7414cec8fea35beab624c1"
dependencies = [
"unicode-ident",
]
@@ -19467,9 +19371,9 @@ dependencies = [
[[package]]
name = "web-sys"
-version = "0.3.81"
+version = "0.3.78"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9367c417a924a74cae129e6a2ae3b47fabb1f8995595ab474029da749a8be120"
+checksum = "77e4b637749ff0d92b8fad63aa1f7cff3cbe125fd49c175cd6345e7272638b12"
dependencies = [
"js-sys",
"wasm-bindgen",
@@ -19576,7 +19480,7 @@ version = "0.1.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22"
dependencies = [
- "windows-sys 0.61.1",
+ "windows-sys 0.61.0",
]
[[package]]
@@ -19595,6 +19499,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"
@@ -19607,22 +19533,33 @@ dependencies = [
[[package]]
name = "windows-core"
-version = "0.62.1"
+version = "0.61.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6844ee5416b285084d3d3fffd743b925a6c9385455f64f6d4fa3031c4c2749a9"
+checksum = "c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3"
dependencies = [
"windows-implement",
"windows-interface",
- "windows-link",
- "windows-result 0.4.0",
+ "windows-link 0.1.3",
+ "windows-result 0.3.4",
"windows-strings",
]
[[package]]
-name = "windows-implement"
-version = "0.60.1"
+name = "windows-future"
+version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "edb307e42a74fb6de9bf3a02d9712678b22399c87e6fa869d6dfcd8c1b7754e0"
+checksum = "fc6a41e98427b19fe4b73c550f060b59fa592d7d686537eebf9385621bfbad8e"
+dependencies = [
+ "windows-core 0.61.2",
+ "windows-link 0.1.3",
+ "windows-threading",
+]
+
+[[package]]
+name = "windows-implement"
+version = "0.60.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a47fddd13af08290e67f4acabf4b459f647552718f683a7b415d290ac744a836"
dependencies = [
"proc-macro2",
"quote",
@@ -19631,21 +19568,37 @@ dependencies = [
[[package]]
name = "windows-interface"
-version = "0.59.2"
+version = "0.59.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0abd1ddbc6964ac14db11c7213d6532ef34bd9aa042c2e5935f59d7908b46a5"
+checksum = "bd9211b69f8dcdfa817bfd14bf1c97c9188afa36f4750130fcdf3f400eca9fa8"
dependencies = [
"proc-macro2",
"quote",
"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.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "45e46c0661abb7180e7b9c281db115305d49ca1709ab8242adf09666d2173c65"
+[[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"
@@ -19657,20 +19610,20 @@ dependencies = [
[[package]]
name = "windows-result"
-version = "0.4.0"
+version = "0.3.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7084dcc306f89883455a206237404d3eaf961e5bd7e0f312f7c91f57eb44167f"
+checksum = "56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6"
dependencies = [
- "windows-link",
+ "windows-link 0.1.3",
]
[[package]]
name = "windows-strings"
-version = "0.5.0"
+version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7218c655a553b0bed4426cf54b20d7ba363ef543b52d515b3e48d7fd55318dda"
+checksum = "56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57"
dependencies = [
- "windows-link",
+ "windows-link 0.1.3",
]
[[package]]
@@ -19715,16 +19668,16 @@ version = "0.60.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb"
dependencies = [
- "windows-targets 0.53.4",
+ "windows-targets 0.53.3",
]
[[package]]
name = "windows-sys"
-version = "0.61.1"
+version = "0.61.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f109e41dd4a3c848907eb83d5a42ea98b3769495597450cf6d153507b166f0f"
+checksum = "e201184e40b2ede64bc2ea34968b28e33622acdbbf37104f0e4a33f7abe657aa"
dependencies = [
- "windows-link",
+ "windows-link 0.2.0",
]
[[package]]
@@ -19775,11 +19728,11 @@ dependencies = [
[[package]]
name = "windows-targets"
-version = "0.53.4"
+version = "0.53.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d42b7b7f66d2a06854650af09cfdf8713e427a439c97ad65a6375318033ac4b"
+checksum = "d5fe6031c4041849d7c496a8ded650796e7b6ecc19df1a431c1a363342e5dc91"
dependencies = [
- "windows-link",
+ "windows-link 0.1.3",
"windows_aarch64_gnullvm 0.53.0",
"windows_aarch64_msvc 0.53.0",
"windows_i686_gnu 0.53.0",
@@ -19790,6 +19743,15 @@ dependencies = [
"windows_x86_64_msvc 0.53.0",
]
+[[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"
@@ -19991,9 +19953,9 @@ dependencies = [
[[package]]
name = "wit-bindgen"
-version = "0.46.0"
+version = "0.45.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59"
+checksum = "5c573471f125075647d03df72e026074b7203790d41351cd6edc96f46bcccd36"
[[package]]
name = "writeable"
@@ -20052,7 +20014,7 @@ dependencies = [
"nom",
"oid-registry 0.8.1",
"rusticata-macros",
- "thiserror 2.0.17",
+ "thiserror 2.0.16",
"time",
]
@@ -20113,9 +20075,9 @@ dependencies = [
[[package]]
name = "yamux"
-version = "0.13.7"
+version = "0.13.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6927cfe0edfae4b26a369df6bad49cd0ef088c0ec48f4045b2084bcaedc10246"
+checksum = "2b2dd50a6d6115feb3e5d7d0efd45e8ca364b6c83722c1e9c602f5764e0e9597"
dependencies = [
"futures",
"log",
@@ -20215,9 +20177,9 @@ dependencies = [
[[package]]
name = "zeroize"
-version = "1.8.2"
+version = "1.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b97154e67e32c85465826e8bcc1c59429aaaf107c1e4a9e53c8d8ccd5eff88d0"
+checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde"
dependencies = [
"zeroize_derive",
]
diff --git a/operator/Cargo.toml b/operator/Cargo.toml
index 28386f1a..48d56c43 100644
--- a/operator/Cargo.toml
+++ b/operator/Cargo.toml
@@ -36,6 +36,7 @@ pallet-evm-precompile-balances-erc20 = { path = "./precompiles/erc20-balances",
pallet-evm-precompile-batch = { path = "./precompiles/batch", default-features = false }
pallet-evm-precompile-call-permit = { path = "./precompiles/call-permit", default-features = false }
pallet-evm-precompile-collective = { path = "./precompiles/collective", default-features = false }
+pallet-evm-precompile-conviction-voting = { path = "./precompiles/conviction-voting", default-features = false }
pallet-evm-precompile-identity = { path = "./precompiles/identity", default-features = false }
pallet-evm-precompile-proxy = { path = "./precompiles/proxy", default-features = false }
pallet-evm-precompile-registry = { path = "./precompiles/precompile-registry", default-features = false }
diff --git a/operator/precompiles/conviction-voting/Cargo.toml b/operator/precompiles/conviction-voting/Cargo.toml
new file mode 100644
index 00000000..716d0247
--- /dev/null
+++ b/operator/precompiles/conviction-voting/Cargo.toml
@@ -0,0 +1,53 @@
+[package]
+name = "pallet-evm-precompile-conviction-voting"
+authors = { workspace = true }
+description = "A Precompile to make pallet-conviction-voting calls encoding accessible to pallet-evm"
+edition = "2021"
+version = "0.1.0"
+
+[dependencies]
+log = { workspace = true }
+
+# Substrate
+frame-support = { workspace = true }
+frame-system = { workspace = true }
+pallet-conviction-voting = { workspace = true }
+parity-scale-codec = { workspace = true, features = ["derive"] }
+sp-core = { workspace = true }
+sp-runtime = { workspace = true }
+sp-std = { workspace = true }
+
+# Frontier
+fp-evm = { workspace = true }
+pallet-evm = { workspace = true, features = ["forbid-evm-reentrancy"] }
+precompile-utils = { workspace = true }
+
+[dev-dependencies]
+
+# Frontier
+precompile-utils = { workspace = true, features = ["testing"] }
+
+# Substrate
+pallet-balances = { workspace = true, features = ["insecure_zero_ed", "std"] }
+pallet-timestamp = { workspace = true, features = ["std"] }
+scale-info = { workspace = true, features = ["derive", "std"] }
+sp-io = { workspace = true }
+
+[features]
+default = ["std"]
+std = [
+ "fp-evm/std",
+ "frame-support/std",
+ "frame-system/std",
+ "pallet-conviction-voting/std",
+ "pallet-evm/std",
+ "parity-scale-codec/std",
+ "precompile-utils/std",
+ "sp-runtime/std",
+ "sp-std/std",
+]
+runtime-benchmarks = [
+ "frame-support/runtime-benchmarks",
+ "frame-system/runtime-benchmarks",
+ "sp-runtime/runtime-benchmarks",
+]
diff --git a/operator/precompiles/conviction-voting/ConvictionVoting.sol b/operator/precompiles/conviction-voting/ConvictionVoting.sol
new file mode 100644
index 00000000..6f36fb2e
--- /dev/null
+++ b/operator/precompiles/conviction-voting/ConvictionVoting.sol
@@ -0,0 +1,355 @@
+// SPDX-License-Identifier: GPL-3.0-only
+pragma solidity >=0.8.3;
+
+/// @dev The Conviction Voting contract's address.
+address constant CONVICTION_VOTING_ADDRESS = 0x0000000000000000000000000000000000000812;
+
+/// @dev The Conviction Voting contract's instance.
+ConvictionVoting constant CONVICTION_VOTING_CONTRACT = ConvictionVoting(
+ CONVICTION_VOTING_ADDRESS
+);
+
+/// @author The Moonbeam Team
+/// @title Pallet Conviction Voting Interface
+/// @title The interface through which solidity contracts will interact with the Conviction Voting pallet
+/// @custom:address 0x0000000000000000000000000000000000000812
+interface ConvictionVoting {
+ /// @dev Defines the conviction multiplier type.
+ /// The values start at `0` and are represented as `uint8`.
+ /// None => 0.1x votes, unlocked.
+ /// Locked1x => 1x votes, locked for an enactment period following a successful vote.
+ /// Locked2x => 2x votes, locked for 2x enactment periods following a successful vote
+ /// Locked3x => 3x votes, locked for 4x...
+ /// Locked4x => 4x votes, locked for 8x...,
+ /// Locked5x => 5x votes, locked for 16x...
+ /// Locked6x => 6x votes, locked for 32x...
+ enum Conviction {
+ None,
+ Locked1x,
+ Locked2x,
+ Locked3x,
+ Locked4x,
+ Locked5x,
+ Locked6x
+ }
+
+ /// @dev Defines the class lock for an account.
+ struct ClassLock {
+ /// The track of this lock.
+ uint16 trackId;
+ /// The amount locked.
+ uint256 amount;
+ }
+
+ /// @dev Defines the voting information for an account and track,
+ struct VotingFor {
+ /// If the voting type is `Casting`, if `true` then `casting` field is significant.
+ bool isCasting;
+ /// If the voting type is `Delegating`, if `true` then `delegating` field is significant.
+ bool isDelegating;
+ /// Defines the voting information when `isCasting` is true.
+ Casting casting;
+ /// Defines the voting information when `isDelegating` is true.
+ Delegating delegating;
+ }
+
+ /// @dev Defines the casting vote type from an account.
+ struct Casting {
+ /// The votes registered.
+ PollAccountVote[] votes;
+ /// The delegation info.
+ Delegations delegations;
+ /// Any prior lock information.
+ PriorLock prior;
+ }
+
+ /// @dev Defines the delegating vote type from an account.
+ struct Delegating {
+ /// The delegated balance.
+ uint256 balance;
+ /// The deletegate account
+ address target;
+ /// The conviction type for the vote.
+ Conviction conviction;
+ /// The delegation info.
+ Delegations delegations;
+ /// Any prior lock information.
+ PriorLock prior;
+ }
+
+ /// @dev Defines the vote towards a poll from an account.
+ struct PollAccountVote {
+ /// The index of the poll.
+ uint32 pollIndex;
+ /// The vote registered for the poll from an account.
+ AccountVote accountVote;
+ }
+
+ /// @dev Defines the vote from an account.
+ struct AccountVote {
+ /// If `true` then the vote is a Standard vote and `standard` field is significant.
+ bool isStandard;
+ /// If `true` then the vote is a Split vote and `split` field is significant.
+ bool isSplit;
+ /// If `true` then the vote is a SplitAbstrain vote and `splitAbstain` field is significant.
+ bool isSplitAbstain;
+ /// Defines the standard vote, if `isStandard` is `true`.
+ StandardVote standard;
+ /// Defines the split vote, if `isSplit` is `true`.
+ SplitVote split;
+ /// Defines the split-abstain vote, if `isSplitAbstrain` is `true`.
+ SplitAbstainVote splitAbstain;
+ }
+
+ /// @dev Defines the standard vote.
+ struct StandardVote {
+ /// The vote information.
+ Vote vote;
+ /// The locked balance for the vote.
+ uint256 balance;
+ }
+
+ /// @dev Defines the vote parameters for a standard vote.
+ struct Vote {
+ /// `true` if the vote is an aye.
+ bool aye;
+ /// The conviction type for the vote.
+ Conviction conviction;
+ }
+
+ /// @dev Defines the standard vote.
+ struct SplitVote {
+ /// The amount locked towards aye.
+ uint256 aye;
+ /// The amount locked towards nay.
+ uint256 nay;
+ }
+
+ /// @dev Defines the standard vote.
+ struct SplitAbstainVote {
+ /// The amount locked towards aye.
+ uint256 aye;
+ /// The amount locked towards nay.
+ uint256 nay;
+ /// The amount locked towards abstain.
+ uint256 abstain;
+ }
+
+ /// @dev Defines the delegations for a vote.
+ struct Delegations {
+ /// Total number of votes.
+ uint256 votes;
+ /// Total capital locked.
+ uint256 capital;
+ }
+
+ /// @dev Defines any prior lock for a vote.
+ struct PriorLock {
+ /// Amount of balance locked.
+ uint256 balance;
+ }
+
+ /// @dev Retrieve votings for a given account and track.
+ /// @custom:selector 501447ee
+ /// @param who The requested account
+ /// @param trackId The requested track
+ function votingFor(
+ address who,
+ uint16 trackId
+ ) external view returns (VotingFor memory);
+
+ /// @dev Retrieve class locks for a given account.
+ /// @custom:selector 7ae8ac92
+ /// @param who The requested account
+ function classLocksFor(
+ address who
+ ) external view returns (ClassLock[] memory);
+
+ /// @dev Vote yes in a poll.
+ /// @custom:selector da9df518
+ /// @param pollIndex Index of poll
+ /// @param voteAmount Balance locked for vote
+ /// @param conviction Conviction multiplier for length of vote lock
+ function voteYes(
+ uint32 pollIndex,
+ uint256 voteAmount,
+ Conviction conviction
+ ) external;
+
+ /// @dev Vote no in a poll.
+ /// @custom:selector cc600eba
+ /// @param pollIndex Index of poll
+ /// @param voteAmount Balance locked for vote
+ /// @param conviction Conviction multiplier for length of vote lock
+ function voteNo(
+ uint32 pollIndex,
+ uint256 voteAmount,
+ Conviction conviction
+ ) external;
+
+ /// @dev Vote split in a poll.
+ /// @custom:selector dd6c52a4
+ /// @param pollIndex Index of poll
+ /// @param aye Balance locked for aye vote
+ /// @param nay Balance locked for nay vote
+ function voteSplit(uint32 pollIndex, uint256 aye, uint256 nay) external;
+
+ /// @dev Vote split abstain in a poll.
+ /// @custom:selector 52004540
+ /// @param pollIndex Index of poll
+ /// @param aye Balance locked for aye vote
+ /// @param nay Balance locked for nay vote
+ /// @param abstain Balance locked for abstain vote (support)
+ function voteSplitAbstain(
+ uint32 pollIndex,
+ uint256 aye,
+ uint256 nay,
+ uint256 abstain
+ ) external;
+
+ /// @dev Remove vote in poll
+ /// @custom:selector 79cae220
+ /// @param pollIndex Index of the poll
+ function removeVote(uint32 pollIndex) external;
+
+ /// @dev Remove vote in poll for track
+ /// @custom:selector cc3aee1a
+ /// @param pollIndex Index of the poll
+ /// @param trackId Id of the track
+ function removeVoteForTrack(uint32 pollIndex, uint16 trackId) external;
+
+ /// @dev Remove vote in poll for other voter
+ /// @custom:selector cbcb9276
+ //// @param target The voter to have vote removed. The removed vote must already be expired.
+ /// @param trackId The trackId
+ /// @param pollIndex the poll index
+ function removeOtherVote(
+ address target,
+ uint16 trackId,
+ uint32 pollIndex
+ ) external;
+
+ /// @dev Delegate to a representative for the vote trackId
+ /// @custom:selector 681750e8
+ /// @param trackId The trackId
+ /// @param representative The representative for the trackId
+ /// @param conviction The conviction multiplier
+ /// @param amount delegated to representative for this vote trackId
+ function delegate(
+ uint16 trackId,
+ address representative,
+ Conviction conviction,
+ uint256 amount
+ ) external;
+
+ /// @dev Undelegate for the trackId
+ /// @custom:selector 98be4094
+ /// @param trackId The trackId
+ function undelegate(uint16 trackId) external;
+
+ /// @dev Unlock tokens locked for trackId
+ /// @custom:selector 4259d98c
+ /// @param trackId The trackId
+ /// @param target The target address
+ function unlock(uint16 trackId, address target) external;
+
+ /// @dev An account made a vote in a poll.
+ /// @custom:selector 3839f7832b2a6263aa1fd5040f37d10fd4f9e9c4a9ef07ec384cb1cef9fb4c0e
+ /// @param pollIndex uint32 Index of the poll.
+ /// @param voter address Address of the voter.
+ /// @param aye bool Is it a vote for or against the poll.
+ /// @param voteAmount uint256 Amount used to vote.
+ /// @param conviction uint8 Conviction of the vote.
+ event Voted(
+ uint32 indexed pollIndex,
+ address voter,
+ bool aye,
+ uint256 voteAmount,
+ uint8 conviction
+ );
+
+ /// @dev An account made a split vote in a poll.
+ /// @custom:selector 022787093a8aa26fe59d28969068711f73e0e78ae67d9359c71058b6a21f7ef0
+ /// @param pollIndex uint32 Index of the poll.
+ /// @param voter address Address of the voter.
+ /// @param aye uint256 Amount for aye vote.
+ /// @param nay uint256 Amount for nay vote.
+ event VoteSplit(
+ uint32 indexed pollIndex,
+ address voter,
+ uint256 aye,
+ uint256 nay
+ );
+
+ /// @dev An account made a split abstain vote in a poll.
+ /// @custom:selector 476e687ab5e38fc714552f3acc083d7d83ccaa12ea11dd5f3393478d158c6fd4
+ /// @param pollIndex uint32 Index of the poll.
+ /// @param voter address Address of the voter.
+ /// @param aye uint256 Amount for aye vote.
+ /// @param nay uint256 Amount for nay vote.
+ /// @param abstain uint256 Amount for abstained.
+ event VoteSplitAbstained(
+ uint32 indexed pollIndex,
+ address voter,
+ uint256 aye,
+ uint256 nay,
+ uint256 abstain
+ );
+
+ /// @dev An account removed its vote from an ongoing poll.
+ /// @custom:selector 49fc1dd929f126e1d88cbb9c135625e30c2deba291adeea4740e446098b9957b
+ /// @param pollIndex uint32 Index of the poll.
+ /// @param voter address Address of the voter.
+ event VoteRemoved(uint32 indexed pollIndex, address voter);
+
+ /// @dev An account removed its vote from an ongoing poll.
+ /// @custom:selector 49fc1dd929f126e1d88cbb9c135625e30c2deba291adeea4740e446098b9957b
+ /// @param pollIndex uint32 Index of the poll.
+ /// @param trackId uint32 TrackId of the poll.
+ /// @param voter address Address of the voter.
+ event VoteRemovedForTrack(
+ uint32 indexed pollIndex,
+ uint16 trackId,
+ address voter
+ );
+
+ /// @dev An account removed a vote from a poll.
+ /// @custom:selector c1d068675720ab00d0c8792a0cbc7e198c0d2202111f0280f039f2c09c50491b
+ /// @param pollIndex uint32 Index of the poll.
+ /// @param caller address Address of the origin caller.
+ /// @param target address Address of the address which's vote is being removed.
+ /// @param trackId uint16 The trackId.
+ event VoteRemovedOther(
+ uint32 indexed pollIndex,
+ address caller,
+ address target,
+ uint16 trackId
+ );
+
+ /// @dev An account delegated for the given trackId.
+ /// @custom:selector 6cc151d547592e227b1e85a264ac3699c6f1014112b08bb3832de1f23b9c66db
+ /// @param trackId uint16 The trackId.
+ /// @param from address Address of the caller.
+ /// @param to address Address of the representative.
+ /// @param delegatedAmount uint256 Amount being delegated.
+ /// @param conviction uint8 Conviction being delegated.
+ event Delegated(
+ uint16 indexed trackId,
+ address from,
+ address to,
+ uint256 delegatedAmount,
+ uint8 conviction
+ );
+
+ /// @dev An account undelegated for the given trackId.
+ /// @custom:selector 1053303328f6db14014ccced6297bcad2b3897157ce46070711ab995a05dfa14
+ /// @param trackId uint16 The trackId.
+ /// @param caller address Address of the caller.
+ event Undelegated(uint16 indexed trackId, address caller);
+
+ /// @dev An account called to unlock tokens for the given trackId.
+ /// @custom:selector dcf72fa65ca7fb720b9ccc8ee28e0188edc3d943115124cdd4086c49f836a128
+ /// @param trackId uint16 The trackId.
+ /// @param caller address Address of the caller.
+ event Unlocked(uint16 indexed trackId, address caller);
+}
diff --git a/operator/precompiles/conviction-voting/src/lib.rs b/operator/precompiles/conviction-voting/src/lib.rs
new file mode 100644
index 00000000..e46fd861
--- /dev/null
+++ b/operator/precompiles/conviction-voting/src/lib.rs
@@ -0,0 +1,768 @@
+// 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 .
+
+#![cfg_attr(not(feature = "std"), no_std)]
+
+use fp_evm::PrecompileHandle;
+use frame_support::dispatch::{GetDispatchInfo, PostDispatchInfo};
+use frame_support::traits::{Currency, Polling};
+use frame_system::pallet_prelude::BlockNumberFor;
+use pallet_conviction_voting::Call as ConvictionVotingCall;
+use pallet_conviction_voting::{
+ AccountVote, Casting, ClassLocksFor, Conviction, Delegating, Tally, TallyOf, Vote, Voting,
+ VotingFor,
+};
+use pallet_evm::{AddressMapping, Log};
+use precompile_utils::prelude::*;
+use sp_core::{Get, MaxEncodedLen, H160, H256, U256};
+use sp_runtime::traits::{Dispatchable, StaticLookup};
+use sp_std::marker::PhantomData;
+use sp_std::vec::Vec;
+
+#[cfg(test)]
+mod mock;
+#[cfg(test)]
+mod tests;
+
+type BalanceOf = <::Currency as Currency<
+ ::AccountId,
+>>::Balance;
+type IndexOf = <::Polls as Polling<
+ Tally<
+ <::Currency as Currency<
+ ::AccountId,
+ >>::Balance,
+ ::MaxTurnout,
+ >,
+>>::Index;
+type ClassOf = <::Polls as Polling<
+ Tally<
+ <::Currency as Currency<
+ ::AccountId,
+ >>::Balance,
+ ::MaxTurnout,
+ >,
+>>::Class;
+type VotingOf = Voting<
+ BalanceOf,
+ ::AccountId,
+ BlockNumberFor,
+ <::Polls as Polling>>::Index,
+ ::MaxVotes,
+>;
+
+/// System account size in bytes = Pallet_Name_Hash (16) + Storage_name_hash (16) +
+/// Blake2_128Concat (16) + AccountId (20) + AccountInfo (4 + 12 + AccountData (4* 16)) = 148
+pub const SYSTEM_ACCOUNT_SIZE: u64 = 148;
+
+/// Solidity selector of the Vote log, which is the Keccak of the Log signature.
+pub(crate) const SELECTOR_LOG_VOTED: [u8; 32] =
+ keccak256!("Voted(uint32,address,bool,uint256,uint8)");
+
+/// Solidity selector of the Vote Split log, which is the Keccak of the Log signature.
+pub(crate) const SELECTOR_LOG_VOTE_SPLIT: [u8; 32] =
+ keccak256!("VoteSplit(uint32,address,uint256,uint256)");
+
+/// Solidity selector of the Vote Split Abstained log, which is the Keccak of the Log signature.
+pub(crate) const SELECTOR_LOG_VOTE_SPLIT_ABSTAINED: [u8; 32] =
+ keccak256!("VoteSplitAbstained(uint32,address,uint256,uint256,uint256)");
+
+/// Solidity selector of the VoteRemove log, which is the Keccak of the Log signature.
+pub(crate) const SELECTOR_LOG_VOTE_REMOVED: [u8; 32] = keccak256!("VoteRemoved(uint32,address)");
+
+/// Solidity selector of the SomeVoteRemove log, which is the Keccak of the Log signature.
+pub(crate) const SELECTOR_LOG_VOTE_REMOVED_FOR_TRACK: [u8; 32] =
+ keccak256!("VoteRemovedForTrack(uint32,uint16,address)");
+
+/// Solidity selector of the VoteRemoveOther log, which is the Keccak of the Log signature.
+pub(crate) const SELECTOR_LOG_VOTE_REMOVED_OTHER: [u8; 32] =
+ keccak256!("VoteRemovedOther(uint32,address,address,uint16)");
+
+/// Solidity selector of the Delegate log, which is the Keccak of the Log signature.
+pub(crate) const SELECTOR_LOG_DELEGATED: [u8; 32] =
+ keccak256!("Delegated(uint16,address,address,uint256,uint8)");
+
+/// Solidity selector of the Undelegate log, which is the Keccak of the Log signature.
+pub(crate) const SELECTOR_LOG_UNDELEGATED: [u8; 32] = keccak256!("Undelegated(uint16,address)");
+
+/// Solidity selector of the Unlock log, which is the Keccak of the Log signature.
+pub(crate) const SELECTOR_LOG_UNLOCKED: [u8; 32] = keccak256!("Unlocked(uint16,address)");
+
+/// A precompile to wrap the functionality from pallet-conviction-voting.
+pub struct ConvictionVotingPrecompile(PhantomData);
+
+#[precompile_utils::precompile]
+impl ConvictionVotingPrecompile
+where
+ Runtime: pallet_conviction_voting::Config + pallet_evm::Config + frame_system::Config,
+ BalanceOf: TryFrom + Into,
+ ::RuntimeCall:
+ Dispatchable + GetDispatchInfo,
+ <::RuntimeCall as Dispatchable>::RuntimeOrigin:
+ From