Changelog History
Page 4
-
v3.3.1 Changes
Anomalies
- ๐ Fixes misspelled
Completeable
toCompletable
. #1134
- ๐ Fixes misspelled
-
v3.3.0 Changes
- โ Adds
Single
,Maybe
,Completable
traits inspired by RxJava (operators):create
deferred
just
error
never
delaySubscription
delay
do
filter
map
flatMap
observeOn
subscribeOn
catchError
retry
retryWhen
zip
- โ Adds
asSingle()
operator onObservableType
. - โ Adds
asMaybe()
operator onObservableType
. - โ Adds
asCompletable()
operator onObservableType
. - โ Adds variadic
combineLatest
andzip
overloads without result selector (defaults to tuple). - โ Adds array
combineLatest
andzip
overloads with result selector (defaults to array of elements) - โ Adds optimized synchronous
merge
operator to observable sequence (variadic, array, collection). #579 - โ Adds optimized synchronous
merge
operator to shared sequence (variadic, array, collection). - โ Adds
AsyncSubject
implementation. - โ Adds
XCTAssertEqual
overloads toRxTest
. - โ Adds
countDownDuration
toUIDatePicker
. - โ Adds
attributedTitle(for:)
toUIButton
. - โ Adds
onSubscribed
todo
operator. - โ Adds
isUserInteractionEnabled
toUIView
.
Anomalies
- ๐ Improves DelegateProxy
responds(to:)
selector logic to only respond to used selectors. #1081, #1087 - ๐ Deprecates
from()
in favor offrom(optional:)
to avoid issues with implicit conversions to optional. - ๐ Fixes thread sanitizer reporting issues with
merge
operator. #1063 - โช Calls
collectionViewLayout.invalidateLayout()
afterreloadData()
as a workaround for iOS 10 bug. - โก๏ธ Changes
UICollectionView.rx.didUpdateFocusInContextWithAnimationCoordinator
context parameter type toUICollectionViewFocusUpdateContext
- โ Adds
-
v3.2.0 Changes
- โ Adds
groupBy
operator - โ Adds
ifEmpty(switchTo:)
operator - โ Adds [
ifEmpty(default:)
]((http://reactivex.io/documentation/operators/defaultifempty.html)) operator - โ Adds
Disposable
extensiondisposed(by:)
equivalent toaddDisposableTo
that is meant to replace it in future 4.0 version. - ๐ง Consolidates atomic operations on Linux and Darwin platform.
- โ Adds DEBUG mode concurrent asserts for
Variable
andObservable.create
. - โ Adds DEBUG mode concurrent asserts for
Sink
. - ๐ Small performance optimizations for subjects.
- Adaptations for Xcode 8.3 beta.
- โ Adds
numberOfPages
toUIPageControl
. - โ Adds additional resources cleanup unit tests for cases where operators are used without
DisposeBag
s. - Chroes:
- Adds
final
keyword wherever applicable. - Remove unnecessary
import Foundation
statements. - Examples cleanup.
- Adds
Anomalies
- ๐ Improves behavior of
shareReplayWhileConnected
by making sure that events emitted after disconnect are ignored even in case of fast reconnect. - ๐ Fixes a couple of operators that were not cleaning up resources on terminal events when used without
DisposeBag
s. - ๐ Fixes delegate proxy interaction with subclassing of
UISearchController
. - ๐ Fixes delegate proxy interaction with subclassing of
NSTextStorage
. - ๐ Fixes delegate proxy interaction with subclassing of
UIWebView
. - ๐ Fixes delegate proxy interaction with subclassing of
UIPickerView
.
- โ Adds
-
v3.1.0 Changes
- โ Adds
changed
property toControlProperty
that returnsControlEvent
of user generated changes.textField.text.changed.map { "User changed text to \($0)" }
- โ Adds optional overloads for
from
operator.let num: Int? = 3; let sequence = Observable.from(num)
- ๐ Improves
UIBindingObserver
by tolerating binding from non main dispatch queue. In case binding is attempted from non main dispatch queue it will be automagically dispathed async to main queue. - ๐ Makes control property naming consistent for
UIDatePicker
,UISearchBar
,UISegmentedControl
,UISwitch
,UITextField
,UITextView
(value
property + value alias name). - โ Adds missing extension to
UIScrollView
.didScroll
didZoom
didEndDecelerating
didEndDragging
didScrollToTop
- ๐ Renames
refreshing
toisRefreshing
. - โ adds
UIWebView
extensions:didStartLoad
didFinishLoad
didFailLoad
- โ Adds
UITabBarController
extensionswillBeginCustomizing
willEndCustomizing
didEndCustomizing
didSelect
- โ Adds
UIBarButtonItem
extensionstitle
- ๐ Performance optimizations
- ๐ Improves data source behavior by clearing data source proxy when forwarding delegate is
nil
.
Anomalies
- ๐ Fixes anomaly caused by
UITableView
invalid state caching of previous data source even after the change. Binding of reactive data source now triggerslayoutIfNeeded
that invalidates that internal cached state. - ๐ Fixes issue with race in
AnyRecursiveScheduler
. #995
- โ Adds
-
v3.0.1 Changes
Anomalies
- ๐ Fixes RxCocoa problems on macOS (
TextInput
now usesNSTextInputClient
) - Hides accidentally exposed
BagKey
structure. - ๐ Makes
notification
extensionname
parameter optional.
- ๐ Fixes RxCocoa problems on macOS (
-
v3.0.0 Changes
- ๐ Prefixes boolean properties with
is
and makesString?
properties consistent.rx.hidden
->rx.isHidden
rx.enabled
->rx.isEnabled
... also ...- since
rx.text
has now typeString?
to be consistent with UIKit, in caseString
is needed there isrx.text.orEmpty
that hasString
type.
- ๐ Renames
title(controlState:)
onUIButton
totitle(for:)
. - All data structures are now internal (
Bag
,Queue
,PriorityQueue
...) - ๐ Improves performance of
Bag
. - ๐
Polishes RxCocoa
URLSession
extensionsJSON
->json
- return type is
Any
instead ofAnyObject
- replaces response tuple parameters, now it's
(HTTPResponse, Data)
- removes name hiding for
request
parameter
- ๐ง Migrates
Driver
andNSNotification
tests toLinux
. - โ Removes RxTest from OSX + SPM integration until usable XCTest support on OSX.
- ๐ Renames
ObserverType.map
toOberverType.mapObserver
because of possible ambigutites with subjects. - ๐ Improves dispatch queue detection logic and replaces concept of threads in favor of dispatch queues (solves a lot of problems on Linux environment).
- Replaces
SectionedViewDataSourceType.model(_:)
withSectionedViewDataSourceType.model(at:)
- ๐ Renames
OSX
tomacOS
across the project.
Anomalies
- ๐ Fixes wrong casing in
#import "include/_RXObjCRuntime.h"
(was creating issues for people with case sensitive file system). #949 - ๐ Fixes issues with locking strategy for subjects. #936
- ๐ Fixes code example in comments of RxTableViewExtensions that didn't compile. #947
- โ Adds
.swift-version
to help package managers to detect Swift 3 version.
- ๐ Prefixes boolean properties with
-
v3.0.0-rc.1 Changes
- ๐ฆ Renames
RxTests
library toRxTest
because of problems with Swift Package Manager. - โ Adds Swift Package Manager support
- โ Adds Linux support
- Replaces
AnyObserver
withUIBindingObserver
in public interface. - ๐ Renames
resourceCount
toResources.total
. - ๐ Makes
rx.text
type consistent with UIKitString?
type.
textField.rx.text // <- now has type `ControlProperty<String?>` textField.rx.text.orEmpty // <- now has type `ControlProperty<String>`
- โ Adds optional overloads for
bindTo
anddrive
. Now the following works:
let text: Observable<String> = Observable.just("") // Previously `map { $0 }` was needed because of mismatch betweeen sequence `String` type and `String?` type // on binding `rx.text` observer. text.bindTo(label.rx.text) .disposed(by: disposeBag) ... let text = Driver.just("") text.drive(label.rx.text) .disposed(by: disposeBag)
- โ Adds trim output parameter to
debug
operator. #930 - ๐ Renames
NSDate
toDate
everywhere. - โฑ Renames scheduler init param
globalConcurrentQueueQOS
toqos
and removes custom enum wrapper. - โ Adds setter to
rx
property to enable mutation of base object.
- ๐ฆ Renames
-
v3.0.0-beta.2 Changes
Subscription disposables now only create strong references to sinks until being disposed or sequence terminates. #573
Introduces
SharedSequence
and makesDriver
just a specialization ofSharedSequence
. That meansDriver
is now just one specificSharedSequence
and it is now possible to easily create new concepts that have another compile time guarantees in a couple of lines of code. E.g. choosing a background scheduler on which elements are delivered, or choosingshare
as a sharing strategy instead ofshareReplayLatestWhileConnected
.๐ Moves
Reactive
struct andReactiveCompatible
fromRxCocoa
toRxSwift
to enable third party consumers to removeRxCocoa
dependency.โ Add
rx.
extensions on Types.๐ Moves
UIImagePickerViewController
andCLLocationManager
out ofRxCocoa
toRxExample
project because of App Store submissions issues on iOS 10.โ Adds
sentMessage
got its equivalent sequencemethodInvoked
that produces elements after method is invoked (vs before method is invoked).๐ Deprecates
observe
method onDelegateProxy
in favor ofsentMessage
.โ Adds simetric
methodInvoked
method onDelegateProxy
that enables observing after method is invoked.๐ Moves all delegate extensions from using
sentMessage
to usingmethodInvoked
(that fixes some problem with editing data sources)๐ Fixes problem with
RxTableViewDataSourceProxy
source enabling editing of table view cells (swipe on delete) even if there weren't any observers orforwardToDelegate
wasn't implementingUITableViewDataSource.tableView(_:commit:forRowAt:)
. #907๐ Makes
DelegateProxy
open. #884๐ Deprecates extensions that were polluting Swift collection namespaces and moves them to static functions on
Observable
Observable.combineLatest
Observable.zip
Observable.concat
Observable.catchError
(sequence version)Observable.amb
๐ Deprecates extensions that were polluting Swift collection namespaces and moves them to static functions on
Driver
Driver.combineLatest
Driver.zip
Driver.concat
Driver.catchError
(sequence version)Driver.amb
โก๏ธ Update Getting Started document, section on creating an observable that performs work to Swift 3.0.
โ Removes stale installation instructions.
-
v3.0.0-beta.1 Changes
- Adapts to new Swift 3.0 syntax.
- โ
Corrects
throttle
operator behavior to be more consistent with other platforms. Addslatest
flag that controls should latest element be emitted after dueTime. - โ Adds
delay
operator. - โ Adds
UISearchBar
extensions:bookmarkButtonClicked
resultsListButtonClicked
textDidBeginEditing
textDidEndEditing
- ๐ Moves
CLLocationManager
andUIImagePickerViewController
extensions from RxCocoa to RxExample project. #874
* โ Adds matrix CI builds.
-
v2.6.0 Changes
๐ Features
- โ Adds Swift 2.3 compatibility.
- โ Adds
UIViewController.rx_title
extension. - โ Adds
UIScrollView.rx_scrollEnabled
extension. - Resolve static analysis issues relating to non-use of an assigned value, and potential null dereferences in RxCocoa's Objective-C classes.
- ๐ Changes
forwardDelegate
property type onDelegateProxy
fromassign
toweak
. - Simplifies UITable/CollectionView data source generic parameters.
- โ Adds simple usage examples to UITable/CollectionView data source extensions.
- ๐ Documents UITable/CollectionView data source extensions memory management and adds unit tests to cover that documentation.
- โ Adds
.jazzy.yml
- โ Adds
UITabBar
extensions and delegate proxy wrapper- rx_didSelectItem
- rx_willBeginCustomizing
- rx_didBeginCustomizing
- rx_willEndCustomizing
- rx_didEndCustomizing
- โ Adds
UIPickerView
delegate proxy and extensions:- rx_itemSelected
- โ Adds
UIAlertAction.rx_enabled
extension. - โ Adds
UIButton.rx_title(controlState: UIControlState = .Normal)
extension. - โ Adds
UIPageControl.rx_currentPage
extension. - โ Adds
hasObservers
property to*Subject
.
Anomalies
- ๐ Fixes problem with UITable/CollectionView releasing of data sources when result subscription disposable wasn't retained.
- ๐ Fixes all Xcode analyzer warnings