Commit Graph

1900 Commits

Author SHA1 Message Date
Luke Parker
8970031f42 Update to latest substrate-wasm-builder 2025-09-30 06:44:12 -04:00
Luke Parker
10ca5b9757 Manually insert the authority discovery key into the keystore
I did try pulling in `pallet-authority-discovery` for this, updating
`SessionKeys`, but that was insufficient for whatever reason.
2025-09-30 06:40:19 -04:00
Luke Parker
1d0a26e32e Adopt patch-polkadot-sdk with fixed peering 2025-09-30 03:53:14 -04:00
Luke Parker
e1671dd71b Mention every account on-chain before they publish a transaction
`CheckNonce` required accounts have a provider in order to even have their
nonce considered. This shims that by claiming every account has a provider at
the start of a block, if it signs a transaction.

The actual execution could presumably diverge between block building (which
sets the provider before each transaction) and execution (which sets the
providers at the start of the block). It doesn't diverge in our current
configuration and it won't be propagated to `next` (which doesn't use
`CheckNonce`).

Also uses explicit indexes for the `serai_abi::{Call, Event}` `enum`s.
2025-09-23 18:04:46 -04:00
Luke Parker
0b377f3c4e Always generate a new key for the P2P network 2025-09-22 06:41:30 -04:00
Luke Parker
3655ae68df Restore chain_getBlockBin to the RPC 2025-09-22 06:41:07 -04:00
Luke Parker
3f2c1bf303 Move from Debian bookworm to trixie 2025-09-22 03:41:25 -04:00
Luke Parker
c12c471602 Restore clang as a dependency due to the Debian Dockerfile as we require a C++ compiler 2025-09-22 02:57:50 -04:00
Luke Parker
77ceb86f9a Update to a version of substrate without wasmtimer
Turns out `wasmtimer` is WASM only. This should restore the node's functioning
on non-WASM environments.
2025-09-22 02:20:57 -04:00
Luke Parker
486409c9ef Set the CODE storage slot 2025-09-22 01:04:03 -04:00
Luke Parker
de460e368a Add libclang-dev as dependency to the Debian Dockerfile 2025-09-22 00:58:33 -04:00
Luke Parker
c904167920 Replace hard-coded path with the intended env variable to fix macOS 13 2025-09-22 00:41:16 -04:00
Luke Parker
d20a66891c Use sw_vers instead of uname on macOS
Yields the macOS version instead of the kernel's version.
2025-09-22 00:14:14 -04:00
Luke Parker
18ce7efc19 Correct how macOS 13 and 14 have different homebrew paths 2025-09-22 00:08:20 -04:00
Luke Parker
fabe22e99f Correct llvm/lib path on macOS 2025-09-21 23:54:58 -04:00
Luke Parker
feb6166190 Correct Windows build dependencies 2025-09-21 23:42:50 -04:00
Luke Parker
87920d8685 Use libp2p 0.56 in serai-node 2025-09-21 23:34:33 -04:00
Luke Parker
5087b32cc8 Attempt to use LD_LIBRARY_PATH in macOS GitHub CI 2025-09-21 23:32:33 -04:00
Luke Parker
9fa7a08c1a Add /usr/local/opt/llvm/lib to paths on macOS hosts 2025-09-21 23:17:11 -04:00
Luke Parker
9a08ffde09 CI fixes 2025-09-21 22:53:22 -04:00
Luke Parker
41bb2c7b2a Update develop to patch-polkadot-sdk
Allows us to finally remove the old `serai-dex/substrate` repository _and_
should have CI pass without issue on `develop` again.

