Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #24
📍 Provide a new database accessor to retrieve checkpoints' ancestors.
This is built as a simple query on the checkpoints table. The commit
also add two property test focused on the checkpoints table. It also
test the insertion and listing of checkpoints (and found a bug). The
interface is a bit flexible and allows for returning many a list of
ancestors, even though the main motivating use-case is only about
single ancestors. It makes for a nicer interface (lists for the win
o/).
📍 Re-organize App.Http, split pure code out and tidy up.
The module was starting to get big with many level of abstractions
intertwined. For the sake of keeping the separation good (and
possibly, indidually improve test coverage of the sub-parts), I've
move all the pure helpers into separate modules under the 'Data'
section. Remains in 'App.Http' only the actual route handlers. This is
a bit cleaner and allow to extend even more the http endpoints while
keeping things clean and tidy.
📍 Add new endpoint to retrive checkpoints by slot number.
The API is purposely flexible to also make it easy to retrieve
ancestors from a given point. It suffices to remove 1 from any given
slot number to get the nearest slot that is smaller or equal to the
provided slot number. Because this behavior can also be somewhat odd,
it is possible to make the request completely strict using a query
flag '?strict', in which case, the server will only retrun results if
strictly matching the request.