What's Changed
API / Output Format Changes
- Search JSON: kmer_coords and kmer_abundances as strings by @karasikov in #629
- Map coords to headers in align with CoordToHeader by @karasikov in #609
- Updated workflows: add count/coord modes, improved UX by @karasikov in #630
- Compact RLE encoding for k-mer presence bitmasks (signature mode) by @karasikov in #627
Query & Runtime Optimizations
- Various query optimizations and parallel queries in one RD traversal by @karasikov in #559
- Optimizations for annotations with dense matches by @karasikov in #606
- MADV_RANDOM for graphs loaded with mmap by @karasikov in #607
- Parallel BRWT query in one traversal by @karasikov in #605
- Async loaders for graph + annotation by @karasikov in #621
- Support serving in multi-graph regime without mmap (in RAM) by @karasikov in #615
- Deduplicate graphs before loading in the multi-graph server by @karasikov in #617
- Refactoring in query.hpp and other improvements by @karasikov in #625
Graph/Annotation Loading & Storage Improvements
- Support loading RowDisk annotations without mmap by @karasikov in #618
- Build succinct graphs in place by default; --in-ram for building in RAM by @karasikov in #620
- SSHash: RowDiffChar annotation format with sparse successor storage by @adamant-pwn in #604
- Added support for conversion row_diff_brwt -> row_diff_disk by @karasikov in #612
Build / CI / Tooling
- fixes for Clang 21 by @karasikov in #614
- run unit tests in parallel by @karasikov in #613
- Switch CI to Ubuntu 24.04 by @karasikov in #624
- Bump pytest from 3.4.1 to 9.0.3 in /metagraph/api/python by @dependabot[bot] in #610
Validation / Error Handling
- Specify the cause of error when can't load a file (e.g., permission issues) by @karasikov in #611
- Validate diff-assembly JSON has 'groups' array by @karasikov in #619
Documentation
- Added docs for the CoordToHeader functionality by @karasikov in #616
Full Changelog: v0.5.1...v0.5.2