Version 3.0.0
What's Changed
Major new features
- 64-bit Roaring Bitmaps in C by @SLieve in #534
- Add support for portable_deserialize_frozen to C++ API by @tudor in #544
Details
- Add roaring64 to amalgamation script by @SLieve in #545
- Fix C++ amalgamation errors by @SLieve in #547
- Use >= instead of > for art_node*_prev_child by @SLieve in #548
- Move in-container iteration into containers.h by @SLieve in #546
- roaring64: container_add_range is inclusive by @Dr-Emann in #551
- fix(roaring64): add_bulk of existing values no longer reads OOB by @Dr-Emann in #554
- roaring64: container_remove_range returns null rather than returning an empty container by @Dr-Emann in #550
- fix(roaring64): art_find_at would return the wrong leaf by @Dr-Emann in #553
- Use assert_int_equal instead of assert_true for integer comparisons by @SLieve in #557
- Fix double free in roaring64 andnot_inplace by @SLieve in #556
- Add a roaring64 iterator and functions for it by @SLieve in #558
- ART: Fix a few issues around lower bound / erase by @SLieve in #563
- node48 children can have holes by @Dr-Emann in #565
- roaring64: implement intersect_with_range by @SLieve in #567
- Rename roaring_{verb}iterator to roaring_iterator{verb} by @SLieve in #566
- roaring64: Add add_range, remove_range, contains_range, and flip by @SLieve in #568
- Replace
roaring{,64}_bitmap_of
withroaring{,64}_bitmap_from
macro by @Dr-Emann in #570 - Fix roaring64_bitmap_contains_range when the range starts before the first present container by @SLieve in #572
- Implement roaring64 portable (de)serialization. by @SLieve in #564
- Implement roaring64_bitmap_to_uint64_array by @SLieve in #569
- Testing amalgamation files by @lemire in #573
- Fix r64 contains range when max is divisible by 2^16 by @SLieve in #576
- r64 iterator: allow moving from beyond the start / end by @SLieve in #578
- Using a docker container for clang-cl by @lemire in #580
- Run clang-format on the repo, add a github action to check formatting by @SLieve in #577
- Correct commit hash of format commit for blame by @SLieve in #584
- r64 iterator: allow moving backward with move_equalorlarger by @SLieve in #585
- fix: roaring64_bitmap_contains_range now works with ranges starting at the max container by @Dr-Emann in #587
- Implement roaring64_bitmap_internal_validate by @Dr-Emann in #588
- Optimize C++ roaring64 contains and addMany by @mapleFU in #586
- Change map when copying Roaring64MapSetBitForwardIterator by @tudor in #590
- Simplify, and optimize roaring64_bitmap_remove_range_closed by @Dr-Emann in #592
- r64: Increase number of frames in ART iterator by @SLieve in #595
- r64: allow _move_equalorlarger to move from beyond the ends of the bitmap by @SLieve in #596
- fix C4576 compilation error when compiling CRoaring in C++ on Windows by @SalvatorePreviti in #600
- This corrects are typo, but the actual objective is to run our CI tests from scratch. by @lemire in #601
- disabling AVX routines under Visual Studio by @lemire in #603
New Contributors
Full Changelog: v2.1.2...v3.0.0