Releases: alitto/pond
Releases · alitto/pond
Release v2.0.1
Fixes
- Avoid launching workers that exit immediately without running any tasks.
- Prevent task group
Wait()
from returning eagerly when tasks are executed before submitting the last one of the group.
Release v2.0.0
What's new in v2?
Version 2 of pond
introduces many improvements and new features:
- Unbounded Task Queues: Task queues are now unbounded by default, simplifying pool creation.
- Task Submission with Results: New APIs allow tasks to return results, enhancing flexibility.
- Awaitable Task Completion: Tasks can now be awaited, providing better control over task execution.
- Type Safe APIs: Improved type safety for tasks that return errors or results.
- Panics Recovery: Panics during task execution are captured and returned as errors, allowing graceful error handling.
- Subpools: Create subpools with a fraction of the parent pool's workers for specific tasks.
- Default Pool: A global default pool is available for task submission without explicit pool creation.
Migration from v1 to v2
There have been a significant number of breaking changes in v2, so please make sure to read the migration guide if you are upgrading from v1.
Release v1.9.2
Changes included
- Fix bug that worker doesn't return after context cancel #71 - Thanks @hongkuancn!
- Drain tasks in an unblocked way to avoid data race #72 (fixes #70) - Again, thanks @hongkuancn! 🙌
Release v1.9.1
Changes included
- Return context in Stop() to notify user when everything has been stopped - PR: #67 - Closes: #63) - Thanks @CorentinClabaut 🙌
Release v1.9.0
Changes included
- Fix: clear pending tasks in the worker when the context is canceled to avoid deadlocks in StopAndWait when tasks are queued for the worker. PR: #62 - Thanks @CorentinClabaut! 🙌
- Fix errors in github actions workflow
- Bump max supported go version in tests to 1.22
- Rename default branch from
master
tomain
Release 1.8.3
Changes included
- Fix submit onARM 32-bit cpus #39 - Thanks @mcuadros! 🙌
- Return Context error if it is canceled before at least 1 task failed #40 - Thanks @NOMORECOFFEE! 🙌
Release 1.8.2
Changes included
- Synchronize read & write of
TaskGroupWithContext
's err variable #37 (thanks @thekondor 🥇)
Release 1.8.1
Changes included
- Fix for #33
- Upgrade to go 1.19
- Extracted counter updates from main
worker
function to make it simpler and more generic - Moved
worker
function to a separate file - Added
Makefile
with test targets
Release 1.8.0
- Upgrade go version to 1.18
- Implement new method in WorkerPool to create a group of tasks associated to a context
GroupContext(ctx context.Context)
- Move
TaskGroup
to a separate file - Move tests related to task groups to a separate file
Release 1.7.2
Changes included
- Moved benchmarks to a separate repository https://github.com/alitto/pond-benchmark
- Set up CodeQL action