github community-of-python/circuit-breaker-box 0.3.9

2 hours ago

Fixes blocking async retries: retry waits no longer stall the event loop.

  • Retrier.retry() now drives its loop with tenacity.AsyncRetrying instead of the synchronous tenacity.Retrying (#10)
  • CircuitBreakerRedis.increment_failures_count and CircuitBreakerRedis.is_host_available likewise (#11)

Previously every retry wait slept via time.sleep(), blocking the whole event loop rather than just the calling task. For CircuitBreakerRedis the first backoff is 1-2 seconds, so a single Redis reconnect froze every task in the process.

No API changes: Retrier keeps its name and signature, no AsyncRetrier is introduced, and attempt counts, retry predicates, reraise, callbacks and circuit breaker interaction order are all unchanged.

Don't miss a new circuit-breaker-box release

NewReleases is sending notifications on new releases.