Releases: ReactiveX/RxAndroid
1.2.0
- Rewrite the Android-specific schedulers (main thread or custom) to greatly reduce allocation and
performance overhead of scheduling work. HandlerScheduler.create
has been deprecated in favor ofAndroidSchedulers.from(Looper)
as
aLooper
is the actual mechanism of scheduling on Android, notHandler
.- Fix: Correct the behavior of
AndroidSchedulers.mainThread()
to only invoke the registered
RxAndroidSchedulersHook
for creating the main thread scheduler and to cache the result instead
of invoking it every time. This behvior change eliminates a performance overhead and brings
behavior in line with RxJava. If you were relying on the ability to change the main thread
scheduler over time (such as for tests), return a delegating scheduler from the hook which allows
changing the delegate instance at will. - RxJava dependency now points at v1.1.4.
RxAndroidPlugins.reset()
is now marked as@Experimental
to match the RxJava method of the
same name and behavior.
1.1.0
- New:
MainThreadSubscription
utility class runs itsonUnsubscribe
action on the Android main
thread. This aids in adding tear-down actions which must be executed on the main thread without
having to deal with posting to the main thread yourself. - Fix: Lazily initialize
mainThread()
scheduler so that no Android code is run when overridden.
This allows unit tests overriding the implementation to work correctly. - RxJava dependency now points at v1.1.0.
Download:
compile 'io.reactivex:rxandroid:1.1.0'
1.0.1
- Fix: Correctly check
isUnsubscribed()
state inHandlerScheduler
's worker before scheduling
more work. - Fix: Eliminate a potential race condition in
HandlerScheduler
to ensure any posted work will
be canceled on unsubscription.
Download:
compile 'io.reactivex:rxandroid:1.0.1'
1.0.0
Initial stable release!
In order to provide a library that no project using RxJava would hesitate to depend on, the decision was made to remove the APIs which were not absolutely fundamental to all apps. That is what's contained in this release.
Functionality which was previously part of this library is being explored in separate, modular
libraries:
LifecycleObservable
: https://github.com/trello/RxLifecycleViewObservable
andWidgetObservable
: https://github.com/JakeWharton/RxBinding
This allows for a simpler process of design, development, and experimentation for the best ways to provide features like hooks into the lifecycle, binding to UI components, and simplifying interaction with all of Android's API. Not only can these projects now have their own release schedule, but it allows developers to pick and choose which ones are appropriate for your
application.
Applications using the various APIs which were previously in this library do not need to update immediately. Due to the number of APIs removed, switching to 1.0 and the use of these third-party libraries should be done gradually.
Breaking changes:
AndroidSchedulers.handlerThread()
is nowHandlerScheduler.from()
.- All other APIs have been removed aside from
AndroidSchedulers.mainThread()
,RxAndroidPlugins
, andRxAndroidSchedulersHook
.
Download:
compile 'io.reactivex:rxandroid:1.0.0'
0.25.0
- New:
RxAndroidPlugins
and itsRxAndroidSchedulersHook
provides a mechanism similar toRxJavaPlugins
(and itsRxJavaSchedulersHook
) for
changing the scheduler returned fromAndroidSchedulers.mainThread()
as well as a callback for each subscription on anyHandler
-based scheduler. - Fix: Ensure errors are properly propagated from
ContentObservable.fromCursor
. - Fix:
LifecycleObservable
now correctly unsubscribes from its sources.
Breaking changes:
- Users of
AppObservable.bindFragment
with a support-v4Fragment
should now usebindSupportFragment
.
0.24.0
This release has some breaking changes:
rx.android.observables.AndroidObservable
has changed torx.android.app.AppObservable
;ViewObservable
has moved fromrx.android.observables
torx.android.view
- (as part of RxJava's breaking changes)
collect
has changed
0.23.0
0.22.0
0.21.0
This is the first release after splitting from RxJava into its own top level project RxAndroid.
This is the same code as version 0.20.4 except:
- all deprecated methods and types are deleted
- now published to groupId
io.reactivex
instead ofcom.netflix.rxjava
- artifactId is now
rxandroid
instead ofrxjava-android
io.reactivex:rxandroid:0.21.0
Issues and discussions specific to RxAndroid should now be had in the RxAndroid Issues. Issues with core Observable
and operators remain in RxJava Issues.
The artifacts can be found on maven Central at: http://repo1.maven.org/maven2/io/reactivex/rxandroid
Artifacts: Maven Central
0.20.4
Last release as submodule of of RxJava: https://github.com/ReactiveX/RxJava/releases/tag/0.20.4