smallrye / smallrye-reactive-streams-operators

Implementation of the MicroProfile Reactive Streams Operators specification
https://www.smallrye.io/smallrye-reactive-streams-operators/
Apache License 2.0
20 stars 9 forks source link

Bump reactor-core from 3.3.3.RELEASE to 3.3.4.RELEASE #139

Closed dependabot-preview[bot] closed 4 years ago

dependabot-preview[bot] commented 4 years ago

Bumps reactor-core from 3.3.3.RELEASE to 3.3.4.RELEASE.

Release notes

Sourced from reactor-core's releases.

v3.3.4.RELEASE

reactor-core 3.3.4.RELEASE is part of Dysprosium-SR6 Release Train.

:warning: Update considerations and deprecations

  • Introduce and use VirtualTimeScheduler#getOrSet(boolean) (#2060, #2017)
    • VirtualTimeScheduler did not run scheduled tasks since 3.3.3.RELEASE
  • retryWhen(Function), all retryBackoff and retry(Predicate)/retry(long, Predicate) are now deprecated, to be replaced by the more generic retryWhen(Retry) (see RetrySpec and RetryBackoffSpec for configurable builders that cover these methods and more)

:sparkles: New features and improvements

  • Refactor of retryWhen to switch to a Spec/Builder model (#1979, #1978, #1905, #2063, #2052, #2064, #2079)
    • The new model is slated to replace retryWhen(Function) and retryBackoff as well as some retry variants in 3.4.0
    • The API is build around the Retry abstract class, with two builders (or Spec) to fluently configure the retries
    • This allows us to introduce additional new features:
      • all variants support a filter for errors to be retried
      • we now have sync and async retry callbacks when retry triggers
      • we can customize the exception to be thrown when max attempts is reached and we
      • transient bursts of errors can be handled separately, resetting eg. the backoff to its minimum provided at least one onNext comes in between errors
  • In repeatWhen and retryWhen, when a Context is emitted, we now merge it with the current instead of replacing it (#2056)

:beetle: Bug fixes

  • Mono.toFuture() now avoids invoking cancel after completion (#2070)
  • Various fixes in switchOnFirst (#2019, #2068)
    • inner stream cancellation is better taken into account
    • some race conditions have been fixed
    • race conditions are tested
    • cancellation signal of the whole sequence is correctly forwarded to the inner flux
  • the new API VirtualTimeScheduler#getOrSet(boolean) fixes virtual time in the StepVerifier (#2060, #2017)

:book: Documentation, Tests and Build

  • [build] Bump Gradle to latest 5.6.x => 5.6.4 (93e4c965)
  • [test] Various improvements over flakky tests (cce796c5, 282947e1, 98121736)

:+1: Thanks to the following contributors that also participated to this release

@OlegDokuka

Commits
  • ef5d9c0 [artifactory-release] Release version 3.3.4.RELEASE
  • 71b92e1 Prepare release 3.3.4.RELEASE (+merge ignore 3.2.16)
  • 16e101b [artifactory-release] Next development version 3.2.17.BUILD-SNAPSHOT
  • f15fe6d [artifactory-release] Release version 3.2.16.RELEASE
  • fc9332e Prepare release 3.2.16.RELEASE
  • 4e39d88 Follow up to #1979 to avoid retryWhen ambiguity (#2079)
  • c0b6001 Refactor of retryWhen to switch to a Spec/Builder model (#1979)
  • a98d6fa Fix missed SwitchOnFirst drain and inner stream cancel (#2076)
  • ce58185 [test] Polish FluxSwitchOnFirstTest, temporarily ignore 1 test
  • cce796c [test] Further polish BoundedElasticScheduler test
  • Additional commits viewable in compare view


Dependabot compatibility score

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) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Pull request limits (per update run and/or open at any time) - Automerge options (never/patch/minor, and dev/runtime dependencies) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired)