Integrate o-network changes for Genesis support / big ledger peer snapshots
Description
This change introduces support for big ledger peers in the node. A new optional entry in network topology JSON parser is added that is intended to point to a path containing a serialized snapshot of big ledger peers taken from some slot a priori. When present, this file is decoded at node startup, or when a SIGHUP is triggered, and made available to the diffusion layer via reading from a TVar.
Checklist
- [ ] Commit sequence broadly makes sense and commits have useful messages
- [ ] New tests are added if needed and existing tests are updated. These may include:
- golden tests
- property tests
- roundtrip tests
- integration tests See Runnings tests for more details
- [ ] Any changes are noted in the
CHANGELOG.mdfor affected package - [ ] The version bounds in
.cabalfiles are updated - [ ] CI passes. See note on CI. The following CI checks are required:
- [ ] Code is linted with
hlint. See.github/workflows/check-hlint.ymlto get thehlintversion - [ ] Code is formatted with
stylish-haskell. See.github/workflows/stylish-haskell.ymlto get thestylish-haskellversion - [ ] Code builds on Linux, MacOS and Windows for
ghc-8.10.7andghc-9.2.7
- [ ] Code is linted with
- [ ] Self-reviewed the diff
Note on CI
If your PR is from a fork, the necessary CI jobs won't trigger automatically for security reasons. You will need to get someone with write privileges. Please contact IOG node developers to do this for you.
Maybe I don't have to bump the protocol version at all in this patch based on review comment in related PR on consensus side
This PR is stale because it has been open 45 days with no activity.