fedimint
fedimint copied to clipboard
Refactoring ideas
- [ ] move cli handling structs and fn to
fedimint-cli/src/opts.rsor something. They seem scattered all over ATM. - [ ]
ModuleandModuleInitshould live infedimint-server(just likeClientModuleandClientModuleInitlive infedimint-client?) - [ ]
fedimint_core::net::peercould be flattened to justfedimint_core::peer(or justfedimint_core::net?). - [ ]
fedimint_core::queryshould probably live infedimint-client? Server doesn't do queries, right? - [ ]
fedimint-core/src/epoch.rscould be just merged with something bigger. - [ ]
fedimint_core::cancellableshould probably live under or be merged intofedimint_core::task - [ ]
fedimint_core::bitcoinrpcseems to only have env vars stuff, and could live underfedimint_core::envs. - [ ] move
txoutproofsout offedimint-core - [ ] Extract database stuff from
fedimint-coretofedimint-db, and encoding stuff tofedimint-encoding. As much as I dislike rocksdb, I grew fond of our DB abstractions, and would love to use them in other projects.
* [ ] `fedimint_core::query` should probably live in `fedimint-client`? Server doesn't do queries, right?
I wish that was true, but we do use the public API for fetching whole sessions when catching up after being offline.
I wish that was true, but we do use the public API for fetching whole sessions when catching up after being offline.
@elsirion We could extra to separate crate, import from fedimint-server and fedimint-client maybe? fedimint-core is kind of a pain, as anything touching it causes everything to rebuild, so minimizing/split it seems worthwhile.