IntersectMBO / IntersectMBO/cardano-ledger
Stop using `Coders` for onchain data decoding
- Dominant language
- Haskell
- Stars
- 295
- Forks
- 179
- Avg merge
- 4d 7h
- Merged PRs (30d)
- 29
Description
`Coders` interface gave us nice approach to decoding without worrying about length. However, it does not come without a runtime overhead. With our testing facilities using roundtrip testing and Cuddle we have all the confidence we need to no longer worry that we can get the number of elements encoded incorrectly.
So, the plan is for Dijkstra era to fully stop using Coders for all of the types that are used on chain.
However, in order to avoid any surprises we will do this using versioning mechanism available for us in decoders. In other words, starting with PV12 we will no longer use anything from the `Coders` interface, while continue using decoders that we have today for Conway era.
Contributor guide
Assessment
This issue has not been assessed yet.