From d56d92ed814d44f727812434142959a5d0e6db79 Mon Sep 17 00:00:00 2001 From: Brian Budge Date: Thu, 25 Apr 2024 14:45:45 -0700 Subject: [PATCH] Version bump to 1.3 Summary: As title Reviewed By: elliotsegal-fb Differential Revision: D56534572 fbshipit-source-id: 17a5f92bb4893674de9ad0436d14b338cd0c7bee --- CHANGELOG.md | 21 +++++++++++++++++++++ CMakeLists.txt | 2 +- dispenso/platform.h | 2 +- 3 files changed, 23 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 685f046..d243804 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,24 @@ +1.3 (April 25, 2024) + +### Bug fixes, portability enhancements, and small functionality enhancements + +* Fixed several generic warnings (thanks michel-slm!) +* cpuRelax added for PowerPC and ARM (thanks barracuda156!) +* Added missing header (thanks ryandesign!) +* Try to detect and add libatomic when required (thanks for discussions barracuda156!) +* Enable small buffers from small buffer allocators to go down to 4 bytes (thanks for discussion David Caruso!). This is handy for 32-bit builds where pointers are typically 4 bytes +* Ensure that NOMINMAX is propagated for CMake Windows builds (thanks SeaOtocinclus!) +* Fix some cases using std::make_shared for types requiring large alignment, which is a bug prior to C++17 (thanks for help finding these SeaOtocinclus!) +* Set up CI on GitHub Actions, including builds for Mac and Windows in addition to Linux (thanks SeaOtocinclus!) +* Add an envinronment variable `DISPENSO_MAX_THREADS_PER_POOL` to limit max number of threads available to any thread pool. In the spirit of `OMP_NUM_THREADS`. (thanks Yong-Chull Jang!) +* Slight change of behavior w.r.t. use of `maxThreads` option in `ForEachOptions` and `ParForOptions` to limit concurrency the same way in both blocking and non-blocking `for_each` and `parallel_for` (thanks Arnie Yuan!) +* Various fixes to enable CMake builds on various 32-bit platforms (thanks for discussions barracuda156!) +* Updates to README + +Known Issues: +* Large subset of dispenso tests are known to fail on 32-bit PPC Mac. If you have access to such a machine and are willing to help debug, it would be appreciated! +* NewThreadInvoker can have a program shutdown race on Windows platforms if the threads launched by it are not finished running by end of main() + 1.2 (December 27, 2023) ### Bug fixes and functionality enhancements diff --git a/CMakeLists.txt b/CMakeLists.txt index da566b8..7af1b8a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -7,7 +7,7 @@ cmake_minimum_required(VERSION 3.12) project( Dispenso - VERSION 1.2.0 + VERSION 1.3.0 DESCRIPTION "Dispenso is a library for working with sets of parallel tasks" LANGUAGES CXX) diff --git a/dispenso/platform.h b/dispenso/platform.h index eceaa4c..f8e0d1d 100644 --- a/dispenso/platform.h +++ b/dispenso/platform.h @@ -21,7 +21,7 @@ namespace dispenso { #define DISPENSO_MAJOR_VERSION 1 -#define DISPENSO_MINOR_VERSION 2 +#define DISPENSO_MINOR_VERSION 3 #if defined(DISPENSO_SHARED_LIB) #if defined _WIN32