From ed0a45d8decfb48114d96007d8f6716591d26cd6 Mon Sep 17 00:00:00 2001 From: Carine Morel Date: Thu, 5 Dec 2024 10:53:57 +0100 Subject: [PATCH] Prepare for release 1.0 (#176) --- CHANGES.md | 16 ++++++++++++++++ src/saturn.mli | 18 ++++++++++-------- 2 files changed, 26 insertions(+), 8 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index 9a4cbb75..d7d740b7 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,3 +1,19 @@ +### 1.0.0 + +- Add lockfree Bag (@lyrm, @polytypic) +- Update Skiplist with better documentation and additional functions (@lyrm) +- Update Mpsc with better documentation and additional functions (@lyrm, @art-w) +- Update Michael-Scott queue with better documentation and additional functions (@lyrm, @art-w) +- Update Ws_deque with better documentation and additional functions (@lyrm, @art-w) +- Update Spsc with better documentation and additional functions (@lyrm, @art-w) +- Optimization of Ws_deque (@polytypic, @lyrm) +- Add Bounded Queue (@lyrm, @polytypic, @art-w) +- Add Bounded Stack (@lyrm, @art-w) +- Update Treiber Stack with better documentation and additional functions (@lyrm, @art-w) +- Remove Saturn_lockfree package (@lyrm) +- Remove relaxed_queue and M module in ws_deque (@lyrm) +- Add Htbl from Picos (@lyrm, @polytypic) + ### 0.5.0 - Optimized Michael-Scott queue with a safe and an unsafe versions (@lyrm, diff --git a/src/saturn.mli b/src/saturn.mli index 657630af..88b4a703 100644 --- a/src/saturn.mli +++ b/src/saturn.mli @@ -53,14 +53,16 @@ Copyright (c) 2017, Nicolas ASSOUAD (** {2 Unsafe Data Structures} - Some data structures have both a normal and an {b unsafe} version. The - {b unsafe} version uses `Obj.magic`, which may be unsafe with flambda2 - optimizations. - - The unsafe version is provided because certain optimizations require features - not currently available in OCaml, such as arrays of atomics or atomic fields - in records. It is recommended to use the normal version unless performance - requirements necessitate the unsafe version. *) + Some data structures have both a normal and an {b unsafe} version. The + {b unsafe} version uses `Obj.magic`, which can be unsafe, especially with + flambda2 optimizations. + + The unsafe version is provided to explore performance optimizations that + require features not currently available in OCaml, such as arrays of atomics + or atomic fields in records. These versions give an indication of the + potential performance improvements when such features become available. + It is recommended to use the normal version unless the performance + requirements justify the risks associated with the unsafe version. *) (** {1 Data structures} *)