Relax Kotlin contracts for Executable
passed to assertTimeout
#4551
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Overview
Since
Executable
is allowed/expected to throw exceptions, thesemantics of being called
EXACTLY_ONCE
are blurry because it might notbe executed entirely when throwing an exception. Since the Kotlin 2.1
compiler emits a warning for these parameters, we're relaxing their
contracts to be called
AT_MOST_ONCE
instead.Definition of Done
@API
annotations