Skip to content

v4.4.1

Choose a tag to compare

@Llucs Llucs released this 21 Jul 22:11
· 13 commits to main since this release

4.4.1 - 2026-07-21

  • Fix raise_on_giveup=False silently swallowing KeyboardInterrupt, SystemExit, and GeneratorExit (#31). All retry loops (fast and slow, sync and async) now use except Exception instead of except BaseException, letting control-flow exceptions propagate naturally.
  • Fix BreakerRetrying.call() and BreakerRetrying.async_call() ignoring half_open_max_calls when the circuit breaker is in HALF_OPEN state (#26). Added the same HALF_OPEN guard that CircuitBreaker.call() uses, preventing unlimited concurrent calls during recovery.
  • Add tests for KeyboardInterrupt/SystemExit/GeneratorExit propagation through retry loops.
  • Add tests for BreakerRetrying HALF_OPEN state enforcement.

Validation: All checks pass — ruff, mypy, and 563 tests.