Update eras/dijkstra/impl/src/Cardano/Ledger/Dijkstra/Rules/Utxo.hs
Co-authored-by: Alexey Kuleshevich <[email protected]>
Co-authored-by: Alexey Kuleshevich <[email protected]>
Co-authored-by: Alexey Kuleshevich <[email protected]>
Co-authored-by: Alexey Kuleshevich <[email protected]>
Co-authored-by: Alexey Kuleshevich <[email protected]>
Co-authored-by: Alexey Kuleshevich <[email protected]>
Co-authored-by: Alexey Kuleshevich <[email protected]>
Co-authored-by: teodanciu <[email protected]>
This commit tweaks the serialization instance of Dijkstra block bodies to take optional Peras certificates into account. This should be later enhanced with round-trip tests to ensure backwards compatibility.
This commit introduces Cardano.Ledger.Dijkstra.BlockBody.Internal as a spiritual copy of Cardano.Ledger.Alonzo.BlockBody.Internal that can be later extended with new fields needed by Peras. With the exception of `AlonzoEraTx`, which was kept verbatim, the differences between the original and copied module are: - `s/Alonzo/Dijkstra/g` - `s/alonzo/dijkstra/g` - `s/abb/dbb/g`
This commit adds an optional PerasCert to the Dijkstra block body. In addition, it defines and instantiates a DijkstraEraBlockBody type class to expose this certificate via the perasCertBlockBodyL lens. At this point, serialization does not yet account for certificates, and will be implemented and tested in a separate commit.
Also unorphan, by re-exporting orphan `EraBlockBody` instances from `Cardano.Ledger.Alonzo` and `Cardano.Ledger.Shelley`