Maintenance: remove Idempotency decorators #1553
Labels
completed
This item is complete and has been merged/shipped
idempotency
This item relates to the Idempotency Utility
internal
PRs that introduce changes in governance, tech debt and chores (linting setup, baseline, etc.)
Milestone
Summary
The current pre-release version of the Idempotency utility includes decorators that allow to make class methods idempotent. This is a pattern similar to the one we have for Logger, Tracer, and Metrics. We have however decided to remove these decorators for the time being and ahead of the beta release.
Why is this needed?
The current implementation that we use for decorators is based on the TypeScript 4.x signature. With the release of TS 5.x the decorator signature has changed, and while we can't change the existing decorators overnight without causing breaking changes, we don't feel comfortable releasing an implementation that can be considered obsolete.
Likewise, we also don't feel comfortable releasing these specific decorators with the 5.x implementation while also having the other ones compatible with a different version, as we think this would cause confusion in those users who might use both.
For this reason we have decided to remove the implementation for now, and revisit the topic when we finally launch support for TS 5.x, to track this effort please refer to #1375
Which area does this relate to?
Idempotency
Solution
No response
Acknowledgment
Future readers
Please react with 👍 and your use case to help us understand customer demand.
The text was updated successfully, but these errors were encountered: