No external dependencies are required by default (the kdb+ C API is optional — see the README's "Building with a live tickerplant" section).
cmake -S . -B build
cmake --build build
ctest --test-dir build --output-on-failureRun ./build/feed_handler to see the demo pipeline end to end. It writes
to curves_generated.csv (gitignored) — never to the committed curves.csv
seed data, which q-book-snapshot reads as a fixture.
Every push and pull request runs the build-and-test workflow defined in
.github/workflows/ci.yml via
GitHub Actions — GitHub's built-in
CI/CD system. It runs on a fresh ubuntu-latest VM and executes the same
configure/build/test commands as above. Status shows up as a check on the
commit/PR and in the repo's "Actions" tab; the README badge reflects the
latest run on master. A PR should have a green check before merging.
- Fork or branch, make your change, and confirm
ctestpasses locally. - Open a pull request. You can do this from the GitHub web UI, or from
the terminal with the GitHub CLI (
gh):gh pr create --title "..." --body "..."
- Wait for the
build-and-testcheck to pass.
- Match the existing code: no comments beyond explaining non-obvious why, small focused functions, no unnecessary abstraction.
- Add a
normalizeSourceN(seeinclude/source_normalizer.hpp) for any new raw feed shape rather than branching inside an existing one.