Luke Parker
6f74bade8b
Only recheck blocks with non-fatal inherent transaction errors
2022-11-11 02:17:10 -05:00
Luke Parker
7d46daa36e
Use futures pin instead of tokio
2022-11-08 22:56:46 -05:00
Luke Parker
f7b1ff9f3b
Update Substrate to the new TendermintHandle
2022-11-08 22:51:31 -05:00
Luke Parker
1c8192218a
Move from a yielding loop to select in tendermint-machine
2022-11-08 22:37:06 -05:00
Luke Parker
2cb1d35d89
Timeout futures
2022-11-08 21:14:57 -05:00
Luke Parker
56a21ca6a6
Use futures mpsc instead of tokio
2022-11-08 21:14:03 -05:00
Luke Parker
16a2c9a2dc
Correct protocol name handling
2022-11-08 02:14:49 -05:00
Luke Parker
5dab3352f2
Move from polling loops to a pure IO model for sc_tendermint's gossip
2022-11-08 02:14:39 -05:00
Luke Parker
ea646c8984
Add missing trait
2022-11-03 00:58:45 -04:00
Luke Parker
1ff51c1a37
Add a version to sp-runtime in tendermint-machine
2022-11-03 00:24:04 -04:00
Luke Parker
2315b3c79b
Localize the LibP2P protocol to the blockchain
...
Follows convention by doing so. Theoretically enables running multiple
blockchains over a single LibP2P connection.
2022-11-03 00:20:50 -04:00
Luke Parker
bd08cd3c9b
Add message expiry to the Tendermint gossip
2022-11-02 23:46:21 -04:00
Luke Parker
63df908d3b
Rename dev to devnet
...
--dev still works thanks to the |. Acheieves a personal preference of
mine with some historical meaning.
2022-11-02 23:32:52 -04:00
Luke Parker
131355b10f
Correct Dave, Eve, and Ferdie to not run as validators
2022-11-02 23:31:19 -04:00
Luke Parker
cf8bdf2126
Stop returning errors on already existing blocks entirely
2022-11-02 22:52:20 -04:00
Luke Parker
de0e6724bf
Remove error case which shouldn't be an error
2022-11-02 22:39:49 -04:00
Luke Parker
f4d622a34c
Restore cache
2022-11-02 22:39:39 -04:00
Luke Parker
2b503b6f42
Update sc_tendermint per previous commit
2022-11-02 21:37:06 -04:00
Luke Parker
f3e177109d
Reduce Arcs in TendermintMachine, split Signer from SignatureScheme
2022-11-02 21:04:26 -04:00
Luke Parker
083198ecf2
Make the dev profile a local testnet profile
...
Restores a dev profile which only has one validator, locally running.
2022-11-02 19:58:37 -04:00
Luke Parker
83caa8b413
Add a _ to the validator arg in slash
2022-11-02 05:03:00 -04:00
Luke Parker
40b6cb7106
Add an already in chain check to block import
...
While the inner should do this for us, we call verify_order on our end
*before* inner to ensure sequential import. Accordingly, we need to
provide our own check.
Removes errors of "non-sequential import" when trying to re-import an
existing block.
2022-11-02 03:35:46 -04:00
Luke Parker
16065ccd4e
Remove an attempt at caching I don't believe would ever hit
2022-11-02 03:29:04 -04:00
Luke Parker
ca043f55ad
Use a rounded genesis to obtain sufficient synchrony within the Docker env
2022-11-02 03:05:04 -04:00
Luke Parker
38cee041d6
Fix handling of the GossipEngine
2022-11-02 02:43:08 -04:00
Luke Parker
e3fc3f28fb
Configure node for a multi-node testnet
2022-11-01 23:10:36 -04:00
Luke Parker
86aaadaea0
Update node to latest sc_tendermint
2022-11-01 21:32:18 -04:00
Luke Parker
9a26ac6899
Remove unnecessary PhantomDatas
2022-11-01 20:58:59 -04:00
Luke Parker
5832007a45
Take in a Keystore and validator ID
2022-11-01 20:06:42 -04:00
Luke Parker
aa0a4cf106
Implement proper checking of inherents
2022-11-01 16:37:50 -04:00
Luke Parker
19154cf8e1
Move sc_tendermint to async sign
2022-11-01 16:28:08 -04:00
Luke Parker
2947ef08e3
Make sign asynchronous
...
Some relation to https://github.com/serai-dex/serai/issues/95 .
2022-11-01 15:10:50 -04:00
Luke Parker
45a5d3eb1d
Add another missing comment
2022-10-31 23:56:13 -04:00
Luke Parker
8f065533dc
Add documentation to public structs/functions in sc_tendermint
2022-10-30 12:27:16 -04:00
Luke Parker
c4976ff97d
Consolidate references to sr25519 in sc_tendermint
2022-10-30 11:24:52 -04:00
Luke Parker
503adfee2f
Replace best_* with finalized_*
...
We test their equivalency yet still better to use finalized_* in
general.
2022-10-30 11:13:47 -04:00
Luke Parker
c0056643c8
Consolidate file structure in sc_tendermint
2022-10-30 11:08:12 -04:00
Luke Parker
91ae2b7112
Move serai_runtime specific code from tendermint/client to node
...
Renames serai-consensus to sc_tendermint
2022-10-30 10:54:17 -04:00
Luke Parker
a0e0545c49
Deleted comment code related to PoW
2022-10-30 10:10:17 -04:00
Luke Parker
3d7c12adcd
Create a dedicated file for being a Tendermint authority
2022-10-30 10:08:35 -04:00
Luke Parker
066bc40a88
Merge Verifier into block_import.rs
...
These two files were largely the same, just hooking into sync structs
with almost identical imports. As this project shapes up, removing dead
weight is appreciated.
2022-10-30 06:30:44 -04:00
Luke Parker
f37adf4feb
Remove machine from TendermintImport
...
It's not used there at all.
2022-10-30 06:29:37 -04:00
Luke Parker
aee0bde45d
Connect broadcast
2022-10-30 05:37:23 -04:00
Luke Parker
6c54289fb4
Connect the Tendermint machine to a GossipEngine
2022-10-30 05:16:25 -04:00
Luke Parker
1af6117155
Move TendermintMachine from start_num, time to last_num, time
...
Provides an explicitly clear API clearer to program around.
Also adds additional time code to handle an edge case.
2022-10-30 04:27:15 -04:00
Luke Parker
edb2e00db7
Remove the Future triggering the machine for an async fn
...
Enables passing data in, such as the network.
2022-10-30 04:08:33 -04:00
Luke Parker
6838d5c922
Clean generics in Tendermint with a monolith with associated types
2022-10-30 03:26:31 -04:00
Luke Parker
8d3efd6259
Correct Substrate Tendermint start block
...
The Tendermint machine uses the passed in number as the block's being
worked on number. Substrate passed in the already finalized block's
number.
Also updates misc comments.
2022-10-30 01:22:11 -04:00
Luke Parker
9a54317743
Basic Gossip Validator
2022-10-30 01:21:10 -04:00
Luke Parker
a0c892dfc3
Use the validators list from the session pallet
2022-10-29 06:00:58 -04:00