Skip to content

Changelog

0.4.1 (2026-09-15)

Bug Fixes

  • cache the Prometheus collector per prefix so a rebuilt container does not raise (0d8cf4e), closes #36

0.4.0 (2026-09-14)

⚠ BREAKING CHANGES

  • AsyncRedisIdempotencyProvider requests redis.asyncio.Redis | RedisCluster, the key redis_client_kit.AsyncRedisClient names. A provider of your own annotated -> Redis no longer matches and the container fails at construction with GraphMissingFactoryError; annotate it -> Redis | RedisCluster.

Bug Fixes

  • request Redis | RedisCluster in the Dishka provider and read per slot on a cluster (d31f171), closes #32

0.3.0 (2026-09-07)

⚠ BREAKING CHANGES

  • a second concurrent caller with the same key now waits for the first caller's result instead of running the action too, and coordinate() and the decorator can raise IdempotencyInProgressError. Pass in_flight="run" to the coordinator (or set it on the settings object) to keep the previous behaviour. AsyncIdempotencyRepository gained replace(record); a custom repository needs it, and the coordinator raises TypeError at construction without it unless in_flight="run". IdempotencyRecord gained status, which records written before this change read as "completed".

Features

  • reserve the key while the action runs (#28) (0dbf68b), closes #26
  • store a fingerprint of the request and refuse a key reused for another (#30) (78a9ca2), closes #27

0.2.0 (2026-09-06)

⚠ BREAKING CHANGES

  • DEFAULT_TTL_MINUTES is 60 (was 30) and MAX_TTL_SECONDS is 2592000 (was 86400), so IdempotencyDomainService() built without arguments now keeps records for an hour and accepts a TTL of up to 30 days. Pass default_ttl_minutes=30 and max_ttl_seconds=86400 to keep the old values.

Bug Fixes

  • the defects the agents page turned up (#22) (1573db4)

Documentation

  • an upgrade note for the unified TTL defaults (#25) (bb90e84)

0.1.1 (2026-08-28)

Bug Fixes

  • core: store any JSON result and decide hit/miss on the record, not on None (#8) (ddb537e), closes #6
  • dishka: provide the metrics collector from settings so the shipped providers build a container (#9) (2a06416), closes #7
  • release: update version to 0.1.0 and fix release-please config (016c6c4)
  • update publish workflow, release-please version search, gitignore (#3) (9915f0e)

0.1.0 (2026-05-13)

Bug Fixes

  • ci: remove coverage threshold from integration tests (b00f037)
  • ci: set integration test coverage threshold to 50% (ed4e790)

Documentation

  • rewrite README to match library style with badges (cebded3)

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.