Thoroughly update versions and methodology

For hash-pinned dependencies, adds comments documenting the associated
versions.

Adds a pin to `slither-analyzer` which was prior missing.

Updates to Monero 0.18.4.4.

`mimalloc` now has the correct option set when building for `musl`. A C++
compiler is no longer required in its Docker image.

The runtime's `Dockerfile` now symlinks a `libc.so` already present on the
image instead of creating one itself. It also builds the runtime within the
image to ensure it only happens once. The test to ensure the methodology is
reproducible has been updated to not simply create containers from the image,
yet rebuild the image entirely, accordingly. This also is more robust and
arguably should have already been done.

The pin to the exact hash of the `patch-polkadot-sdk` repo in every
`Cargo.toml` has been removed. The lockfile already serves that role,
simplifying updating in the future.

The latest Rust nightly is adopted as well (superseding
https://github.com/serai-dex/serai/pull/697).

The `librocksdb-sys` patch is replaced with a `kvdb-rocksdb` patch, removing a
git dependency, thanks to https://github.com/paritytech/parity-common/pull/950.
This commit is contained in:
Luke Parker
2025-12-01 03:44:25 -05:00
parent 30ea9d9a06
commit 9a75f92864
59 changed files with 524 additions and 554 deletions

View File

@@ -12,7 +12,7 @@ runs:
steps:
- name: Bitcoin Daemon Cache
id: cache-bitcoind
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # 4.2.4
with:
path: bitcoin.tar.gz
key: bitcoind-${{ runner.os }}-${{ runner.arch }}-${{ inputs.version }}

View File

@@ -52,7 +52,7 @@ runs:
- name: Install solc
shell: bash
run: |
cargo +1.91 install svm-rs --version =0.5.19
cargo +1.91.1 install svm-rs --version =0.5.21
svm install 0.8.29
svm use 0.8.29
@@ -75,11 +75,8 @@ runs:
if: runner.os == 'Linux'
- name: Install rootless Docker
uses: docker/setup-docker-action@b60f85385d03ac8acfca6d9996982511d8620a19
uses: docker/setup-docker-action@e61617a16c407a86262fb923c35a616ddbe070b3 # 4.6.0
with:
rootless: true
set-host: true
if: runner.os == 'Linux'
# - name: Cache Rust
# uses: Swatinem/rust-cache@a95ba195448af2da9b00fb742d14ffaaf3c21f43

View File

@@ -5,14 +5,14 @@ inputs:
version:
description: "Version to download and run"
required: false
default: v0.18.4.3
default: v0.18.4.4
runs:
using: "composite"
steps:
- name: Monero Wallet RPC Cache
id: cache-monero-wallet-rpc
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # 4.2.4
with:
path: monero-wallet-rpc
key: monero-wallet-rpc-${{ runner.os }}-${{ runner.arch }}-${{ inputs.version }}

View File

@@ -5,14 +5,14 @@ inputs:
version:
description: "Version to download and run"
required: false
default: v0.18.4.3
default: v0.18.4.4
runs:
using: "composite"
steps:
- name: Monero Daemon Cache
id: cache-monerod
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # 4.2.4
with:
path: /usr/bin/monerod
key: monerod-${{ runner.os }}-${{ runner.arch }}-${{ inputs.version }}

View File

@@ -5,7 +5,7 @@ inputs:
monero-version:
description: "Monero version to download and run as a regtest node"
required: false
default: v0.18.4.3
default: v0.18.4.4
bitcoin-version:
description: "Bitcoin version to download and run as a regtest node"
@@ -19,9 +19,9 @@ runs:
uses: ./.github/actions/build-dependencies
- name: Install Foundry
uses: foundry-rs/foundry-toolchain@8f1998e9878d786675189ef566a2e4bf24869773
uses: foundry-rs/foundry-toolchain@50d5a8956f2e319df19e6b57539d7e2acb9f8c1e # 1.5.0
with:
version: nightly-f625d0fa7c51e65b4bf1e8f7931cd1c6e2e285e9
version: v1.5.0
cache: false
- name: Run a Monero Regtest Node

View File

@@ -1 +1 @@
nightly-2025-11-11
nightly-2025-12-01

View File

@@ -17,7 +17,7 @@ jobs:
test-common:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
- name: Build Dependencies
uses: ./.github/actions/build-dependencies

View File

@@ -31,7 +31,7 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
- name: Install Build Dependencies
uses: ./.github/actions/build-dependencies

View File

@@ -19,7 +19,7 @@ jobs:
test-crypto:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
- name: Build Dependencies
uses: ./.github/actions/build-dependencies

View File

@@ -9,16 +9,10 @@ jobs:
name: Run cargo deny
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- name: Advisory Cache
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809
with:
path: ~/.cargo/advisory-db
key: rust-advisory-db
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
- name: Install cargo deny
run: cargo +1.91 install cargo-deny --version =0.18.5
run: cargo +1.91.1 install cargo-deny --version =0.18.6
- name: Run cargo deny
run: cargo deny -L error --all-features check --hide-inclusion-graph

View File

@@ -13,7 +13,7 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
- name: Install Build Dependencies
uses: ./.github/actions/build-dependencies

View File

@@ -15,7 +15,7 @@ jobs:
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
- name: Get nightly version to use
id: nightly
@@ -43,16 +43,10 @@ jobs:
deny:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- name: Advisory Cache
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809
with:
path: ~/.cargo/advisory-db
key: rust-advisory-db
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
- name: Install cargo deny
run: cargo +1.91 install cargo-deny --version =0.18.5
run: cargo +1.91.1 install cargo-deny --version =0.18.6
- name: Run cargo deny
run: cargo deny -L error --all-features check --hide-inclusion-graph
@@ -60,7 +54,7 @@ jobs:
fmt:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
- name: Get nightly version to use
id: nightly
@@ -73,10 +67,10 @@ jobs:
- name: Run rustfmt
run: cargo +${{ steps.nightly.outputs.version }} fmt -- --check
- name: Install foundry
uses: foundry-rs/foundry-toolchain@8f1998e9878d786675189ef566a2e4bf24869773
- name: Install Foundry
uses: foundry-rs/foundry-toolchain@50d5a8956f2e319df19e6b57539d7e2acb9f8c1e # 1.5.0
with:
version: nightly-41d4e5437107f6f42c7711123890147bc736a609
version: v1.5.0
cache: false
- name: Run forge fmt
@@ -85,20 +79,20 @@ jobs:
machete:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
- name: Verify all dependencies are in use
run: |
cargo +1.91 install cargo-machete --version =0.9.1
cargo +1.91 machete
cargo +1.91.1 install cargo-machete --version =0.9.1
cargo +1.91.1 machete
msrv:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
- name: Verify claimed `rust-version`
shell: bash
run: |
cargo +1.91 install cargo-msrv --version =0.18.4
cargo +1.91.1 install cargo-msrv --version =0.18.4
function check_msrv {
# We `cd` into the directory passed as the first argument, but will return to the
@@ -189,16 +183,16 @@ jobs:
slither:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
- name: Build Dependencies
uses: ./.github/actions/build-dependencies
- name: Slither
run: |
python3 -m pip install slither-analyzer
python3 -m pip install slither-analyzer==0.11.3
slither --include-paths ./networks/ethereum/schnorr/contracts/Schnorr.sol
slither ./networks/ethereum/schnorr/contracts/Schnorr.sol
slither --include-paths ./networks/ethereum/schnorr/contracts ./networks/ethereum/schnorr/contracts/tests/Schnorr.sol
slither processor/ethereum/deployer/contracts/Deployer.sol
slither processor/ethereum/erc20/contracts/IERC20.sol

View File

@@ -27,7 +27,7 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
- name: Install Build Dependencies
uses: ./.github/actions/build-dependencies

View File

@@ -17,7 +17,7 @@ jobs:
test-common:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
- name: Build Dependencies
uses: ./.github/actions/build-dependencies

View File

@@ -9,7 +9,7 @@ jobs:
name: Update nightly
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
with:
submodules: "recursive"

View File

@@ -21,7 +21,7 @@ jobs:
test-networks:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
- name: Test Dependencies
uses: ./.github/actions/test-dependencies

View File

@@ -23,7 +23,7 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
- name: Install Build Dependencies
uses: ./.github/actions/build-dependencies

View File

@@ -46,16 +46,16 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
- name: Setup Ruby
uses: ruby/setup-ruby@44511735964dcb71245e7e55f72539531f7bc0eb
uses: ruby/setup-ruby@8aeb6ff8030dd539317f8e1769a044873b56ea71 # 1.268.0
with:
bundler-cache: true
cache-version: 0
working-directory: "${{ github.workspace }}/docs"
- name: Setup Pages
id: pages
uses: actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b
uses: actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b # 5.0.0
- name: Build with Jekyll
run: cd ${{ github.workspace }}/docs && bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}"
env:
@@ -74,7 +74,7 @@ jobs:
mv target/doc docs/_site/rust
- name: Upload artifact
uses: actions/upload-pages-artifact@7b1f4a764d45c48632c6b24a0339c27f5614fb0b
uses: actions/upload-pages-artifact@7b1f4a764d45c48632c6b24a0339c27f5614fb0b # 4.0.0
with:
path: "docs/_site/"
@@ -88,4 +88,4 @@ jobs:
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e
uses: actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e # 4.0.5

View File

@@ -31,7 +31,7 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
- name: Install Build Dependencies
uses: ./.github/actions/build-dependencies

View File

@@ -27,7 +27,7 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
- name: Install Build Dependencies
uses: ./.github/actions/build-dependencies

View File

@@ -29,7 +29,7 @@ jobs:
test-infra:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
- name: Build Dependencies
uses: ./.github/actions/build-dependencies
@@ -74,7 +74,7 @@ jobs:
test-substrate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
- name: Build Dependencies
uses: ./.github/actions/build-dependencies
@@ -101,7 +101,7 @@ jobs:
test-serai-client:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # 6.0.0
- name: Build Dependencies
uses: ./.github/actions/build-dependencies

235
Cargo.lock generated
View File

@@ -92,9 +92,9 @@ checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923"
[[package]]
name = "alloy-chains"
version = "0.2.20"
version = "0.2.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4bc32535569185cbcb6ad5fa64d989a47bccb9a08e27284b1f2a3ccf16e6d010"
checksum = "1b9ebac8ff9c2f07667e1803dc777304337e160ce5153335beb45e8ec0751808"
dependencies = [
"alloy-primitives",
"num_enum",
@@ -1186,9 +1186,9 @@ checksum = "30bdbe14aa07b06e6cfeffc529a1f099e5fbe249524f8125358604df99a4bed2"
[[package]]
name = "bitcoin-io"
version = "0.1.3"
version = "0.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0b47c4ab7a93edb0c7198c5535ed9b52b63095f4e9b45279c6736cec4b856baf"
checksum = "2dee39a0ee5b4095224a0cfc6bf4cc1baf0f9624b96b367e53b66d974e51d953"
[[package]]
name = "bitcoin-serai"
@@ -2899,7 +2899,7 @@ checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb"
[[package]]
name = "fork-tree"
version = "13.0.1"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"parity-scale-codec",
]
@@ -2926,7 +2926,7 @@ dependencies = [
[[package]]
name = "frame-benchmarking"
version = "43.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"frame-support",
"frame-support-procedural",
@@ -2949,7 +2949,7 @@ dependencies = [
[[package]]
name = "frame-executive"
version = "43.0.1"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"frame-support",
"frame-system",
@@ -2965,7 +2965,7 @@ dependencies = [
[[package]]
name = "frame-support"
version = "43.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"array-bytes",
"environmental",
@@ -2996,7 +2996,7 @@ dependencies = [
[[package]]
name = "frame-support-procedural"
version = "35.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"Inflector",
"cfg-expr",
@@ -3015,7 +3015,7 @@ dependencies = [
[[package]]
name = "frame-support-procedural-tools"
version = "13.0.1"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"frame-support-procedural-tools-derive",
"proc-macro-crate 3.4.0",
@@ -3027,7 +3027,7 @@ dependencies = [
[[package]]
name = "frame-support-procedural-tools-derive"
version = "12.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"proc-macro2",
"quote",
@@ -3037,7 +3037,7 @@ dependencies = [
[[package]]
name = "frame-system"
version = "43.0.1"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"cfg-if",
"frame-support",
@@ -3054,7 +3054,7 @@ dependencies = [
[[package]]
name = "frame-try-runtime"
version = "0.49.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"frame-support",
"parity-scale-codec",
@@ -4189,9 +4189,16 @@ dependencies = [
[[package]]
name = "kvdb-rocksdb"
version = "0.20.1"
version = "0.20.99"
dependencies = [
"kvdb-rocksdb 0.21.0",
]
[[package]]
name = "kvdb-rocksdb"
version = "0.21.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3b089b6062662d720a836f055931434439fcd3a90f0059db0b831a99da6db460"
checksum = "739ac938a308a9a8b6772fd1d840fd9c0078f9c74fe294feaf32faae727102cc"
dependencies = [
"kvdb",
"num_cpus",
@@ -4666,7 +4673,8 @@ dependencies = [
[[package]]
name = "librocksdb-sys"
version = "0.17.3+10.4.2"
source = "git+https://github.com/rust-rocksdb/rust-rocksdb#a3f6cb54514624c0aed3bf5591f18b82e4c3170b"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cef2a00ee60fe526157c9023edab23943fae1ce2ab6f4abb2a807c1746835de9"
dependencies = [
"bindgen",
"bzip2-sys",
@@ -4676,13 +4684,6 @@ dependencies = [
"zstd-sys",
]
[[package]]
name = "librocksdb-sys"
version = "0.17.99"
dependencies = [
"librocksdb-sys 0.17.3+10.4.2",
]
[[package]]
name = "libz-sys"
version = "1.1.23"
@@ -5691,7 +5692,7 @@ dependencies = [
[[package]]
name = "pallet-authorship"
version = "43.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"frame-support",
"frame-system",
@@ -5702,7 +5703,7 @@ dependencies = [
[[package]]
name = "pallet-babe"
version = "43.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -5723,7 +5724,7 @@ dependencies = [
[[package]]
name = "pallet-grandpa"
version = "43.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -5743,7 +5744,7 @@ dependencies = [
[[package]]
name = "pallet-session"
version = "43.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"frame-support",
"frame-system",
@@ -5754,7 +5755,7 @@ dependencies = [
[[package]]
name = "pallet-timestamp"
version = "42.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"frame-benchmarking",
"frame-support",
@@ -6863,7 +6864,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ddb7af00d2b17dbd07d82c0063e25411959748ff03e8d4f96134c2ff41fce34f"
dependencies = [
"libc",
"librocksdb-sys 0.17.99",
"librocksdb-sys",
]
[[package]]
@@ -7097,7 +7098,7 @@ dependencies = [
[[package]]
name = "sc-allocator"
version = "34.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"log",
"sp-core",
@@ -7108,7 +7109,7 @@ dependencies = [
[[package]]
name = "sc-authority-discovery"
version = "0.53.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"async-trait",
"futures",
@@ -7138,7 +7139,7 @@ dependencies = [
[[package]]
name = "sc-basic-authorship"
version = "0.52.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"futures",
"log",
@@ -7160,7 +7161,7 @@ dependencies = [
[[package]]
name = "sc-block-builder"
version = "0.47.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"parity-scale-codec",
"sp-api",
@@ -7175,10 +7176,9 @@ dependencies = [
[[package]]
name = "sc-chain-spec"
version = "46.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"parity-scale-codec",
"sc-chain-spec-derive",
"sc-client-api",
"sc-executor",
"sc-network",
@@ -7194,21 +7194,10 @@ dependencies = [
"sp-state-machine",
]
[[package]]
name = "sc-chain-spec-derive"
version = "12.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
dependencies = [
"proc-macro-crate 3.4.0",
"proc-macro2",
"quote",
"syn 2.0.111",
]
[[package]]
name = "sc-cli"
version = "0.55.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"array-bytes",
"chrono",
@@ -7244,7 +7233,7 @@ dependencies = [
[[package]]
name = "sc-client-api"
version = "42.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"fnv",
"futures",
@@ -7270,12 +7259,12 @@ dependencies = [
[[package]]
name = "sc-client-db"
version = "0.49.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"hash-db",
"kvdb",
"kvdb-memorydb",
"kvdb-rocksdb",
"kvdb-rocksdb 0.20.99",
"linked-hash-map",
"log",
"parity-db",
@@ -7297,7 +7286,7 @@ dependencies = [
[[package]]
name = "sc-consensus"
version = "0.52.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"async-trait",
"futures",
@@ -7319,7 +7308,7 @@ dependencies = [
[[package]]
name = "sc-consensus-babe"
version = "0.53.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"async-trait",
"fork-tree",
@@ -7356,7 +7345,7 @@ dependencies = [
[[package]]
name = "sc-consensus-epochs"
version = "0.52.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"fork-tree",
"parity-scale-codec",
@@ -7369,7 +7358,7 @@ dependencies = [
[[package]]
name = "sc-consensus-grandpa"
version = "0.38.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"ahash",
"array-bytes",
@@ -7412,7 +7401,7 @@ dependencies = [
[[package]]
name = "sc-consensus-slots"
version = "0.52.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"async-trait",
"futures",
@@ -7434,7 +7423,7 @@ dependencies = [
[[package]]
name = "sc-executor"
version = "0.45.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"parity-scale-codec",
"parking_lot",
@@ -7454,7 +7443,7 @@ dependencies = [
[[package]]
name = "sc-executor-common"
version = "0.41.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"sc-allocator",
"sp-wasm-interface",
@@ -7465,7 +7454,7 @@ dependencies = [
[[package]]
name = "sc-executor-wasmtime"
version = "0.41.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"anyhow",
"log",
@@ -7481,7 +7470,7 @@ dependencies = [
[[package]]
name = "sc-informant"
version = "0.52.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"console",
"futures",
@@ -7497,7 +7486,7 @@ dependencies = [
[[package]]
name = "sc-keystore"
version = "38.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"array-bytes",
"parking_lot",
@@ -7511,7 +7500,7 @@ dependencies = [
[[package]]
name = "sc-network"
version = "0.53.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"array-bytes",
"async-channel",
@@ -7555,7 +7544,7 @@ dependencies = [
[[package]]
name = "sc-network-common"
version = "0.51.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"bitflags 1.3.2",
"parity-scale-codec",
@@ -7565,7 +7554,7 @@ dependencies = [
[[package]]
name = "sc-network-gossip"
version = "0.53.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"ahash",
"futures",
@@ -7584,7 +7573,7 @@ dependencies = [
[[package]]
name = "sc-network-sync"
version = "0.52.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"array-bytes",
"async-channel",
@@ -7618,7 +7607,7 @@ dependencies = [
[[package]]
name = "sc-network-transactions"
version = "0.52.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"array-bytes",
"futures",
@@ -7637,7 +7626,7 @@ dependencies = [
[[package]]
name = "sc-network-types"
version = "0.19.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"bs58",
"bytes",
@@ -7658,7 +7647,7 @@ dependencies = [
[[package]]
name = "sc-proposer-metrics"
version = "0.20.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"log",
"substrate-prometheus-endpoint",
@@ -7667,7 +7656,7 @@ dependencies = [
[[package]]
name = "sc-rpc"
version = "48.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"futures",
"jsonrpsee",
@@ -7686,7 +7675,7 @@ dependencies = [
[[package]]
name = "sc-rpc-api"
version = "0.52.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"jsonrpsee",
"parity-scale-codec",
@@ -7698,7 +7687,7 @@ dependencies = [
[[package]]
name = "sc-rpc-server"
version = "25.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"dyn-clone",
"forwarded-header-value",
@@ -7722,7 +7711,7 @@ dependencies = [
[[package]]
name = "sc-service"
version = "0.54.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"async-trait",
"directories",
@@ -7782,7 +7771,7 @@ dependencies = [
[[package]]
name = "sc-state-db"
version = "0.40.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"log",
"parity-scale-codec",
@@ -7792,7 +7781,7 @@ dependencies = [
[[package]]
name = "sc-sysinfo"
version = "45.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"derive_more 1.0.0",
"futures",
@@ -7812,7 +7801,7 @@ dependencies = [
[[package]]
name = "sc-telemetry"
version = "30.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"chrono",
"futures",
@@ -7831,7 +7820,7 @@ dependencies = [
[[package]]
name = "sc-tracing"
version = "42.0.1"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"chrono",
"console",
@@ -7859,7 +7848,7 @@ dependencies = [
[[package]]
name = "sc-tracing-proc-macro"
version = "11.1.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"proc-macro-crate 3.4.0",
"proc-macro2",
@@ -7870,7 +7859,7 @@ dependencies = [
[[package]]
name = "sc-transaction-pool"
version = "42.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"async-trait",
"futures",
@@ -7900,7 +7889,7 @@ dependencies = [
[[package]]
name = "sc-transaction-pool-api"
version = "42.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"async-trait",
"futures",
@@ -7917,7 +7906,7 @@ dependencies = [
[[package]]
name = "sc-utils"
version = "20.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"async-channel",
"futures",
@@ -9025,11 +9014,8 @@ dependencies = [
name = "serai-reproducible-runtime-tests"
version = "0.1.0"
dependencies = [
"dockertest",
"hex",
"rand_core 0.6.4",
"serai-docker-tests",
"tokio",
]
[[package]]
@@ -9473,7 +9459,7 @@ dependencies = [
[[package]]
name = "sp-api"
version = "39.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"hash-db",
"log",
@@ -9492,7 +9478,7 @@ dependencies = [
[[package]]
name = "sp-api-proc-macro"
version = "25.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"Inflector",
"blake2 0.10.6",
@@ -9506,7 +9492,7 @@ dependencies = [
[[package]]
name = "sp-application-crypto"
version = "43.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"parity-scale-codec",
"serde",
@@ -9517,7 +9503,7 @@ dependencies = [
[[package]]
name = "sp-arithmetic"
version = "28.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"integer-sqrt",
"num-traits",
@@ -9529,7 +9515,7 @@ dependencies = [
[[package]]
name = "sp-authority-discovery"
version = "39.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"parity-scale-codec",
"sp-api",
@@ -9539,7 +9525,7 @@ dependencies = [
[[package]]
name = "sp-block-builder"
version = "39.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"sp-api",
"sp-inherents",
@@ -9549,7 +9535,7 @@ dependencies = [
[[package]]
name = "sp-blockchain"
version = "42.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"futures",
"parity-scale-codec",
@@ -9568,7 +9554,7 @@ dependencies = [
[[package]]
name = "sp-consensus"
version = "0.45.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"async-trait",
"futures",
@@ -9582,7 +9568,7 @@ dependencies = [
[[package]]
name = "sp-consensus-babe"
version = "0.45.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"async-trait",
"parity-scale-codec",
@@ -9599,7 +9585,7 @@ dependencies = [
[[package]]
name = "sp-consensus-grandpa"
version = "26.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"finality-grandpa",
"log",
@@ -9615,7 +9601,7 @@ dependencies = [
[[package]]
name = "sp-consensus-slots"
version = "0.45.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"parity-scale-codec",
"serde",
@@ -9625,7 +9611,7 @@ dependencies = [
[[package]]
name = "sp-core"
version = "38.1.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"array-bytes",
"bitflags 1.3.2",
@@ -9663,7 +9649,7 @@ dependencies = [
[[package]]
name = "sp-crypto-hashing"
version = "0.1.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"blake2b_simd",
"byteorder",
@@ -9676,7 +9662,7 @@ dependencies = [
[[package]]
name = "sp-crypto-hashing-proc-macro"
version = "0.1.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"quote",
"sp-crypto-hashing",
@@ -9686,7 +9672,7 @@ dependencies = [
[[package]]
name = "sp-database"
version = "10.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"kvdb",
"parking_lot",
@@ -9695,7 +9681,7 @@ dependencies = [
[[package]]
name = "sp-debug-derive"
version = "14.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"proc-macro2",
"quote",
@@ -9705,7 +9691,7 @@ dependencies = [
[[package]]
name = "sp-externalities"
version = "0.30.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"environmental",
"parity-scale-codec",
@@ -9715,7 +9701,7 @@ dependencies = [
[[package]]
name = "sp-genesis-builder"
version = "0.20.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"parity-scale-codec",
"sp-api",
@@ -9724,7 +9710,7 @@ dependencies = [
[[package]]
name = "sp-inherents"
version = "39.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"async-trait",
"impl-trait-for-tuples",
@@ -9736,7 +9722,7 @@ dependencies = [
[[package]]
name = "sp-io"
version = "43.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"bytes",
"log",
@@ -9757,7 +9743,7 @@ dependencies = [
[[package]]
name = "sp-keyring"
version = "44.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"sp-core",
"sp-runtime",
@@ -9767,7 +9753,7 @@ dependencies = [
[[package]]
name = "sp-keystore"
version = "0.44.1"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"parity-scale-codec",
"parking_lot",
@@ -9778,7 +9764,7 @@ dependencies = [
[[package]]
name = "sp-panic-handler"
version = "13.0.2"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"backtrace",
"regex",
@@ -9787,7 +9773,7 @@ dependencies = [
[[package]]
name = "sp-rpc"
version = "36.0.1"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"rustc-hash",
"serde",
@@ -9796,7 +9782,7 @@ dependencies = [
[[package]]
name = "sp-runtime"
version = "44.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"either",
"hash256-std-hasher",
@@ -9819,7 +9805,7 @@ dependencies = [
[[package]]
name = "sp-runtime-interface"
version = "32.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"bytes",
"parity-scale-codec",
@@ -9833,7 +9819,7 @@ dependencies = [
[[package]]
name = "sp-runtime-interface-proc-macro"
version = "20.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"Inflector",
"expander",
@@ -9846,19 +9832,20 @@ dependencies = [
[[package]]
name = "sp-session"
version = "41.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"parity-scale-codec",
"sp-api",
"sp-core",
"sp-keystore",
"sp-runtime",
"sp-staking",
]
[[package]]
name = "sp-staking"
version = "41.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"parity-scale-codec",
"sp-core",
@@ -9868,7 +9855,7 @@ dependencies = [
[[package]]
name = "sp-state-machine"
version = "0.48.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"hash-db",
"log",
@@ -9888,12 +9875,12 @@ dependencies = [
[[package]]
name = "sp-std"
version = "14.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
[[package]]
name = "sp-storage"
version = "22.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"impl-serde",
"parity-scale-codec",
@@ -9905,7 +9892,7 @@ dependencies = [
[[package]]
name = "sp-timestamp"
version = "39.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"async-trait",
"parity-scale-codec",
@@ -9917,7 +9904,7 @@ dependencies = [
[[package]]
name = "sp-tracing"
version = "19.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"parity-scale-codec",
"regex",
@@ -9929,7 +9916,7 @@ dependencies = [
[[package]]
name = "sp-transaction-pool"
version = "39.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"sp-api",
"sp-runtime",
@@ -9938,7 +9925,7 @@ dependencies = [
[[package]]
name = "sp-trie"
version = "41.1.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"ahash",
"foldhash 0.1.5",
@@ -9961,7 +9948,7 @@ dependencies = [
[[package]]
name = "sp-version"
version = "42.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"impl-serde",
"parity-scale-codec",
@@ -9975,7 +9962,7 @@ dependencies = [
[[package]]
name = "sp-version-proc-macro"
version = "15.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"parity-scale-codec",
"proc-macro-warning",
@@ -9987,7 +9974,7 @@ dependencies = [
[[package]]
name = "sp-wasm-interface"
version = "24.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"anyhow",
"impl-trait-for-tuples",
@@ -9999,7 +9986,7 @@ dependencies = [
[[package]]
name = "sp-weights"
version = "33.1.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"bounded-collections",
"parity-scale-codec",
@@ -10139,7 +10126,7 @@ dependencies = [
[[package]]
name = "substrate-prometheus-endpoint"
version = "0.17.7"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"hyper",
"log",
@@ -10150,7 +10137,7 @@ dependencies = [
[[package]]
name = "substrate-wasm-builder"
version = "29.0.0"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk?rev=8c36534bb0bd5a02979f94bb913d11d55fe7eadc#8c36534bb0bd5a02979f94bb913d11d55fe7eadc"
source = "git+https://github.com/serai-dex/patch-polkadot-sdk#875af759416d5220d951e022c9a3e490b3c16677"
dependencies = [
"cargo_metadata",
"console",

View File

@@ -214,8 +214,8 @@ parity-bip39 = { path = "patches/parity-bip39" }
k256 = { git = "https://github.com/kayabaNerve/elliptic-curves", rev = "4994c9ab163781a88cd4a49beae812a89a44e8c3" }
p256 = { git = "https://github.com/kayabaNerve/elliptic-curves", rev = "4994c9ab163781a88cd4a49beae812a89a44e8c3" }
# `jemalloc` conflicts with `mimalloc`, so patch to a `rocksdb` which never uses `jemalloc`
librocksdb-sys = { path = "patches/librocksdb-sys" }
# `jemalloc` conflicts with `mimalloc`, so patch to a `kvdb-rocksdb` which never exposes `jemalloc`
kvdb-rocksdb = { path = "patches/kvdb-rocksdb" }
[workspace.lints.clippy]
incompatible_msrv = "allow" # Manually verified with a GitHub workflow

View File

@@ -575,14 +575,9 @@ impl<TD: Db, TDT: DbTxn, P: P2p> ScanBlock<'_, TD, TDT, P> {
};
let msgs = (
decode_signed_message::<TendermintNetwork<TD, Transaction, P>>(&data.0).unwrap(),
if data.1.is_some() {
Some(
decode_signed_message::<TendermintNetwork<TD, Transaction, P>>(&data.1.unwrap())
.unwrap(),
)
} else {
None
},
data.1.as_ref().map(|data| {
decode_signed_message::<TendermintNetwork<TD, Transaction, P>>(data).unwrap()
}),
);
// Since anything with evidence is fundamentally faulty behavior, not just temporal

View File

@@ -153,6 +153,5 @@ allow-git = [
"https://github.com/kayabaNerve/elliptic-curves",
"https://github.com/monero-oxide/monero-oxide",
"https://github.com/rust-bitcoin/rust-bip39",
"https://github.com/rust-rocksdb/rust-rocksdb",
"https://github.com/serai-dex/patch-polkadot-sdk",
]

View File

@@ -1,50 +0,0 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
# This GPG-signed message exists to confirm the SHA256 sums of Monero binaries.
#
# Please verify the signature against the key for binaryFate in the
# source code repository (/utils/gpg_keys).
#
#
## CLI
4e1481835824b9233f204553d4a19645274824f3f6185d8a4b50198470752f54 monero-android-armv7-v0.18.4.3.tar.bz2
1aebd24aaaec3d1e87a64163f2e30ab2cd45f3902a7a859413f6870944775c21 monero-android-armv8-v0.18.4.3.tar.bz2
ff7b9c5cf2cb3d602c3dff1902ac0bc3394768cefc260b6003a9ad4bcfb7c6a4 monero-freebsd-x64-v0.18.4.3.tar.bz2
3ac83049bc565fb5238501f0fa629cdd473bbe94d5fb815088af8e6ff1d761cd monero-linux-armv7-v0.18.4.3.tar.bz2
b1cc5f135de3ba8512d56deb4b536b38c41addde922b2a53bf443aeaf2a5a800 monero-linux-armv8-v0.18.4.3.tar.bz2
95baaa6e8957b92caeaed7fb19b5c2659373df8dd5f4de2601ed3dae7b17ce2f monero-linux-riscv64-v0.18.4.3.tar.bz2
3a7b36ae4da831a4e9913e0a891728f4c43cd320f9b136cdb6686b1d0a33fafa monero-linux-x64-v0.18.4.3.tar.bz2
e0b51ca71934c33cb83cfa8535ffffebf431a2fc9efe3acf2baad96fb6ce21ec monero-linux-x86-v0.18.4.3.tar.bz2
bab9a6d3c2ca519386cff5ff0b5601642a495ed1a209736acaf354468cba1145 monero-mac-armv8-v0.18.4.3.tar.bz2
a8d8273b14f31569f5b7aa3063fbd322e3caec3d63f9f51e287dfc539c7f7d61 monero-mac-x64-v0.18.4.3.tar.bz2
bd9f615657c35d2d7dd9a5168ad54f1547dbf9a335dee7f12fab115f6f394e36 monero-win-x64-v0.18.4.3.zip
e642ed7bbfa34c30b185387fa553aa9c3ea608db1f3fc0e9332afa9b522c9c1a monero-win-x86-v0.18.4.3.zip
6ba5e082c8fa25216aba7aea8198f3e23d4b138df15c512457081e1eb3d03ff6 monero-source-v0.18.4.3.tar.bz2
#
## GUI
7b9255c696a462a00a810d9c8f94e60400a9e7d6438e8d6a8b693e9c13dca9ab monero-gui-install-win-x64-v0.18.4.3.exe
0bd84de0a7c18b2a3ea8e8eff2194ae000cf1060045badfd4ab48674bc1b9325 monero-gui-linux-x64-v0.18.4.3.tar.bz2
68ea30db32efb4a0671ec723297b6629d932fa188edf76edb38a37adaa3528e6 monero-gui-mac-armv8-v0.18.4.3.dmg
27243b01f030fdae68c59cae1daf21f530bbadeaf10579d2908db9a834191cee monero-gui-mac-x64-v0.18.4.3.dmg
dc9531cb4319b37b2c2dea4126e44a0fe6e7b6f34d278ccf5dd9ba693e3031e0 monero-gui-win-x64-v0.18.4.3.zip
0d44687644db9b1824f324416e98f4a46b3bb0a5ed09af54b2835b6facaa0cdd monero-gui-source-v0.18.4.3.tar.bz2
#
#
# ~binaryFate
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEgaxZH+nEtlxYBq/D8K9NRioL35IFAmjntxwACgkQ8K9NRioL
35J57g//dUOY1KAoLNaV7XLJyGbNk1lT6c2+A8h1wkK6iNQhXsmnc6rcigsHXrG0
LQyVUuZJ6ELhNb6BnH5V0zbcB72t8XjkSEqlYhStUfMnaUvj1VdXtL/OnSs3fEvt
Zwz6QBTxIKDDYEYyXrvCK96cYaYlIOgK3IVn/zoHdrHRUqTXqRJkFoTHum5l783y
vr9BwMFFWYePUrilphjIiLyJDl+eB5al8PaJkqK2whxBUHoA2jF1edJOSq2mZajI
+L2fBYClePS8oqwoKGquqCh2RVcmdtXtQTVzRIoNx14qFzP8ymqa+6z1Ygkri7bV
qMCJk7KQ8ND7uU9NShpaCIqrZpr5GZ4Al6SRkcpK/7mipQcy2QpKJR3iOpcfiTX1
YmYGVmLB3zmHu2kiS0kogZv6Ob7+tVFzOQ8NZX4FVnpB0N0phqMfNFOfHzdQZrsZ
qg29HNc9sHlUmsOVmE5w+7Oq+s79yvQB3034XXi/9wQu+f8fKRhqZboe0fe77FLf
QXoAYrZZ7LnGz0Z75Q9O4RB7uxM0Ug5imvyEFus4iuBVyBWjgcfyLnbkKJtbXmfn
BZBbTProhPJfVa/VffBxW9HZB27W7O14oGWVpUkGWnVMZfVY/78XTUHwxaScQsPO
SGawjobQsB3pTMNr/kra1XTjkti70si8Fcs5ueYWGB3yfc6r3hU=
=5HRY
-----END PGP SIGNATURE-----

View File

@@ -0,0 +1,50 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
# This GPG-signed message exists to confirm the SHA256 sums of Monero binaries.
#
# Please verify the signature against the key for binaryFate in the
# source code repository (/utils/gpg_keys).
#
#
## CLI
7c2ad18ca3a1ad5bc603630ca935a753537a38a803e98d645edd6a3b94a5f036 monero-android-armv7-v0.18.4.4.tar.bz2
eb81b71f029884ab5fec76597be583982c95fd7dc3fc5f5083a422669cee311e monero-android-armv8-v0.18.4.4.tar.bz2
bc539178df23d1ae8b69569d9c328b5438ae585c0aacbebe12d8e7d387a745b0 monero-freebsd-x64-v0.18.4.4.tar.bz2
2040dc22748ef39ed8a755324d2515261b65315c67b91f449fa1617c5978910b monero-linux-armv7-v0.18.4.4.tar.bz2
b9daede195a24bdd05bba68cb5cb21e42c2e18b82d4d134850408078a44231c5 monero-linux-armv8-v0.18.4.4.tar.bz2
c939ea6e8002798f24a56ac03cbfc4ff586f70d7d9c3321b7794b3bcd1fa4c45 monero-linux-riscv64-v0.18.4.4.tar.bz2
7fe45ee9aade429ccdcfcad93b905ba45da5d3b46d2dc8c6d5afc48bd9e7f108 monero-linux-x64-v0.18.4.4.tar.bz2
8c174b756e104534f3d3a69fe68af66d6dc4d66afa97dfe31735f8d069d20570 monero-linux-x86-v0.18.4.4.tar.bz2
645e9bbae0275f555b2d72a9aa30d5f382df787ca9528d531521750ce2da9768 monero-mac-armv8-v0.18.4.4.tar.bz2
af3d98f09da94632db3e2f53c62cc612e70bf94aa5942d2a5200b4393cd9c842 monero-mac-x64-v0.18.4.4.tar.bz2
7eb3b87a105b3711361dd2b3e492ad14219d21ed8fd3dd726573a6cbd96e83a6 monero-win-x64-v0.18.4.4.zip
a148a2bd2b14183fb36e2cf917fce6f33fb687564db2ed53193b8432097ab398 monero-win-x86-v0.18.4.4.zip
84570eee26238d8f686605b5e31d59569488a3406f32e7045852de91f35508a2 monero-source-v0.18.4.4.tar.bz2
#
## GUI
4c81c8e97bd542daa453776d888557db1ceb2a718d43f6135ad68b12c8119948 monero-gui-install-win-x64-v0.18.4.4.exe
e45cb3fa9d972d67628cfed6463fb7604ae1414a11ba449f5e2f901c769ac788 monero-gui-linux-x64-v0.18.4.4.tar.bz2
a6f071719c401df339dba2d43ec6fffe103fda3e1df46f354b2496f34bb61cc4 monero-gui-mac-armv8-v0.18.4.4.dmg
811df70811a25f31289f24ebc0edc8f7648670384698d4c768bac5c2acbf2026 monero-gui-mac-x64-v0.18.4.4.dmg
b96faa56aa77cabed1f31f3fc9496e756a8da8c1124da2b9cb0b3730a8b6fbd9 monero-gui-win-x64-v0.18.4.4.zip
a7f6b91bc9efaa83173a397614626bf7612123e0017a48f66137ac397f7d19f8 monero-gui-source-v0.18.4.4.tar.bz2
#
#
# ~binaryFate
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEgaxZH+nEtlxYBq/D8K9NRioL35IFAmkbGLgACgkQ8K9NRioL
35LWYRAAnPeUu7TADV9Nly2gBlwu7bMK6l7pcUzs3hHhCMpg/Zb7wF8lx4D/r/hT
3wf3gNVK6tYl5GMPpF7GSKvK35SSzNN+8khRd7vhRByG75LGLnrNlcBsQU2wOzUv
Rmm2R8L8GP0B/+zXO92uJDMZ7Q7x72O+3fVX05217HBwz2kvzE1NpXe+EJPnUukA
Tr5CRnxKhxPbilvIhoEHdwkScMZqHMfsbdrefrB3KpO3xEaUz+gO9wESp7nzr4vp
Du6gJYBPK25Z2heZHCRsGN4WQP4QQv4MC0IFczc9fkVDBjywsJeNRRUbGtxR/BNt
vNJGI/kS+7KV140j6GkqAh/leZcaVJ5LRyCaHAwEQNA2T5okhrM0WZpoOAsZMi5K
bW4lNOXfWSw6/tokEPeuoi49yw0f9z0C8a4VLNOZGWKqmHcsA8WE6oVfmvVk6xWu
BqTU1Z9LJqL17GWRAReSX1ZuNA0Q0Pb/klUwP4X2afJcCVZ2YeBNr4jr21u3dYXY
QiLj0Gv7gg7a/GiMpVglNn5GzCu6mT0D94sbMNK+U5Tbve7aOtijJZ8JR62eO/mR
h+oNEys/xEcP9PQ5p74cNL71hNSfWSOcNi+GLSgXC75vsOGr7i96uaamilsHnsYB
p8PZMHzOf1pi6i/L5oOEuRgaujd9IjyCbxoYh3bbxxjBOhNEMqU=
=CVLA
-----END PGP SIGNATURE-----

View File

@@ -1,11 +1,32 @@
#check=skip=FromPlatformFlagConstDisallowed
# We want to explicitly set the platform to ensure a constant host environment
# rust:1.91.1-alpine as of November 11th, 2025 (GMT)
FROM --platform=linux/amd64 rust@sha256:700c0959b23445f69c82676b72caa97ca4359decd075dca55b13339df27dc4d3 AS deterministic
FROM --platform=linux/amd64 rust@sha256:700c0959b23445f69c82676b72caa97ca4359decd075dca55b13339df27dc4d3
# Add the wasm toolchain
# In order to compile the runtime, including the `proc-macro`s and build scripts, we need the
# required development libraries. These are traditionally provided by `musl-dev` which is not
# inherently included with this image (https://github.com/rust-lang/docker-rust/issues/68). While we
# could install it here, we'd be unable to pin the installed package by its hash as desired.
#
# Rust does have self-contained libraries, intended to be used when the desired development files
# are not otherwise available. These can be enabled with `link-self-contained=yes`. Unfortunately,
# this doesn't work here (https://github.com/rust-lang/rust/issues/149371).
#
# While we can't set `link-self-contained=yes`, we can install Rust's self-contained libraries onto
# our system so they're generally available.
RUN echo '#!/bin/sh' > libs.sh
RUN echo 'set -e' >> libs.sh
RUN echo 'SYSROOT=$(rustc --print sysroot)' >> libs.sh
RUN echo 'LIBS=$SYSROOT/lib/rustlib/x86_64-unknown-linux-musl/lib/self-contained' >> libs.sh
RUN echo 'ln -s $LIBS/Scrt1.o $LIBS/crti.o $LIBS/crtn.o /usr/lib' >> libs.sh
# We also need `libc.so` which is already present on the system, just not under that name
RUN echo 'ln -s /lib/libc.musl-x86_64.so.1 /usr/lib/libc.so' >> libs.sh
RUN /bin/sh ./libs.sh
# Add the WASM toolchain
RUN rustup target add wasm32v1-none
FROM deterministic
# Add files for build
ADD patches /serai/patches
ADD common /serai/common
@@ -25,32 +46,8 @@ ADD AGPL-3.0 /serai
WORKDIR /serai
# `proc-macro`s are difficult here on Alpine, with `musl`. Rust expects to be able to build the
# `proc-macro`s into dynamic libraries, which requires setting `target-feature=-crt-static`
# (disabling static linking). This will become the default at some point in the future
# (https://github.com/rust-lang/compiler-time/issues/422).
#
# While this is fine, Rust/musl will expect to be able to link `crti.o` into the built
# `proc-macro`s. `crti.o` would be provided by the `musl-dev` package which Rust's docker images do
# not include by default (https://github.com/rust-lang/docker-rust/issues/68). While we could add it
# ourselves, we cannot do so _while pinning by a hash_. We'd have to pin it by its version tag.
#
# Rust does provide `crti.o` as part of its self-contained builds. We cannot use
# `link-self-contained=yes` here however, as that would link `musl` into the `proc-macro`s and
# `musl` may only be linked once into a running program
# (https://github.com/rust-lang/rust/issues/149371).
#
# While we can't use self-contained builds, we can use the libraries shipped for self-contained
# builds. We do so here, adding Rust's libraries to the linker's search path, making `crti.o`
# available without adding `musl-dev`.
RUN echo 'SYSROOT=$(rustc --print sysroot)' >> libs.sh
RUN echo 'LIBS=$SYSROOT/lib/rustlib/x86_64-unknown-linux-musl/lib/self-contained' >> libs.sh
RUN echo 'ln -s $LIBS/Scrt1.o $LIBS/crti.o $LIBS/crtn.o /usr/lib' >> libs.sh
# For `libc`, we need a shared library, not a static archive, so we convert it now
RUN echo 'gcc -shared -o /usr/lib/libc.so -L$LIBS -Wl,--whole-archive -lc -Wl,--no-whole-archive -nodefaultlibs' >> libs.sh
RUN /bin/sh ./libs.sh
# Build the runtime
RUN cargo build --release -p serai-runtime
ENV RUSTFLAGS="-Ctarget-feature=-crt-static"
CMD cargo build --release -p serai-runtime && \
mkdir -p /volume && \
cp /serai/target/release/wbuild/serai-runtime/serai_runtime.wasm /volume/serai.wasm
# Copy the runtime to the provided volume
CMD ["cp", "/serai/target/release/wbuild/serai-runtime/serai_runtime.wasm", "/volume/serai.wasm"]

View File

@@ -16,7 +16,7 @@ pub fn coordinator(
) {
let db = network.db();
let longer_reattempts = if network == Network::Dev { "longer-reattempts" } else { "" };
let setup = mimalloc(Os::Debian).to_string() +
let setup = mimalloc(Os::Debian) +
&build_serai_service(
"",
Os::Debian,

View File

@@ -3,7 +3,7 @@ use std::path::Path;
use crate::{Network, Os, mimalloc, os, build_serai_service, write_dockerfile};
pub fn ethereum_relayer(orchestration_path: &Path, network: Network) {
let setup = mimalloc(Os::Debian).to_string() +
let setup = mimalloc(Os::Debian) +
&build_serai_service(
"",
Os::Debian,

View File

@@ -13,7 +13,7 @@ pub fn message_queue(
ethereum_key: <Ristretto as WrappedGroup>::G,
monero_key: <Ristretto as WrappedGroup>::G,
) {
let setup = mimalloc(Os::Alpine).to_string() +
let setup = mimalloc(Os::Alpine) +
&build_serai_service("", Os::Alpine, network.release(), network.db(), "serai-message-queue");
let env_vars = [

View File

@@ -1,36 +1,85 @@
use crate::Os;
pub fn mimalloc(os: Os) -> &'static str {
const ALPINE_MIMALLOC: &str = r#"
// 2.2.4
const MIMALLOC_VERSION: &str = "fbd8b99c2b828428947d70fdc046bb55609be93e";
const FLAGS: &str =
"-DMI_SECURE=ON -DMI_GUARDED=ON -DMI_BUILD_STATIC=OFF -DMI_BUILD_OBJECT=OFF -DMI_BUILD_TESTS=OFF";
pub fn mimalloc(os: Os) -> String {
let build_script = |env, flags| {
format!(
r#"
#!/bin/sh
set -e
git clone https://github.com/microsoft/mimalloc
cd mimalloc
git checkout {MIMALLOC_VERSION}
# For some reason, `mimalloc` contains binary blobs in the repository, so we remove those now
rm -rf .git ./bin
mkdir -p out/secure
cd out/secure
# `CMakeLists.txt` requires a C++ compiler but `mimalloc` does not use one by default. We claim
# there is a working C++ compiler so CMake doesn't complain, allowing us to not unnecessarily
# install one. If it was ever invoked, our choice of `false` would immediately let us know.
# https://github.com/microsoft/mimalloc/issues/1179
{env} CXX=false cmake -DCMAKE_CXX_COMPILER_WORKS=1 {FLAGS} ../..
make
cd ../..
# Copy the built library to the original directory
cd ..
cp mimalloc/out/secure/libmimalloc-secure.so ./libmimalloc.so
# Clean up the source directory
rm -rf ./mimalloc
"#
)
};
let build_commands = |env, flags| {
let mut result = String::new();
for line in build_script(env, flags)
.lines()
.map(|line| {
assert!(!line.contains('"'));
format!(r#"RUN echo "{line}" >> ./mimalloc.sh"#)
})
.chain(["RUN /bin/sh ./mimalloc.sh", "RUN rm ./mimalloc.sh"].into_iter().map(str::to_string))
{
result.push_str(&line);
result.push('\n');
}
result
};
let alpine_build = build_commands("CC=$(uname -m)-alpine-linux-musl-gcc", "-DMI_LIBC_MUSL=ON");
let debian_build = build_commands("", "");
let alpine_mimalloc = format!(
r#"
FROM alpine:latest AS mimalloc-alpine
RUN apk update && apk upgrade && apk --no-cache add gcc g++ libc-dev make cmake git
RUN git clone https://github.com/microsoft/mimalloc && \
cd mimalloc && \
git checkout fbd8b99c2b828428947d70fdc046bb55609be93e && \
mkdir -p out/secure && \
cd out/secure && \
cmake -DMI_SECURE=ON -DMI_GUARDED=on ../.. && \
make && \
cp ./libmimalloc-secure.so ../../../libmimalloc.so
"#;
RUN apk update && apk upgrade && apk --no-cache add musl-dev gcc make cmake git
const DEBIAN_MIMALLOC: &str = r#"
{alpine_build}
"#
);
let debian_mimalloc = format!(
r#"
FROM debian:trixie-slim AS mimalloc-debian
RUN apt update && apt upgrade -y && apt install -y gcc g++ make cmake git
RUN git clone https://github.com/microsoft/mimalloc && \
cd mimalloc && \
git checkout fbd8b99c2b828428947d70fdc046bb55609be93e && \
mkdir -p out/secure && \
cd out/secure && \
cmake -DMI_SECURE=ON -DMI_GUARDED=on ../.. && \
make && \
cp ./libmimalloc-secure.so ../../../libmimalloc.so
"#;
RUN apt update && apt upgrade -y && apt install -y gcc make cmake git
{debian_build}
"#
);
match os {
Os::Alpine => ALPINE_MIMALLOC,
Os::Debian => DEBIAN_MIMALLOC,
Os::Alpine => alpine_mimalloc,
Os::Debian => debian_mimalloc,
}
}

View File

@@ -29,7 +29,7 @@ RUN tar xzvf bitcoin-${BITCOIN_VERSION}-$(uname -m)-linux-gnu.tar.gz
RUN mv bitcoin-${BITCOIN_VERSION}/bin/bitcoind .
"#;
let setup = mimalloc(Os::Debian).to_string() + DOWNLOAD_BITCOIN;
let setup = mimalloc(Os::Debian) + DOWNLOAD_BITCOIN;
let run_bitcoin = format!(
r#"

View File

@@ -17,7 +17,7 @@ pub fn ethereum(orchestration_path: &Path, network: Network) {
(reth(network), nimbus(network))
};
let download = mimalloc(Os::Alpine).to_string() + &el_download + &cl_download;
let download = mimalloc(Os::Alpine) + &el_download + &cl_download;
let run = format!(
r#"
@@ -26,7 +26,7 @@ CMD ["/run.sh"]
"#,
network.label()
);
let run = mimalloc(Os::Debian).to_string() +
let run = mimalloc(Os::Debian) +
&os(Os::Debian, &(el_run_as_root + "\r\n" + &cl_run_as_root), "ethereum") +
&el_run +
&cl_run +

View File

@@ -10,7 +10,7 @@ fn monero_internal(
monero_binary: &str,
ports: &str,
) {
const MONERO_VERSION: &str = "0.18.4.3";
const MONERO_VERSION: &str = "0.18.4.4";
let arch = match std::env::consts::ARCH {
// We probably would run this without issues yet it's not worth needing to provide support for
@@ -41,7 +41,7 @@ RUN tar -xvjf monero-linux-{arch}-v{MONERO_VERSION}.tar.bz2 --strip-components=1
network.label(),
);
let setup = mimalloc(os).to_string() + &download_monero;
let setup = mimalloc(os) + &download_monero;
let run_monero = format!(
r#"

View File

@@ -17,7 +17,7 @@ pub fn processor(
substrate_evrf_key: Zeroizing<Vec<u8>>,
network_evrf_key: Zeroizing<Vec<u8>>,
) {
let setup = mimalloc(Os::Debian).to_string() +
let setup = mimalloc(Os::Debian) +
&build_serai_service(
if coin == "ethereum" {
r#"

View File

@@ -12,8 +12,7 @@ pub fn serai(
serai_key: &Zeroizing<<Ristretto as WrappedGroup>::F>,
) {
// Always builds in release for performance reasons
let setup =
mimalloc(Os::Debian).to_string() + &build_serai_service("", Os::Debian, true, "", "serai-node");
let setup = mimalloc(Os::Debian) + &build_serai_service("", Os::Debian, true, "", "serai-node");
let env_vars = [("KEY", hex::encode(serai_key.to_repr()))];
let mut env_vars_str = String::new();

View File

@@ -0,0 +1,20 @@
[package]
name = "kvdb-rocksdb"
version = "0.20.99"
description = "Replacement for `kvdb-rocksdb` which removes the `jemalloc` feature"
license = "MIT"
repository = "https://github.com/serai-dex/serai/tree/develop/patches/kvdb-rocksdb"
authors = ["Luke Parker <lukeparker5132@gmail.com>"]
edition = "2021"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[workspace]
[dependencies]
kvdb-rocksdb = { version = "0.21", default-features = false }
[features]
jemalloc = []

View File

@@ -0,0 +1 @@
pub use kvdb_rocksdb::*;

View File

@@ -1,35 +0,0 @@
[package]
name = "librocksdb-sys"
version = "0.17.99"
description = "Replacement for `librocksdb-sys` which removes the `jemalloc` feature"
license = "MIT"
repository = "https://github.com/serai-dex/serai/tree/develop/patches/librocksdb-sys"
authors = ["Luke Parker <lukeparker5132@gmail.com>"]
keywords = []
edition = "2018"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[workspace]
[dependencies]
# librocksdb-sys 0.17.3+10.4.2, with the commit provided by crates.io in `cargo_vcs_info.json`
librocksdb-sys = { git = "https://github.com/rust-rocksdb/rust-rocksdb", commit = "bb7d2168eab1bc7849f23adbcb825e3aba1bd2f4", default-features = false }
[features]
default = ["librocksdb-sys/default"]
jemalloc = []
static = ["librocksdb-sys/static"]
bindgen-runtime = ["librocksdb-sys/bindgen-runtime"]
bindgen-static = ["librocksdb-sys/bindgen-static"]
mt_static = ["librocksdb-sys/mt_static"]
io-uring = ["librocksdb-sys/io-uring"]
snappy = ["librocksdb-sys/snappy"]
lz4 = ["librocksdb-sys/lz4"]
zstd = ["librocksdb-sys/zstd"]
zlib = ["librocksdb-sys/zlib"]
bzip2 = ["librocksdb-sys/bzip2"]
rtti = ["librocksdb-sys/rtti"]
lto = ["librocksdb-sys/lto"]

View File

@@ -1 +0,0 @@
pub use librocksdb_sys::*;

View File

@@ -22,12 +22,12 @@ workspace = true
borsh = { version = "1", default-features = false, features = ["derive", "de_strict_order"] }
bitvec = { version = "1", default-features = false, features = ["alloc"] }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
serde = { version = "1", default-features = false, features = ["derive"], optional = true }
scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"], optional = true }
sp-runtime = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false, features = ["serde"], optional = true }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false, optional = true }
sp-runtime = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false, features = ["serde"], optional = true }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false, optional = true }
serai-primitives = { path = "../primitives", version = "0.1", default-features = false }

View File

@@ -30,7 +30,7 @@ serai-abi = { path = "../../abi", version = "0.1", default-features = false, fea
[dev-dependencies]
blake2 = { version = "0.11.0-rc.3", default-features = false }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
tokio = { version = "1", default-features = false, features = ["rt", "macros"] }
dockertest = "0.5"

View File

@@ -18,10 +18,10 @@ workspace = true
[dependencies]
scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
frame-system = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-system = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
serai-abi = { path = "../abi", default-features = false, features = ["substrate"] }
serai-core-pallet = { path = "../core", default-features = false }
@@ -29,9 +29,9 @@ serai-core-pallet = { path = "../core", default-features = false }
[dev-dependencies]
borsh = { version = "1", default-features = false, features = ["std", "derive", "de_strict_order"] }
sp-io = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false, features = ["std"] }
sp-io = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false, features = ["std"] }
pallet-timestamp = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false, features = ["std"] }
pallet-timestamp = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false, features = ["std"] }
[features]
std = [

View File

@@ -20,12 +20,12 @@ borsh = { version = "1", default-features = false, features = ["derive", "de_str
scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
frame-system = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-system = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
pallet-timestamp = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
pallet-timestamp = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
serai-abi = { path = "../abi", default-features = false, features = ["substrate"] }

View File

@@ -18,10 +18,10 @@ workspace = true
[dependencies]
scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
frame-system = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-system = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
substrate-median = { path = "../median", default-features = false }
@@ -32,9 +32,9 @@ serai-coins-pallet = { path = "../coins", default-features = false }
[dev-dependencies]
borsh = { version = "1", default-features = false, features = ["std", "derive", "de_strict_order"] }
sp-io = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false, features = ["std"] }
sp-io = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false, features = ["std"] }
pallet-timestamp = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false, features = ["std"] }
pallet-timestamp = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false, features = ["std"] }
[features]
std = [

View File

@@ -21,8 +21,8 @@ workspace = true
[dependencies]
scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] }
frame-system = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-system = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
dex-pallet = { package = "serai-dex-pallet", path = "../dex", default-features = false }
coins-pallet = { package = "serai-coins-pallet", path = "../coins", default-features = false }
@@ -30,16 +30,16 @@ coins-pallet = { package = "serai-coins-pallet", path = "../coins", default-feat
serai-primitives = { path = "../primitives", default-features = false }
[dev-dependencies]
pallet-babe = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
pallet-grandpa = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
pallet-timestamp = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
pallet-babe = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
pallet-grandpa = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
pallet-timestamp = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
validator-sets-pallet = { package = "serai-validator-sets-pallet", path = "../validator-sets", default-features = false }
sp-io = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-runtime = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-consensus-babe = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-io = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-runtime = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-consensus-babe = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
[features]
std = [

View File

@@ -21,11 +21,11 @@ workspace = true
[dependencies]
scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] }
frame-system = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-system = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-std = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-runtime = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-std = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-runtime = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
coins-pallet = { package = "serai-coins-pallet", path = "../coins", default-features = false }
validator-sets-pallet = { package = "serai-validator-sets-pallet", path = "../validator-sets", default-features = false }

View File

@@ -21,12 +21,12 @@ workspace = true
[dependencies]
scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] }
frame-system = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-system = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-std = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-application-crypto = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-std = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-application-crypto = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
dex-pallet = { package = "serai-dex-pallet", path = "../dex", default-features = false }
coins-pallet = { package = "serai-coins-pallet", path = "../coins", default-features = false }

View File

@@ -24,14 +24,14 @@ bitvec = { version = "1", default-features = false, features = ["alloc"] }
scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive", "max-encoded-len"] }
sp-std = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-application-crypto = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-io = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-runtime = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-std = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-application-crypto = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-io = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-runtime = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
frame-system = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-system = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
serai-primitives = { path = "../primitives", default-features = false }
@@ -42,9 +42,9 @@ genesis-liquidity-pallet = { package = "serai-genesis-liquidity-pallet", path =
emissions-pallet = { package = "serai-emissions-pallet", path = "../emissions", default-features = false }
[dev-dependencies]
pallet-babe = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
pallet-grandpa = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
pallet-timestamp = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
pallet-babe = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
pallet-grandpa = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
pallet-timestamp = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
economic-security-pallet = { package = "serai-economic-security-pallet", path = "../economic-security", default-features = false }

View File

@@ -17,11 +17,11 @@ workspace = true
[dependencies]
scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
[dev-dependencies]
rand_core = { version = "0.6", default-features = false, features = ["std"] }
sp-io = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-io = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
[features]
std = ["scale/std", "frame-support/std"]

View File

@@ -34,20 +34,20 @@ secq256k1 = { path = "../../crypto/secq256k1" }
libp2p = "0.56"
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sp-inherents = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sp-timestamp = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sp-blockchain = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sp-consensus = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sp-state-machine = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sp-api = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sp-keystore = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sp-io = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sp-runtime = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sp-block-builder = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sp-consensus-babe = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sp-inherents = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sp-timestamp = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sp-blockchain = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sp-consensus = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sp-state-machine = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sp-api = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sp-keystore = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sp-io = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sp-runtime = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sp-block-builder = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sp-consensus-babe = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
frame-benchmarking = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
frame-benchmarking = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
serai-abi = { path = "../abi", features = ["std", "substrate"] }
serai-runtime = { path = "../runtime", features = ["std"] }
@@ -59,24 +59,24 @@ futures-util = "0.3"
tokio = { version = "1", features = ["sync", "rt-multi-thread"] }
jsonrpsee = { version = "0.24", features = ["server"] }
sc-transaction-pool = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sc-transaction-pool-api = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sc-basic-authorship = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sc-client-db = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sc-executor = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sc-service = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sc-client-api = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sc-network = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sc-transaction-pool = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sc-transaction-pool-api = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sc-basic-authorship = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sc-client-db = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sc-executor = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sc-service = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sc-client-api = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sc-network = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sc-consensus = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sc-consensus-slots = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sc-consensus-babe = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sc-consensus-grandpa = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sc-authority-discovery = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sc-consensus = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sc-consensus-slots = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sc-consensus-babe = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sc-consensus-grandpa = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sc-authority-discovery = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sc-telemetry = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sc-chain-spec = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sc-cli = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
sc-telemetry = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sc-chain-spec = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
sc-cli = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
serai-env = { path = "../../common/env" }

View File

@@ -23,7 +23,7 @@ borsh = { version = "1", default-features = false, features = ["derive", "de_str
bitvec = { version = "1", default-features = false, features = ["alloc"] }
scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"], optional = true }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
ciphersuite = { path = "../../crypto/ciphersuite", default-features = false, features = ["alloc"] }
schnorr-signatures = { path = "../../crypto/schnorr", default-features = false }

View File

@@ -20,34 +20,34 @@ workspace = true
[dependencies]
scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] }
sp-version = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-runtime = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-version = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-runtime = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-api = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-transaction-pool = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-inherents = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-block-builder = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-consensus-babe = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-consensus-grandpa = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-authority-discovery = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-api = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-transaction-pool = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-inherents = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-block-builder = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-consensus-babe = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-consensus-grandpa = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-authority-discovery = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
serai-abi = { path = "../abi", default-features = false, features = ["substrate"] }
[target.'cfg(target_family = "wasm")'.dependencies]
borsh = { version = "1", default-features = false }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-session = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-timestamp = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-session = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-timestamp = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
frame-system = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-executive = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-system = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
frame-executive = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
pallet-timestamp = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
pallet-session = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
pallet-babe = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
pallet-grandpa = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
pallet-timestamp = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
pallet-session = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
pallet-babe = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
pallet-grandpa = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
serai-core-pallet = { path = "../core", default-features = false }
serai-coins-pallet = { path = "../coins", default-features = false }
@@ -56,7 +56,7 @@ serai-signals-pallet = { path = "../signals", default-features = false }
serai-dex-pallet = { path = "../dex", default-features = false }
[build-dependencies]
substrate-wasm-builder = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc" }
substrate-wasm-builder = { git = "https://github.com/serai-dex/patch-polkadot-sdk" }
[features]
std = [

View File

@@ -114,7 +114,6 @@ impl frame_system::Config for Runtime {
type BlockLength = BlockLength;
type RuntimeOrigin = RuntimeOrigin;
type RuntimeCall = RuntimeCall;
type RuntimeTask = ();
type Nonce = u32;
type Hash = <Self::Block as sp_runtime::traits::Block>::Hash;
type Hashing = sp_runtime::traits::BlakeTwo256;

View File

@@ -21,10 +21,10 @@ workspace = true
[dependencies]
scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
frame-system = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-system = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
serai-abi = { path = "../abi", default-features = false, features = ["substrate"] }

View File

@@ -20,17 +20,17 @@ bitvec = { version = "1", default-features = false, features = ["alloc", "serde"
scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive", "bit-vec"] }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-application-crypto = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-io = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-api = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
sp-core = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-application-crypto = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-io = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
sp-api = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
frame-system = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
frame-system = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
frame-support = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
pallet-session = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
pallet-babe = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
pallet-grandpa = { git = "https://github.com/serai-dex/patch-polkadot-sdk", rev = "8c36534bb0bd5a02979f94bb913d11d55fe7eadc", default-features = false }
pallet-session = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
pallet-babe = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
pallet-grandpa = { git = "https://github.com/serai-dex/patch-polkadot-sdk", default-features = false }
serai-abi = { path = "../abi", default-features = false, features = ["substrate"] }

View File

@@ -17,10 +17,5 @@ rustdoc-args = ["--cfg", "docsrs"]
workspace = true
[dependencies]
rand_core = "0.6"
hex = "0.4"
dockertest = "0.5"
serai-docker-tests = { path = "../docker" }
tokio = { version = "1", features = ["time"] }
rand_core = { version = "0.6", default-features = false, features = ["std"] }
hex = { version = "0.4", default-features = false, features = ["std"] }

View File

@@ -1,101 +1,81 @@
#[test]
pub fn reproducibly_builds() {
use std::{collections::HashSet, process::Command};
use std::{collections::HashSet, path::PathBuf, process::Command};
use rand_core::{RngCore, OsRng};
use dockertest::{PullPolicy, Image, TestBodySpecification, DockerTest};
const RUNS: usize = 3;
const TIMEOUT: u16 = 3 * 60 * 60; // 3 hours
serai_docker_tests::build("runtime".to_string());
let mut ids = vec![[0; 8]; RUNS];
for id in &mut ids {
OsRng.fill_bytes(id);
let mut images = vec![];
for _ in 0 .. RUNS {
let mut image = [0; 32];
OsRng.fill_bytes(&mut image);
images.push(format!("runtime-{}", hex::encode(image)));
}
let mut test = DockerTest::new().with_network(dockertest::Network::Isolated);
for id in &ids {
test.provide_container(
TestBodySpecification::with_image(
Image::with_repository("serai-dev-runtime").pull_policy(PullPolicy::Never),
)
.set_handle(format!("runtime-build-{}", hex::encode(id)))
.replace_cmd(vec![
"sh".to_string(),
"-c".to_string(),
// Sleep for a minute after building to prevent the container from closing before we
// retrieve the hash
"cd /serai/substrate/runtime && cargo clean && cargo build --release &&
printf \"Runtime hash: \" > hash &&
sha256sum /serai/target/release/wbuild/serai-runtime/serai_runtime.wasm >> hash &&
cat hash &&
sleep 60"
.to_string(),
]),
let path = Command::new("cargo")
.arg("locate-project")
.arg("--workspace")
.arg("--message-format")
.arg("plain")
.output()
.unwrap();
assert!(path.status.success());
let mut path = PathBuf::from(String::from_utf8(path.stdout).unwrap().trim());
assert_eq!(path.file_name().unwrap(), "Cargo.toml");
assert!(path.pop());
let mut commands = vec![];
for image in &images {
commands.push(
Command::new("docker")
.current_dir(&path)
.arg("build")
.arg("--progress")
.arg("plain")
.arg("--no-cache")
.arg("--file")
.arg("./orchestration/runtime/Dockerfile")
.arg("--tag")
.arg(image)
.arg(".")
.spawn()
.unwrap(),
);
}
test.run(|_| async {
let ids = ids;
let mut containers = vec![];
for container in String::from_utf8(
Command::new("docker").arg("ps").arg("--format").arg("{{.Names}}").output().unwrap().stdout,
)
.expect("output wasn't utf-8")
.lines()
{
for id in &ids {
if container.contains(&hex::encode(id)) {
containers.push(container.trim().to_string());
}
}
let mut outputs = vec![];
for (image, mut command) in images.into_iter().zip(commands) {
assert!(command.wait().unwrap().success());
outputs.push(
Command::new("docker")
.arg("run")
.arg("--quiet")
.arg("--rm")
.arg(&image)
.arg("sha256sum")
.arg("/serai/target/release/wbuild/serai-runtime/serai_runtime.wasm")
.output(),
);
// Attempt to clean up the image
let _ = Command::new("docker").arg("rmi").arg(&image).output();
}
let mut expected = None;
for output in outputs {
let output = output.unwrap();
assert!(output.status.success());
if expected.is_none() {
expected = Some(output.stdout.clone());
}
assert_eq!(containers.len(), RUNS, "couldn't find all containers");
assert_eq!(expected, Some(output.stdout));
}
let mut res = vec![None; RUNS];
'attempt: for _ in 0 .. (TIMEOUT / 10) {
tokio::time::sleep(core::time::Duration::from_secs(10)).await;
'runner: for (i, container) in containers.iter().enumerate() {
if res[i].is_some() {
continue;
}
let logs = Command::new("docker").arg("logs").arg(container).output().unwrap();
let Some(last_log) =
std::str::from_utf8(&logs.stdout).expect("output wasn't utf-8").lines().last()
else {
continue 'runner;
};
let split = last_log.split("Runtime hash: ").collect::<Vec<_>>();
if split.len() == 2 {
res[i] = Some(split[1].to_string());
continue 'runner;
}
}
for item in &res {
if item.is_none() {
continue 'attempt;
}
}
break;
}
// If we didn't get results from all runners, panic
for item in &res {
if item.is_none() {
panic!("couldn't get runtime hashes within allowed time");
}
}
let mut identical = HashSet::new();
for res in res.clone() {
identical.insert(res.unwrap());
}
assert_eq!(identical.len(), 1, "got different runtime hashes {res:?}");
});
let result = String::from_utf8(expected.unwrap()).unwrap();
let hash = result.split_whitespace().next().unwrap();
// Check this appears to be a 32-byte hash (encoded as hex)
assert_eq!(hash.len(), 64);
hex::decode(hash).unwrap();
println!("Hash: {hash}");
}