Skip to content

Releases: ReactiveX/RxJava

0.18.3

09 May 17:57
Compare
Choose a tag to compare
  • Pull 1161 Removed use of deprecated API from tests & operators
  • Pull 1162 fix to remove drift from schedulePeriodic
  • Pull 1159 Rxscala improvement
  • Pull 1164 JMH Perf Tests for Schedulers.computation
  • Pull 1158 Scheduler correctness improvements.

Artifacts: Maven Central

0.18.2

05 May 21:13
Compare
Choose a tag to compare

Continued work on migrating operators on path to 1.0 along with various bug fixes.

Artifacts: Maven Central

0.18.1

25 Apr 03:27
Compare
Choose a tag to compare

Artifacts: Maven Central

0.18.0

23 Apr 05:16
Compare
Choose a tag to compare

This release takes us a step closer to 1.0 by completing some of the remaining work on the roadmap.

Scheduler

The first is simplifying the Scheduler API.

The Scheduler API is now simplified to this:

class Scheduler {
    public abstract Worker createWorker(); 
    public int parallelism();
    public long now();

    public abstract static class Worker implements Subscription {
        public abstract Subscription schedule(Action0 action, long delayTime, TimeUnit unit);
        public abstract Subscription schedule(Action0 action);
        public Subscription schedulePeriodically(Action0 action, long initialDelay, long period, TimeUnit unit);
        public long now();
    }
}

This is a breaking change if you have a custom Scheduler implementation or use a Scheduler directly. If you only ever pass in a Scheduler via the Schedulers factory methods, this change does not affect you.

Additionally, the ExecutionScheduler was removed because a general threadpool does not meet the requirements of sequential execution for an Observable. It was replaced with rx.schedulers.EventLoopScheduler which is the new default for Schedulers.computation(). It is a pool of event loops.

rx.joins

The rx.joins package and associated when, and and then operators were moved out of rxjava-core into a new module rxjava-joins. This is done as the rx.joins API was not yet matured and is not going to happen before 1.0. It was determined low priority and not worth blocking a 1.0 release. If the API matures inside the separate module to the point where it makes sense to bring it back into the core it can be done in the 1.x series.

Deprecation Cleanup

This releases removes many of the classes and methods that have been deprecated in previous releases. Most of the removed functionality was migrated in previous releases to contrib modules such as rxjava-math, rxjava-async and rxjava-computation-expressions.

A handful of deprecated items still remain but can not yet be removed until all internal operators are finished migrating to using the lift/Subscriber design changes done in 0.17.0.

The full list of changes in 0.18.0:

  • Pull 1047 Scheduler Simplification
  • Pull 1072 Scheduler.Inner -> Scheduler.Worker
  • Pull 1053 Deprecation Cleanup
  • Pull 1052 Scheduler Cleanup
  • Pull 1048 Remove ExecutorScheduler - New ComputationScheduler
  • Pull 1049 Move rx.joins to rxjava-joins module
  • Pull 1068 add synchronous test of resubscribe after error
  • Pull 1066 CompositeSubscription fix
  • Pull 1071 Manual Merge of AsObservable
  • Pull 1063 Fix bugs in equals and hashCode of Timestamped
  • Pull 1070 OperationAny -> OperatorAny
  • Pull 1069 OperationAll -> OperatorAll
  • Pull 1058 Typo in javadoc
  • Pull 1056 Add drop(skip) and dropRight(skipLast) to rxscala
  • Pull 1057 Fix: Retry in Scala adaptor is ambiguous
  • Pull 1055 Fix: Missing Quasar instrumentation on Observable$2.call
  • Pull 1050 Reimplement the 'SkipLast' operator
  • Pull 967 Reimplement the 'single' operator

Artifacts: Maven Central

0.17.6

