All changes to grape-idempotency
will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Your contribution here.
- Your contribution here.
- Your contribution here.
- #20: Allow consumers to configure the gem for handling
Redis
exceptions - @jcagarcia.
- #11: Changing error response formats - @Flip120.
- #16: Changing error response code to 422 for conflict - @Flip120.
- #11: Return 409 conflict when a request is still being processed - @Flip120.
- #15: Allow to mark the idempotent header as required - @jcagarcia.
- #17: Allow to configure logger - @jcagarcia.
- #9: Second calls were returning
null
when the first response was generated inside arescue_from
. - @jcagarcia.
- #9: Conflict response had invalid format. - @jcagarcia.
- #5: Return correct original response when the endpoint returns a hash in the body - @jcagarcia.
- #4: Return
409 - Conflict
response if idempotency key is provided for same query and body parameters BUT different endpoints. - @jcagarcia. - #4: Use
nx: true
when storing the original request in the Redis storage for only setting the key if it does not already exist. - @jcagarcia.
- #4: Include
idempotency-key
in the response headers - @jcagarcia.- In the case of a concurrency error when storing the request into the redis storage (because now
nx: true
), a new idempotency key will be generated, so the consumer can check the new one seeing the headers.
- In the case of a concurrency error when storing the request into the redis storage (because now
- #1: Initial version - @jcagarcia.