3.0.0-RC7
For Android development, the latest Android Studio is always recommended which is already able to desugar many Java 8 constructs. The upcoming AS 4 will support even more desugaring for older API levels. Until then, one should stick to the non-Java 8 standard methods so the Java 8 methods can be ignored by AS.
This is an early release for 3.0.0 to allow preparations for the breaking API changes and cleanups. Please check out the wiki page What's different in 3.0 from time to time for the details and migration guide.
Behavior changes
- Change how the cause of
CompositeExceptionis generated. (#6748) - Change
Flowable.window(size, time) abandonment. (#6758) - Change
Observable.window(size & time) abandonment. (#6761) - Change
window(boundary, start/end) cancel and abandonment. (#6762) - [Java 8] Upgrade to Java 8 baseline. (#6765)
- Change
XProcessor.offerto throwNullPointerExceptionimmediately. (#6799)
API changes
- [Java 8] Add
fromOptional,fromCompletionStage,fromStreamoperators toFlowable. (#6765) - [Java 8] Add
FunctionalInterfaceannotations. (#6773) - [Java 8] Add
mapOptional,collector,{first|last|single}Stageoperators toFlowable. (#6775) - [Java 8] Add
AutoCloseable<->Disposableconversions. (#6780) - [Java 8] Add
blockingStream&flatMapStreamoperators toFlowable. (#6779) - [Java 8] Migrate
Disposablesstatic factories toDisposableinterface. (#6781) - [Java 8] Add
fromOptional,fromCompletionStage,mapOptionalandtoCompletionStagetoMaybe/Single/Completable. (#6783) - Widen
{Flowable|Observable|Maybe|Single|Completable|ParallelFlowable}Operatorthrows declaration toThrowable. (#6785) - [Java 8] Add
@NonNull&@SafeVarargsannotations. (#6791) - Add missing
@NonNull,@CheckReturnValue, etc. annotations. (#6795) - [Java 8] Add the new operators to
Observable. (#6797) - [Java 8] Add
ParallelFlowableoperators and add missing annotations to existing operators. (#6798) - Add
blockingForEach(Consumer, int)overload. (#6800) - [Java 8] Add
flattenStreamAsFlowableandflattenStreamAsObservabletoMaybeandSingle. (#6805)
Bugfixes
- Fix
Observableamb,combineLatest&zipArrayStoreException. (#6756) - Fix
Flowable.window(size, time) cancellation and abandonment. (#6758) - Fix
Observable.window(size & time) cancellation and abandonment. (#6761) - Fix
window(boundary, start/end) cancel and abandonment. (#6762)
Documentation enhancements
- Update
observeOndocs with links and +backpressure explanation. (#6750) - Fix typo in
Flowablejavadoc. (#6760) - Javadocs
package-infomade nicer. (#6778) - [Java 8] Update README regarding Java 8. (#6778)
- Nicen
DisposableJavadocs. (#6780) - Cleanup and prettify Javadocs (#6785)
Other changes
- Do not update snapshot Javadocs from secondary branches. (#6752)
- Remove
ObjectHelper.requireNonNull(long, String). (#6769) - [Java 8] Replace some
ObjecsHelpermethods with Java 8 APIs. (#6770) - [Java 8] Replace
ObjectHelper.requireNonNullwithObjects.requireNonNull. (#6771) - [Java 8] Diamond operators in unit tests,
flowablepackage. (#6787) - [Java 8] Diamond operators in unit tests,
observablepackage. (#6786) - [Java 8] Diamond operators in various unit tests. (#6788)
- [Java 8] Diamond operators in unit tests, small packages. (#6789)
- [Java 8] Remove now unnecessary unchecked warning suppressions. (#6790)
- [Java 8] Add
@NonNull&@SafeVarargsannotations validator. (#6791) - [Java 8] Fix many diamonds. (#6795)
- [Java 8]
Observableoperator cleanup. (#6797) - [Java 8]
ParallelFlowableoperator cleanup. (#6798) - Add missing
throwIfFatalcalls (#6801) - [Java 8] Fix diamonds, spelling, unnecessary code. (#6804)