X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=CHANGELOG.md;h=f1385d1070aaa8fad8ce47650dd8678207160dbb;hb=a4d25410764bca884efaea4d46ed9bf83b8a8dbb;hp=1e17cee693ac692ea9ee8a2f52675c359a179e0a;hpb=b51d859692c3830760721f06bdb2c909c1d5d9a7;p=poolifier.git diff --git a/CHANGELOG.md b/CHANGELOG.md index 1e17cee6..f1385d10 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,14 +9,183 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed +- Fix CommonJS support with TypeScript: [#1821](https://github.com/poolifier/poolifier/issues/1821). + +## [3.1.15-0] - 2024-01-02 + +### Fixed + +- Fix CommonJS support with TypeScript: [#1821](https://github.com/poolifier/poolifier/issues/1821). + +## [3.1.14] - 2024-01-01 + +### Fixed + +- Properly handle dynamic pool with zero minimum size. + +## [3.1.13] - 2023-12-30 + +### Changed + +- Reduce branching in several hot code paths. +- Use faster object cloning implementation. + +## [3.1.12] - 2023-12-27 + +### Fixed + +- Fix tasks redistribution triggers at pool destroying. + +### Changed + +- Switch TypeScript module resolution to Node16. + +## [3.1.12-0] - 2023-12-27 + +### Fixed + +- Fix tasks redistribution triggers at pool destroying. + +## [3.1.11] - 2023-12-24 + +### Fixed + +- Avoid worker node cross tasks stealing. +- Ensure only half the pool worker nodes can steal tasks. + +## [3.1.10] - 2023-12-23 + +### Changed + +- Avoid useless branching on pool type. + +## [3.1.9] - 2023-12-22 + +### Changed + +- Readd ThreadPoolOptions and ClusterPoolOptions TS type aliases to PoolOptions. + +## [3.1.8] - 2023-12-21 + +### Fixed + +- Fix default worker weight computation. +- Fix possible null exception at pool destroying. + +## [3.1.7] - 2023-12-20 + +### Fixed + +- Ensure worker choice strategies implementation wait for worker node readiness: [#1748](https://github.com/poolifier/poolifier/issues/1748). + +## [3.1.6] - 2023-12-18 + +### Fixed + +- Fix pool destroying with tasks queuing enabled. + +## [3.1.5] - 2023-12-18 + +### Added + +- Add queued tasks end timeout support to worker node termination. + +## [3.1.4] - 2023-12-18 + +### Fixed + +- Make more robust the fix for possible null exception at handling task execution response. + +## [3.1.3] - 2023-12-17 + +### Fixed + +- Fix possible null exception at handling task execution response. + +## [3.1.2] - 2023-12-17 + +### Fixed + +- Wait for queued tasks to end at worker node termination. + +## [3.1.1] - 2023-12-16 + +### Fixed + +- Fix pool options TS type definition. + +## [3.1.0] - 2023-12-16 + +### Changed + +- TypeScript breaking change: merge ThreadPoolOptions and ClusterPoolOptions types into PoolOptions type. + +## [3.0.14] - 2023-12-13 + +### Fixed + +- Fix possible null exception with worker_threads pools. + +## [3.0.13] - 2023-12-12 + +### Fixed + +- Ensure worker choice strategy wait for worker nodes readiness. + +### Changed + +- Remove infinite retries support in worker choice strategy to avoid configuration leading to possible infinite recursion or loop. + +## [3.0.12] - 2023-12-12 + +### Changed + +- Add infinite retries support in worker choice strategy. + +## [3.0.11] - 2023-12-11 + +### Fixed + +- Ensure pool asynchronous resource properly track tasks execution. + +## [3.0.10] - 2023-12-08 + +### Changed + +- Add a fastpath when tasks stealing or redistribution is impossible. + +## [3.0.9] - 2023-11-26 + +### Fixed + +- Remove all pool events listener at pool destroying. +- Remove all worker node events listener at worker node destroying. +- Fix worker node event emitter listeners handling memory leak at pool options runtime change. + +## [3.0.8] - 2023-11-25 + +### Fixed + +- Ensure continuous tasks stealing on idle start at worker node idling. + +## [3.0.7] - 2023-11-24 + +### Changed + +- Make continuous tasks stealing start at worker node idling. + +## [3.0.6] - 2023-11-24 + +### Fixed + - Ensure pool statuses are checked at initialization, `start()` or `destroy()`. -- Sort IWRR worker choice strategy round weights in descending order. +- Ensure pool `ready` event can be emitted after several `start()/destroy()` cycles. ## [3.0.5] - 2023-10-27 ### Fixed -- Ensure pool ready event can be emitted only once. +- Ensure pool `ready` event can be emitted only once. ## [3.0.4] - 2023-10-20 @@ -273,7 +442,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed -- Fix race condition between ready and task functions worker message handling at startup. +- Fix race condition between readiness and task functions worker message handling at startup. - Fix duplicate task function worker usage statistics computation per task function. - Update task function worker usage statistics if and only if there's at least two different task functions. - Fix race condition at task function worker usage executing task computation leading to negative value.