diff --git a/CHANGELOG.md b/CHANGELOG.md index d686d7e8..77320a5e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,8 +3,32 @@ All notable changes to this project will be documented in this file. --- +## [2.0.0-alpha.4](https://github.com/ReactiveX/RxSwift/releases/tag/2.0.0-alpha.4) + +#### Updated + +* Adds `tvOS` support +* Adds `watchOS` support +* Adds auto loading example to example app +* Restores old `Variable` behavior. Variable doesn't send anything on dealloc. +* Adds performance tests target. +* Adds more detailed resource tracing during unit tests (important for further optimizations). +* Adds `UIStepper` extensions. +* Adds `UIBarButtonItem` enabled property wrapper. +* Adds response data to userInfo of error for `rx_response` extensions of `NSURLSession`. +* Adds `onNext`, `onError` and `onCompleted` convenience methods to `ObserverType`. + +#### Fixed + +* Fixes problem on some systems with unregistering `CurrentThreadScheduler` from current thread. +* Fixes retry parameter naming (`maxAttemptCount`). +* Fixes a lot of unit test warnings. +* Removes embedding of Swift library with built frameworks. + ## [2.0.0-alpha.3](https://github.com/ReactiveX/RxSwift/releases/tag/2.0.0-alpha.3) +#### Updated + * Renames `ImmediateScheduler` protocol to `ImmediateSchedulerType` * Renames `Scheduler` protocol to `SchedulerType` * Adds `CurrentThreadScheduler` diff --git a/README.md b/README.md index 3c89325b..5acb77e4 100644 --- a/README.md +++ b/README.md @@ -454,6 +454,8 @@ Open Rx.xcworkspace, choose `RxExample` and hit run. This method will build ever ### [CocoaPods](https://guides.cocoapods.org/using/using-cocoapods.html) +**:warning: IMPORTANT! For tvOS support through CocoaPods use [this hack](https://github.com/orta/cocoapods-expert-difficulty) until `0.39` is released. :warning:** + ``` # Podfile use_frameworks! @@ -474,7 +476,7 @@ $ pod install Add this to `Cartfile` ``` -git "git@github.com:ReactiveX/RxSwift.git" "2.0.0-alpha.3" +git "git@github.com:ReactiveX/RxSwift.git" "2.0.0-alpha.4" ``` ``` diff --git a/Rx.xcodeproj/project.pbxproj b/Rx.xcodeproj/project.pbxproj index d5a1d7af..cec55033 100644 --- a/Rx.xcodeproj/project.pbxproj +++ b/Rx.xcodeproj/project.pbxproj @@ -298,10 +298,6 @@ C88254341B8A752B00B02D69 /* UITableView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88254121B8A752B00B02D69 /* UITableView+Rx.swift */; }; C88254351B8A752B00B02D69 /* UITextField+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88254131B8A752B00B02D69 /* UITextField+Rx.swift */; }; C88254361B8A752B00B02D69 /* UITextView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88254141B8A752B00B02D69 /* UITextView+Rx.swift */; }; - C8A468C81B8A892A00BF917B /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C8A56AD71AD7424700B4673B /* RxSwift.framework */; }; - C8A468C91B8A893400BF917B /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C88BB8711B07E5ED0064D411 /* RxSwift.framework */; }; - C8A468CA1B8A893A00BF917B /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C8A56AD71AD7424700B4673B /* RxSwift.framework */; }; - C8A468CB1B8A894100BF917B /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C88BB8711B07E5ED0064D411 /* RxSwift.framework */; }; C8C3D9FE1B935EDF004D233E /* Zip+CollectionType.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8C3D9FD1B935EDF004D233E /* Zip+CollectionType.swift */; }; C8C3D9FF1B935EDF004D233E /* Zip+CollectionType.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8C3D9FD1B935EDF004D233E /* Zip+CollectionType.swift */; }; C8C3DA031B9390C4004D233E /* Just.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8C3DA021B9390C4004D233E /* Just.swift */; }; @@ -316,6 +312,173 @@ C8C3DA101B939767004D233E /* CurrentThreadScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8C3DA0E1B939767004D233E /* CurrentThreadScheduler.swift */; }; C8C3DA121B93A3EA004D233E /* AnonymousObservable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8C3DA111B93A3EA004D233E /* AnonymousObservable.swift */; }; C8C3DA131B93A3EA004D233E /* AnonymousObservable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8C3DA111B93A3EA004D233E /* AnonymousObservable.swift */; }; + C8F0BF921BBBFB8B001B112F /* Observable+Creation.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C981B8A72BE0088E94D /* Observable+Creation.swift */; }; + C8F0BF931BBBFB8B001B112F /* ConnectableObservableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C4D1B8A72BE0088E94D /* ConnectableObservableType.swift */; }; + C8F0BF941BBBFB8B001B112F /* Just.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8C3DA021B9390C4004D233E /* Just.swift */; }; + C8F0BF951BBBFB8B001B112F /* NopDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C5C1B8A72BE0088E94D /* NopDisposable.swift */; }; + C8F0BF961BBBFB8B001B112F /* Disposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C521B8A72BE0088E94D /* Disposable.swift */; }; + C8F0BF971BBBFB8B001B112F /* SingleAssignmentDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C601B8A72BE0088E94D /* SingleAssignmentDisposable.swift */; }; + C8F0BF981BBBFB8B001B112F /* FailWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8C3DA081B93941E004D233E /* FailWith.swift */; }; + C8F0BF991BBBFB8B001B112F /* SchedulerServices+Emulation.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CBB1B8A72BE0088E94D /* SchedulerServices+Emulation.swift */; }; + C8F0BF9A1BBBFB8B001B112F /* ObserverOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CA01B8A72BE0088E94D /* ObserverOf.swift */; }; + C8F0BF9B1BBBFB8B001B112F /* Skip.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C891B8A72BE0088E94D /* Skip.swift */; }; + C8F0BF9C1BBBFB8B001B112F /* StableCompositeDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C611B8A72BE0088E94D /* StableCompositeDisposable.swift */; }; + C8F0BF9D1BBBFB8B001B112F /* Zip+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C921B8A72BE0088E94D /* Zip+arity.swift */; }; + C8F0BF9E1BBBFB8B001B112F /* Timer.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C911B8A72BE0088E94D /* Timer.swift */; }; + C8F0BF9F1BBBFB8B001B112F /* Empty.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8C3DA051B9393AC004D233E /* Empty.swift */; }; + C8F0BFA01BBBFB8B001B112F /* RxBox.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CB01B8A72BE0088E94D /* RxBox.swift */; }; + C8F0BFA11BBBFB8B001B112F /* Sink.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C881B8A72BE0088E94D /* Sink.swift */; }; + C8F0BFA21BBBFB8B001B112F /* TakeUntil.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C8E1B8A72BE0088E94D /* TakeUntil.swift */; }; + C8F0BFA31BBBFB8B001B112F /* MainScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CB71B8A72BE0088E94D /* MainScheduler.swift */; }; + C8F0BFA41BBBFB8B001B112F /* Generate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C84B38ED1BA433CD001B7D88 /* Generate.swift */; }; + C8F0BFA51BBBFB8B001B112F /* Deferred.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C761B8A72BE0088E94D /* Deferred.swift */; }; + C8F0BFA61BBBFB8B001B112F /* ReplaySubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CC01B8A72BE0088E94D /* ReplaySubject.swift */; }; + C8F0BFA71BBBFB8B001B112F /* Zip+CollectionType.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8C3D9FD1B935EDF004D233E /* Zip+CollectionType.swift */; }; + C8F0BFA81BBBFB8B001B112F /* Observable+Time.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C9D1B8A72BE0088E94D /* Observable+Time.swift */; }; + C8F0BFA91BBBFB8B001B112F /* Observable+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C671B8A72BE0088E94D /* Observable+Extensions.swift */; }; + C8F0BFAA1BBBFB8B001B112F /* Throttle.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C901B8A72BE0088E94D /* Throttle.swift */; }; + C8F0BFAB1BBBFB8B001B112F /* AsObservable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C6D1B8A72BE0088E94D /* AsObservable.swift */; }; + C8F0BFAC1BBBFB8B001B112F /* Catch.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C6E1B8A72BE0088E94D /* Catch.swift */; }; + C8F0BFAD1BBBFB8B001B112F /* CombineLatest.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C711B8A72BE0088E94D /* CombineLatest.swift */; }; + C8F0BFAE1BBBFB8B001B112F /* Observable+Multiple.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C9A1B8A72BE0088E94D /* Observable+Multiple.swift */; }; + C8F0BFAF1BBBFB8B001B112F /* ObserverBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CA61B8A72BE0088E94D /* ObserverBase.swift */; }; + C8F0BFB01BBBFB8B001B112F /* ConnectableObservable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C741B8A72BE0088E94D /* ConnectableObservable.swift */; }; + C8F0BFB11BBBFB8B001B112F /* Observable+StandardSequenceOperators.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C9C1B8A72BE0088E94D /* Observable+StandardSequenceOperators.swift */; }; + C8F0BFB21BBBFB8B001B112F /* DistinctUntilChanged.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C781B8A72BE0088E94D /* DistinctUntilChanged.swift */; }; + C8F0BFB31BBBFB8B001B112F /* Observable+Binding.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C961B8A72BE0088E94D /* Observable+Binding.swift */; }; + C8F0BFB41BBBFB8B001B112F /* TailRecursiveSink.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CA91B8A72BE0088E94D /* TailRecursiveSink.swift */; }; + C8F0BFB51BBBFB8B001B112F /* AsyncLock.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C4B1B8A72BE0088E94D /* AsyncLock.swift */; }; + C8F0BFB61BBBFB8B001B112F /* BinaryDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C551B8A72BE0088E94D /* BinaryDisposable.swift */; }; + C8F0BFB71BBBFB8B001B112F /* ObserveOn.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C801B8A72BE0088E94D /* ObserveOn.swift */; }; + C8F0BFB81BBBFB8B001B112F /* Sample.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C861B8A72BE0088E94D /* Sample.swift */; }; + C8F0BFB91BBBFB8B001B112F /* ScopedDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C5E1B8A72BE0088E94D /* ScopedDisposable.swift */; }; + C8F0BFBA1BBBFB8B001B112F /* Multicast.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C7E1B8A72BE0088E94D /* Multicast.swift */; }; + C8F0BFBB1BBBFB8B001B112F /* CurrentThreadScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8C3DA0E1B939767004D233E /* CurrentThreadScheduler.swift */; }; + C8F0BFBC1BBBFB8B001B112F /* Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CAF1B8A72BE0088E94D /* Rx.swift */; }; + C8F0BFBD1BBBFB8B001B112F /* CombineLatest+CollectionType.swift in Sources */ = {isa = PBXBuildFile; fileRef = C80D342D1B9245A40014629D /* CombineLatest+CollectionType.swift */; }; + C8F0BFBE1BBBFB8B001B112F /* SubjectType.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CC11B8A72BE0088E94D /* SubjectType.swift */; }; + C8F0BFBF1BBBFB8B001B112F /* Observable+Debug.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C991B8A72BE0088E94D /* Observable+Debug.swift */; }; + C8F0BFC01BBBFB8B001B112F /* Observable+Concurrency.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C971B8A72BE0088E94D /* Observable+Concurrency.swift */; }; + C8F0BFC11BBBFB8B001B112F /* AnonymousObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CA21B8A72BE0088E94D /* AnonymousObserver.swift */; }; + C8F0BFC21BBBFB8B001B112F /* PublishSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CBF1B8A72BE0088E94D /* PublishSubject.swift */; }; + C8F0BFC31BBBFB8B001B112F /* Merge.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C7D1B8A72BE0088E94D /* Merge.swift */; }; + C8F0BFC41BBBFB8B001B112F /* SchedulerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CB31B8A72BE0088E94D /* SchedulerType.swift */; }; + C8F0BFC51BBBFB8B001B112F /* Variable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CC21B8A72BE0088E94D /* Variable.swift */; }; + C8F0BFC61BBBFB8B001B112F /* OperationQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CB81B8A72BE0088E94D /* OperationQueueScheduler.swift */; }; + C8F0BFC71BBBFB8B001B112F /* DispatchQueueSchedulerPriority.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CB61B8A72BE0088E94D /* DispatchQueueSchedulerPriority.swift */; }; + C8F0BFC81BBBFB8B001B112F /* CombineLatest+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C6F1B8A72BE0088E94D /* CombineLatest+arity.swift */; }; + C8F0BFC91BBBFB8B001B112F /* DisposeBag.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C581B8A72BE0088E94D /* DisposeBag.swift */; }; + C8F0BFCA1BBBFB8B001B112F /* RecursiveScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CB91B8A72BE0088E94D /* RecursiveScheduler.swift */; }; + C8F0BFCB1BBBFB8B001B112F /* Scan.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C871B8A72BE0088E94D /* Scan.swift */; }; + C8F0BFCC1BBBFB8B001B112F /* Queue.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C511B8A72BE0088E94D /* Queue.swift */; }; + C8F0BFCD1BBBFB8B001B112F /* AnonymousObservable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8C3DA111B93A3EA004D233E /* AnonymousObservable.swift */; }; + C8F0BFCE1BBBFB8B001B112F /* FlatMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C7B1B8A72BE0088E94D /* FlatMap.swift */; }; + C8F0BFCF1BBBFB8B001B112F /* DisposeBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C591B8A72BE0088E94D /* DisposeBase.swift */; }; + C8F0BFD01BBBFB8B001B112F /* AnonymousDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C541B8A72BE0088E94D /* AnonymousDisposable.swift */; }; + C8F0BFD11BBBFB8B001B112F /* ConcurrentDispatchQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CB51B8A72BE0088E94D /* ConcurrentDispatchQueueScheduler.swift */; }; + C8F0BFD21BBBFB8B001B112F /* Switch.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C8C1B8A72BE0088E94D /* Switch.swift */; }; + C8F0BFD31BBBFB8B001B112F /* BehaviorSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CBE1B8A72BE0088E94D /* BehaviorSubject.swift */; }; + C8F0BFD41BBBFB8B001B112F /* DelaySubscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C771B8A72BE0088E94D /* DelaySubscription.swift */; }; + C8F0BFD51BBBFB8B001B112F /* Range.swift in Sources */ = {isa = PBXBuildFile; fileRef = C86409FB1BA593F500D3C4E8 /* Range.swift */; }; + C8F0BFD61BBBFB8B001B112F /* Map.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C7C1B8A72BE0088E94D /* Map.swift */; }; + C8F0BFD71BBBFB8B001B112F /* InfiniteSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C501B8A72BE0088E94D /* InfiniteSequence.swift */; }; + C8F0BFD81BBBFB8B001B112F /* ObservableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C9E1B8A72BE0088E94D /* ObservableType.swift */; }; + C8F0BFD91BBBFB8B001B112F /* Observable+Aggregate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C951B8A72BE0088E94D /* Observable+Aggregate.swift */; }; + C8F0BFDA1BBBFB8B001B112F /* ObserveOnSerialDispatchQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C811B8A72BE0088E94D /* ObserveOnSerialDispatchQueue.swift */; }; + C8F0BFDB1BBBFB8B001B112F /* StartWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C8A1B8A72BE0088E94D /* StartWith.swift */; }; + C8F0BFDC1BBBFB8B001B112F /* Buffer.swift in Sources */ = {isa = PBXBuildFile; fileRef = C821DBA11BA4DCAB008F3809 /* Buffer.swift */; }; + C8F0BFDD1BBBFB8B001B112F /* TakeWhile.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C8F1B8A72BE0088E94D /* TakeWhile.swift */; }; + C8F0BFDE1BBBFB8B001B112F /* Amb.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C6B1B8A72BE0088E94D /* Amb.swift */; }; + C8F0BFDF1BBBFB8B001B112F /* Do.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C791B8A72BE0088E94D /* Do.swift */; }; + C8F0BFE01BBBFB8B001B112F /* SerialDispatchQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CBC1B8A72BE0088E94D /* SerialDispatchQueueScheduler.swift */; }; + C8F0BFE11BBBFB8B001B112F /* RefCount.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C851B8A72BE0088E94D /* RefCount.swift */; }; + C8F0BFE21BBBFB8B001B112F /* Concat.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C721B8A72BE0088E94D /* Concat.swift */; }; + C8F0BFE31BBBFB8B001B112F /* Lock.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C4C1B8A72BE0088E94D /* Lock.swift */; }; + C8F0BFE41BBBFB8B001B112F /* Take.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C8D1B8A72BE0088E94D /* Take.swift */; }; + C8F0BFE51BBBFB8B001B112F /* Reduce.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C841B8A72BE0088E94D /* Reduce.swift */; }; + C8F0BFE61BBBFB8B001B112F /* ScheduledItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = C84B38E71BA43380001B7D88 /* ScheduledItem.swift */; }; + C8F0BFE71BBBFB8B001B112F /* Repeat.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8640A021BA5B12A00D3C4E8 /* Repeat.swift */; }; + C8F0BFE81BBBFB8B001B112F /* Error.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C631B8A72BE0088E94D /* Error.swift */; }; + C8F0BFE91BBBFB8B001B112F /* Debug.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C751B8A72BE0088E94D /* Debug.swift */; }; + C8F0BFEA1BBBFB8B001B112F /* Bag.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C4F1B8A72BE0088E94D /* Bag.swift */; }; + C8F0BFEB1BBBFB8B001B112F /* Producer.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C831B8A72BE0088E94D /* Producer.swift */; }; + C8F0BFEC1BBBFB8B001B112F /* ImmediateSchedulerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C651B8A72BE0088E94D /* ImmediateSchedulerType.swift */; }; + C8F0BFED1BBBFB8B001B112F /* Cancelable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C491B8A72BE0088E94D /* Cancelable.swift */; }; + C8F0BFEE1BBBFB8B001B112F /* ScheduledDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C5D1B8A72BE0088E94D /* ScheduledDisposable.swift */; }; + C8F0BFEF1BBBFB8B001B112F /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C7A1B8A72BE0088E94D /* Filter.swift */; }; + C8F0BFF01BBBFB8B001B112F /* Observable+Single.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C9B1B8A72BE0088E94D /* Observable+Single.swift */; }; + C8F0BFF11BBBFB8B001B112F /* CompositeDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C571B8A72BE0088E94D /* CompositeDisposable.swift */; }; + C8F0BFF21BBBFB8B001B112F /* ObserverType.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CAB1B8A72BE0088E94D /* ObserverType.swift */; }; + C8F0BFF31BBBFB8B001B112F /* SubscribeOn.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C8B1B8A72BE0088E94D /* SubscribeOn.swift */; }; + C8F0BFF41BBBFB8B001B112F /* Observable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C681B8A72BE0088E94D /* Observable.swift */; }; + C8F0BFF51BBBFB8B001B112F /* NAryDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C5A1B8A72BE0088E94D /* NAryDisposable.swift */; }; + C8F0BFF61BBBFB8B001B112F /* SerialDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C5F1B8A72BE0088E94D /* SerialDisposable.swift */; }; + C8F0BFF71BBBFB8B001B112F /* Never.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8C3DA0B1B93959F004D233E /* Never.swift */; }; + C8F0BFF81BBBFB8B001B112F /* ObserverType+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CAA1B8A72BE0088E94D /* ObserverType+Extensions.swift */; }; + C8F0BFF91BBBFB8B001B112F /* Event.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C641B8A72BE0088E94D /* Event.swift */; }; + C8F0BFFA1BBBFB8B001B112F /* Zip.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093C941B8A72BE0088E94D /* Zip.swift */; }; + C8F0C0061BBBFBB9001B112F /* UISlider+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88254101B8A752B00B02D69 /* UISlider+Rx.swift */; }; + C8F0C0071BBBFBB9001B112F /* _RXKVOObserver.m in Sources */ = {isa = PBXBuildFile; fileRef = C8093E871B8A732E0088E94D /* _RXKVOObserver.m */; }; + C8F0C0081BBBFBB9001B112F /* UIScrollView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C882540D1B8A752B00B02D69 /* UIScrollView+Rx.swift */; }; + C8F0C0091BBBFBB9001B112F /* DelegateProxyType.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093E8C1B8A732E0088E94D /* DelegateProxyType.swift */; }; + C8F0C00A1BBBFBB9001B112F /* RxTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093E9C1B8A732E0088E94D /* RxTarget.swift */; }; + C8F0C00B1BBBFBB9001B112F /* UITextView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88254141B8A752B00B02D69 /* UITextView+Rx.swift */; }; + C8F0C00C1BBBFBB9001B112F /* RxTableViewReactiveArrayDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88253F21B8A752B00B02D69 /* RxTableViewReactiveArrayDataSource.swift */; }; + C8F0C00D1BBBFBB9001B112F /* RxCollectionViewDataSourceProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88253FC1B8A752B00B02D69 /* RxCollectionViewDataSourceProxy.swift */; }; + C8F0C00E1BBBFBB9001B112F /* _RX.m in Sources */ = {isa = PBXBuildFile; fileRef = C8093E831B8A732E0088E94D /* _RX.m */; }; + C8F0C00F1BBBFBB9001B112F /* RxCocoa.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093E9B1B8A732E0088E94D /* RxCocoa.swift */; }; + C8F0C0101BBBFBB9001B112F /* RxTableViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88254011B8A752B00B02D69 /* RxTableViewDelegateProxy.swift */; }; + C8F0C0111BBBFBB9001B112F /* UIStepper+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = F31F35AF1BB4FED800961002 /* UIStepper+Rx.swift */; }; + C8F0C0121BBBFBB9001B112F /* UIImageView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C882540B1B8A752B00B02D69 /* UIImageView+Rx.swift */; }; + C8F0C0131BBBFBB9001B112F /* ControlEvent.swift in Sources */ = {isa = PBXBuildFile; fileRef = C80D33931B922FB00014629D /* ControlEvent.swift */; }; + C8F0C0141BBBFBB9001B112F /* NSObject+Rx+CoreGraphics.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093E961B8A732E0088E94D /* NSObject+Rx+CoreGraphics.swift */; }; + C8F0C0151BBBFBB9001B112F /* UIControl+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88254081B8A752B00B02D69 /* UIControl+Rx.swift */; }; + C8F0C0161BBBFBB9001B112F /* UITableView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88254121B8A752B00B02D69 /* UITableView+Rx.swift */; }; + C8F0C0171BBBFBB9001B112F /* RxCollectionViewReactiveArrayDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88253F11B8A752B00B02D69 /* RxCollectionViewReactiveArrayDataSource.swift */; }; + C8F0C0181BBBFBB9001B112F /* KVOObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093E941B8A732E0088E94D /* KVOObserver.swift */; }; + C8F0C0191BBBFBB9001B112F /* UIAlertView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88254041B8A752B00B02D69 /* UIAlertView+Rx.swift */; }; + C8F0C01A1BBBFBB9001B112F /* RxCollectionViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88253FD1B8A752B00B02D69 /* RxCollectionViewDelegateProxy.swift */; }; + C8F0C01B1BBBFBB9001B112F /* RxScrollViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88253FE1B8A752B00B02D69 /* RxScrollViewDelegateProxy.swift */; }; + C8F0C01C1BBBFBB9001B112F /* UILabel+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C882540C1B8A752B00B02D69 /* UILabel+Rx.swift */; }; + C8F0C01D1BBBFBB9001B112F /* RxSearchBarDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88253FF1B8A752B00B02D69 /* RxSearchBarDelegateProxy.swift */; }; + C8F0C01E1BBBFBB9001B112F /* RxAlertViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88253FB1B8A752B00B02D69 /* RxAlertViewDelegateProxy.swift */; }; + C8F0C01F1BBBFBB9001B112F /* Observable+CocoaExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = C80D338E1B91EF9E0014629D /* Observable+CocoaExtensions.swift */; }; + C8F0C0201BBBFBB9001B112F /* UISegmentedControl+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C882540F1B8A752B00B02D69 /* UISegmentedControl+Rx.swift */; }; + C8F0C0211BBBFBB9001B112F /* KVOObservable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093E931B8A732E0088E94D /* KVOObservable.swift */; }; + C8F0C0221BBBFBB9001B112F /* UIButton+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88254061B8A752B00B02D69 /* UIButton+Rx.swift */; }; + C8F0C0231BBBFBB9001B112F /* CLLocationManager+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093E8A1B8A732E0088E94D /* CLLocationManager+Rx.swift */; }; + C8F0C0241BBBFBB9001B112F /* DeinitAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093E921B8A732E0088E94D /* DeinitAction.swift */; }; + C8F0C0251BBBFBB9001B112F /* RxActionSheetDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88253FA1B8A752B00B02D69 /* RxActionSheetDelegateProxy.swift */; }; + C8F0C0261BBBFBB9001B112F /* _RXDelegateProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = C8093E851B8A732E0088E94D /* _RXDelegateProxy.m */; }; + C8F0C0271BBBFBB9001B112F /* NSObject+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093E971B8A732E0088E94D /* NSObject+Rx.swift */; }; + C8F0C0281BBBFBB9001B112F /* RxTextViewDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88254021B8A752B00B02D69 /* RxTextViewDelegateProxy.swift */; }; + C8F0C0291BBBFBB9001B112F /* UIBarButtonItem+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88254051B8A752B00B02D69 /* UIBarButtonItem+Rx.swift */; }; + C8F0C02A1BBBFBB9001B112F /* UIActionSheet+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88254031B8A752B00B02D69 /* UIActionSheet+Rx.swift */; }; + C8F0C02B1BBBFBB9001B112F /* ControlProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = C80D33941B922FB00014629D /* ControlProperty.swift */; }; + C8F0C02C1BBBFBB9001B112F /* UIDatePicker+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88254091B8A752B00B02D69 /* UIDatePicker+Rx.swift */; }; + C8F0C02D1BBBFBB9001B112F /* RxTableViewDataSourceProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88254001B8A752B00B02D69 /* RxTableViewDataSourceProxy.swift */; }; + C8F0C02E1BBBFBB9001B112F /* _RXSwizzling.m in Sources */ = {isa = PBXBuildFile; fileRef = C8093E891B8A732E0088E94D /* _RXSwizzling.m */; }; + C8F0C02F1BBBFBB9001B112F /* Deallocating.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093E911B8A732E0088E94D /* Deallocating.swift */; }; + C8F0C0301BBBFBB9001B112F /* UIGestureRecognizer+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C882540A1B8A752B00B02D69 /* UIGestureRecognizer+Rx.swift */; }; + C8F0C0311BBBFBB9001B112F /* DelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093E8B1B8A732E0088E94D /* DelegateProxy.swift */; }; + C8F0C0321BBBFBB9001B112F /* RxCLLocationManagerDelegateProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093E9A1B8A732E0088E94D /* RxCLLocationManagerDelegateProxy.swift */; }; + C8F0C0331BBBFBB9001B112F /* UISwitch+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88254111B8A752B00B02D69 /* UISwitch+Rx.swift */; }; + C8F0C0341BBBFBB9001B112F /* Logging.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093E8D1B8A732E0088E94D /* Logging.swift */; }; + C8F0C0351BBBFBB9001B112F /* UICollectionView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88254071B8A752B00B02D69 /* UICollectionView+Rx.swift */; }; + C8F0C0361BBBFBB9001B112F /* RxCollectionViewDataSourceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88253F71B8A752B00B02D69 /* RxCollectionViewDataSourceType.swift */; }; + C8F0C0371BBBFBB9001B112F /* NSNotificationCenter+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093E951B8A732E0088E94D /* NSNotificationCenter+Rx.swift */; }; + C8F0C0381BBBFBB9001B112F /* UITextField+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88254131B8A752B00B02D69 /* UITextField+Rx.swift */; }; + C8F0C0391BBBFBB9001B112F /* NSURLSession+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093E981B8A732E0088E94D /* NSURLSession+Rx.swift */; }; + C8F0C03A1BBBFBB9001B112F /* ControlTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093E901B8A732E0088E94D /* ControlTarget.swift */; }; + C8F0C03B1BBBFBB9001B112F /* UISearchBar+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C882540E1B8A752B00B02D69 /* UISearchBar+Rx.swift */; }; + C8F0C03C1BBBFBB9001B112F /* ItemEvents.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88253F41B8A752B00B02D69 /* ItemEvents.swift */; }; + C8F0C03D1BBBFBB9001B112F /* RxTableViewDataSourceType.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88253F81B8A752B00B02D69 /* RxTableViewDataSourceType.swift */; }; + C8F0C0411BBBFBB9001B112F /* RxCocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = C8093ECB1B8A732E0088E94D /* RxCocoa.h */; settings = {ATTRIBUTES = (Public, ); }; }; + C8F0C0421BBBFBB9001B112F /* _RXDelegateProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = C8093E841B8A732E0088E94D /* _RXDelegateProxy.h */; settings = {ATTRIBUTES = (Public, ); }; }; + C8F0C0431BBBFBB9001B112F /* _RX.h in Headers */ = {isa = PBXBuildFile; fileRef = C8093E821B8A732E0088E94D /* _RX.h */; settings = {ATTRIBUTES = (Public, ); }; }; + C8F0C0441BBBFBB9001B112F /* _RXSwizzling.h in Headers */ = {isa = PBXBuildFile; fileRef = C8093E881B8A732E0088E94D /* _RXSwizzling.h */; settings = {ATTRIBUTES = (Public, ); }; }; + C8F0C0451BBBFBB9001B112F /* _RXKVOObserver.h in Headers */ = {isa = PBXBuildFile; fileRef = C8093E861B8A732E0088E94D /* _RXKVOObserver.h */; settings = {ATTRIBUTES = (Public, ); }; }; + C8F0C04F1BBBFBCE001B112F /* Observable+Blocking.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093F581B8A73A20088E94D /* Observable+Blocking.swift */; }; D203C4F31BB9C4CA00D02D00 /* RxCollectionViewReactiveArrayDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88253F11B8A752B00B02D69 /* RxCollectionViewReactiveArrayDataSource.swift */; }; D203C4F41BB9C52400D02D00 /* RxTableViewReactiveArrayDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88253F21B8A752B00B02D69 /* RxTableViewReactiveArrayDataSource.swift */; }; D203C4F51BB9C52900D02D00 /* ItemEvents.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88253F41B8A752B00B02D69 /* ItemEvents.swift */; }; @@ -349,7 +512,6 @@ D203C5111BB9C53E00D02D00 /* UITableView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88254121B8A752B00B02D69 /* UITableView+Rx.swift */; }; D203C5121BB9C53E00D02D00 /* UITextField+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88254131B8A752B00B02D69 /* UITextField+Rx.swift */; }; D203C5131BB9C53E00D02D00 /* UITextView+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88254141B8A752B00B02D69 /* UITextView+Rx.swift */; }; - D203C5151BB9CA5200D02D00 /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D2EA280C1BB9B5A200880ED3 /* RxSwift.framework */; }; D2138C7E1BB9BEBE00339B5C /* _RX.h in Headers */ = {isa = PBXBuildFile; fileRef = C8093E821B8A732E0088E94D /* _RX.h */; settings = {ATTRIBUTES = (Public, ); }; }; D2138C7F1BB9BEBE00339B5C /* _RX.m in Sources */ = {isa = PBXBuildFile; fileRef = C8093E831B8A732E0088E94D /* _RX.m */; }; D2138C801BB9BEBE00339B5C /* _RXDelegateProxy.h in Headers */ = {isa = PBXBuildFile; fileRef = C8093E841B8A732E0088E94D /* _RXDelegateProxy.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -484,10 +646,68 @@ D2EBEB431BB9B6DE003A27DC /* SubjectType.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CC11B8A72BE0088E94D /* SubjectType.swift */; }; D2EBEB441BB9B6DE003A27DC /* Variable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093CC21B8A72BE0088E94D /* Variable.swift */; }; D2EBEB8A1BB9B9EE003A27DC /* Observable+Blocking.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8093F581B8A73A20088E94D /* Observable+Blocking.swift */; }; - D2EBEB8B1BB9BA62003A27DC /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D2EA280C1BB9B5A200880ED3 /* RxSwift.framework */; }; F31F35B01BB4FED800961002 /* UIStepper+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = F31F35AF1BB4FED800961002 /* UIStepper+Rx.swift */; }; /* End PBXBuildFile section */ +/* Begin PBXContainerItemProxy section */ + C872BD1B1BC0529600D7175E /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = C8A56ACE1AD7424700B4673B /* Project object */; + proxyType = 1; + remoteGlobalIDString = C8A56AD61AD7424700B4673B; + remoteInfo = "RxSwift-iOS"; + }; + C872BD1D1BC052A200D7175E /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = C8A56ACE1AD7424700B4673B /* Project object */; + proxyType = 1; + remoteGlobalIDString = C88BB81A1B07E5ED0064D411; + remoteInfo = "RxSwift-OSX"; + }; + C872BD1F1BC052A800D7175E /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = C8A56ACE1AD7424700B4673B /* Project object */; + proxyType = 1; + remoteGlobalIDString = D2EA280B1BB9B5A200880ED3; + remoteInfo = "RxSwift-tvOS"; + }; + C872BD211BC052AC00D7175E /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = C8A56ACE1AD7424700B4673B /* Project object */; + proxyType = 1; + remoteGlobalIDString = C8F0BF901BBBFB8B001B112F; + remoteInfo = "RxSwift-watchOS"; + }; + C872BD231BC052B800D7175E /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = C8A56ACE1AD7424700B4673B /* Project object */; + proxyType = 1; + remoteGlobalIDString = C8A56AD61AD7424700B4673B; + remoteInfo = "RxSwift-iOS"; + }; + C872BD251BC052BB00D7175E /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = C8A56ACE1AD7424700B4673B /* Project object */; + proxyType = 1; + remoteGlobalIDString = C88BB81A1B07E5ED0064D411; + remoteInfo = "RxSwift-OSX"; + }; + C872BD271BC052BF00D7175E /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = C8A56ACE1AD7424700B4673B /* Project object */; + proxyType = 1; + remoteGlobalIDString = D2EA280B1BB9B5A200880ED3; + remoteInfo = "RxSwift-tvOS"; + }; + C872BD291BC052C200D7175E /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = C8A56ACE1AD7424700B4673B /* Project object */; + proxyType = 1; + remoteGlobalIDString = C8F0BF901BBBFB8B001B112F; + remoteInfo = "RxSwift-watchOS"; + }; +/* End PBXContainerItemProxy section */ + /* Begin PBXFileReference section */ A111CE961B91C97C00D0DCEE /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; C809396D1B8A71760088E94D /* RxCocoa.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxCocoa.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -673,10 +893,11 @@ C8C3DA0B1B93959F004D233E /* Never.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Never.swift; sourceTree = ""; }; C8C3DA0E1B939767004D233E /* CurrentThreadScheduler.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CurrentThreadScheduler.swift; sourceTree = ""; }; C8C3DA111B93A3EA004D233E /* AnonymousObservable.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AnonymousObservable.swift; sourceTree = ""; }; + C8F0C0021BBBFB8B001B112F /* RxSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + C8F0C04B1BBBFBB9001B112F /* RxCocoa.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxCocoa.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + C8F0C0581BBBFBCE001B112F /* RxBlocking.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxBlocking.framework; sourceTree = BUILT_PRODUCTS_DIR; }; D2138C751BB9BE9800339B5C /* RxCocoa.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxCocoa.framework; sourceTree = BUILT_PRODUCTS_DIR; }; D2EA280C1BB9B5A200880ED3 /* RxSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - D2EA280E1BB9B5A200880ED3 /* RxSwift.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RxSwift.h; sourceTree = ""; }; - D2EA28101BB9B5A200880ED3 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; D2EBEB811BB9B99D003A27DC /* RxBlocking.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxBlocking.framework; sourceTree = BUILT_PRODUCTS_DIR; }; F31F35AF1BB4FED800961002 /* UIStepper+Rx.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UIStepper+Rx.swift"; sourceTree = ""; }; /* End PBXFileReference section */ @@ -686,7 +907,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - C8A468C81B8A892A00BF917B /* RxSwift.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -694,7 +914,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - C8A468C91B8A893400BF917B /* RxSwift.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -702,7 +921,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - C8A468CA1B8A893A00BF917B /* RxSwift.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -710,7 +928,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - C8A468CB1B8A894100BF917B /* RxSwift.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -728,11 +945,31 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + C8F0BFFB1BBBFB8B001B112F /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + C8F0C03E1BBBFBB9001B112F /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + C8F0C0501BBBFBCE001B112F /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; D2138C711BB9BE9800339B5C /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - D203C5151BB9CA5200D02D00 /* RxSwift.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -747,7 +984,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - D2EBEB8B1BB9BA62003A27DC /* RxSwift.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1112,7 +1348,6 @@ C8093C471B8A72BE0088E94D /* RxSwift */, C8093F571B8A73A20088E94D /* RxBlocking */, C8093E801B8A732E0088E94D /* RxCocoa */, - D2EA280D1BB9B5A200880ED3 /* RxSwift */, C8A56AD81AD7424700B4673B /* Products */, ); sourceTree = ""; @@ -1129,19 +1364,13 @@ D2EA280C1BB9B5A200880ED3 /* RxSwift.framework */, D2EBEB811BB9B99D003A27DC /* RxBlocking.framework */, D2138C751BB9BE9800339B5C /* RxCocoa.framework */, + C8F0C0021BBBFB8B001B112F /* RxSwift.framework */, + C8F0C04B1BBBFBB9001B112F /* RxCocoa.framework */, + C8F0C0581BBBFBCE001B112F /* RxBlocking.framework */, ); name = Products; sourceTree = ""; }; - D2EA280D1BB9B5A200880ED3 /* RxSwift */ = { - isa = PBXGroup; - children = ( - D2EA280E1BB9B5A200880ED3 /* RxSwift.h */, - D2EA28101BB9B5A200880ED3 /* Info.plist */, - ); - path = RxSwift; - sourceTree = ""; - }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ @@ -1197,6 +1426,32 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + C8F0BFFC1BBBFB8B001B112F /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + C8F0C0401BBBFBB9001B112F /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + C8F0C0411BBBFBB9001B112F /* RxCocoa.h in Headers */, + C8F0C0421BBBFBB9001B112F /* _RXDelegateProxy.h in Headers */, + C8F0C0431BBBFBB9001B112F /* _RX.h in Headers */, + C8F0C0441BBBFBB9001B112F /* _RXSwizzling.h in Headers */, + C8F0C0451BBBFBB9001B112F /* _RXKVOObserver.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + C8F0C0521BBBFBCE001B112F /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; D2138C721BB9BE9800339B5C /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; @@ -1238,6 +1493,7 @@ buildRules = ( ); dependencies = ( + C872BD1C1BC0529600D7175E /* PBXTargetDependency */, ); name = "RxCocoa-iOS"; productName = RxSwift; @@ -1256,6 +1512,7 @@ buildRules = ( ); dependencies = ( + C872BD1E1BC052A200D7175E /* PBXTargetDependency */, ); name = "RxCocoa-OSX"; productName = RxSwift; @@ -1274,6 +1531,7 @@ buildRules = ( ); dependencies = ( + C872BD241BC052B800D7175E /* PBXTargetDependency */, ); name = "RxBlocking-iOS"; productName = RxSwift; @@ -1292,6 +1550,7 @@ buildRules = ( ); dependencies = ( + C872BD261BC052BB00D7175E /* PBXTargetDependency */, ); name = "RxBlocking-OSX"; productName = RxSwift; @@ -1334,6 +1593,62 @@ productReference = C8A56AD71AD7424700B4673B /* RxSwift.framework */; productType = "com.apple.product-type.framework"; }; + C8F0BF901BBBFB8B001B112F /* RxSwift-watchOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = C8F0BFFE1BBBFB8B001B112F /* Build configuration list for PBXNativeTarget "RxSwift-watchOS" */; + buildPhases = ( + C8F0BF911BBBFB8B001B112F /* Sources */, + C8F0BFFB1BBBFB8B001B112F /* Frameworks */, + C8F0BFFC1BBBFB8B001B112F /* Headers */, + C8F0BFFD1BBBFB8B001B112F /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "RxSwift-watchOS"; + productName = RxSwift; + productReference = C8F0C0021BBBFB8B001B112F /* RxSwift.framework */; + productType = "com.apple.product-type.framework"; + }; + C8F0C0041BBBFBB9001B112F /* RxCocoa-watchOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = C8F0C0471BBBFBB9001B112F /* Build configuration list for PBXNativeTarget "RxCocoa-watchOS" */; + buildPhases = ( + C8F0C0051BBBFBB9001B112F /* Sources */, + C8F0C03E1BBBFBB9001B112F /* Frameworks */, + C8F0C0401BBBFBB9001B112F /* Headers */, + C8F0C0461BBBFBB9001B112F /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + C872BD221BC052AC00D7175E /* PBXTargetDependency */, + ); + name = "RxCocoa-watchOS"; + productName = RxSwift; + productReference = C8F0C04B1BBBFBB9001B112F /* RxCocoa.framework */; + productType = "com.apple.product-type.framework"; + }; + C8F0C04D1BBBFBCE001B112F /* RxBlocking-watchOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = C8F0C0541BBBFBCE001B112F /* Build configuration list for PBXNativeTarget "RxBlocking-watchOS" */; + buildPhases = ( + C8F0C04E1BBBFBCE001B112F /* Sources */, + C8F0C0501BBBFBCE001B112F /* Frameworks */, + C8F0C0521BBBFBCE001B112F /* Headers */, + C8F0C0531BBBFBCE001B112F /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + C872BD2A1BC052C200D7175E /* PBXTargetDependency */, + ); + name = "RxBlocking-watchOS"; + productName = RxSwift; + productReference = C8F0C0581BBBFBCE001B112F /* RxBlocking.framework */; + productType = "com.apple.product-type.framework"; + }; D2138C741BB9BE9800339B5C /* RxCocoa-tvOS */ = { isa = PBXNativeTarget; buildConfigurationList = D2138C7A1BB9BE9800339B5C /* Build configuration list for PBXNativeTarget "RxCocoa-tvOS" */; @@ -1346,6 +1661,7 @@ buildRules = ( ); dependencies = ( + C872BD201BC052A800D7175E /* PBXTargetDependency */, ); name = "RxCocoa-tvOS"; productName = "RxCocoa-tvOS"; @@ -1382,6 +1698,7 @@ buildRules = ( ); dependencies = ( + C872BD281BC052BF00D7175E /* PBXTargetDependency */, ); name = "RxBlocking-tvOS"; productName = "RxBlocking-tvOS"; @@ -1427,12 +1744,15 @@ C8A56AD61AD7424700B4673B /* RxSwift-iOS */, C88BB81A1B07E5ED0064D411 /* RxSwift-OSX */, D2EA280B1BB9B5A200880ED3 /* RxSwift-tvOS */, + C8F0BF901BBBFB8B001B112F /* RxSwift-watchOS */, C80938F51B8A71760088E94D /* RxCocoa-iOS */, C809396F1B8A71840088E94D /* RxCocoa-OSX */, D2138C741BB9BE9800339B5C /* RxCocoa-tvOS */, + C8F0C0041BBBFBB9001B112F /* RxCocoa-watchOS */, C8093B4B1B8A71F00088E94D /* RxBlocking-iOS */, C8093BC91B8A71FC0088E94D /* RxBlocking-OSX */, D2EBEB801BB9B99D003A27DC /* RxBlocking-tvOS */, + C8F0C04D1BBBFBCE001B112F /* RxBlocking-watchOS */, ); }; /* End PBXProject section */ @@ -1480,6 +1800,27 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + C8F0BFFD1BBBFB8B001B112F /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + C8F0C0461BBBFBB9001B112F /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + C8F0C0531BBBFBCE001B112F /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; D2138C731BB9BE9800339B5C /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; @@ -1842,6 +2183,189 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + C8F0BF911BBBFB8B001B112F /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + C8F0BF921BBBFB8B001B112F /* Observable+Creation.swift in Sources */, + C8F0BF931BBBFB8B001B112F /* ConnectableObservableType.swift in Sources */, + C8F0BF941BBBFB8B001B112F /* Just.swift in Sources */, + C8F0BF951BBBFB8B001B112F /* NopDisposable.swift in Sources */, + C8F0BF961BBBFB8B001B112F /* Disposable.swift in Sources */, + C8F0BF971BBBFB8B001B112F /* SingleAssignmentDisposable.swift in Sources */, + C8F0BF981BBBFB8B001B112F /* FailWith.swift in Sources */, + C8F0BF991BBBFB8B001B112F /* SchedulerServices+Emulation.swift in Sources */, + C8F0BF9A1BBBFB8B001B112F /* ObserverOf.swift in Sources */, + C8F0BF9B1BBBFB8B001B112F /* Skip.swift in Sources */, + C8F0BF9C1BBBFB8B001B112F /* StableCompositeDisposable.swift in Sources */, + C8F0BF9D1BBBFB8B001B112F /* Zip+arity.swift in Sources */, + C8F0BF9E1BBBFB8B001B112F /* Timer.swift in Sources */, + C8F0BF9F1BBBFB8B001B112F /* Empty.swift in Sources */, + C8F0BFA01BBBFB8B001B112F /* RxBox.swift in Sources */, + C8F0BFA11BBBFB8B001B112F /* Sink.swift in Sources */, + C8F0BFA21BBBFB8B001B112F /* TakeUntil.swift in Sources */, + C8F0BFA31BBBFB8B001B112F /* MainScheduler.swift in Sources */, + C8F0BFA41BBBFB8B001B112F /* Generate.swift in Sources */, + C8F0BFA51BBBFB8B001B112F /* Deferred.swift in Sources */, + C8F0BFA61BBBFB8B001B112F /* ReplaySubject.swift in Sources */, + C8F0BFA71BBBFB8B001B112F /* Zip+CollectionType.swift in Sources */, + C8F0BFA81BBBFB8B001B112F /* Observable+Time.swift in Sources */, + C8F0BFA91BBBFB8B001B112F /* Observable+Extensions.swift in Sources */, + C8F0BFAA1BBBFB8B001B112F /* Throttle.swift in Sources */, + C8F0BFAB1BBBFB8B001B112F /* AsObservable.swift in Sources */, + C8F0BFAC1BBBFB8B001B112F /* Catch.swift in Sources */, + C8F0BFAD1BBBFB8B001B112F /* CombineLatest.swift in Sources */, + C8F0BFAE1BBBFB8B001B112F /* Observable+Multiple.swift in Sources */, + C8F0BFAF1BBBFB8B001B112F /* ObserverBase.swift in Sources */, + C8F0BFB01BBBFB8B001B112F /* ConnectableObservable.swift in Sources */, + C8F0BFB11BBBFB8B001B112F /* Observable+StandardSequenceOperators.swift in Sources */, + C8F0BFB21BBBFB8B001B112F /* DistinctUntilChanged.swift in Sources */, + C8F0BFB31BBBFB8B001B112F /* Observable+Binding.swift in Sources */, + C8F0BFB41BBBFB8B001B112F /* TailRecursiveSink.swift in Sources */, + C8F0BFB51BBBFB8B001B112F /* AsyncLock.swift in Sources */, + C8F0BFB61BBBFB8B001B112F /* BinaryDisposable.swift in Sources */, + C8F0BFB71BBBFB8B001B112F /* ObserveOn.swift in Sources */, + C8F0BFB81BBBFB8B001B112F /* Sample.swift in Sources */, + C8F0BFB91BBBFB8B001B112F /* ScopedDisposable.swift in Sources */, + C8F0BFBA1BBBFB8B001B112F /* Multicast.swift in Sources */, + C8F0BFBB1BBBFB8B001B112F /* CurrentThreadScheduler.swift in Sources */, + C8F0BFBC1BBBFB8B001B112F /* Rx.swift in Sources */, + C8F0BFBD1BBBFB8B001B112F /* CombineLatest+CollectionType.swift in Sources */, + C8F0BFBE1BBBFB8B001B112F /* SubjectType.swift in Sources */, + C8F0BFBF1BBBFB8B001B112F /* Observable+Debug.swift in Sources */, + C8F0BFC01BBBFB8B001B112F /* Observable+Concurrency.swift in Sources */, + C8F0BFC11BBBFB8B001B112F /* AnonymousObserver.swift in Sources */, + C8F0BFC21BBBFB8B001B112F /* PublishSubject.swift in Sources */, + C8F0BFC31BBBFB8B001B112F /* Merge.swift in Sources */, + C8F0BFC41BBBFB8B001B112F /* SchedulerType.swift in Sources */, + C8F0BFC51BBBFB8B001B112F /* Variable.swift in Sources */, + C8F0BFC61BBBFB8B001B112F /* OperationQueueScheduler.swift in Sources */, + C8F0BFC71BBBFB8B001B112F /* DispatchQueueSchedulerPriority.swift in Sources */, + C8F0BFC81BBBFB8B001B112F /* CombineLatest+arity.swift in Sources */, + C8F0BFC91BBBFB8B001B112F /* DisposeBag.swift in Sources */, + C8F0BFCA1BBBFB8B001B112F /* RecursiveScheduler.swift in Sources */, + C8F0BFCB1BBBFB8B001B112F /* Scan.swift in Sources */, + C8F0BFCC1BBBFB8B001B112F /* Queue.swift in Sources */, + C8F0BFCD1BBBFB8B001B112F /* AnonymousObservable.swift in Sources */, + C8F0BFCE1BBBFB8B001B112F /* FlatMap.swift in Sources */, + C8F0BFCF1BBBFB8B001B112F /* DisposeBase.swift in Sources */, + C8F0BFD01BBBFB8B001B112F /* AnonymousDisposable.swift in Sources */, + C8F0BFD11BBBFB8B001B112F /* ConcurrentDispatchQueueScheduler.swift in Sources */, + C8F0BFD21BBBFB8B001B112F /* Switch.swift in Sources */, + C8F0BFD31BBBFB8B001B112F /* BehaviorSubject.swift in Sources */, + C8F0BFD41BBBFB8B001B112F /* DelaySubscription.swift in Sources */, + C8F0BFD51BBBFB8B001B112F /* Range.swift in Sources */, + C8F0BFD61BBBFB8B001B112F /* Map.swift in Sources */, + C8F0BFD71BBBFB8B001B112F /* InfiniteSequence.swift in Sources */, + C8F0BFD81BBBFB8B001B112F /* ObservableType.swift in Sources */, + C8F0BFD91BBBFB8B001B112F /* Observable+Aggregate.swift in Sources */, + C8F0BFDA1BBBFB8B001B112F /* ObserveOnSerialDispatchQueue.swift in Sources */, + C8F0BFDB1BBBFB8B001B112F /* StartWith.swift in Sources */, + C8F0BFDC1BBBFB8B001B112F /* Buffer.swift in Sources */, + C8F0BFDD1BBBFB8B001B112F /* TakeWhile.swift in Sources */, + C8F0BFDE1BBBFB8B001B112F /* Amb.swift in Sources */, + C8F0BFDF1BBBFB8B001B112F /* Do.swift in Sources */, + C8F0BFE01BBBFB8B001B112F /* SerialDispatchQueueScheduler.swift in Sources */, + C8F0BFE11BBBFB8B001B112F /* RefCount.swift in Sources */, + C8F0BFE21BBBFB8B001B112F /* Concat.swift in Sources */, + C8F0BFE31BBBFB8B001B112F /* Lock.swift in Sources */, + C8F0BFE41BBBFB8B001B112F /* Take.swift in Sources */, + C8F0BFE51BBBFB8B001B112F /* Reduce.swift in Sources */, + C8F0BFE61BBBFB8B001B112F /* ScheduledItem.swift in Sources */, + C8F0BFE71BBBFB8B001B112F /* Repeat.swift in Sources */, + C8F0BFE81BBBFB8B001B112F /* Error.swift in Sources */, + C8F0BFE91BBBFB8B001B112F /* Debug.swift in Sources */, + C8F0BFEA1BBBFB8B001B112F /* Bag.swift in Sources */, + C8F0BFEB1BBBFB8B001B112F /* Producer.swift in Sources */, + C8F0BFEC1BBBFB8B001B112F /* ImmediateSchedulerType.swift in Sources */, + C8F0BFED1BBBFB8B001B112F /* Cancelable.swift in Sources */, + C8F0BFEE1BBBFB8B001B112F /* ScheduledDisposable.swift in Sources */, + C8F0BFEF1BBBFB8B001B112F /* Filter.swift in Sources */, + C8F0BFF01BBBFB8B001B112F /* Observable+Single.swift in Sources */, + C8F0BFF11BBBFB8B001B112F /* CompositeDisposable.swift in Sources */, + C8F0BFF21BBBFB8B001B112F /* ObserverType.swift in Sources */, + C8F0BFF31BBBFB8B001B112F /* SubscribeOn.swift in Sources */, + C8F0BFF41BBBFB8B001B112F /* Observable.swift in Sources */, + C8F0BFF51BBBFB8B001B112F /* NAryDisposable.swift in Sources */, + C8F0BFF61BBBFB8B001B112F /* SerialDisposable.swift in Sources */, + C8F0BFF71BBBFB8B001B112F /* Never.swift in Sources */, + C8F0BFF81BBBFB8B001B112F /* ObserverType+Extensions.swift in Sources */, + C8F0BFF91BBBFB8B001B112F /* Event.swift in Sources */, + C8F0BFFA1BBBFB8B001B112F /* Zip.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + C8F0C0051BBBFBB9001B112F /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + C8F0C0061BBBFBB9001B112F /* UISlider+Rx.swift in Sources */, + C8F0C0071BBBFBB9001B112F /* _RXKVOObserver.m in Sources */, + C8F0C0081BBBFBB9001B112F /* UIScrollView+Rx.swift in Sources */, + C8F0C0091BBBFBB9001B112F /* DelegateProxyType.swift in Sources */, + C8F0C00A1BBBFBB9001B112F /* RxTarget.swift in Sources */, + C8F0C00B1BBBFBB9001B112F /* UITextView+Rx.swift in Sources */, + C8F0C00C1BBBFBB9001B112F /* RxTableViewReactiveArrayDataSource.swift in Sources */, + C8F0C00D1BBBFBB9001B112F /* RxCollectionViewDataSourceProxy.swift in Sources */, + C8F0C00E1BBBFBB9001B112F /* _RX.m in Sources */, + C8F0C00F1BBBFBB9001B112F /* RxCocoa.swift in Sources */, + C8F0C0101BBBFBB9001B112F /* RxTableViewDelegateProxy.swift in Sources */, + C8F0C0111BBBFBB9001B112F /* UIStepper+Rx.swift in Sources */, + C8F0C0121BBBFBB9001B112F /* UIImageView+Rx.swift in Sources */, + C8F0C0131BBBFBB9001B112F /* ControlEvent.swift in Sources */, + C8F0C0141BBBFBB9001B112F /* NSObject+Rx+CoreGraphics.swift in Sources */, + C8F0C0151BBBFBB9001B112F /* UIControl+Rx.swift in Sources */, + C8F0C0161BBBFBB9001B112F /* UITableView+Rx.swift in Sources */, + C8F0C0171BBBFBB9001B112F /* RxCollectionViewReactiveArrayDataSource.swift in Sources */, + C8F0C0181BBBFBB9001B112F /* KVOObserver.swift in Sources */, + C8F0C0191BBBFBB9001B112F /* UIAlertView+Rx.swift in Sources */, + C8F0C01A1BBBFBB9001B112F /* RxCollectionViewDelegateProxy.swift in Sources */, + C8F0C01B1BBBFBB9001B112F /* RxScrollViewDelegateProxy.swift in Sources */, + C8F0C01C1BBBFBB9001B112F /* UILabel+Rx.swift in Sources */, + C8F0C01D1BBBFBB9001B112F /* RxSearchBarDelegateProxy.swift in Sources */, + C8F0C01E1BBBFBB9001B112F /* RxAlertViewDelegateProxy.swift in Sources */, + C8F0C01F1BBBFBB9001B112F /* Observable+CocoaExtensions.swift in Sources */, + C8F0C0201BBBFBB9001B112F /* UISegmentedControl+Rx.swift in Sources */, + C8F0C0211BBBFBB9001B112F /* KVOObservable.swift in Sources */, + C8F0C0221BBBFBB9001B112F /* UIButton+Rx.swift in Sources */, + C8F0C0231BBBFBB9001B112F /* CLLocationManager+Rx.swift in Sources */, + C8F0C0241BBBFBB9001B112F /* DeinitAction.swift in Sources */, + C8F0C0251BBBFBB9001B112F /* RxActionSheetDelegateProxy.swift in Sources */, + C8F0C0261BBBFBB9001B112F /* _RXDelegateProxy.m in Sources */, + C8F0C0271BBBFBB9001B112F /* NSObject+Rx.swift in Sources */, + C8F0C0281BBBFBB9001B112F /* RxTextViewDelegateProxy.swift in Sources */, + C8F0C0291BBBFBB9001B112F /* UIBarButtonItem+Rx.swift in Sources */, + C8F0C02A1BBBFBB9001B112F /* UIActionSheet+Rx.swift in Sources */, + C8F0C02B1BBBFBB9001B112F /* ControlProperty.swift in Sources */, + C8F0C02C1BBBFBB9001B112F /* UIDatePicker+Rx.swift in Sources */, + C8F0C02D1BBBFBB9001B112F /* RxTableViewDataSourceProxy.swift in Sources */, + C8F0C02E1BBBFBB9001B112F /* _RXSwizzling.m in Sources */, + C8F0C02F1BBBFBB9001B112F /* Deallocating.swift in Sources */, + C8F0C0301BBBFBB9001B112F /* UIGestureRecognizer+Rx.swift in Sources */, + C8F0C0311BBBFBB9001B112F /* DelegateProxy.swift in Sources */, + C8F0C0321BBBFBB9001B112F /* RxCLLocationManagerDelegateProxy.swift in Sources */, + C8F0C0331BBBFBB9001B112F /* UISwitch+Rx.swift in Sources */, + C8F0C0341BBBFBB9001B112F /* Logging.swift in Sources */, + C8F0C0351BBBFBB9001B112F /* UICollectionView+Rx.swift in Sources */, + C8F0C0361BBBFBB9001B112F /* RxCollectionViewDataSourceType.swift in Sources */, + C8F0C0371BBBFBB9001B112F /* NSNotificationCenter+Rx.swift in Sources */, + C8F0C0381BBBFBB9001B112F /* UITextField+Rx.swift in Sources */, + C8F0C0391BBBFBB9001B112F /* NSURLSession+Rx.swift in Sources */, + C8F0C03A1BBBFBB9001B112F /* ControlTarget.swift in Sources */, + C8F0C03B1BBBFBB9001B112F /* UISearchBar+Rx.swift in Sources */, + C8F0C03C1BBBFBB9001B112F /* ItemEvents.swift in Sources */, + C8F0C03D1BBBFBB9001B112F /* RxTableViewDataSourceType.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + C8F0C04E1BBBFBCE001B112F /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + C8F0C04F1BBBFBCE001B112F /* Observable+Blocking.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; D2138C701BB9BE9800339B5C /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -2027,6 +2551,49 @@ }; /* End PBXSourcesBuildPhase section */ +/* Begin PBXTargetDependency section */ + C872BD1C1BC0529600D7175E /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = C8A56AD61AD7424700B4673B /* RxSwift-iOS */; + targetProxy = C872BD1B1BC0529600D7175E /* PBXContainerItemProxy */; + }; + C872BD1E1BC052A200D7175E /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = C88BB81A1B07E5ED0064D411 /* RxSwift-OSX */; + targetProxy = C872BD1D1BC052A200D7175E /* PBXContainerItemProxy */; + }; + C872BD201BC052A800D7175E /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = D2EA280B1BB9B5A200880ED3 /* RxSwift-tvOS */; + targetProxy = C872BD1F1BC052A800D7175E /* PBXContainerItemProxy */; + }; + C872BD221BC052AC00D7175E /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = C8F0BF901BBBFB8B001B112F /* RxSwift-watchOS */; + targetProxy = C872BD211BC052AC00D7175E /* PBXContainerItemProxy */; + }; + C872BD241BC052B800D7175E /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = C8A56AD61AD7424700B4673B /* RxSwift-iOS */; + targetProxy = C872BD231BC052B800D7175E /* PBXContainerItemProxy */; + }; + C872BD261BC052BB00D7175E /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = C88BB81A1B07E5ED0064D411 /* RxSwift-OSX */; + targetProxy = C872BD251BC052BB00D7175E /* PBXContainerItemProxy */; + }; + C872BD281BC052BF00D7175E /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = D2EA280B1BB9B5A200880ED3 /* RxSwift-tvOS */; + targetProxy = C872BD271BC052BF00D7175E /* PBXContainerItemProxy */; + }; + C872BD2A1BC052C200D7175E /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = C8F0BF901BBBFB8B001B112F /* RxSwift-watchOS */; + targetProxy = C872BD291BC052C200D7175E /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + /* Begin XCBuildConfiguration section */ C809396A1B8A71760088E94D /* Debug */ = { isa = XCBuildConfiguration; @@ -2037,7 +2604,6 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = "$(SRCROOT)/RxCocoa/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_NAME = RxCocoa; SDKROOT = iphoneos; @@ -2054,7 +2620,6 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = "$(SRCROOT)/RxCocoa/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_NAME = RxCocoa; SDKROOT = iphoneos; @@ -2071,7 +2636,6 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = "$(SRCROOT)/RxCocoa/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_NAME = RxCocoa; SDKROOT = iphoneos; @@ -2087,9 +2651,9 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_BITCODE = NO; INFOPLIST_FILE = "$(SRCROOT)/RxCocoa/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_NAME = RxCocoa; SDKROOT = macosx; @@ -2105,9 +2669,9 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_BITCODE = NO; INFOPLIST_FILE = "$(SRCROOT)/RxCocoa/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_NAME = RxCocoa; SDKROOT = macosx; @@ -2123,9 +2687,9 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_BITCODE = NO; INFOPLIST_FILE = "$(SRCROOT)/RxCocoa/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_NAME = RxCocoa; SDKROOT = macosx; @@ -2142,7 +2706,6 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = "$(SRCROOT)/RxBlocking/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_NAME = RxBlocking; SDKROOT = iphoneos; @@ -2159,7 +2722,6 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = "$(SRCROOT)/RxBlocking/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_NAME = RxBlocking; SDKROOT = iphoneos; @@ -2176,7 +2738,6 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = "$(SRCROOT)/RxBlocking/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_NAME = RxBlocking; SDKROOT = iphoneos; @@ -2192,9 +2753,9 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_BITCODE = NO; INFOPLIST_FILE = "$(SRCROOT)/RxBlocking/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_NAME = RxBlocking; SDKROOT = macosx; @@ -2210,9 +2771,9 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_BITCODE = NO; INFOPLIST_FILE = "$(SRCROOT)/RxBlocking/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_NAME = RxBlocking; SDKROOT = macosx; @@ -2228,9 +2789,9 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_BITCODE = NO; INFOPLIST_FILE = "$(SRCROOT)/RxBlocking/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_NAME = RxBlocking; SDKROOT = macosx; @@ -2259,6 +2820,7 @@ COPY_PHASE_STRIP = NO; CURRENT_PROJECT_VERSION = 1; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_BITCODE = YES; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_C_LANGUAGE_STANDARD = gnu99; @@ -2271,7 +2833,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.3; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; MACOSX_DEPLOYMENT_TARGET = 10.10; MTL_ENABLE_DEBUG_INFO = NO; OTHER_SWIFT_FLAGS = "-D TRACE_RESOURCES"; @@ -2308,9 +2870,9 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_BITCODE = NO; INFOPLIST_FILE = "$(SRCROOT)/RxSwift/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_NAME = RxSwift; SDKROOT = macosx; @@ -2326,9 +2888,9 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_BITCODE = NO; INFOPLIST_FILE = "$(SRCROOT)/RxSwift/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_NAME = RxSwift; SDKROOT = macosx; @@ -2344,9 +2906,9 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_BITCODE = NO; INFOPLIST_FILE = "$(SRCROOT)/RxSwift/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; PRODUCT_NAME = RxSwift; SDKROOT = macosx; @@ -2375,6 +2937,7 @@ COPY_PHASE_STRIP = NO; CURRENT_PROJECT_VERSION = 1; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_BITCODE = YES; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; @@ -2393,7 +2956,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.3; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; MACOSX_DEPLOYMENT_TARGET = 10.10; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; @@ -2427,6 +2990,7 @@ COPY_PHASE_STRIP = NO; CURRENT_PROJECT_VERSION = 1; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_BITCODE = YES; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_C_LANGUAGE_STANDARD = gnu99; @@ -2438,7 +3002,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.3; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; MACOSX_DEPLOYMENT_TARGET = 10.10; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = ""; @@ -2483,6 +3047,168 @@ }; name = Release; }; + C8F0BFFF1BBBFB8B001B112F /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "$(SRCROOT)/RxSwift/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.2; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_NAME = RxSwift; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,4"; + }; + name = Debug; + }; + C8F0C0001BBBFB8B001B112F /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "$(SRCROOT)/RxSwift/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.2; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_NAME = RxSwift; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,4"; + }; + name = Release; + }; + C8F0C0011BBBFB8B001B112F /* Release-Tests */ = { + isa = XCBuildConfiguration; + buildSettings = { + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "$(SRCROOT)/RxSwift/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.2; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_NAME = RxSwift; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,4"; + }; + name = "Release-Tests"; + }; + C8F0C0481BBBFBB9001B112F /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "$(SRCROOT)/RxCocoa/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.2; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_NAME = RxCocoa; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,4"; + }; + name = Debug; + }; + C8F0C0491BBBFBB9001B112F /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "$(SRCROOT)/RxCocoa/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.2; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_NAME = RxCocoa; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,4"; + }; + name = Release; + }; + C8F0C04A1BBBFBB9001B112F /* Release-Tests */ = { + isa = XCBuildConfiguration; + buildSettings = { + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "$(SRCROOT)/RxCocoa/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.2; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_NAME = RxCocoa; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,4"; + }; + name = "Release-Tests"; + }; + C8F0C0551BBBFBCE001B112F /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "$(SRCROOT)/RxBlocking/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.2; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_NAME = RxBlocking; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,4"; + }; + name = Debug; + }; + C8F0C0561BBBFBCE001B112F /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "$(SRCROOT)/RxBlocking/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.2; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_NAME = RxBlocking; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,4"; + }; + name = Release; + }; + C8F0C0571BBBFBCE001B112F /* Release-Tests */ = { + isa = XCBuildConfiguration; + buildSettings = { + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "$(SRCROOT)/RxBlocking/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.2; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_NAME = RxBlocking; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,4"; + }; + name = "Release-Tests"; + }; D2138C7B1BB9BE9800339B5C /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -2730,6 +3456,36 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; + C8F0BFFE1BBBFB8B001B112F /* Build configuration list for PBXNativeTarget "RxSwift-watchOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C8F0BFFF1BBBFB8B001B112F /* Debug */, + C8F0C0001BBBFB8B001B112F /* Release */, + C8F0C0011BBBFB8B001B112F /* Release-Tests */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + C8F0C0471BBBFBB9001B112F /* Build configuration list for PBXNativeTarget "RxCocoa-watchOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C8F0C0481BBBFBB9001B112F /* Debug */, + C8F0C0491BBBFBB9001B112F /* Release */, + C8F0C04A1BBBFBB9001B112F /* Release-Tests */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + C8F0C0541BBBFBCE001B112F /* Build configuration list for PBXNativeTarget "RxBlocking-watchOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C8F0C0551BBBFBCE001B112F /* Debug */, + C8F0C0561BBBFBCE001B112F /* Release */, + C8F0C0571BBBFBCE001B112F /* Release-Tests */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; D2138C7A1BB9BE9800339B5C /* Build configuration list for PBXNativeTarget "RxCocoa-tvOS" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/Rx.xcodeproj/xcshareddata/xcschemes/RxBlocking-OSX.xcscheme b/Rx.xcodeproj/xcshareddata/xcschemes/RxBlocking-OSX.xcscheme index dc0324a8..3cb14f30 100644 --- a/Rx.xcodeproj/xcshareddata/xcschemes/RxBlocking-OSX.xcscheme +++ b/Rx.xcodeproj/xcshareddata/xcschemes/RxBlocking-OSX.xcscheme @@ -1,6 +1,6 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Rx.xcodeproj/xcshareddata/xcschemes/RxCocoa-OSX.xcscheme b/Rx.xcodeproj/xcshareddata/xcschemes/RxCocoa-OSX.xcscheme index 579ec55c..337b9445 100644 --- a/Rx.xcodeproj/xcshareddata/xcschemes/RxCocoa-OSX.xcscheme +++ b/Rx.xcodeproj/xcshareddata/xcschemes/RxCocoa-OSX.xcscheme @@ -1,6 +1,6 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Rx.xcodeproj/xcshareddata/xcschemes/RxSwift-OSX.xcscheme b/Rx.xcodeproj/xcshareddata/xcschemes/RxSwift-OSX.xcscheme index 912fdae4..4ea9b0fb 100644 --- a/Rx.xcodeproj/xcshareddata/xcschemes/RxSwift-OSX.xcscheme +++ b/Rx.xcodeproj/xcshareddata/xcschemes/RxSwift-OSX.xcscheme @@ -1,6 +1,6 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/RxBlocking.podspec b/RxBlocking.podspec index fdfb7aa5..fce3d161 100644 --- a/RxBlocking.podspec +++ b/RxBlocking.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = "RxBlocking" - s.version = "2.0.0-alpha.3" + s.version = "2.0.0-alpha.4" s.summary = "RxSwift Blocking operatos" s.description = <<-DESC Set of blocking operators for unit testing @@ -15,6 +15,7 @@ Pod::Spec.new do |s| s.ios.deployment_target = '8.0' s.osx.deployment_target = '10.9' s.watchos.deployment_target = '2.0' + s.tvos.deployment_target = '9.0' s.source_files = 'RxBlocking/**/*.swift' diff --git a/RxBlocking/Observable+Blocking.swift b/RxBlocking/Observable+Blocking.swift index 8b5c56cc..799cbf98 100644 --- a/RxBlocking/Observable+Blocking.swift +++ b/RxBlocking/Observable+Blocking.swift @@ -28,7 +28,7 @@ extension ObservableType { var ended = false - self.subscribe { e in + _ = self.subscribe { e in switch e { case .Next(let element): elements.append(element) diff --git a/RxCocoa.podspec b/RxCocoa.podspec index c2360877..6d087620 100644 --- a/RxCocoa.podspec +++ b/RxCocoa.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = "RxCocoa" - s.version = "2.0.0-alpha.3" + s.version = "2.0.0-alpha.4" s.summary = "RxSwift Cocoa extensions" s.description = <<-DESC * UI extensions @@ -17,11 +17,13 @@ Pod::Spec.new do |s| s.ios.deployment_target = '8.0' s.osx.deployment_target = '10.9' s.watchos.deployment_target = '2.0' + s.tvos.deployment_target = '9.0' s.source_files = 'RxCocoa/RxCocoa.h', 'RxCocoa/Common/**/*.{swift,h,m}' s.ios.source_files = 'RxCocoa/iOS/**/*.swift' s.osx.source_files = 'RxCocoa/OSX/**/*.swift' s.watchos.source_files = 'RxCocoa/iOS/**/*.swift' + s.tvos.source_files = 'RxCocoa/iOS/**/*.swift' s.dependency 'RxSwift', '~> 2.0.0-alpha' end diff --git a/RxCocoa/Common/Observables/Implementations/ControlTarget.swift b/RxCocoa/Common/Observables/Implementations/ControlTarget.swift index 92501067..c74c5544 100644 --- a/RxCocoa/Common/Observables/Implementations/ControlTarget.swift +++ b/RxCocoa/Common/Observables/Implementations/ControlTarget.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) || os(OSX) + import Foundation #if !RX_NO_MODULE import RxSwift @@ -86,3 +88,5 @@ class ControlTarget: RxTarget { self.callback = nil } } + +#endif diff --git a/RxCocoa/iOS/DataSources/RxCollectionViewReactiveArrayDataSource.swift b/RxCocoa/iOS/DataSources/RxCollectionViewReactiveArrayDataSource.swift index 1ba395d4..ba7c5579 100644 --- a/RxCocoa/iOS/DataSources/RxCollectionViewReactiveArrayDataSource.swift +++ b/RxCocoa/iOS/DataSources/RxCollectionViewReactiveArrayDataSource.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import Foundation import UIKit #if !RX_NO_MODULE @@ -92,4 +94,6 @@ class RxCollectionViewReactiveArrayDataSource : _RxCollectionViewReacti collectionView.reloadData() } -} \ No newline at end of file +} + +#endif diff --git a/RxCocoa/iOS/DataSources/RxTableViewReactiveArrayDataSource.swift b/RxCocoa/iOS/DataSources/RxTableViewReactiveArrayDataSource.swift index 73181cee..43f199fb 100644 --- a/RxCocoa/iOS/DataSources/RxTableViewReactiveArrayDataSource.swift +++ b/RxCocoa/iOS/DataSources/RxTableViewReactiveArrayDataSource.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import Foundation import UIKit #if !RX_NO_MODULE @@ -88,4 +90,6 @@ class RxTableViewReactiveArrayDataSource : _RxTableViewReactiveArrayDat tableView.reloadData() } -} \ No newline at end of file +} + +#endif diff --git a/RxCocoa/iOS/Protocols/RxCollectionViewDataSourceType.swift b/RxCocoa/iOS/Protocols/RxCollectionViewDataSourceType.swift index 0609cbf1..d4f38752 100644 --- a/RxCocoa/iOS/Protocols/RxCollectionViewDataSourceType.swift +++ b/RxCocoa/iOS/Protocols/RxCollectionViewDataSourceType.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import Foundation import UIKit #if !RX_NO_MODULE @@ -29,4 +31,6 @@ public protocol RxCollectionViewDataSourceType /*: UICollectionViewDataSource*/ - parameter observedEvent: Event */ func collectionView(collectionView: UICollectionView, observedEvent: Event) -> Void -} \ No newline at end of file +} + +#endif diff --git a/RxCocoa/iOS/Protocols/RxTableViewDataSourceType.swift b/RxCocoa/iOS/Protocols/RxTableViewDataSourceType.swift index 4cb15aa9..3345153b 100644 --- a/RxCocoa/iOS/Protocols/RxTableViewDataSourceType.swift +++ b/RxCocoa/iOS/Protocols/RxTableViewDataSourceType.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import Foundation import UIKit #if !RX_NO_MODULE @@ -29,4 +31,6 @@ public protocol RxTableViewDataSourceType /*: UITableViewDataSource*/ { - parameter observedEvent: Event */ func tableView(tableView: UITableView, observedEvent: Event) -> Void -} \ No newline at end of file +} + +#endif diff --git a/RxCocoa/iOS/Proxies/RxCollectionViewDataSourceProxy.swift b/RxCocoa/iOS/Proxies/RxCollectionViewDataSourceProxy.swift index be1d00ce..5a42430b 100644 --- a/RxCocoa/iOS/Proxies/RxCollectionViewDataSourceProxy.swift +++ b/RxCocoa/iOS/Proxies/RxCollectionViewDataSourceProxy.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import Foundation import UIKit #if !RX_NO_MODULE @@ -73,4 +75,6 @@ class RxCollectionViewDataSourceProxy : DelegateProxy self.dataSource = dataSource ?? collectionViewDataSourceNotSet super.setForwardToDelegate(forwardToDelegate, retainDelegate: retainDelegate) } -} \ No newline at end of file +} + +#endif diff --git a/RxCocoa/iOS/Proxies/RxCollectionViewDelegateProxy.swift b/RxCocoa/iOS/Proxies/RxCollectionViewDelegateProxy.swift index 32d25f90..3707195b 100644 --- a/RxCocoa/iOS/Proxies/RxCollectionViewDelegateProxy.swift +++ b/RxCocoa/iOS/Proxies/RxCollectionViewDelegateProxy.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import Foundation import UIKit #if !RX_NO_MODULE @@ -16,4 +18,6 @@ import RxSwift class RxCollectionViewDelegateProxy : RxScrollViewDelegateProxy , UICollectionViewDelegate, UICollectionViewDelegateFlowLayout { -} \ No newline at end of file +} + +#endif diff --git a/RxCocoa/iOS/Proxies/RxScrollViewDelegateProxy.swift b/RxCocoa/iOS/Proxies/RxScrollViewDelegateProxy.swift index 5e871798..4c429b46 100644 --- a/RxCocoa/iOS/Proxies/RxScrollViewDelegateProxy.swift +++ b/RxCocoa/iOS/Proxies/RxScrollViewDelegateProxy.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import Foundation #if !RX_NO_MODULE import RxSwift @@ -67,3 +69,5 @@ class RxScrollViewDelegateProxy : DelegateProxy } } } + +#endif diff --git a/RxCocoa/iOS/Proxies/RxSearchBarDelegateProxy.swift b/RxCocoa/iOS/Proxies/RxSearchBarDelegateProxy.swift index 326abe59..dadee355 100644 --- a/RxCocoa/iOS/Proxies/RxSearchBarDelegateProxy.swift +++ b/RxCocoa/iOS/Proxies/RxSearchBarDelegateProxy.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import Foundation import UIKit #if !RX_NO_MODULE @@ -25,4 +27,6 @@ class RxSearchBarDelegateProxy : DelegateProxy let searchBar: UISearchBar = castOrFatalError(object) searchBar.delegate = castOptionalOrFatalError(delegate) } -} \ No newline at end of file +} + +#endif diff --git a/RxCocoa/iOS/Proxies/RxTableViewDataSourceProxy.swift b/RxCocoa/iOS/Proxies/RxTableViewDataSourceProxy.swift index 01c1513d..5c549cde 100644 --- a/RxCocoa/iOS/Proxies/RxTableViewDataSourceProxy.swift +++ b/RxCocoa/iOS/Proxies/RxTableViewDataSourceProxy.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import Foundation import UIKit #if !RX_NO_MODULE @@ -78,4 +80,6 @@ class RxTableViewDataSourceProxy : DelegateProxy self.dataSource = dataSource ?? tableViewDataSourceNotSet super.setForwardToDelegate(forwardToDelegate, retainDelegate: retainDelegate) } -} \ No newline at end of file +} + +#endif diff --git a/RxCocoa/iOS/Proxies/RxTableViewDelegateProxy.swift b/RxCocoa/iOS/Proxies/RxTableViewDelegateProxy.swift index 6075614f..fd8c9f97 100644 --- a/RxCocoa/iOS/Proxies/RxTableViewDelegateProxy.swift +++ b/RxCocoa/iOS/Proxies/RxTableViewDelegateProxy.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import Foundation import UIKit #if !RX_NO_MODULE @@ -16,4 +18,6 @@ import RxSwift class RxTableViewDelegateProxy : RxScrollViewDelegateProxy , UITableViewDelegate { -} \ No newline at end of file +} + +#endif diff --git a/RxCocoa/iOS/Proxies/RxTextViewDelegateProxy.swift b/RxCocoa/iOS/Proxies/RxTextViewDelegateProxy.swift index 813d7ca1..f8289788 100644 --- a/RxCocoa/iOS/Proxies/RxTextViewDelegateProxy.swift +++ b/RxCocoa/iOS/Proxies/RxTextViewDelegateProxy.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import Foundation import UIKit #if !RX_NO_MODULE @@ -17,3 +19,5 @@ class RxTextViewDelegateProxy : RxScrollViewDelegateProxy , UITextViewDelegate { } + +#endif diff --git a/RxCocoa/iOS/UIBarButtonItem+Rx.swift b/RxCocoa/iOS/UIBarButtonItem+Rx.swift index 89949d88..ce8a4f01 100644 --- a/RxCocoa/iOS/UIBarButtonItem+Rx.swift +++ b/RxCocoa/iOS/UIBarButtonItem+Rx.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import UIKit #if !RX_NO_MODULE import RxSwift @@ -81,4 +83,6 @@ class BarButtonItemTarget: NSObject, Disposable { callback() } -} \ No newline at end of file +} + +#endif diff --git a/RxCocoa/iOS/UIButton+Rx.swift b/RxCocoa/iOS/UIButton+Rx.swift index 8b942f3e..9621acb2 100644 --- a/RxCocoa/iOS/UIButton+Rx.swift +++ b/RxCocoa/iOS/UIButton+Rx.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import Foundation #if !RX_NO_MODULE import RxSwift @@ -21,4 +23,6 @@ extension UIButton { return rx_controlEvents(.TouchUpInside) } -} \ No newline at end of file +} + +#endif diff --git a/RxCocoa/iOS/UICollectionView+Rx.swift b/RxCocoa/iOS/UICollectionView+Rx.swift index 7cfaf2f9..92d1518b 100644 --- a/RxCocoa/iOS/UICollectionView+Rx.swift +++ b/RxCocoa/iOS/UICollectionView+Rx.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import Foundation #if !RX_NO_MODULE import RxSwift @@ -150,3 +152,5 @@ extension UICollectionView { return ControlEvent(source: source) } } + +#endif diff --git a/RxCocoa/iOS/UIControl+Rx.swift b/RxCocoa/iOS/UIControl+Rx.swift index e305eea6..854fb7d2 100644 --- a/RxCocoa/iOS/UIControl+Rx.swift +++ b/RxCocoa/iOS/UIControl+Rx.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import Foundation #if !RX_NO_MODULE import RxSwift @@ -85,3 +87,5 @@ extension UIControl { } } + +#endif diff --git a/RxCocoa/iOS/UIGestureRecognizer+Rx.swift b/RxCocoa/iOS/UIGestureRecognizer+Rx.swift index 7adc80c0..16685d1d 100644 --- a/RxCocoa/iOS/UIGestureRecognizer+Rx.swift +++ b/RxCocoa/iOS/UIGestureRecognizer+Rx.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import UIKit #if !RX_NO_MODULE import RxSwift @@ -69,4 +71,6 @@ extension UIGestureRecognizer { return ControlEvent(source: source) } -} \ No newline at end of file +} + +#endif diff --git a/RxCocoa/iOS/UIImageView+Rx.swift b/RxCocoa/iOS/UIImageView+Rx.swift index cd590c73..7c112c24 100644 --- a/RxCocoa/iOS/UIImageView+Rx.swift +++ b/RxCocoa/iOS/UIImageView+Rx.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import Foundation #if !RX_NO_MODULE import RxSwift @@ -55,3 +57,5 @@ extension UIImageView { } } + +#endif diff --git a/RxCocoa/iOS/UILabel+Rx.swift b/RxCocoa/iOS/UILabel+Rx.swift index 3731a44b..e11459a3 100644 --- a/RxCocoa/iOS/UILabel+Rx.swift +++ b/RxCocoa/iOS/UILabel+Rx.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import Foundation #if !RX_NO_MODULE import RxSwift @@ -33,4 +35,6 @@ extension UILabel { } } -} \ No newline at end of file +} + +#endif diff --git a/RxCocoa/iOS/UIScrollView+Rx.swift b/RxCocoa/iOS/UIScrollView+Rx.swift index f7b64ad1..d2311197 100644 --- a/RxCocoa/iOS/UIScrollView+Rx.swift +++ b/RxCocoa/iOS/UIScrollView+Rx.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import Foundation #if !RX_NO_MODULE import RxSwift @@ -64,3 +66,5 @@ extension UIScrollView { return installDelegate(proxy, delegate: delegate, retainDelegate: false, onProxyForObject: self) } } + +#endif diff --git a/RxCocoa/iOS/UISearchBar+Rx.swift b/RxCocoa/iOS/UISearchBar+Rx.swift index b96549ce..28d3c70e 100644 --- a/RxCocoa/iOS/UISearchBar+Rx.swift +++ b/RxCocoa/iOS/UISearchBar+Rx.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import Foundation #if !RX_NO_MODULE import RxSwift @@ -50,4 +52,6 @@ extension UISearchBar { } }) } -} \ No newline at end of file +} + +#endif diff --git a/RxCocoa/iOS/UISegmentedControl+Rx.swift b/RxCocoa/iOS/UISegmentedControl+Rx.swift index e7589c61..21139303 100644 --- a/RxCocoa/iOS/UISegmentedControl+Rx.swift +++ b/RxCocoa/iOS/UISegmentedControl+Rx.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import UIKit #if !RX_NO_MODULE import RxSwift @@ -25,4 +27,6 @@ extension UISegmentedControl { }) } -} \ No newline at end of file +} + +#endif diff --git a/RxCocoa/iOS/UITableView+Rx.swift b/RxCocoa/iOS/UITableView+Rx.swift index b3afd195..97ca683f 100644 --- a/RxCocoa/iOS/UITableView+Rx.swift +++ b/RxCocoa/iOS/UITableView+Rx.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import Foundation #if !RX_NO_MODULE import RxSwift @@ -194,4 +196,6 @@ extension UITableView { return ControlEvent(source: source) } -} \ No newline at end of file +} + +#endif diff --git a/RxCocoa/iOS/UITextField+Rx.swift b/RxCocoa/iOS/UITextField+Rx.swift index dee2faf4..9c8f3138 100644 --- a/RxCocoa/iOS/UITextField+Rx.swift +++ b/RxCocoa/iOS/UITextField+Rx.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import Foundation #if !RX_NO_MODULE import RxSwift @@ -25,4 +27,6 @@ extension UITextField { }) } -} \ No newline at end of file +} + +#endif diff --git a/RxCocoa/iOS/UITextView+Rx.swift b/RxCocoa/iOS/UITextView+Rx.swift index 1fad0ff5..ffb43f5a 100644 --- a/RxCocoa/iOS/UITextView+Rx.swift +++ b/RxCocoa/iOS/UITextView+Rx.swift @@ -6,6 +6,8 @@ // Copyright (c) 2015 Krunoslav Zaher. All rights reserved. // +#if os(iOS) || os(tvOS) + import Foundation import UIKit #if !RX_NO_MODULE @@ -49,3 +51,5 @@ extension UITextView { } } + +#endif diff --git a/RxExample/RxExample.xcodeproj/project.pbxproj b/RxExample/RxExample.xcodeproj/project.pbxproj index 8c9bbfa2..9a5726e9 100644 --- a/RxExample/RxExample.xcodeproj/project.pbxproj +++ b/RxExample/RxExample.xcodeproj/project.pbxproj @@ -45,7 +45,6 @@ C8297E481B6CF905000589EA /* Differentiator.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88C78941B3F20DB0061C5AB /* Differentiator.swift */; }; C8297E491B6CF905000589EA /* WikipediaSearchCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8C46DA51B47F7110020D71E /* WikipediaSearchCell.swift */; }; C8297E4A1B6CF905000589EA /* GitHubSignupViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C890A6571AEBD26B00AFF7E6 /* GitHubSignupViewController.swift */; }; - C8297E4B1B6CF905000589EA /* Random.xcdatamodeld in Sources */ = {isa = PBXBuildFile; fileRef = C8A57F721B40AF7C00D5570A /* Random.xcdatamodeld */; }; C8297E4C1B6CF905000589EA /* APIWrappersViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 075F130F1B4E9D5A000D7861 /* APIWrappersViewController.swift */; }; C8297E4D1B6CF905000589EA /* RxTableViewSectionedReloadDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = C88C78651B3EB0A00061C5AB /* RxTableViewSectionedReloadDataSource.swift */; }; C8297E4E1B6CF905000589EA /* RxCollectionViewSectionedAnimatedDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = C859B9A91B45CB0900D012D7 /* RxCollectionViewSectionedAnimatedDataSource.swift */; }; @@ -277,7 +276,6 @@ C8A468F11B8A8C2600BF917B /* RxBlocking.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C8A468EF1B8A8BD000BF917B /* RxBlocking.framework */; }; C8A468F21B8A8C2600BF917B /* RxCocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C8A468ED1B8A8BCC00BF917B /* RxCocoa.framework */; }; C8A468F31B8A8C2600BF917B /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C8A468EB1B8A8BC900BF917B /* RxSwift.framework */; }; - C8A57F741B40AF7C00D5570A /* Random.xcdatamodeld in Sources */ = {isa = PBXBuildFile; fileRef = C8A57F721B40AF7C00D5570A /* Random.xcdatamodeld */; }; C8A7501F1B94E77C00D8D046 /* RxDataSourceStarterKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8A7501E1B94E77C00D8D046 /* RxDataSourceStarterKit.swift */; }; C8A750201B94E78200D8D046 /* RxDataSourceStarterKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8A7501E1B94E77C00D8D046 /* RxDataSourceStarterKit.swift */; }; C8C46DA81B47F7110020D71E /* CollectionViewImageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8C46DA31B47F7110020D71E /* CollectionViewImageCell.swift */; }; @@ -294,9 +292,96 @@ C8DF92EA1B0B38C0009BCF9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = C8DF92E91B0B38C0009BCF9A /* Images.xcassets */; }; C8DF92EB1B0B38C0009BCF9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = C8DF92E91B0B38C0009BCF9A /* Images.xcassets */; }; C8DF92F61B0B43A4009BCF9A /* IntroductionExampleViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8DF92F51B0B43A4009BCF9A /* IntroductionExampleViewController.swift */; }; - EC91FB951BBA144400973245 /* GitHubSearchRepositoriesViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC91FB941BBA144400973245 /* GitHubSearchRepositoriesViewController.swift */; settings = {ASSET_TAGS = (); }; }; + EC91FB951BBA144400973245 /* GitHubSearchRepositoriesViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC91FB941BBA144400973245 /* GitHubSearchRepositoriesViewController.swift */; }; /* End PBXBuildFile section */ +/* Begin PBXContainerItemProxy section */ + C81B3A001BC1C28400EF5A9F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = C81B39F11BC1C28400EF5A9F /* Rx.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = C8A56AD71AD7424700B4673B; + remoteInfo = "RxSwift-iOS"; + }; + C81B3A021BC1C28400EF5A9F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = C81B39F11BC1C28400EF5A9F /* Rx.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = C88BB8711B07E5ED0064D411; + remoteInfo = "RxSwift-OSX"; + }; + C81B3A041BC1C28400EF5A9F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = C81B39F11BC1C28400EF5A9F /* Rx.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = D2EA280C1BB9B5A200880ED3; + remoteInfo = "RxSwift-tvOS"; + }; + C81B3A061BC1C28400EF5A9F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = C81B39F11BC1C28400EF5A9F /* Rx.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = C8F0C0021BBBFB8B001B112F; + remoteInfo = "RxSwift-watchOS"; + }; + C81B3A081BC1C28400EF5A9F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = C81B39F11BC1C28400EF5A9F /* Rx.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = C809396D1B8A71760088E94D; + remoteInfo = "RxCocoa-iOS"; + }; + C81B3A0A1BC1C28400EF5A9F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = C81B39F11BC1C28400EF5A9F /* Rx.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = C80939E71B8A71840088E94D; + remoteInfo = "RxCocoa-OSX"; + }; + C81B3A0C1BC1C28400EF5A9F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = C81B39F11BC1C28400EF5A9F /* Rx.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = D2138C751BB9BE9800339B5C; + remoteInfo = "RxCocoa-tvOS"; + }; + C81B3A0E1BC1C28400EF5A9F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = C81B39F11BC1C28400EF5A9F /* Rx.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = C8F0C04B1BBBFBB9001B112F; + remoteInfo = "RxCocoa-watchOS"; + }; + C81B3A101BC1C28400EF5A9F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = C81B39F11BC1C28400EF5A9F /* Rx.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = C8093BC71B8A71F00088E94D; + remoteInfo = "RxBlocking-iOS"; + }; + C81B3A121BC1C28400EF5A9F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = C81B39F11BC1C28400EF5A9F /* Rx.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = C8093C451B8A71FC0088E94D; + remoteInfo = "RxBlocking-OSX"; + }; + C81B3A141BC1C28400EF5A9F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = C81B39F11BC1C28400EF5A9F /* Rx.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = D2EBEB811BB9B99D003A27DC; + remoteInfo = "RxBlocking-tvOS"; + }; + C81B3A161BC1C28400EF5A9F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = C81B39F11BC1C28400EF5A9F /* Rx.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = C8F0C0581BBBFBCE001B112F; + remoteInfo = "RxBlocking-watchOS"; + }; +/* End PBXContainerItemProxy section */ + /* Begin PBXCopyFilesBuildPhase section */ C8297E621B6CF905000589EA /* Embed Frameworks */ = { isa = PBXCopyFilesBuildPhase; @@ -343,6 +428,7 @@ 07E300061B14995F00F00100 /* TableViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TableViewController.swift; sourceTree = ""; }; 07E300081B149A2A00F00100 /* User.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = User.swift; sourceTree = ""; }; 07E3C2321B03605B0010338D /* Dependencies.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = Dependencies.swift; path = Examples/Dependencies.swift; sourceTree = ""; }; + C81B39F11BC1C28400EF5A9F /* Rx.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Rx.xcodeproj; path = ../Rx.xcodeproj; sourceTree = ""; }; C8297E691B6CF905000589EA /* RxExample-iOS-no-module.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "RxExample-iOS-no-module.app"; sourceTree = BUILT_PRODUCTS_DIR; }; C83366DD1AD0293800C668A7 /* RxExample-iOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "RxExample-iOS.app"; sourceTree = BUILT_PRODUCTS_DIR; }; C833670F1AD029AE00C668A7 /* Example.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Example.swift; sourceTree = ""; }; @@ -547,7 +633,6 @@ C8A468EB1B8A8BC900BF917B /* RxSwift.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = RxSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; C8A468ED1B8A8BCC00BF917B /* RxCocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = RxCocoa.framework; sourceTree = BUILT_PRODUCTS_DIR; }; C8A468EF1B8A8BD000BF917B /* RxBlocking.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = RxBlocking.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - C8A57F731B40AF7C00D5570A /* Random.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = Random.xcdatamodel; sourceTree = ""; }; C8A7501E1B94E77C00D8D046 /* RxDataSourceStarterKit.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RxDataSourceStarterKit.swift; sourceTree = ""; }; C8AF26F11B49ABD300131C03 /* README.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = ""; }; C8C46DA31B47F7110020D71E /* CollectionViewImageCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CollectionViewImageCell.swift; sourceTree = ""; }; @@ -655,9 +740,29 @@ path = TableView; sourceTree = ""; }; + C81B39F21BC1C28400EF5A9F /* Products */ = { + isa = PBXGroup; + children = ( + C81B3A011BC1C28400EF5A9F /* RxSwift.framework */, + C81B3A031BC1C28400EF5A9F /* RxSwift.framework */, + C81B3A051BC1C28400EF5A9F /* RxSwift.framework */, + C81B3A071BC1C28400EF5A9F /* RxSwift.framework */, + C81B3A091BC1C28400EF5A9F /* RxCocoa.framework */, + C81B3A0B1BC1C28400EF5A9F /* RxCocoa.framework */, + C81B3A0D1BC1C28400EF5A9F /* RxCocoa.framework */, + C81B3A0F1BC1C28400EF5A9F /* RxCocoa.framework */, + C81B3A111BC1C28400EF5A9F /* RxBlocking.framework */, + C81B3A131BC1C28400EF5A9F /* RxBlocking.framework */, + C81B3A151BC1C28400EF5A9F /* RxBlocking.framework */, + C81B3A171BC1C28400EF5A9F /* RxBlocking.framework */, + ); + name = Products; + sourceTree = ""; + }; C83366D41AD0293800C668A7 = { isa = PBXGroup; children = ( + C81B39F11BC1C28400EF5A9F /* Rx.xcodeproj */, C8A468EF1B8A8BD000BF917B /* RxBlocking.framework */, C8A468ED1B8A8BCC00BF917B /* RxCocoa.framework */, C8A468EB1B8A8BC900BF917B /* RxSwift.framework */, @@ -1075,8 +1180,7 @@ 07E300051B14994500F00100 /* 05 TableView */, 07A5C3D91B70B6B8001EFE5C /* 06 Calculator */, C859B9A21B45C5D900D012D7 /* 07 PartialUpdates */, - C8A57F711B40AF4E00D5570A /* 08 CoreData */, - EC91FB931BBA12E800973245 /* 09 AutoLoading */, + EC91FB931BBA12E800973245 /* 08 AutoLoading */, ); path = Examples; sourceTree = ""; @@ -1162,15 +1266,6 @@ path = DataSources; sourceTree = ""; }; - C8A57F711B40AF4E00D5570A /* 08 CoreData */ = { - isa = PBXGroup; - children = ( - C8A57F721B40AF7C00D5570A /* Random.xcdatamodeld */, - ); - name = "08 CoreData"; - path = CoreData; - sourceTree = ""; - }; C8DF92C71B0B2F84009BCF9A /* iOS */ = { isa = PBXGroup; children = ( @@ -1200,12 +1295,12 @@ path = Introduction; sourceTree = ""; }; - EC91FB931BBA12E800973245 /* 09 AutoLoading */ = { + EC91FB931BBA12E800973245 /* 08 AutoLoading */ = { isa = PBXGroup; children = ( EC91FB941BBA144400973245 /* GitHubSearchRepositoriesViewController.swift */, ); - name = "09 AutoLoading"; + name = "08 AutoLoading"; path = AutoLoading; sourceTree = ""; }; @@ -1273,7 +1368,7 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 0700; - LastUpgradeCheck = 0640; + LastUpgradeCheck = 0710; ORGANIZATIONNAME = "Krunoslav Zaher"; TargetAttributes = { C83366DC1AD0293800C668A7 = { @@ -1292,6 +1387,12 @@ mainGroup = C83366D41AD0293800C668A7; productRefGroup = C83366DE1AD0293800C668A7 /* Products */; projectDirPath = ""; + projectReferences = ( + { + ProductGroup = C81B39F21BC1C28400EF5A9F /* Products */; + ProjectRef = C81B39F11BC1C28400EF5A9F /* Rx.xcodeproj */; + }, + ); projectRoot = ""; targets = ( C83366DC1AD0293800C668A7 /* RxExample-iOS */, @@ -1301,6 +1402,93 @@ }; /* End PBXProject section */ +/* Begin PBXReferenceProxy section */ + C81B3A011BC1C28400EF5A9F /* RxSwift.framework */ = { + isa = PBXReferenceProxy; + fileType = wrapper.framework; + path = RxSwift.framework; + remoteRef = C81B3A001BC1C28400EF5A9F /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + C81B3A031BC1C28400EF5A9F /* RxSwift.framework */ = { + isa = PBXReferenceProxy; + fileType = wrapper.framework; + path = RxSwift.framework; + remoteRef = C81B3A021BC1C28400EF5A9F /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + C81B3A051BC1C28400EF5A9F /* RxSwift.framework */ = { + isa = PBXReferenceProxy; + fileType = wrapper.framework; + path = RxSwift.framework; + remoteRef = C81B3A041BC1C28400EF5A9F /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + C81B3A071BC1C28400EF5A9F /* RxSwift.framework */ = { + isa = PBXReferenceProxy; + fileType = wrapper.framework; + path = RxSwift.framework; + remoteRef = C81B3A061BC1C28400EF5A9F /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + C81B3A091BC1C28400EF5A9F /* RxCocoa.framework */ = { + isa = PBXReferenceProxy; + fileType = wrapper.framework; + path = RxCocoa.framework; + remoteRef = C81B3A081BC1C28400EF5A9F /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + C81B3A0B1BC1C28400EF5A9F /* RxCocoa.framework */ = { + isa = PBXReferenceProxy; + fileType = wrapper.framework; + path = RxCocoa.framework; + remoteRef = C81B3A0A1BC1C28400EF5A9F /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + C81B3A0D1BC1C28400EF5A9F /* RxCocoa.framework */ = { + isa = PBXReferenceProxy; + fileType = wrapper.framework; + path = RxCocoa.framework; + remoteRef = C81B3A0C1BC1C28400EF5A9F /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + C81B3A0F1BC1C28400EF5A9F /* RxCocoa.framework */ = { + isa = PBXReferenceProxy; + fileType = wrapper.framework; + path = RxCocoa.framework; + remoteRef = C81B3A0E1BC1C28400EF5A9F /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + C81B3A111BC1C28400EF5A9F /* RxBlocking.framework */ = { + isa = PBXReferenceProxy; + fileType = wrapper.framework; + path = RxBlocking.framework; + remoteRef = C81B3A101BC1C28400EF5A9F /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + C81B3A131BC1C28400EF5A9F /* RxBlocking.framework */ = { + isa = PBXReferenceProxy; + fileType = wrapper.framework; + path = RxBlocking.framework; + remoteRef = C81B3A121BC1C28400EF5A9F /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + C81B3A151BC1C28400EF5A9F /* RxBlocking.framework */ = { + isa = PBXReferenceProxy; + fileType = wrapper.framework; + path = RxBlocking.framework; + remoteRef = C81B3A141BC1C28400EF5A9F /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + C81B3A171BC1C28400EF5A9F /* RxBlocking.framework */ = { + isa = PBXReferenceProxy; + fileType = wrapper.framework; + path = RxBlocking.framework; + remoteRef = C81B3A161BC1C28400EF5A9F /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; +/* End PBXReferenceProxy section */ + /* Begin PBXResourcesBuildPhase section */ C8297E5C1B6CF905000589EA /* Resources */ = { isa = PBXResourcesBuildPhase; @@ -1489,7 +1677,6 @@ C864099C1BA5909000D3C4E8 /* DisposeBase.swift in Sources */, C8297E4A1B6CF905000589EA /* GitHubSignupViewController.swift in Sources */, C86409F51BA5909000D3C4E8 /* SchedulerType.swift in Sources */, - C8297E4B1B6CF905000589EA /* Random.xcdatamodeld in Sources */, C86409B81BA5909000D3C4E8 /* DelaySubscription.swift in Sources */, C84B3A641BA4345A001B7D88 /* UITextView+Rx.swift in Sources */, C86409AF1BA5909000D3C4E8 /* Catch.swift in Sources */, @@ -1591,7 +1778,6 @@ C88C78951B3F20DB0061C5AB /* Differentiator.swift in Sources */, C8C46DAA1B47F7110020D71E /* WikipediaSearchCell.swift in Sources */, C890A6581AEBD26B00AFF7E6 /* GitHubSignupViewController.swift in Sources */, - C8A57F741B40AF7C00D5570A /* Random.xcdatamodeld in Sources */, 075F13101B4E9D5A000D7861 /* APIWrappersViewController.swift in Sources */, C83367311AD029AE00C668A7 /* Wireframe.swift in Sources */, 07E300071B14995F00F00100 /* TableViewController.swift in Sources */, @@ -1637,6 +1823,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; OTHER_LDFLAGS = "-objc_loadall"; OTHER_SWIFT_FLAGS = "$(inherited) -D RX_NO_MODULE"; + PRODUCT_BUNDLE_IDENTIFIER = "Krunoslav-Zaher.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "RxExample-iOS-no-module"; SDKROOT = iphoneos; SWIFT_OBJC_BRIDGING_HEADER = ../RxCocoa/RxCocoa.h; @@ -1651,6 +1838,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; OTHER_LDFLAGS = "-objc_loadall"; OTHER_SWIFT_FLAGS = "$(inherited) -D RX_NO_MODULE"; + PRODUCT_BUNDLE_IDENTIFIER = "Krunoslav-Zaher.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "RxExample-iOS-no-module"; SDKROOT = iphoneos; SWIFT_OBJC_BRIDGING_HEADER = ../RxCocoa/RxCocoa.h; @@ -1665,6 +1853,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; OTHER_LDFLAGS = "-objc_loadall"; OTHER_SWIFT_FLAGS = "$(inherited) -D RX_NO_MODULE"; + PRODUCT_BUNDLE_IDENTIFIER = "Krunoslav-Zaher.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "RxExample-iOS-no-module"; SDKROOT = iphoneos; SWIFT_OBJC_BRIDGING_HEADER = ../RxCocoa/RxCocoa.h; @@ -1693,6 +1882,7 @@ COPY_PHASE_STRIP = NO; EMBEDDED_CONTENT_CONTAINS_SWIFT = YES; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_OPTIMIZATION_LEVEL = 0; @@ -1767,6 +1957,7 @@ IPHONEOS_DEPLOYMENT_TARGET = 8.1; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; OTHER_LDFLAGS = "-objc_loadall"; + PRODUCT_BUNDLE_IDENTIFIER = "Krunoslav-Zaher.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "RxExample-iOS"; SDKROOT = iphoneos; }; @@ -1779,6 +1970,7 @@ IPHONEOS_DEPLOYMENT_TARGET = 8.1; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; OTHER_LDFLAGS = "-objc_loadall"; + PRODUCT_BUNDLE_IDENTIFIER = "Krunoslav-Zaher.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "RxExample-iOS"; SDKROOT = iphoneos; }; @@ -1792,6 +1984,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @executable_path/../Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.10; OTHER_LDFLAGS = "-objc_loadall"; + PRODUCT_BUNDLE_IDENTIFIER = "Krunoslav-Zaher.$(PRODUCT_NAME:rfc1034identifier)"; SDKROOT = macosx; }; name = Debug; @@ -1804,6 +1997,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @executable_path/../Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.10; OTHER_LDFLAGS = "-objc_loadall"; + PRODUCT_BUNDLE_IDENTIFIER = "Krunoslav-Zaher.$(PRODUCT_NAME:rfc1034identifier)"; SDKROOT = macosx; }; name = Release; @@ -1857,6 +2051,7 @@ IPHONEOS_DEPLOYMENT_TARGET = 8.1; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; OTHER_LDFLAGS = "-objc_loadall"; + PRODUCT_BUNDLE_IDENTIFIER = "Krunoslav-Zaher.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "RxExample-iOS"; SDKROOT = iphoneos; }; @@ -1870,6 +2065,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @executable_path/../Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.10; OTHER_LDFLAGS = "-objc_loadall"; + PRODUCT_BUNDLE_IDENTIFIER = "Krunoslav-Zaher.$(PRODUCT_NAME:rfc1034identifier)"; SDKROOT = macosx; }; name = "Release-Tests"; @@ -1918,19 +2114,6 @@ defaultConfigurationName = Release; }; /* End XCConfigurationList section */ - -/* Begin XCVersionGroup section */ - C8A57F721B40AF7C00D5570A /* Random.xcdatamodeld */ = { - isa = XCVersionGroup; - children = ( - C8A57F731B40AF7C00D5570A /* Random.xcdatamodel */, - ); - currentVersion = C8A57F731B40AF7C00D5570A /* Random.xcdatamodel */; - path = Random.xcdatamodeld; - sourceTree = ""; - versionGroupType = wrapper.xcdatamodel; - }; -/* End XCVersionGroup section */ }; rootObject = C83366D51AD0293800C668A7 /* Project object */; } diff --git a/RxExample/RxExample.xcodeproj/xcshareddata/xcschemes/RxExample-OSX.xcscheme b/RxExample/RxExample.xcodeproj/xcshareddata/xcschemes/RxExample-OSX.xcscheme index cac9eb64..237d82f8 100644 --- a/RxExample/RxExample.xcodeproj/xcshareddata/xcschemes/RxExample-OSX.xcscheme +++ b/RxExample/RxExample.xcodeproj/xcshareddata/xcschemes/RxExample-OSX.xcscheme @@ -1,6 +1,6 @@ [Repository] { guard let items = json["items"] as? [[String: AnyObject]] else { - throw exampleError("Can't find results") + throw exampleError("Can't find items") } return try items.map { item in guard let name = item["name"] as? String, @@ -191,6 +191,7 @@ class GitHubSearchRepositoriesViewController: ViewController, UITableViewDelegat let $: Dependencies = Dependencies.sharedDependencies let tableView = self.tableView + let searchBar = self.searchBar let allRepositories = repositories .map { repositories in @@ -205,14 +206,15 @@ class GitHubSearchRepositoriesViewController: ViewController, UITableViewDelegat } dataSource.titleForHeaderInSection = { [unowned dataSource] sectionIndex in - return dataSource.sectionAtIndex(sectionIndex).model + let section = dataSource.sectionAtIndex(sectionIndex) + return section.items.count > 0 ? "Repositories (\(section.items.count))" : "No repositories found" } // reactive data source allRepositories .bindTo(tableView.rx_itemsWithDataSource(dataSource)) .addDisposableTo(disposeBag) - + let loadNextPageTrigger = tableView.rx_contentOffset .flatMap { offset in GitHubSearchRepositoriesViewController.isNearTheBottomEdge(offset, tableView) @@ -223,11 +225,14 @@ class GitHubSearchRepositoriesViewController: ViewController, UITableViewDelegat searchBar.rx_text .throttle(0.3, $.mainScheduler) .distinctUntilChanged() - .filter { $0 != "" } - .map { query in - GitHubSearchRepositoriesAPI.sharedAPI.search(query, loadNextPageTrigger: loadNextPageTrigger) - .retry(3) - .catchErrorJustReturn(.Repositories([])) + .map { query -> Observable in + if query.isEmpty { + return just(.Repositories([])) + } else { + return GitHubSearchRepositoriesAPI.sharedAPI.search(query, loadNextPageTrigger: loadNextPageTrigger) + .retry(3) + .catchErrorJustReturn(.Repositories([])) + } } .switchLatest() .subscribeNext { [unowned self] result in @@ -240,28 +245,24 @@ class GitHubSearchRepositoriesViewController: ViewController, UITableViewDelegat } } .addDisposableTo(disposeBag) + + // dismiss keyboard on scroll + tableView.rx_contentOffset + .subscribe { _ in + if searchBar.isFirstResponder() { + _ = searchBar.resignFirstResponder() + } + } + .addDisposableTo(disposeBag) + + // so normal delegate customization can also be used + tableView.rx_setDelegate(self) + .addDisposableTo(disposeBag) } - override func setEditing(editing: Bool, animated: Bool) { - super.setEditing(editing, animated: animated) - tableView.editing = editing - } - // MARK: Table view delegate - func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? { - let title = dataSource.sectionAtIndex(section) - - let label = UILabel(frame: CGRect.zero) - label.text = " \(title)" - label.textColor = UIColor.whiteColor() - label.backgroundColor = UIColor.darkGrayColor() - label.alpha = 0.9 - - return label - } - func tableView(tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat { - return 40 + return 30 } } diff --git a/RxExample/RxExample/Examples/CoreData/Random.xcdatamodeld/Random.xcdatamodel/contents b/RxExample/RxExample/Examples/CoreData/Random.xcdatamodeld/Random.xcdatamodel/contents deleted file mode 100644 index 6b481e21..00000000 --- a/RxExample/RxExample/Examples/CoreData/Random.xcdatamodeld/Random.xcdatamodel/contents +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/RxExample/RxExample/Examples/Dependencies.swift b/RxExample/RxExample/Examples/Dependencies.swift index 8e0bef9b..ef0f02e2 100644 --- a/RxExample/RxExample/Examples/Dependencies.swift +++ b/RxExample/RxExample/Examples/Dependencies.swift @@ -25,11 +25,9 @@ class Dependencies { let operationQueue = NSOperationQueue() operationQueue.maxConcurrentOperationCount = 2 - if #available(iOS 8.0, *) { - operationQueue.qualityOfService = NSQualityOfService.UserInitiated - } else { - // Fallback on earlier versions - } + #if !RX_NO_MODULE + operationQueue.qualityOfService = NSQualityOfService.UserInitiated + #endif backgroundWorkScheduler = OperationQueueScheduler(operationQueue: operationQueue) mainScheduler = MainScheduler.sharedInstance diff --git a/RxExample/RxExample/Examples/TableView/TableViewController.swift b/RxExample/RxExample/Examples/TableView/TableViewController.swift index f6154fce..6245a79b 100644 --- a/RxExample/RxExample/Examples/TableView/TableViewController.swift +++ b/RxExample/RxExample/Examples/TableView/TableViewController.swift @@ -22,8 +22,6 @@ class TableViewController: ViewController, UITableViewDelegate { let users = Variable([User]()) let favoriteUsers = Variable([User]()) - var allSections: [SectionModel] = [] - let dataSource = RxTableViewSectionedReloadDataSource>() typealias Section = SectionModel @@ -40,14 +38,6 @@ class TableViewController: ViewController, UITableViewDelegate { ] } - // This is for demonstration purposes of UITableViewDelegate/DataSource - // only, try to not do something like this in your app - allUsers - .subscribeNext { [unowned self] n in - self.allSections = n - } - .addDisposableTo(disposeBag) - dataSource.cellFactory = { (tv, ip, user: User) in let cell = tv.dequeueReusableCellWithIdentifier("Cell")! cell.textLabel?.text = user.firstName + " " + user.lastName @@ -87,7 +77,7 @@ class TableViewController: ViewController, UITableViewDelegate { .addDisposableTo(disposeBag) // Rx content offset - tableView.rx_contentOffset + _ = tableView.rx_contentOffset .subscribeNext { co in print("Content offset from Rx observer \(co)") } diff --git a/RxExample/RxExample/Images.xcassets/AppIcon.appiconset/Contents.json b/RxExample/RxExample/Images.xcassets/AppIcon.appiconset/Contents.json index d52c0ded..0342a564 100644 --- a/RxExample/RxExample/Images.xcassets/AppIcon.appiconset/Contents.json +++ b/RxExample/RxExample/Images.xcassets/AppIcon.appiconset/Contents.json @@ -105,11 +105,6 @@ "filename" : "Icon-76@2x.png", "scale" : "2x" }, - { - "idiom" : "car", - "size" : "120x120", - "scale" : "1x" - }, { "size" : "24x24", "idiom" : "watch", diff --git a/RxExample/RxExample/Info-OSX.plist b/RxExample/RxExample/Info-OSX.plist index 2bc41dc3..359805c8 100644 --- a/RxExample/RxExample/Info-OSX.plist +++ b/RxExample/RxExample/Info-OSX.plist @@ -7,7 +7,7 @@ CFBundleExecutable $(EXECUTABLE_NAME) CFBundleIdentifier - Krunoslav-Zaher.$(PRODUCT_NAME:rfc1034identifier) + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName @@ -20,9 +20,9 @@ ???? CFBundleVersion 1 - NSPrincipalClass - NSApplication NSMainStoryboardFile Main + NSPrincipalClass + NSApplication diff --git a/RxExample/RxExample/Info-iOS.plist b/RxExample/RxExample/Info-iOS.plist index ec238e9c..3f8076ad 100644 --- a/RxExample/RxExample/Info-iOS.plist +++ b/RxExample/RxExample/Info-iOS.plist @@ -7,7 +7,7 @@ CFBundleExecutable $(EXECUTABLE_NAME) CFBundleIdentifier - Krunoslav-Zaher.$(PRODUCT_NAME:rfc1034identifier) + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName @@ -22,6 +22,11 @@ 1 LSRequiresIPhoneOS + NSAppTransportSecurity + + NSAllowsArbitraryLoads + + NSLocationAlwaysUsageDescription We need location UILaunchStoryboardName @@ -38,11 +43,6 @@ UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight - NSAppTransportSecurity - - NSAllowsArbitraryLoads - - UISupportedInterfaceOrientations~ipad UIInterfaceOrientationPortrait diff --git a/RxExample/RxExample/OSX/Main.storyboard b/RxExample/RxExample/OSX/Main.storyboard index d082dd26..06e65af4 100644 --- a/RxExample/RxExample/OSX/Main.storyboard +++ b/RxExample/RxExample/OSX/Main.storyboard @@ -1,7 +1,7 @@ - + - + @@ -52,6 +52,7 @@ + @@ -66,6 +67,7 @@ + @@ -74,6 +76,7 @@ + @@ -82,25 +85,28 @@ + - + + - + @@ -294,14 +318,17 @@ + - - + + + - - + + + @@ -311,21 +338,24 @@ - + + + @@ -336,16 +366,18 @@ - + + @@ -358,6 +390,7 @@ + @@ -398,6 +431,7 @@ + @@ -412,6 +446,7 @@