Changelog
[libcds.git] / change.log
index 8025448e9c5d76abaa7a7939a310f0a873e3f15e..61f5326dfa088acd550a6d707fdd8c117c1fc02f 100644 (file)
@@ -1,3 +1,27 @@
+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
     - the library has been rewritten to support at least C++11. Compilers: GCC 4.8+, clang 3.3+, 
    10. Added compiler barrier to spin-lock release primitive for x86 and amd64
    11. Makefile script is changed to resolve the problem when an user calls 'make clean' directly.
        Thanks to Tamas Lengyel to point me to this bug.
-   12. The file dictionary.txt is exluded from distributive. This file is used for testing purposes only.
+   12. The file dictionary.txt is excluded from distributive. This file is used for testing purposes only.
        You may create dictionary.txt in this way:
         cd ./tests/data
         perl -X split.pl