Skip to content

Update module github.com/alitto/pond to v2#11

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/github.com-alitto-pond-2.x
Open

Update module github.com/alitto/pond to v2#11
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/github.com-alitto-pond-2.x

Conversation

@renovate

@renovate renovate Bot commented Oct 20, 2024

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
github.com/alitto/pond v1.9.2v2.7.1 age confidence

Release Notes

alitto/pond (github.com/alitto/pond)

v2.7.1

Compare Source

What's Changed

New Contributors

Full Changelog: alitto/pond@v2.7.0...v2.7.1

v2.7.0

Compare Source

What's Changed

Full Changelog: alitto/pond@v2.6.2...v2.7.0

v2.6.2

Compare Source

What's Changed
  • fix(pool): ensure pool recovers after runtime.Goexit() by @​alitto in #​137
  • Run tests against the latest versions of go (1.24 and 1.25)

Full Changelog: alitto/pond@v2.6.1...v2.6.2

v2.6.1

Compare Source

What's Changed
  • fix(stop-and-wait): fix(stop-and-wait): handle call to runtime.Goexit() in task in #​122 (fixes #​135)

Full Changelog: alitto/pond@v2.6.0...v2.6.1

v2.6.0

Compare Source

What's Changed
Breaking Changes
  • Setting the queue size option to zero (0) via WithQueueSize(0) now disables the task queue altogether (all task submissions block until a worker becomes available unless the pool is set to non-blocking mode). Before this change, setting queue size to 0 would cause the queue to be unbounded. Pools are still unbounded by default, but now there's a constant that can be used to set queue size to unbounded explicitly. E.g. pond.NewPool(10, pond.WithQueueSize(pond.Unbounded)).

Full Changelog: alitto/pond@v2.5.0...v2.6.0

v2.5.0

Compare Source

What's Changed

New Contributors

Full Changelog: alitto/pond@v2.4.0...v2.5.0

v2.4.0

Compare Source

What's Changed

Full Changelog: alitto/pond@v2.3.4...v2.4.0

v2.3.4

Compare Source

What's Changed

Full Changelog: alitto/pond@v2.3.3...v2.3.4

v2.3.3

Compare Source

What's Changed

Full Changelog: alitto/pond@v2.3.2...v2.3.3

v2.3.2

Compare Source

What's Changed

Full Changelog: alitto/pond@v2.3.1...v2.3.2

v2.3.1

Compare Source

Pull requests

  • fix(pool): avoid race conditions when a task is submitted while the pool is stopping by @​alitto in #​105
  • feat(pool): add non-blocking submission methods and dropped tasks metric by @​alitto in #​107

Changes

  • Ensure closed atomic bool is toggled and checked while holding the mutex to avoid race conditions.
  • Ensure workersWaitGroup.Add() is always called while holding the mutex to avoid race conditions.
  • Improve comments on submit methods to clarify the behavior when the pool is stopped.
  • Refactor trySubmit method to make it simpler and more clear.
  • Centralize worker launch in a new method called launchWorker.
  • Replace subpoolSubmit with subpoolWorker method.
  • Add methods to submit individual tasks in a non-blocking fashion (TrySubmit and TrySubmitErr). Requested in #​103
  • Expose new DroppedTasks metric that reflects the number of tasks that were not executed because the queue was full. Issue reported in #​100
  • SubmittedTasks metric now includes dropped tasks and it stops being updated once the pool is stopped.

Fixes

  • Decrement workerCount counter when the pool context is cancelled.
  • Resize() now supports setting maxConcurrency to 0 (no limit)

Full Changelog: alitto/pond@v2.3.0...v2.3.1

v2.3.0

Compare Source

What's Changed

  • feat(pool): add support for dynamically adjusting max concurrency by @​alitto in #​102

Full Changelog: alitto/pond@v2.2.0...v2.3.0

v2.2.0

Compare Source

What's Changed

  • feat(pool): add option to bound task queue (v2) by @​alitto in #​99
    • Add support to create bounded pools by specifying a queue size (WithQueueSize option).
    • Add support to choose how to deal with tasks submitted when the queue is full (WithNonBlocking option).
    • Ensure RunningWorkers() method in subpools reflect the actual number of workers running tasks belonging to the subpool.
    • Allow overriding pool options when creating a subpool via NewSupool.
    • Simplify pool submission logic and remove dispatcher goroutine.
    • Simplify subpool implementation.

Full Changelog: alitto/pond@v2.1.6...v2.2.0

v2.1.6

Compare Source

What's Changed

New Contributors

Full Changelog: alitto/pond@v2.1.5...v2.1.6

v2.1.5

Compare Source

