This is code to implement the index files for extracting block offsets out of the epoch files.
## Linked issue
## Type of change
— [ ] 🐞 Bug fix (non-breaking change which fixes an issue)
— [x] 🛠 New feature (non-breaking change which adds functionality)
— [ ] ⚠️ Breaking change (fix or feature that would cause existing functionality to change)
— [ ] 🏭 Refactoring that does not change existing functionality but does improve things like code readability, structure etc
— [ ] 🔨 New or improved tests for existing code
— [ ] ⛑ git-flow chore (backport, hotfix, etc)
## Developer checklist
— [ ] I have read the [style guide](https://github.com/input-output-hk/cardano-sl/blob/develop/docs/style-guide.md) document, and my code follows the code style of this project.
— [ ] If my code deals with exceptions, it follows the [guidelines](https://github.com/input-output-hk/cardano-sl/blob/develop/docs/exceptions.md).
— [ ] I have updated any documentation accordingly, if needed. Documentation changes can be reflected in opening a PR on [cardanodocs.com](https://github.com/input-output-hk/cardanodocs.com), amending the inline [Haddock](https://www.haskell.org/haddock/) comments, any relevant README file or one of the document listed in the [docs](https://github.com/input-output-hk/cardano-sl/tree/develop/docs) directory.
— [ ] CHANGELOG entry has been added and is linked to the correct PR on GitHub.
## Testing checklist
— [ ] I have added tests to cover my changes.
— [x] All new and existing tests passed.
## QA Steps
## Screenshots (if available)
You can view, comment on, or merge this pull request online at:
— Commit Summary —
* CDEC-493: Choose DenseBinary impl for epoch index file
* CDEC-493: Take epochSlots as parameter to writeEpochIndex
* CDEC-493: Add write and query property test for index
* CDEC-493: Add header to epoch index file
* CDEC-493: Use temp directory for test files
* CDEC-493: Add comments to explain epoch index files
— File Changes —
M db/cardano-sl-db.cabal (21)
A db/src/Pos/DB/Epoch/Index.hs (96)
A db/test/Test/Pos/DB/Epoch/Index.hs (68)
A db/test/test.hs (7)
— Patch Links —