Fixed a bug in the shutdown behavior of a polling thread. The wrong time unit was used causing executor shutdown to take way more time than expected in cases where it's stuck. Thanks to Claus Näveke for spotting this and for the initial PR.
Fixed a bug in which condition was not evaluated correctly with small intervals, such as:
await().atMost(Duration.ofMillis(10)).pollInterval(Duration.ofMillis(5)).until(..);
(issue 224). Thanks to Robby Decosemaeker for PR.
Upgraded the awaitility-kotlin module to use kotlin 1.6.10
Fail fast conditions can now be specified with assertions. For example:
Fixed a bug preventing you to specify "fib(-1)" when using the fibonacci poll interval (thanks to Björn Michael for pull request) (issue 201)
Avoid memory leak by caching only the original default uncaught exception handler globally (thanks to Oliver Grof for pull request (issue 221)
Added "conditionEvaluationListener" to Kotlin DSL
Changelog 4.1.0 (2021-05-08)
Upgraded to Scala from 2.13.3 to 2.13.5 (thanks to sullis for pull request)
Upgraded Kotlin from 1.3.72 to 1.5.0
Added support for fail-fast conditions. This is a special condition that, if fulfilled, will throw a "org.awaitility.core.TerminalFailureException" immediately, thus failing the test.
This is good when you have a condition that you know beforehand should never be fulfilled. So instead of waiting the full duration of a normal condition evaluation period, the test will fail
faster if this (fail fast) condition evaluates to true. For example:
This will fail-fast if the state of order 1234 is ever equal to "PAID" during the 5 second evaluation of the condition specified in "until".
(Thanks to Antony Stubbs for initial pull request) (issue 178)
Upgraded Groovy from version 3.0.4 to 3.0.8
Changelog 4.0.3 (2020-05-19)
Upgraded to Scala 2.13.2 from 2.13.0 (thanks to sullis for pull request)
Upgraded Kotlin extension to use Kotlin 1.3.72 (instead of 1.3.61)
Improved org.awaitility.core.ConditionEvaluationLogger to accept a consumer that decides how the logs are printed. You can use this to for example log intermediary values using slf4j instead of System.out.println or log to to disk or a data structure such as CopyOnWriteArrayList. For example:
This will log using a the logger "log" instead of printing to the console.
Fixed problems with test dependencies in pom.xml
Upgraded Groovy from 2.5.7 to 3.0.4
Changelog 4.0.2 (2020-01-03)
Improved formatting of elapsed time (or error and logging) for long time durations
Implemented support for "during" (issue 124) (big thanks to Pablo Díaz-López for pull request)
org.awaitility.core.ConditionEvaluationListener now has two additional hooks, "beforeEvaluation" and "onTimeout", which you can implement to get notified on these events. They are implemented as default methods to retain backward compatibility. (issue 149) (big thanks to Oliver Grof for pull request)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps awaitility from 3.0.0 to 4.2.0.
Changelog
Sourced from awaitility's changelog.
... (truncated)
Commits
b5d82b7
[maven-release-plugin] prepare release awaitility-4.2.01ae0349
Preparing changelog for release386eccb
Improve error message in testfc45eb7
Fail fast conditions can now be specified with assertionsd39c00d
Upgrading Kotlin to 1.6.10f359e94
Formatted ConditionAwaiter9c9a79b
Updated changelog to reflect the latest changes9e40d37
Fix #224 - handle immidiate success scenario (#228)3c9f345
Fixed a bug in the shutdown behavior of a polling thread. The wrong time unit...c4962d8
Update README.mdDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)