What's Changed

New Contributors

Full Changelog: alitto/pond@v2.1.4...v2.1.5

v2.1.4

Compare Source

What's Changed

  • fix(dispatcher): ensure workers exit reliably when worker count is low by @​alitto in #​86

Full Changelog: alitto/pond@v2.1.3...v2.1.4

v2.1.3

Compare Source

What's Changed

Full Changelog: alitto/pond@v2.1.2...v2.1.3

v2.1.2

Compare Source

What's Changed

Full Changelog: alitto/pond@v2.1.1...v2.1.2

v2.1.1

Compare Source

What's Changed

  • feat(taskgroup): wait for ongoing tasks complete when group is stopped or context is cancelled by @​alitto in #​82

Full Changelog: alitto/pond@v2.1.0...v2.1.1

v2.1.0

Compare Source

What's Changed

  • feat(taskgroup): improve task group functionality by @​alitto in #​81
    • Added a new method to the pool to create a task group associated with a context (pool.NewGroupContext(ctx))
    • Added new methods to task groups:
      • group.Done(): returns a channel that is closed when all tasks in the group finish or the first error is returned.
      • group.Stop(): stops the task group. Queued tasks will be discarded but running tasks will complete their execution.
    • Added a new example showcasing the new pool.NewGroupContext(ctx) method.

Full Changelog: alitto/pond@v2.0.4...v2.1.0

v2.0.4

Compare Source

What's Changed

Full Changelog: alitto/pond@v2.0.3...v2.0.4

v2.0.3

Compare Source

What's Changed

  • fix(taskgroups): do not start remaining tasks after context cancellation by @​alitto in #​77

Full Changelog: alitto/pond@v2.0.2...v2.0.3

v2.0.2

Compare Source

Changes

  • Expose Stopped() bool method in pools to indicate whether the pool has been stopped or its associated context has been cancelled.

Fixes

  • Ensure ErrPoolStopped error is always returned when attempting to submit a task to a pool that has been stopped or its associated context cancelled.

v2.0.1

Compare Source

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.

v2.0.0

Compare Source

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.


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot force-pushed the renovate/github.com-alitto-pond-2.x branch 3 times, most recently from dfe9733 to 8df91f9 Compare October 24, 2024 16:40
@renovate renovate Bot force-pushed the renovate/github.com-alitto-pond-2.x branch from 8df91f9 to 8b4ba7f Compare October 29, 2024 14:49
@renovate renovate Bot force-pushed the renovate/github.com-alitto-pond-2.x branch 5 times, most recently from 68788a6 to 7cacff2 Compare November 16, 2024 01:50
@renovate renovate Bot force-pushed the renovate/github.com-alitto-pond-2.x branch from 7cacff2 to fa8eb00 Compare November 27, 2024 17:18
@renovate renovate Bot force-pushed the renovate/github.com-alitto-pond-2.x branch from fa8eb00 to fcda353 Compare December 25, 2024 22:24
@renovate renovate Bot force-pushed the renovate/github.com-alitto-pond-2.x branch from fcda353 to 47ff390 Compare February 17, 2025 01:37
@renovate renovate Bot force-pushed the renovate/github.com-alitto-pond-2.x branch from 47ff390 to 26fcfc1 Compare March 23, 2025 18:02
@renovate renovate Bot force-pushed the renovate/github.com-alitto-pond-2.x branch 2 times, most recently from dab0a3e to 8f61aac Compare April 5, 2025 01:43
@renovate renovate Bot force-pushed the renovate/github.com-alitto-pond-2.x branch 2 times, most recently from 7abee88 to b098710 Compare April 20, 2025 18:43
@renovate renovate Bot force-pushed the renovate/github.com-alitto-pond-2.x branch from b098710 to a5e62d2 Compare June 20, 2025 16:45
@renovate renovate Bot force-pushed the renovate/github.com-alitto-pond-2.x branch from a5e62d2 to bb4b31d Compare July 13, 2025 21:43
@renovate renovate Bot force-pushed the renovate/github.com-alitto-pond-2.x branch from bb4b31d to 9c6d9a0 Compare November 25, 2025 15:14
@renovate renovate Bot force-pushed the renovate/github.com-alitto-pond-2.x branch 2 times, most recently from 63081ea to 735c36c Compare February 16, 2026 12:54
@renovate renovate Bot force-pushed the renovate/github.com-alitto-pond-2.x branch from 735c36c to 9c10f17 Compare March 6, 2026 16:53
@renovate renovate Bot force-pushed the renovate/github.com-alitto-pond-2.x branch from 9c10f17 to 73210ba Compare April 14, 2026 14:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants