Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
RxJava
2.1.1
Maven
Notable changes
The emitter API (such as
FlowableEmitter
,SingleEmitter
, etc.) now features a new method,tryOnError
that tries to emit theThrowable
if the sequence is not cancelled/disposed. Unlike the regularonError
, if the downstream is no longer willing to accept events, the method returns false and doesn't signal anUndeliverableException
.API enhancements
tryOnError
tocreate/XEmitter
API.subscribeOn
overload to avoid same-pool deadlock with create.Documentation changes
Maybe.toSingle
.FunctionX
Observable
Action1
withConsumer
in docs.SingleFlatMapIterableObservable
.Single.doAfterTeminate
mentioningdoAfterSuccess
.DefaultObserver
javadoc fix: use subscribe, remove disposable code.DefaultSubscriber
javadoc sample fix.Observable.reduce()
andObservable.reduceWith()
.Single.delay
documentation.Bugfixes
interval+trampoline
can be stopped.SingleMap
not allow map function return null.doOnNext
failure not triggeringdoOnError
when fused.buffer(time, maxSize)
duplicating buffers on time-size race.Other
VolatileSizeArrayList
asRandomAccess
listBaseTestConsumer.assertValueSequence
.rx2.buffer-size
to 1.2.1.0
Maven
Summary
Version 2.1.0 is the next minor release of the 2.x era and contains the standardization of many experimental API additions from the past half a year since version 2.0.0. Therefore, the following components are now considered stable and will be supported throughout the rest of the life of RxJava 2.x.
Classes, Enums, Annotations
CheckReturnValue
CompletableSubject
,MaybeSubject
,SingleSubject
TestWaitStrategy
Operators
Flowable
:doAfterNext
,doFinally
,sample
(emitLast)Observable
:doAfterNext
,doFinally
,sample
(emitLast)Single
:doAfterSuccess
,doAfterTerminate
,doFinally
Maybe
:doAfterSuccess
,doFinally
,flatMapSingleElement
Completable
:cache
,doFinally
,hide
Test{Observer, Subscriber}
:assertNever
,assertTimeout
,assertNoTimeout
,awaitCount
,clearTimeout
,isTimeout
,withTag
RxJavaPlugins
:createComputationScheduler
,createIoScheduler
,createNewThreadScheduler
,createSingleScheduler
,getOnBeforeBlocking
,setOnBeforeBlocking
,isFailOnBlockingScheduler
,setFailOnBlockingScheduler
.Scheduler.when
,TestSubscriber.requestMore
(For the complete list and details on the promotions, see issue 5243.)
Release 2.1.0 is functionally identical to 2.0.9 except the removal of now unnecessary
Flowable.strict()
operator. To clarify, just like with previous minor version increments with RxJava, there won't be any further development or updates on the version 2.0.x (patch) level.Beta promotions
Some of the enhancements of RxJava 2.0.x were added recently which often represent complex additions to RxJava itself (such as the whole
ParallelFlowable
). We are confident their functionality adds value to the library but not enough time elapsed since their introduction for the community to try it out and provide feedback on them (i.e., naming, encompassed functionality, etc.). To indicate we are willing to support them and eventually standardize them in the next minor release, the following components have been promoted to the status ofBeta
:OnErrorNotImplementedException
,ProtocolViolationException
,UndeliverableException
,ParallelFlowable
FlowableSubscriber
Flowable
:parallel
,subscribe(FlowableSubscriber)
RxJavaPlugins
:getOnParallelAssembly
,onAssembly(ParallelFlowable)
,setOnParallelAssembly
Non-functional changes between 2.0.9 and 2.1
ObservableSource.defer
toObservable.defer
inObservable.scan()
documentation.Flowable.toObservable
referring toPublisher
instead ofObservable
.Project statistics