17 Apr 03:06
Compare
Choose a tag to compare
  • Pull 1031 Fix NPE in SubjectSubscriptionManager
  • Pull 1030 Benchmarking: Add JMH benchmark for ReplaySubject
  • Pull 1033 isolate subscriber used for retries, cleanup tests
  • Pull 1021 OperatorWeakBinding to not use WeakReferences anymore
  • Pull 1005 add toMap from Java Observable
  • Pull 1040 Fixed deadlock in Subjects + OperatorCache
  • Pull 1042 Kotlin M7 and full compatibility with 0.17.0
  • Pull 1035 Scala cleanup
  • Pull 1009 Android - Adding a new RetainedFragment example
  • Pull 1020 Upgrade Gradle wrapper for Android samples to Gradle 1.11
  • Pull 1038 rxjava-android: parameterize OperatorViewClick by concrete view type

Artifacts: Maven Central

0.17.5

04 Apr 17:35
Compare
Choose a tag to compare
  • Pull 1010 Observable.unsafeSubscribe
  • Pull 1015 Remove Redundant protectivelyWrap Method
  • Pull 1019 Fix: retry() never unsubscribes from source until operator completes

Artifacts: Maven Central

0.17.4

02 Apr 20:20
Compare
Choose a tag to compare

This release adds a new contrib module with a Scheduler supporting lightweight threads or "fibers" via Quasar.

  • Pull 990 Quasar Lightweight Threads/Fibers Contrib Module
  • Pull 1012 SerializedObserver: Removed window between the two synchronized blocks

Artifacts: Maven Central

0.17.3

02 Apr 04:27
Compare
Choose a tag to compare
  • Pull 991 JMH Benchmark Build Config
  • Pull 993 JMH Perf Tests
  • Pull 995 Support Custom JMH Args
  • Pull 996 JMH Perfshadowjar
  • Pull 1003 Func0 can transparently implement java.util.concurrent.Callable
  • Pull 999 New Implementation of SerializedObserver

Artifacts: Maven Central

0.17.2

25 Mar 22:30
Compare
Choose a tag to compare
  • Pull 963 A more robust JMH benchmarking set-up
  • Pull 964 SubjectSubscriptionManager fix.
  • Pull 970 Notifications for the allocation averse.
  • Pull 973 Merge - Handle Bad Observables
  • Pull 974 TestSubject, TestObserver and TestScheduler Improvements
  • Pull 975 GroupBy & Time Gap Fixes
  • Pull 976 parallel-merge unit test assertions
  • Pull 977 Dematerialize - handle non-materialized terminal events
  • Pull 982 Pivot Operator
  • Pull 984 Tests and Javadoc for Pivot
  • Pull 966 Reimplement the ElementAt operator and add it to rxjava-scala
  • Pull 965 BugFix: Chain Subscription in TimeoutSubscriber and SerializedSubscriber
  • Pull 986 Fix SynchronizedObserver.runConcurrencyTest
  • Pull 987 Fix Non-Deterministic Pivot Test
  • Pull 988 OnErrorFailedException

Artifacts: Maven Central

0.17.1

13 Mar 22:53
Compare
Choose a tag to compare
  • Pull 953 Make ObserveOnTest.testNonBlockingOuterWhileBlockingOnNext deterministic
  • Pull 930 Initial commit of the Android samples module
  • Pull 938 OperatorWeakBinding (deprecates OperatorObserveFromAndroidComponent)
  • Pull 952 rxjava-scala improvements and reimplemented the amb operator
  • Pull 955 Fixed ReplaySubject leak
  • Pull 956 Fixed byLine test to use line.separator system property instead of \n.
  • Pull 958 OperatorSkipWhile
  • Pull 959 OperationToFuture must throw CancellationException on get() if cancelled
  • Pull 928 Fix deadlock in SubscribeOnBounded
  • Pull 960 Unit test for "Cannot subscribe to a Retry observable once all subscribers unsubscribed"
  • Pull 962 Migrate from SynchronizedObserver to SerializedObserver

Artifacts: Maven Central