All notable changes to webrek/laravel-idempotency are documented here. The
format follows Keep a Changelog, and the
project adheres to Semantic Versioning.
- Laravel 13 support. The package now installs on Laravel 12 and 13 (PHP 8.2+).
IdempotentReplayevent, fired whenever a stored response is replayed — useful for metrics on how many retries you are absorbing.- Per-route retention: pass a TTL (seconds) as a middleware parameter,
->middleware('idempotency:3600'), overriding the configured default.
idempotencymiddleware that replays the original response for a repeatedIdempotency-Keyand serialises concurrent duplicates with an atomic lock.- Request fingerprinting to reject a key reused with a different payload (
422). - Configurable header, guarded methods, retention, lock timeout, key scoping, replayable status codes and persisted headers.
- Cache-backed storage with no migrations.