X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=CHANGELOG.md;h=d30639cea44d0638f496605398e01d048bbbfaf9;hb=5bef72d3dbb76435357c6cf94079243f87ddd129;hp=62f51c45bbe595707b4ba1862302787bdfe4e442;hpb=c72f69871322a5f5e0033932368e42cfcad92657;p=poolifier.git diff --git a/CHANGELOG.md b/CHANGELOG.md index 62f51c45..d30639ce 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,9 +7,137 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [2.6.21] - 2023-08-03 + +### Changed + +- Improve code documentation. +- Code refactoring and cleanup for better maintainability and readability. + +## [2.6.20] - 2023-07-21 + +### Fixed + +- Fix queued tasks redistribution on error task execution starvation. +- Ensure task queueing per worker condition is untangled from the pool busyness semantic. + +### Changed + +- Drastically reduce lookups by worker in the worker nodes. + +## [2.6.19] - 2023-07-20 + +### Added + +- Dedicated internal communication channel for worker_threads pools. + +## [2.6.18] - 2023-07-19 + +### Changed + +- Code refactoring and cleanup for better maintainability and readability. Bundle size is a bit smaller. + +## [2.6.17] - 2023-07-16 + +### Added + +- Add `listTaskFunctions()` method to worker class. + +## [2.6.16] - 2023-07-12 + +### Fixed + +- Fix pool startup detection. +- Fix worker task functions handling. + +## [2.6.15] - 2023-07-11 + +### Added + +- Take into account worker node readiness in worker choice strategies. + +## [2.6.14] - 2023-07-10 + +### Fixed + +- Fix task function statistics tracking. + +## [2.6.13] - 2023-07-10 + +### Added + +- Add per task function statistics tracking. +- Add public methods to manipulate the worker task functions at runtime. + +## [2.6.12] - 2023-07-09 + +### Fixed + +- Workaround import issue with `node:os` module in node 16.x.x. + +## [2.6.11] - 2023-07-09 + +### Fixed + +- Fix pool readiness semantic. + +## [2.6.10] - 2023-07-08 + +### Fixed + +- Ensure workers are not recreated on error at pool startup. + +### Added + +- Add `ready` and `strategy` fields to pool information. +- Add pool event `ready` to notify when the number of workers created in the pool has reached the maximum size expected and are ready. +- Add dynamic pool sizing checks. + +## [2.6.9] - 2023-07-07 + +### Fixed + +- Recreate the right worker type on uncaught exception. + +### Added + +- Add minimum and maximum to internal measurement statistics. +- Add `runTime` and `waitTime` to pool information. +- Check worker inactive time only on dynamic worker. + +## [2.6.8] - 2023-07-03 + +### Fixed + +- Brown paper bag release to fix version handling in pool information. + +## [2.6.7] - 2023-07-03 + +### Fixed + +- Ensure worker queued tasks at error are reassigned to other pool workers. + +### Added + +- Add pool `utilization` ratio to pool information. +- Add `version` to pool information. +- Add worker information to worker nodes. + +## [2.6.6] - 2023-07-01 + +### Added + +- Add safe helper `availableParallelism` to help sizing the pool. + +### Fixed + +- Ensure message handler is only registered in worker. + +## [2.6.5] - 2023-06-27 + ### Known issues -- Cluster pools tasks execution are not working: https://github.com/poolifier/poolifier/issues/782 +- Cluster pools tasks execution are not working by using ESM files extension: https://github.com/poolifier/poolifier/issues/782 ### Fixed @@ -20,13 +148,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Removed -- Remove unneeded worker-threads worker `MessageChannel` internal usage for IPC. +- Remove unneeded worker_threads worker `MessageChannel` internal usage for IPC. ## [2.6.4] - 2023-06-27 ### Known issues -- Cluster pools tasks execution are not working: https://github.com/poolifier/poolifier/issues/782 +- Cluster pools tasks execution are not working by using ESM files extension: https://github.com/poolifier/poolifier/issues/782 ### Fixed @@ -36,7 +164,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Removed -- Remove unneeded worker-threads worker `MessageChannel` internal usage for IPC. +- Remove unneeded worker_threads worker `MessageChannel` internal usage for IPC. ## [2.6.3] - 2023-06-19 @@ -93,7 +221,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - Compute statistics at the worker level only if needed. -- Add `worker-threads` options to thread pool options. +- Add `worker_threads` options to thread pool options. ### Fixed @@ -177,7 +305,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed -- Fix typescript type definition for worker function: ensure the input data is optional. +- Fix typescript type definition for task function: ensure the input data is optional. - Fix typescript type definition for pool execute(): ensure the input data is optional. ## [2.4.9] - 2023-04-15 @@ -194,7 +322,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed -- Fix worker function type definition and validation. +- Fix task function type definition and validation. - Fix worker choice strategy options handling. ## [2.4.8] - 2023-04-12