### Fixed
+- Do not pre-choose in WRR worker choice strategy to avoid bias.
+
+## [2.6.39] - 2023-08-30
+
+### Fixed
+
+- Fix race condition in worker choice strategies at worker node info querying while not yet initialized .
+
+## [2.6.38] - 2023-08-30
+
+### Added
+
+- Bundle typescript types declaration into one file.
+
+### Changed
+
+- Improve interleaved weighted round robin worker choice strategy implementation.
+
+## [2.6.37] - 2023-08-28
+
+### Fixed
+
+- Ensure unused worker usage statistics are deleted at runtime.
+
+### Changed
+
+- Rename worker choice strategy options `choiceRetries` to `retries`.
+- Avoid unnecessary branching in worker choice strategies.
+
+## [2.6.36] - 2023-08-27
+
+### Fixed
+
+- Fix pool `execute()` arguments check.
+
+### Changed
+
+- Make continuous tasks stealing algorithm less aggressive.
+- Fine tune tasks stealing algorithm under back pressure.
+
+## [2.6.35] - 2023-08-25
+
+### Fixed
+
+- Don't account worker usage statistics for tasks that have failed.
+- Fix pool information runtime and wait time median computation.
+
+### Changed
+
+- Update simple moving average implementation to use a circular buffer.
+- Update simple moving median implementation to use a circular buffer.
+- Account for stolen tasks in worker usage statistics and pool information.
+
+### Added
+
+- Continuous tasks stealing algorithm.
+
+## [2.6.34] - 2023-08-24
+
+### Fixes
+
+- Avoid cascading tasks stealing under back pressure.
+
+### Changed
+
+- Add fastpath to queued tasks rescheduling.
+
+## [2.6.33] - 2023-08-24
+
+### Fixed
+
+- Fix queued tasks rescheduling.
+
+### Changed
+
+- Rename tasks queue options `queueMaxSize` to `size`.
+
+### Added
+
+- Task stealing scheduling algorithm if tasks queueing is enabled.
+
+## [2.6.32] - 2023-08-23
+
+### Fixed
+
+- Ensure no task can be executed when the pool is destroyed.
+
+### Added
+
+- Add `queueMaxSize` option to tasks queue options.
+- Add O(1) deque implementation implemented with doubly linked list and use it for tasks queueing.
+- Add tasks stealing algorithm when a worker node queue is back pressured if tasks queueing is enabled.
+
+## [2.6.31] - 2023-08-20
+
+### Fixed
+
+- Fix worker choice strategy retries mechanism in some edge cases.
+
+### Changed
+
+- Make orthogonal worker choice strategies tasks distribution and created dynamic worker usage.
+- Remove the experimental status of the `LEAST_ELU` worker choice strategy.
+
+## [2.6.30] - 2023-08-19
+
+### Fixed
+
+- Ensure pool event `backPressure` is emitted.
+- Ensure pool event `full` is emitted only once.
+- Ensure worker node cannot be instantiated without proper arguments.
+
+## [2.6.29] - 2023-08-18
+
+### Fixed
+
- Fix race condition between ready and task functions worker message handling at startup.
-- Fix duplicate task usage statistics computation per task function.
+- 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.
### Added
-- Add back pressure detection on the worker node queue. Event `backPressure` is emitted all worker node queues are full (size > poolMaxSize^2).
+- Add back pressure detection on the worker node queue. Event `backPressure` is emitted when all worker node queues are full (worker node queue size >= poolMaxSize^2).
- Use back pressure detection in worker choice strategies.
- Add worker choice strategies retries mechanism if no worker is eligible.
### Fixed
- Fix queued tasks redistribution on error task execution starvation.
-- Ensure task queueing per worker condition is untangled from the pool busyness semantic.
+- Ensure tasks queueing per worker condition is untangled from the pool busyness semantic.
### Changed
### Added
-- Add safe helper `availableParallelism` to help sizing the pool.
+- Add safe helper `availableParallelism()` to help sizing the pool.
### Fixed
### Fixed
- Artificial version bump to 2.6.5 to workaround publication issue.
-- Ensure cluster pool destroy() gracefully shutdowns worker's server.
+- Ensure cluster pool `destroy()` gracefully shutdowns worker's server.
- Ensure pool event is emitted before task error promise rejection.
- Fix queued tasks count computation.
### Fixed
-- Ensure cluster pool destroy() gracefully shutdowns worker's server.
+- Ensure cluster pool `destroy()` gracefully shutdowns worker's server.
- Ensure pool event is emitted before task error promise rejection.
- Fix queued tasks count computation.