+## [4.0.15] - 2024-06-20
+
+### Fixed
+
+- Fix priority queue dequeue() from the last prioritized bucket.
+
+## [4.0.14] - 2024-06-12
+
+### Changed
+
+- Add mapExecute() helper to execute a task function on an iterable data's input.
+
+## [4.0.13] - 2024-05-29
+
+### Changed
+
+- Optimize tasks queue implementation.
+- Enable prioritized tasks queueing only when necessary.
+
+## [4.0.12] - 2024-05-25
+
+### Changed
+
+- Optimize circular buffer implementation to store task execution measurements.
+
+## [4.0.11] - 2024-05-21
+
+### Changed
+
+- Switch to optimized circular buffer implementation to store task execution measurements.
+
+## [4.0.10] - 2024-05-20
+
+### Fixed
+
+- Ensure tasks stealing dynamic worker node is not destroyed on inactivity.
+
+## [4.0.9] - 2024-05-19
+
+### Changed
+
+- Add ELU `utilization` statistics to pool information.
+
+## [4.0.8] - 2024-05-15
+
+### Fixed
+
+- Fix default task function worker choice strategy and priority handling.
+
+## [4.0.7] - 2024-05-13
+
+### Changed
+
+- Add ELU statistics to pool information.
+
+## [4.0.6] - 2024-05-10
+
+### Fixed
+
+- Fix pools' `addTaskFunction()` type definition.
+
+## [4.0.5] - 2024-05-09
+
+### Fixed
+
+- Avoid queued tasks redistribution on the errored worker node.
+
+## [4.0.4] - 2024-05-08
+
+### Fixed
+
+- Disable `tasksStealingOnBackPressure` by default until performance issues under heavy load are sorted out.
+
+## [4.0.3] - 2024-05-08
+
+### Changed
+
+- Optimize task(s) stealing by dequeuing task(s) from the last prioritized bucket.
+
+## [4.0.2] - 2024-05-06
+
+### Fixed
+
+- Ensure poolifier worker task performance measurement requirements are synchronized with task function objects' worker choice strategies.
+
+## [4.0.1] - 2024-05-02
+
+### Fixed
+
+- Ensure dynamic worker node are initialized with sensible worker node usage default values to avoid worker choice strategies biased decisions.
+- Account for tasks wait time in task execution time computation in worker choice strategies to avoid biased decisions under load with several prioritized task functions and tasks queue enabled.
+
+## [4.0.0] - 2024-04-30
+
+### Changed
+
+- Support per task function(s) priority and worker choice strategy definition via a task function object: `{ taskFunction: (data?: Data) => Response | Promise<Response>, priority?: number, strategy?: WorkerChoiceStrategy }`.
+- Add priority queue based tasks queueing. One priority queue is divided into prioritized buckets to avoid queued tasks starvation under load.
+- BREAKING CHANGE: `listTaskFunctionNames()` to `listTaskFunctionsProperties()` in pool and worker API returning registered task functions properties.
+- BREAKING CHANGE: `strategy` field in pool information renamed to `defaultStrategy`.
+
+### Fixed
+
+- Ensure worker choice strategy options changes at runtime are propagated to poolifier workers.
+
+## [3.1.30] - 2024-04-22
+
+### Fixed
+
+- Fix `transferList` argument type definition.
+
+## [3.1.29] - 2024-04-02
+
+### Fixed
+
+- Fix possible race condition at worker node recreation on worker `error` and `exit` events.
+
+## [3.1.28] - 2024-04-01
+
+### Fixed
+
+- Ensure the minimum number of workers on a started pool is guaranteed.
+
+## [3.1.27] - 2024-03-27
+
+### Fixed
+
+- Fix publishing on JSR, take 4.
+
+## [3.1.26] - 2024-03-27
+
+### Fixed
+
+- Fix publishing on JSR, take 3.
+
+## [3.1.25] - 2024-03-27
+
+### Fixed
+
+- Fix publishing on JSR, take 2.
+
+## [3.1.24] - 2024-03-27
+
+### Fixed
+
+- Fix publishing on JSR.
+
+## [3.1.23] - 2024-03-27
+
+### Changed
+
+- Publish on JSR.