Skip to content

Latest commit

 

History

History
173 lines (111 loc) · 8.45 KB

CHANGELOG.md

File metadata and controls

173 lines (111 loc) · 8.45 KB

Changelog

2.2.2 (2018-07-29)

  • #275: Updated dependencies

Normally simply updating dependencies wouldn't justify a new release, except that there are some R8 issues with RxLifecycle (due to it being compiled with Android lifecycle 1.0.0 instead of 1.1.0).

2.2.1 (2017-11-15)

  • #248: Remove generic type declaration for Completable bindings

  • #249: Updated to release version of Android architecture components

2.2.0 (2017-09-06)

  • #239: Added support for support preference fragments

    These can be found in the new rxlifecycle-components-preference artifact.

2.1.0 (2017-05-27)

  • #216: Added support for Android Architecture Components

    These can be found in the new rxlifecycle-android-lifecycle and rxlifecycle-android-kotlin artifacts.

  • #219: Fix potential build issues by making JSR305 compileOnly

2.0.1 (2016-11-23)

  • #183: Fix usage of null in navi module

2.0 (2016-11-21)

This major revision was made to support RxJava 2. RxLifecycle 2.0 lives in a new namespace and package names so that it can work side-by-side with RxLifecycle 1.0 (while transitioning).

The biggest change is that LifecycleTransformer now works for all RxJava types: Observable, Flowable, Single, Maybe and Completable. Unlike before, there's no extra steps you have to take to make it work with types other than Observable.

  • #167: Upgrade to RxJava 2
  • #169: Move to com.trello.rxlifecycle2
  • #170: Added Maybe support
  • #172: Added Flowable support

1.0 (2016-11-03)

First and (hopefully) final release of 1.x branch!

This release marks the start of maintenance mode for RxJava 1 support. Future work will be devoted to supporting RxJava 2. Important bugs may be squashed but new features will have to be extraordinarily compelling in order to be added.

  • #162: Made all components abstract
  • #157: Added RxPreferenceFragment

0.8.0 (2016-09-19)

  • #152: Support RxJava 1.2.0.

    This change is not backwards compatible with RxJava 1.1.x, so if you want to continue receiving updates for RxLifecycle you will eventually need to upgrade to RxJava 1.2.x.

0.7.0 (2016-08-24)

There are a couple major breaking changes in this release, so read carefully.

  • #143: Split Android parts of rxlifecycle into rxlifecycle-android

    Now the rxlifecycle dependency is a pure Java core. To use RxLifecycle with Android, you should also include rxlifecycle-android as well now.

    RxLifecycle methods that are for Android (bindActivity(), bindFragment() and bindView()) are now in RxLifecycleAndroid (found in the rxlifecycle-android artifact).

    Deprecated methods in RxLifecycle were removed as well.

  • #138 / #139: Replace ActivityLifecycleProvider and FragmentLifecycleProvider with LifecycleProvider<T>.

    This means that you need to replace ActivityLifecycleProvider with LifecycleProvider<ActivityEvent> and FragmentLifecycleProvider with LifecycleProvider<FragmentEvent>.

Other changes:

  • #140: Fixed type inference for LifecycleTransformer.forSingle()
  • #135: Add Kotlin extensions for Singles and Completables

0.6.1 (2016-05-11)

  • #118: Use LifecycleTransformer in the provider interfaces

0.6.0 (2016-05-06)

  • Added LifecycleTransformer, which provides Single and Completable support.
  • #111: Added component support for AppCompatDialogFragment
  • #107: Fixed navi component package

0.5.0 (2016-02-27)

There are a few methods which have been deprecated and will be removed in a future release. Each one has a drop-in replacement (and currently calling the deprecated version just routes to the new one):

  • bindUntilActivityEvent() and bindUntilFragmentEvent() -> bindUntilEvent()
  • bindView() -> bind()

The other changes mostly involve opening up the API for more customization:

  • #78: Added rxlifecycle-kotlin (adds some extensions)
  • #79: Made bindUntilEvent() public, deprecated more specific calls
  • #82: Opened up bind() methods for public consumption
  • #83, #85: Added annotations for better lint checking
  • #88: Use .equals() instead of == for event comparison (for custom event support with the newly opened-up bind())
  • #89: Make OutsideLifecycleException public (for anyone who wants to write their own bind() implementations)

0.4.0 (2015-12-10)

  • #62, #67: Added Navi-based implementation of providers.
  • #61: Moved ActivityLifecycleProvider and FragmentLifecycleProvider into the core library so that multiple implementations can share them easily. The package name changed so you may need to re-import them in your code.
  • #60: Reverted generic parameters back to Transformer<T, T>

0.3.1 (2015-11-27)

  • #46: Updated generic parameters of Transformer<T, T> to support Kotlin type inference.

0.3.0

  • #12: Added RxLifecycle.bindView(). This allows binding a Subscription until a View detaches itself from the window.
  • #30: Calling bindActivity() or bindFragment() outside of the lifecycle causes the sequence to immediately complete (instead of throwing an error).
  • #31: Passing nulls to RxLifecycle now always immediately throws an exception.

0.2.0

  • #14: Use takeUntil internally (instead of a faulty custom operator)

    While this fixes some intractable problems that could occur with the old system, it also includes a major behavior change: when the bind decides to stop subscribing, it calls onCompleted (whereas before it would just unsubscribe).

    When upgrading, you should check that your usages of onCompleted (either in subscribe(), doOnCompleted(), or doOnTerminate()) can handle the sequence ending due to the lifecycle bind.

    If you still need the old behavior in some spots, you should handle the Subscription yourself manually (and call unsubscribe() when appropriate).

  • #16: Lowered minSdkVersion to 14

0.1.0

Initial independent release (split from RxAndroid 0.25.0)

  • Added support for AppCompatActivity via RxAppCompatActivity
  • Components (e.g. RxActivity) now support bindUntilEvent() and bindToLifecycle(), which avoids having to deal with the lifecycle Observable directly.

Differences from RxAndroid 0.25

  • Renamed LifecycleObservable to RxLifecycle
  • Switched from wrapping Observables to using Transformer + compose() (which allows for chaining)
  • Split LifecycleEvent into two parts - ActivityEvent and FragmentEvent, in order to prevent easy mixups that could occur before
  • Split bindUntilLifecycleEvent() into bindUntilFragmentEvent() and bindUntilActivityEvent()
  • Renamed bindFragmentLifecycle() to bindFragment()
  • Renamed bindActivityLifecycle() to bindActivity()