| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.md | 2026-07-21 | 3.7 kB | |
| v4.0.0-alpha-20 source code.tar.gz | 2026-07-21 | 1.9 MB | |
| v4.0.0-alpha-20 source code.zip | 2026-07-21 | 4.1 MB | |
| Totals: 3 Items | 6.0 MB | 0 | |
What's Changed
Implementation
- 4.x: Streamable + blockingLast + ignoreElements by @akarnokd in https://github.com/ReactiveX/RxJava/pull/8231
- 4.x: Streamable + repeat, repeatWhen, retry, retryWhen by @akarnokd in https://github.com/ReactiveX/RxJava/pull/8232
- 4.x: Streamable, improved range and collect internals + JMH by @akarnokd in https://github.com/ReactiveX/RxJava/pull/8235
- 4.x: Streamable - optimize several operator internals by @akarnokd in https://github.com/ReactiveX/RxJava/pull/8238
- 4.x: Streamable Operator optimizations 7/18 by @akarnokd in https://github.com/ReactiveX/RxJava/pull/8239
- 4.x: Streamable mapOptional +perf by @akarnokd in https://github.com/ReactiveX/RxJava/pull/8240
Dependabot
- chore(deps): bump jupiterLauncherVersion from 6.1.1 to 6.1.2 by @dependabot[bot] in https://github.com/ReactiveX/RxJava/pull/8233
- chore(deps): bump org.junit.jupiter:junit-jupiter from 6.1.1 to 6.1.2 by @dependabot[bot] in https://github.com/ReactiveX/RxJava/pull/8234
- chore(deps): bump github/codeql-action/upload-sarif from 4.37.0 to 4.37.1 by @dependabot[bot] in https://github.com/ReactiveX/RxJava/pull/8236
- chore(deps): bump actions/setup-java from 5.5.0 to 5.6.0 by @dependabot[bot] in https://github.com/ReactiveX/RxJava/pull/8237
- chore(deps): bump actions/setup-python from 6.3.0 to 7.0.0 by @dependabot[bot] in https://github.com/ReactiveX/RxJava/pull/8241
- chore(deps): bump actions/checkout from 7.0.0 to 7.0.1 by @dependabot[bot] in https://github.com/ReactiveX/RxJava/pull/8242
Streamable Scrabble
Ongoing measure/optimization. Managed to shave over half the time off (but some came from using better collector implementations for sure).
:computer: i9 275HX, 32GB LPDDR5 6400MT CL52, Windows 25H2, JDK 26.0.1
| Step | Time (ms) | Improvement | vs Baseline |
|---|---|---|---|
| Baseline | 42,5119 | - | - |
Avoid whenComplete usage in collect |
37,566 | -11,65% | - |
IndexableSource in collect |
35,815 | -4,66% | -15,77% |
| concatIterable optimizations | 31,971 | -10,73% | -24,81% |
| map fusions | 30,623 | -4,22% | -27,98% |
| flattenAsFlowable deferred opt | 27,999 | -8,57% | -34,15% |
| MutableLong in the bench | 26,159 | -6,57% | -38,48% |
| lastOrError opt | 25,164 | -3,80% | -40,82% |
custom Collector summers |
24,885 | -1,11% | -41,47% |
| skip optimizations | 24,791 | -0,38% | -41,69% |
| filter opt, filter+map fusion, lastOrError opt | 23,566 | -4,94% | -44,58% |
| slow path collect optimization | 22,392 | -4,98% | -47,34% |
| CharStreamer EnumerableSource marker | 21,843 | -2,45% | -48,63% |
| custom max collector | 20,369 | -6,75% | -52,09% |
Versus the other techs |Tech | Time in milliseconds | |-- | --:| |For Loop JDK 26 | 2,125| |IObservable synchronous | 7,917| |IEnumerable port | 8,225| |Ix 1.0.0 | 8,463| |RxJava Observable 3.1.12 | 10,119| |RxJava Observable 4a19 :arrow_backward: | 10,484| |RxJava Observable 2.2.21 | 10,612| |RxJava Flowable 4a19 | 11,424| |RxJava Flowable 3.1.12 | 12,499| |RxJava Flowable 2.2.21 | 13,849| |Reactive4Java 0.98.1 | 13,086| |Guava 33.6.0 | 12,564| |Reactor 3.8.6 | 14,158| |CyclopsReactOpt | 17,273| |:new: RxJava Streamable 4a20 :arrow_backward: | 20,369 | |JOOL 0.9.15 | 38,876| |RxJava Streamable 4a19 :arrow_backward: | 42,512 |
</body> </html>
Full Changelog: https://github.com/ReactiveX/RxJava/compare/v4.0.0-alpha-19...v4.0.0-alpha-20