The changes made here should be trivial and maintain all prior
behavior/functionality. The most notable are to `chain_spec.rs`, in order to
still use a SCALE-encoded `GenesisConfig` (avoiding `serde_json`).
2025-09-21 22:36:43 -04:00
Luke Parker
52d15b789c Update build-dependencies CI action 2025-09-21 15:41:09 -04:00
Luke Parker
0066b94d38 Update substrate-wasm-builder from serai/polkadot-sdk to serai/patch-polkadot-sdk
Steps towards allowing us to delete the `serai/polkadot-sdk` repository.
2025-09-01 21:07:11 -04:00
Luke Parker
7d54c02ec6 Update to latest nightly
Replaces #671 due to a lint being triggered.
2025-09-01 16:48:34 -04:00
Mohan
568324f631 fix(spec): svm version mismatch in docs; document foundryup (#665)
* fix(spec): Change svm version in docs to 0.8.26

* fix(spec): add instructions for using foundryup
2025-09-01 15:58:59 -04:00
Luke Parker
eaa9a0e5a6 Pin actions in the pages workflow 2025-09-01 15:55:17 -04:00
Luke Parker
251996c1b0 Use solc 0.8.26
`next` already does, and it's annoying to have to consistently switch between
the two branches.
2025-09-01 15:55:06 -04:00
Luke Parker
98b9cc82a7 Fix Some(_) which should be Ok(_) 2025-09-01 15:42:47 -04:00
Luke Parker
f8adfb56ad Remove unwrap within debug assertion 2025-08-26 23:15:58 -04:00
Luke Parker
7a790f3a20 ff/alloc when ciphersuite/alloc 2025-08-23 11:00:05 -04:00
Luke Parker
a7c77f8b5f repr(transparent) on dalek_ff_group::FieldElement 2025-08-23 05:17:43 -04:00
Luke Parker
da3095ed15 Remove FieldElement::from_square
The new `FieldElement::from_u256` is sufficient to load an unreduced value. The
caller can perform the square themselves, without us explicitly supporting this
special case.

Updates the monero-oxide version used to one which no longer uses
`FieldElement::from_square` (as their use is why it was added).
2025-08-22 18:42:43 -04:00
Luke Parker
758d422595 Have <ed448::Point as Zeroize>::zeroize yield a well-defined value 2025-08-20 08:14:00 -04:00
Luke Parker
9841061b49 Add missing feature in substrate/client 2025-08-20 06:38:25 -04:00
Luke Parker
4122a0135f Fix dirty Cargo.lock 2025-08-20 05:20:47 -04:00
Luke Parker
b63ef32864 Smash Ciphersuite definitions into their own crates
Uses dalek-ff-group for Ed25519 and Ristretto. Uses minimal-ed448 for Ed448.
Adds ciphersuite-kp256 for Secp256k1 and P-256.
2025-08-20 05:12:36 -04:00
Luke Parker
8be03a8fc2 Fix dirty lockfile 2025-08-20 01:15:56 -04:00
Luke Parker
677a2e5749 Fix zeroization timeline in multiexp, cargo machete 2025-08-20 00:35:56 -04:00
Luke Parker
38bda1d586 dalek_ff_group::FieldElement: FromUniformBytes<64> 2025-08-20 00:23:39 -04:00
Luke Parker
2bc2ca6906 Implement FromUniformBytes<64> for dalek_ff_group::Scalar 2025-08-20 00:06:07 -04:00
Luke Parker
900a6612d7 Use std-shims to reduce flexible-transcript MSRV to 1.66
flexible-transcript already had a shim to support <1.66. This was irrelevant
since flexible-transcript had a MSRV of 1.73. Due to how clunky it was, it has
been removed despite theoretically enabling an even lower MSRV.
2025-08-19 23:43:26 -04:00
Luke Parker
17c1d5cd6b Tweak multiexp to Zeroize points when invoked in constant time, not just scalars 2025-08-19 22:28:59 -04:00
Luke Parker
8a1b56a928 Make the transcript dependency optional for schnorr-signatures
It's only required when aggregating.
2025-08-19 21:50:58 -04:00
Luke Parker
75964cf6da Place Schnorr signature aggregation behind a feature flag 2025-08-19 21:45:59 -04:00
Luke Parker
d407e35cee Fix Ciphersuite feature flagging 2025-08-19 21:42:25 -04:00
Luke Parker
c8ef044acb Version bump std-shims 2025-08-19 21:01:14 -04:00
Luke Parker
ddbc32de4d Update ciphersuite/dkg MSRVs 2025-08-19 18:20:19 -04:00
Luke Parker
e5ccfac19e Replace bespoke LazyLock/OnceLock with spin re-exports
Presumably notably slower on platforms with std, yet only when compiled with old
versions of Rust for which the option is this or no support anyways.
2025-08-19 18:10:33 -04:00
Luke Parker
432daae1d1 Polyfill extension traits for div_ceil and io::Error::other 2025-08-19 18:04:29 -04:00
Luke Parker
da3a85efe5 Only drop OnceLock value if initialized 2025-08-19 17:50:04 -04:00