Reactor-Core 3.4.10 is part of 2020.0.11 Release Train (Europium SR11).
This service release contains bugfixes and polishing changes.
All changes from 3.3.20.RELEASE are also included and these are listed below with an additional level of indentation.
:warning: Update considerations and deprecations
Flux.replay underlying implementation doesn't support 0-size anymore (which was illogical in the first place)
For now, the operator transparently translates such calls to Flux.publish() instead (#2741)
Align Mono#share() behavior with Flux#share, split sink impl out (#2756)
Previously the Disposable obtained by calling mono.share().subscribe() (and that variant only) would terminate/cancel the whole mono.share() for all its subscribers. now this is an individual subscription, much like .subscribe(v -> {}) for instance.
the old behavior can still be obtained by calling toProcessor() and explicitly turning the source Mono into a MonoProcessor instead of sharing it, although the whole approach is deprecated.
:sparkles: New features and improvements
from 3.3.x:
Have FluxOnBackpressureBufferStrategy reject sizes <= 0 (#2757)
:beetle: Bug fixes
Rework FluxReplay to avoid hanging, but reject 0 size (#2741)
Align Mono#share() behavior with Flux#share, split sink impl out (#2756)
Fix bad switchOnFirst state transition leading to dropped error (#2768)
from 3.3.x:
[reactor-test] Fix consumeWhile+expectRecorded* skipping signal (#2764)
In FluxIterable, defer hasNext exceptions from isEmpty to poll to protect against iterators that throw in hasNext (#2766)
:book: Documentation, Tests and Build
Fix onDiscard/onErrorContinue javadoc position in Flux/Mono (#2762)
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 reactor-core from 3.4.3 to 3.4.10.
Release notes
Sourced from reactor-core's releases.
... (truncated)
Commits
0a67ce9
[release] Prepare and release 3.4.103ebc865
Merge-ignore release 3.3.20 into maindc4bc6f
[release] Next development version 3.3.21.BUILD-SNAPSHOTbe7bb47
[release] Prepare and release 3.3.20.RELEASE7d8ea6f
Fix bad switchOnFirst state transition leading to dropped error (#2768)7623a2b
Merge #2767 (document window unicast) into 3.4.10c849e44
Document that windows (and groupBy groups) are unicasta596764
Rework FluxReplay to avoid hanging, but reject 0 size (#2741)a72bb0d
Merge #2766 into 3.4.103d620dc
In FluxIterable, defer hasNext exceptions from isEmpty to poll (#2766)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)