go-spacemesh
go-spacemesh copied to clipboard
codec: migrate to scale
Use https://github.com/spacemeshos/go-scale in the codec module.
before working on this issue implement https://github.com/spacemeshos/go-scale/issues/2
Using scale for majority of the objects should be trivial:
- add go generate with scalegen
- for every collection define sensible limit using tag name defined above
- add a fuzz tests and a golden tests (you should be able to find utilities for both in the lib above)
If some objects uses collections with pointers in them - they should be replaced with collections without pointers.
There is also some mess with types from poet/post, but i don't recall details.
Modules to enable scale codec for:
- [x] transactions - https://github.com/spacemeshos/go-spacemesh/pull/3380
- [x] blocks - https://github.com/spacemeshos/go-spacemesh/pull/3377
- [x] ballots - https://github.com/spacemeshos/go-spacemesh/pull/3383
- [x] proposals - https://github.com/spacemeshos/go-spacemesh/pull/3383
- [ ] poet proofs
- [ ] sync