Skip to content

Releases: ReactiveX/RxJava

1.3.7

21 Mar 16:44
0641802
Compare
Choose a tag to compare

Maven

Bugfixes

  • Pull 5917: Fix and deprecate evicting groupBy and add a new overload with the corrected signature.

2.1.11

20 Mar 15:37
3a098c5
Compare
Choose a tag to compare

Maven

API changes

  • Pull 5871: Add Flowable.concatMapCompletable{DelayError} operator.
  • Pull 5870: Add Flowable.switchMapCompletable{DelayError} operator.
  • Pull 5872: Add Flowable.concatMap{Maybe,Single}{DelayError} operators.
  • Pull 5873: Add Flowable.switchMap{Maybe,Single}{DelayError} operators.
  • Pull 5875: Add Observable switchMapX and concatMapX operators.
  • Pull 5906: Add public constructor for TestScheduler that takes the initial virtual time.

Performance enhancements

  • Pull 5915: Optimize Observable.concatMapCompletable.
  • Pull 5918: Improve the scalar source performance of Observable.(concat|switch)Map{Completable|Single|Maybe}.
  • Pull 5919: Add fusion to Observable.switchMap inner source.

Documentation changes

  • Pull 5863: Expand the documentation of the Flowable.lift() operator.
  • Pull 5865: Improve the JavaDoc of the other lift() operators.
  • Pull 5876: Add note about NoSuchElementException to Single.zip().
  • Pull 5897: Clarify dematerialize() and terminal items/signals.
  • Pull 5895: Fix buffer() documentation to correctly describe onError behavior.

Bugfixes

  • Pull 5887: Fix window(Observable|Callable) upstream handling.
  • Pull 5888: Fix Flowable.window(Publisher|Callable) upstream handling.
  • Pull 5892: Fix the extra retention problem in ReplaySubject.
  • Pull 5900: Fix Observable.flatMap scalar maxConcurrency overflow.
  • Pull 5893: Fix publish(-|Function) subscriber swap possible data loss.
  • Pull 5898: Fix excess item retention in the other replay components.
  • Pull 5904: Fix Flowable.singleOrError().toFlowable() not signalling NoSuchElementException.
  • Pull 5883: Fix FlowableWindowBoundary not cancelling the upstream on a missing backpressure case, causing NullPointerException.

Other changes

  • Pull 5890: Added @Nullable annotations to subjects.
  • Pull 5886: Upgrade the algorithm of Observable.timeout(time|selector) operators.
  • Coverage improvements
    • Pull 5883: Improve coverage and fix small mistakes/untaken paths in operators.
    • Pull 5889: Cleanup, coverage and related component fixes
    • Pull 5891: Improve coverage & related cleanup 03/05.
    • Pull 5905: Coverage improvements, logical fixes and cleanups 03/08.
    • Pull 5910: Improve coverage, fix operator logic 03/12.

2.1.10

24 Feb 10:18
569c5ab
Compare
Choose a tag to compare

Maven

API changes

  • Pull 5845: Add efficient concatWith(Single|Maybe|Completable) overloads to Flowable and Observable.
  • Pull 5847: Add efficient mergeWith(Single|Maybe|Completable) overloads to Flowable and Observable.
  • Pull 5860: Add Flowable.groupBy overload with evicting map factory.

Documentation changes

  • Pull 5824: Improve the wording of the share() JavaDocs.
  • Pull 5826: Fix Observable.blockingIterable(int) and add Observable.blockingLatest marbles.
  • Pull 5828: Document size-bounded replay emission's item retention property.
  • Pull 5830: Reword the just() operator and reference other typical alternatives.
  • Pull 5834: Fix copy-paste errors in SingleSubject JavaDoc.
  • Pull 5837: Detail distinct() and distinctUntilChanged() in JavaDoc.
  • Pull 5841: Improve JavaDoc of Observer, SingleObserver, MaybeObserver and CompletableObserver.
  • Pull 5843: Expand the JavaDocs of the Scheduler API.
  • Pull 5844: Explain the properties of the {Flowable|Observable|Single|Maybe|Completable}Emitter interfaces in detail.
  • Pull 5848: Improve the wording of the Maybe.fromCallable JavaDoc.
  • Pull 5856: Add finite requirement to various collector operators' JavaDoc.

Bugfixes

  • Pull 5833: Fix Observable.switchMap main onError not disposing the current inner source.

Other changes

  • Pull 5838: Added nullability annotation for completable assembly.
  • Pull 5858: Remove unnecessary comment from Observable.timeInterval(TimeUnit).

1.3.6

15 Feb 20:24
6e6c514
Compare
Choose a tag to compare

Maven

Bugfixes

  • Pull 5850: Fix a race condition that may make OperatorMaterialize emit the wrong signals.
  • Pull 5851: Fix a race condition in OperatorMerge.InnerSubscriber#onError causing incorrect terminal event.

1.3.5

27 Jan 11:29
a49c49f
Compare
Choose a tag to compare

Maven

Other

  • Pull 5820: RxJavaPlugins lookup workaround for System.getProperties() access restrictions.

2.1.9

24 Jan 08:24
173156d
Compare
Choose a tag to compare

Maven

API changes

  • Pull 5799: Add missing {Maybe|Single}.mergeDelayError variants.

Performance improvements

  • Pull 5790: Improve request accounting overhead in Flowable retry/repeat.

