Releases: amitfin/retry
On-Error
Retry ID
A service call now cancels a previous running call with the same retry ID. A new retry_id
parameter can be used to set the retry ID explicitly but it should be rarely used, if at all. The default value of retry_id
is the entity ID of the inner service call. An example of the cancellation scenario might be when turning off a light while the turn on retry loop of the same light is still running due to failures or light's transition time. The turn on retry loop will be getting canceled by the turn off call since both share the same retry_id
by default (the entity ID). Although this is a breaking change it's unlikely to break an existing use case. Additional information about this new functionality, including how to disable it, can be found here.
v2.9.3 adds the following logic: retry loops created by the same service call (retry.call
or retry.actions
), for example for multiple entities, are not canceling each other even when they have identical retry_id
. This scenario can happen only when setting retry_id
explicitly.
Full Changelog: v2.8.0...v2.9.3
De-dup repair tickets
Create a single repair ticket for identical service calls.
Full Changelog: v2.7.0...v2.8.0
Expected float (with point zero)
Fixed expected state validation when the state is a float number (including a number with point zero).
Full Changelog: v2.6.2...v2.7.0
Slovak translation
- Slovak translation for additional strings.
- Replace only double brackets for allowing usage of brackets inside
validation
. For example:
validation: "[[ state_attr('light.kitchen', 'rgb_color')[0] == 123 ]]"
Full changelog: v2.6.1...v2.6.2
Better event handling
v2.6.0
validation
is a new optional parameter for providing a template with a boolean expression. Note that it uses a special format with square brackets "[[ ... ]]"
instead of curly brackets "{{ ... }}"
. This is needed to avoid rendering the expression in advance. (I'll be happy to hear a better idea.) entity_id
is provided as a variable. For example:
validation: "[[ state_attr(entity_id, 'brightness') == 70 ]]"
v2.6.1
2 improvements related to call_service
bus event: (1) some keys failed to serialize to JSON, (2) creating child context.
Full changelog: v2.5.0...v2.6.1
Validation template
validation
is a new optional parameter for providing a template with a boolean expression. Note that it uses a special format with square brackets "[[ ... ]]"
instead of curly bracket "{{ ... }}"
. This is needed to avoid rendering the expression in advance. (I'll be happy to hear a better idea.) entity_id
is provided as a variable. For example:
validation: "[[ state_attr(entity_id, 'brightness') == 70 ]]"
Full changelog: v2.5.0...v2.6.0
Parametrize "grace period" and support "all" entities
- Add
state_grace
parameter to control the grace period of the expected state check. - Support
all
entities.
Full changelog: v2.4.0...v2.5.0
Repair tickets
Issue a repair ticket when all retries of a service call fail. It can be disabled via the integration's configuration dialog.
Full Changelog: v2.3.2...v2.4.0
Slovak translation
Slovak translation.
Full Changelog: v2.3.1...v2.3.2