Optimized Doxygen documentation generation (disabled call/caller graphs for faster builds)
Fixed
Fixed hardcoded nfx-hashing version in install script (now uses ${NFX_CONTAINERS_NFX_HASHING_VERSION})
[0.5.1] - 2026-02-14
Changed
Removed propagation of warnings-as-errors to consuming projects. Strict flags (-Werror//WX) are now applied only to local test, sample and benchmark targets to avoid breaking downstream consumers.
Bump nfx-hashing from 0.3.0 to 0.3.1
Fixed
Ensure CI remains strict while avoiding forcing -Werror on library consumers.
[0.5.0] - 2026-02-14
Changed
Bump nfx-hashing from 0.2.0 to 0.3.0
Fixed
Compiler Warnings: Fixed all MSVC, GCC, and Clang warnings with strict warning flags enabled
Type Safety: Added explicit casts from size_t to hash_type in PerfectHashMap, FastHashSet
Memory Alignment: Fixed StackVector union alignment
Strict Aliasing: Added std::launder() in OrderedHashMap iterators for proper type-punned pointer access
OrderedHashMap, OrderedHashSet: Removed unused distance variable in bucket search operations
[0.4.1] - 2026-02-08
Added
StackHashMap and StackHashSet: Added forEach() method for iteration without exposing iterators
[0.4.0] - 2026-02-08
Added
StackHashMap: Small buffer optimization hash map with hybrid stack/heap storage
StackHashSet: Small buffer optimization hash set with hybrid stack/heap storage
API Consistency: Added at(key), find(key), and insertOrAssign(key, value) methods across all containers
STL C++17 Compatibility: Added extract() and merge() methods to all modifiable containers
FastHashMap and FastHashSet:
extract(key) returns std::optional<T> with heterogeneous lookup support
merge(other) transfers unique elements from source to destination
OrderedHashMap and OrderedHashSet:
extract(key) returns std::optional<T> with heterogeneous lookup support
merge(other) preserves insertion order when transferring elements
TransparentHashMap and TransparentHashSet:
Inherit extract() and merge() from std::unordered_map/std::unordered_set
Note: extract() does not support heterogeneous lookup (STL limitation)
Changed
BREAKING: Renamed SmallVector to StackVector
PerfectHashMap: Removed redundant m_occupied bitmap - use std::optional::has_value() instead
Bump nfx-hashing from 0.1.2 to 0.2.0
[0.3.2] - 2026-02-03
Changed
Removed commented-out code from FastHashMap implementation
Fixed
Fixed PerfectHashMap documentation for size() and count() methods
[0.3.1] - 2026-01-31
Changed
Bump nfx-hashing from 0.1.1 to 0.1.2
Bump Google Benchmark from 1.9.4 to 1.9.5
[0.3.0] - 2026-01-27
Added
OrderedHashMap: Insertion-order preserving hash map with Robin Hood hashing and doubly-linked list
Hybrid hash table + intrusive doubly-linked list structure
Guaranteed insertion-order iteration
Bidirectional iterator support with operator++ and operator--
O(1) average-case lookups, insertions, and deletions
Heterogeneous lookup with zero-copy string operations
Order-independent equality comparison
OrderedHashSet: Insertion-order preserving hash set with Robin Hood hashing and doubly-linked list
Hybrid hash table + intrusive doubly-linked list structure
Guaranteed insertion-order iteration
Bidirectional iterator support with operator++ and operator--
O(1) average-case lookups, insertions, and deletions
Heterogeneous lookup with zero-copy string operations
Order-independent equality comparison
[0.2.0] - 2026-01-12
Added
SmallVector: Small vector optimization with stack storage and heap fallback
Changed
Relaxed type constraints across all containers - no longer require default-constructible types
Fixed
Implemented proper move semantics for FastHashMap and FastHashSet
[0.1.1] - 2025-11-27
Changed
Consolidated packaging tool detection in CMake configuration
Fixed
Removed incorrect runtime dependencies from DEB/RPM packages (header-only library)
[0.1.0] - 2025-11-15 - Initial Release
FastHashMap: Mutable hash map with Robin Hood hashing algorithm
Bounded probe distances for predictable performance
Heterogeneous lookup with zero-copy string operations
Configurable 32-bit or 64-bit hash types
Perfect forwarding for efficient insertions
FastHashSet: Hash set with Robin Hood hashing
Consistent API with FastHashMap
Transparent heterogeneous comparison support
Optimal cache-friendly memory layout
PerfectHashMap: Displacement-based perfect hash map for immutable datasets
O(1) guaranteed lookups with minimal memory overhead
Heterogeneous lookup support
Zero-collision perfect hashing for static data
TransparentHashMap: Thin wrapper around std::unordered_map with enhanced hashing
High-performance CRC32-C string hashing
Heterogeneous lookup support via is_transparent
Full STL compatibility
TransparentHashSet: Thin wrapper around std::unordered_set with enhanced hashing