X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=change.log;h=44c454456189c18d15f3e94962ab197ab18b41c8;hb=dc42eb61d5257df0d28e1a5dd1d3c389bd0fdb72;hp=3aebf3a1e93f6e7f8d708c2e15e13a8cdbd03cd3;hpb=d47ef6875b03918f1f56f8b4cf00f082c912c40a;p=libcds.git diff --git a/change.log b/change.log index 3aebf3a1..44c45445 100644 --- a/change.log +++ b/change.log @@ -1,5 +1,40 @@ -2.1.0 - TODO +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 + - 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 + +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. + - Added: BronsonAVLTreeMap - Bronson's et al AVL tree implementation + - Added: CMake build script, thanks to Eugeny Kalishenko + - Changed: SplitList performance improving, thanks to Mike Krinkin + - Changed: semantic of member functions extract(), get() and its + variants for MichaelList RCU-based specialization: extract() does not + require RCU locking, get() now returns special wrapper object of type raw_ptr, + see doc. + Thus, semantics of extract()/get() of all RCU-based set and maps based on + MichaelList (MichaelSet/Map, SplitListSet/Map) has been changed too. + - Changed: SplitListSet/Map functions get() and get_with() return special wrapper + object of type raw_ptr, see doc. + - Removed: SplitListSet/Map force_dispose() function. + - cds::lock namespace is renamed to cds::sync. All classes defined in cds::lock namespace + are moved to cds::sync with new names (for example, cds::lock::SpinLock is renamed to + cds::sync::spin_lock). cds::lock namespace and its contents is deprecated, it is kept + for backward compatibility. + - The library has been checked by ThreadSanitizer, a lot of bugs has been fixed + - Added support for clang 3.7 with libc++ 2.0.0 30.12.2014 General release