-2.1.0
+2.2.0
+ General release
+ - Changed: CMake is used for build libcds. Ancient build.sh is removed
+ - Changed: unit and stress tests are migrated to googletest framework
+ - Added: wait strategies for flat combining technique. Based on
+ research of Marsel Galimullin and Nikolai Rapotkin.
+ - Fixed: serious bug in MichaelSet::emplace() function
+ New node was created twice from the arguments by move semantics.
+ However, move semantics may change internal state of the argument
+ that can lead to an incorrect element in the set and even
+ to an incorrect key that breaks the set logic.
+ - Fixed: bug in FeldmanHashSet::erase_at( iterator ): due an error
+ in precondition checking the function can incorrectly return false.
+ - Fixed: possible double-free case in flat combining algorithm.
+ Thanks to Amila Jayasekara who points me to this problem
+ - Changed: cds::opt::buffer option is divided to initialized
+ (cds::opt::v::initialized_dynamic_buffer, cds::opt::v::initialized_static_buffer)
+ and uninitialized (cds::opt::v::uninitialized_dynamic_buffer, cds::opt::v::uninitialized_static_buffer)
+ ones. The old cds::opt::v::dynamic_buffer and cds::opt::v::static_buffer classes
+ are removed.
+ - Fixed: use-after-free bug in VyukovMPMCCycleQueue internal buffer.
+ To prevent this bug the queue uses an uninitialized buffer now.
+ - Fixed: rare priority inversion bug in MSPriorityQueue
+ - Added: for minimizing runtime of stress test the detail level for some test is added.
+ Command line argument --detail-level=N specifies what test should be ran: each
+ test with level not great than N will be ran. Instead of command line arg
+ the enviromnent variable CDSTEST_DETAIL_LEVEL=N can be used.
+ By default, the detail level is 0 that means only small set of the some test will be ran.
+
+2.1.0 06.01.2016
+ General release
- Added: FeldmanHashSet/Map - an interesting hash map algorithm
based on multi-level array, requires perfect hashing or fixed-sized keys.
Supports thread-safe bidirectional iterators.