Some things to keep in mind:
* Round-trip QuickCheck tests are missing.
* The basic approach to defining instances for types wrapped in `InDb` is described in the code:
> — Notice that when serializing and deserializing, a type like `InDb foo` will
> — distribute `InDb` among the non-primitive types that make up `foo`. This
> — choice doesn’t show up in the types.
* There are a lot of redundant type signatures. This is deliberate, so that changing the definition of a datatype in the future triggers a type-checker error if possible.
You can view, comment on, or merge this pull request online at:
— Commit Summary —
* [CBR-305] SafeCopy instances for InDb types
— File Changes —
M wallet-new/cardano-sl-wallet-new.cabal (2)
M wallet-new/src/Cardano/Wallet/Kernel/DB/AcidState.hs (4)
M wallet-new/src/Cardano/Wallet/Kernel/DB/BlockMeta.hs (12)
M wallet-new/src/Cardano/Wallet/Kernel/DB/InDb.hs (390)
— Patch Links —