Skip to content

Releases: go-playground/pool

Release 3.1.1

23 Aug 19:37
Compare
Choose a tag to compare

What was Fixed?

  • Go 1.7's race detector got even better and found a potential race that was not detected in Go 1.6.x and so this fixes that; no breaking changes, just update.

Release 1.2.2

07 Jul 11:34
Compare
Choose a tag to compare

What was Fixed

  • Cancel could have closed channel twice, thanks for the pull request @zwh8800

Release 3.1.0

20 Jun 15:47
Compare
Choose a tag to compare

What's New?

  • Added WaitAll() function to the batch, for when you need to wait for all work to be processed, but don't need to know the results.

eg. If the Work Unit's handle their own errors, logging etc... and it doesn't need to be reported back to the calling program.

Release 3.0.0

20 Jun 11:01
Compare
Choose a tag to compare

Fix gopkg.in pointing to v2.

Hi all, please update v3 by running go get -u gopkg.in/go-playground/pool.v3, I must have selected the wrong branch while cutting the v3 release initially and it was pointing to v2, appologies for any inconvenience.

Release 3

16 Jun 14:16
Compare
Choose a tag to compare

What's New?

  • library is not just a consumer pool, but now also handles a no worker/unlimited goroutine option; best of all they are completely interchangeable.
// Limited
pool.NewLimited(10)

//Unlimited
pool.New()
  • Objects are not interfaces allowing for less breaking changes going forward.
  • Simpler usage of Work Units, instead of <-work.Done now can do work.Wait()

Release 2.1.0

16 Jun 08:47
Compare
Choose a tag to compare

What Changed?

  • updated sync.RWMutex to be non pointer; no functional changes.

Release 2.0.1

15 Jun 18:36
Compare
Choose a tag to compare

What Changed

  • fixed batch not unlocking mutex before return in rare case.
  • fixed race condition found in the tests, not the pool logic, but the actual test logic.
  • Added race detection testing in CI tests

Release 2

15 Jun 17:41
Compare
Choose a tag to compare

Whats New?

  • Up to 300% faster due to lower contention ( BenchmarkSmallRun used to take 3 seconds, now 1 second )
  • Cancels are much faster
  • Easier to use, no longer need to know the # of Work Units to be processed.
  • Pool can now be used as a long running/globally defined pool if desired ( v1 Pool was only good for one run )
  • Supports single units of work as well as batching
  • Pool can easily be reset after a Close() or Cancel() for reuse.
  • Multiple Batches can be run and even cancelled on the same Pool.
  • Supports individual Work Unit cancellation.

Examples

see here and in the README

Release 1.2.1

10 Jun 19:52
Compare
Choose a tag to compare

What was Fixed

  • corrected race condition when using hook param; some workers could have had nil.

Release 1.2

11 Dec 20:42
Compare
Choose a tag to compare

Added Consumer Hook

  • now can register ConsumerHook function that will be run while firing up the consumer routines and that return value will be set/passed to each job. This is particularity useful when creating a saving pool so a the consumer hook would create a database connection for each job to reuse instead of creating an additional one for each job.

Example

https://github.com/go-playground/pool/blob/v1/pool_test.go#L55