Documentation changes

  • Pull 5783: Fix JavaDoc wording of onTerminateDetach.
  • Pull 5780: Improve BehaviorSubject JavaDoc + related clarifications.
  • Pull 5781: Describe merge() error handling.
  • Pull 5785: Update Maybe doOn{Success,Error,Complete} JavaDoc.
  • Pull 5786: Add error handling section to merge() operator JavaDocs.
  • Pull 5802: Improved XSubject JavaDocs.
  • Marble diagram fixes to Observable:
    • Pull 5795: More marbles 01/08-a.
    • Pull 5797: Observable marble fixes 01/08-b.
    • Pull 5798: Observable.replay(Function, ...) marble fixes.
    • Pull 5804: More Observable marbles, 01/10-a.
    • Pull 5805: Final planned Observable marble additions/fixes.
  • Pull 5816: Add Subject and Processor marbles.

Bugfixes

  • Pull 5792: Fix flatMap inner fused poll crash not cancelling the upstream.
  • Pull 5811: Fix buffer(open, close) not disposing indicators properly.

2.1.8

27 Dec 11:05
7e503f0
Compare
Choose a tag to compare

Maven

Warning! Behavior change regarding handling illegal calls with null in Processors and Subjects.

The Reactive Streams specification mandates that calling onNext and onError with null should
result in an immediate NullPointerException thrown from these methods. Unfortunately, this requirement was overlooked (it resulted in calls to onError with NullPointerException which meant the Processor/Subject variants entered their terminal state).

If, for some reason, the original behavior is required, one has to call onError with a NullPointerException explicitly:

PublishSubject<Integer> ps = PublishSubject.create();

TestObserver<Integer> to = ps.test();

// ps.onNext(null); // doesn't work anymore

ps.onError(new NullPointerException());

to.assertFailure(NullPointerException.class);

API changes

  • Pull 5741: API to get distinct Workers from some Schedulers.
  • Pull 5734: Add RxJavaPlugins.unwrapRunnable to help with RxJava-internal wrappers in Schedulers.
  • Pull 5753: Add retry(times, predicate) to Single & Completable and verify behavior across them and Maybe.

Documentation changes

  • Pull 5746: Improve wording and links in package-infos + remove unused imports.
  • Pull 5745: Add/update Observable marbles 11/28.
  • Commit 53d5a235: Fix JavaDoc link in observables/package-info.
  • Pull 5755: Add marbles for Observable (12/06).
  • Pull 5756: Improve autoConnect() JavaDoc + add its marble.
  • Pull 5758: Add a couple of @see to Completable.
  • Pull 5759: Marble additions and updates (12/11)
  • Pull 5773: Improve JavaDoc of retryWhen() operators.
  • Pull 5778: Improve BehaviorProcessor JavaDoc.

Bugfixes

  • Pull 5747: Fix TrampolineScheduler not calling RxJavaPlugins.onSchedule(), add tests for all schedulers.
  • Pull 5748: Check runnable == null in *Scheduler.schedule*().
  • Pull 5761: Fix timed exact buffer() calling cancel unnecessarily.
  • Pull 5760: Subject/FlowableProcessor NPE fixes, add UnicastProcessor TCK.

Other

  • Pull 5771: Upgrade dependency to Reactive Streams 1.0.2
  • Pull 5766: Rename XOnSubscribe parameter name to emitter for better IDE auto-completion.

2.1.7

27 Nov 08:47
c9af67b
Compare
Choose a tag to compare

Maven

API changes

  • Pull 5729: Implement as() operator on the 6 base classes - similar to to() but dedicated functional interface for each base class instead of just Function.

Documentation changes

  • Pull 5706: Remove mentions of Main thread from Schedulers.single() JavaDoc.
  • Pull 5709: Improve JavaDocs of flatMapSingle and flatMapMaybe.
  • Pull 5713: Add BaseTestConsumer values() and errors() thread-safety clarifications.
  • Pull 5717: Add period to custom scheduler use sentences in Schedulers.
  • Pull 5718: Add a sentence to documentation of take() operator about the thread onComplete may get signaled.
  • Pull 5738: Correct JavaDoc for ConnectableFlowable, GroupedFlowable, FlowableAutoConnect.
  • Pull 5740: Marbles for Observable all, fromPublisher, zipArray.

Bugfixes

  • Pull 5695: Fix Completable.concat to use replace (don't dispose old).
  • Pull 5715: Distinguish between sync and async dispose in ScheduledRunnable.
  • Pull 5743: Check isDisposed before emitting in SingleFromCallable.

Other

  • Pull 5723: Remove duplicate nullity check line in toMap.

1.3.4

19 Nov 10:42
265fb48
Compare
Choose a tag to compare

Maven

Bugfixes

  • Pull 5696: Fix Completable.concat to use replace and don't dispose the old Subscription on switching to the next source.
  • Pull 5726: Fix broken backpressure through unsubscribeOn().

Documentation

  • Pull 5719: Document the timed take() operator will signal the onCompleted event on the given Scheduler when it times out.

2.1.6

27 Oct 07:20
Compare
Choose a tag to compare

Maven

API changes

  • Pull 5649: Add Observable.concatMapCompletable().
  • Pull 5655: Add Flowable.limit() to limit both item count and request amount.

Documentation changes

  • Pull 5648: Improve package JavaDoc of io.reactivex and io.reactivex.observers.
  • Pull 5647: Fix subscribeWith documentation examples.
  • Pull 5651: Update Observable.just(2..10) and switchOnNextDelayError marbles.
  • Pull 5668: Fix a misleading documentation of Observable.singleElement().
  • Pull 5680: More Observable marble fixes.

Bugfixes

  • Pull 5669: Fix PublishProcessor cancel/emission overflow bug.
  • Pull 5677: Make parallel() a fusion-async-boundary.

Other

  • Pull 5652: Inline disposability in Observable.concatMap(Completable).
  • Pull 5653: Upgrade testng to get method names to show up in gradle console when skipping, and in testng html output.
  • Pull 5661: Improve Flowable.timeout().