Skip to content

v2.1#11

Merged
Thermadiag merged 41 commits into
mainfrom
radix
Jun 18, 2026
Merged

v2.1#11
Thermadiag merged 41 commits into
mainfrom
radix

Conversation

@Thermadiag

Copy link
Copy Markdown
Owner

The version 2.1 introduced additional breaking changes:

  • The modules charconv and format are now deprecated. They are still available, but moved to the legacy folder.
    Indeed, while I really like these, they do not belong to a library about containers. They will eventually be moved to another library, and removed from seq.
  • The tagged_pointer.hpp file have been moved to the internal folder (private API).

Additional changes:

  • The hashing framework has a better handling of transparent keys.
  • The hashing framework now supports std::chrono::time_point and std::chrono::duration.
  • The seq::net_sort algorithm has been slightly optimized/refactored and moved to net_sort.hpp header.
  • The radix_set/map lower_bound() method has been corrected (compilation error).
  • radix_set/map now supports std::chrono::time_point and std::chrono::duration as key.
  • radix_set/map no longer have typedef prefix_iterator and prefix_const_iterator. Instead, member prefix_range() now returns a std::pair of regular iterators.
  • All radix-based containers (seq::radix_set/map, seq::radix_hash_set/map) have been internally simplified.
  • The seq::hold_any class has been refactored and simplified. A seq::hold_any containing a char* or const char* is now considered holding a string. Comparison of seq::hold_any containing a char* or const char* results in string comparison.
  • New container: seq::concurrent_queue.

The markdown documentation has been updated accordingly, and new benchmark results were added. Full list of benchmarks now:

  • Benchmark of concurrent hash tables at the end of the page. Its goal is to compare seq::concurrent_set/map to other implementations.
  • Benchmark on sorted containers. Its goal is to compare seq::flat_set/map and seq::radix_set/map to other implementations.
  • Very tiny benchmark on concurrent queues to compare seq::concurrent_queue with other implementations.
  • Memory and latency benchmark on hash tables to compare seq::radix_hash_set/map with other implementations.

Victor Moncada and others added 30 commits May 22, 2026 17:12
-The modules *charconv* and *format* are now deprecated. They are still available, but moved to the *legacy* folder.
Indeed, while I really like these, they do not belong to a library about containers. They will eventually be moved to another library, and removed from *seq*.
-The *tagged_pointer.hpp* file have been moved to the *internal* folder (private API).

Additional changes:

-The hashing framework has a better handling of transparent keys.
-The hashing framework now supports std::chrono::time_point and std::chrono::duration.
-The  algorithm has been slightly optimized/refactored and moved to *net_sort.hpp* header.
-The  lower_bound() method has been corrected (compilation error).
- now supports std::chrono::time_point and std::chrono::duration as key.
- no longer have typedef  and . Instead, member prefix_range() noew returns a std::pair of regular iterators.
-All radix-based containers (, ) have been internally simplified.
-The  class has been refactored and simplified. A  containing a char* or const char* is now considered holding a string. Comparison a  ontaining a char* or const char* results in string comparison.
-New container: .
@Thermadiag Thermadiag merged commit 4b3715b into main Jun 18, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant