Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v6.0: Better name ExecutionKey and ExecutionGuid #426

Closed
reisenberger opened this issue Mar 30, 2018 · 2 comments
Closed

v6.0: Better name ExecutionKey and ExecutionGuid #426

reisenberger opened this issue Mar 30, 2018 · 2 comments

Comments

@reisenberger
Copy link
Member

reisenberger commented Mar 30, 2018

The execution context keys ExecutionKey and ExecutionGuid have caused confusion with similar names.

Polly v6.0 presents an opportunity to clarify the names prior to their wider use in events and metrics.

v5.x name Proposed v6.0 name Rationale Notes
ExecutionKey OperationKey Policies are usable at multiple call sites. The OperationKey is a user-definable string key intended to allow tagging the operation the policy is being used for (eg "GetCustomerDetails", "[GET] github/users/x"), for distinguishing different usages in logging and metrics. A read-only property Context.ExecutionKey => OperationKey (with suitable intellisense) could be left on Context, in recognition of the fact that the term 'execution key' does exist in some external documentation.
An alternative name could be UsageKey.
ExecutionGuid CorrelationId CorrelationId is a more typical name for a unique id correlating all events linked to a particular request or operation. The property has as yet formed no part of the Polly API beyond being exposed (it was added in preparation for metrics).

Polly v5.9.0 would pre-advertise the deprecations per semver, with [ObsoleteAttribute()], prior to breaking changes (removing deprecated versions) in Polly v6.0.

@reisenberger reisenberger added this to the v5.9.0 milestone Mar 30, 2018
reisenberger added a commit that referenced this issue Apr 9, 2018
+ #424 (fixes #419) Allow `Timeout.InfiniteTimeSpan` for TimeoutPolicy
+ #425 Rationalise Execute()/ExecuteAsync() overloads: pre-advise ([per SemVer](https://semver.org/#how-should-i-handle-deprecating-functionality)) expected breaking changes for v6.0
+ #426 Better name ExecutionKey and ExecutionGuid: pre-advise ([per SemVer](https://semver.org/#how-should-i-handle-deprecating-functionality)) expected breaking changes for v6.0
+ Add `Context()` public noargs ctor
+ Minor corrections to method visibility
@reisenberger
Copy link
Member Author

Polly v5.9.0 has now been published. It:

Polly v6.0 will removed the deprecated names.

@reisenberger
Copy link
Member Author

Documentation published to wiki. Also covered on the main wiki keys page.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant