Skip to content

v0.8.0 - the context update

Compare
Choose a tag to compare
@jxsl13 jxsl13 released this 15 Mar 20:26
· 75 commits to main since this release
469f1f9

What's Changed

Monitoring:

  • introduce callbacks for every retryable operation and for session and connections by @jxsl13 in #48
  • add multiple StatXXX pool methods for fetching the current pool state

Dependencies:

Bugfix:

  • fix incorrect context passed by @jxsl13 in #49
  • implement correct connection flow control handling for publishers (fixes #50)

Breaking Changes:

  • the context update by @jxsl13 in #51
    • Size() methods are now called Capacity() and Size() refers to the currently idle connection/sessions in a pool
    • Publish timeout and AwaitConfirms timeout were removed in favor of a single context for both (pool.Publisher)
    • all methods now require a context to be passed. (fixes #44)
    • HandlerFuncs, BatchHandlerFuncs, TopologyFuncs receive an additional context parameter which is canceled upon pool context cancelation

Feature:

  • add a special error for rejecting messages pool.ErrReject (pool.ErrRejectSingle) (fixes #46)
  • removes internal queue and replaces it with a Go channel (removes dependency) (fixes #4)

CI/CD:

  • all tests can now be run in parallel
  • limit parallelization of tests in GitHub Action to 2 tests being run in parallel due to weird GitHub runner behavior.

Full Changelog: v0.7.2...v0.8.0