Skip to content

Commit 00c2a89

Browse files
committed
Merge branch 'master' into swift4.0
2 parents 6e309c3 + 80de962 commit 00c2a89

File tree

56 files changed

+2807
-269
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+2807
-269
lines changed

.jazzy.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,7 @@ custom_categories:
169169
- SwiftSupport
170170
- name: RxSwift/Traits
171171
children:
172+
- Completable+AndThen
172173
- PrimitiveSequence+Zip+arity
173174
- PrimitiveSequence
174175
- name: RxCocoa/Common
@@ -201,6 +202,7 @@ custom_categories:
201202
- name: RxCocoa/iOS/DataSources
202203
children:
203204
- RxCollectionViewReactiveArrayDataSource
205+
- RxPickerViewAdapter
204206
- RxTableViewReactiveArrayDataSource
205207
- name: RxCocoa/iOS/Events
206208
children:
@@ -244,12 +246,14 @@ custom_categories:
244246
- name: RxCocoa/iOS/Protocols
245247
children:
246248
- RxCollectionViewDataSourceType
249+
- RxPickerViewDataSourceType
247250
- RxTableViewDataSourceType
248251
- name: RxCocoa/iOS/Proxies
249252
children:
250253
- RxCollectionViewDataSourceProxy
251254
- RxCollectionViewDelegateProxy
252255
- RxNavigationControllerDelegateProxy
256+
- RxPickerViewDataSourceProxy
253257
- RxPickerViewDelegateProxy
254258
- RxScrollViewDelegateProxy
255259
- RxSearchBarDelegateProxy

CHANGELOG.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,45 @@ All notable changes to this project will be documented in this file.
55

66
## Master
77

8+
## [3.6.1](https://github.com/ReactiveX/RxSwift/releases/tag/3.6.1)
9+
10+
#### Anomalies
11+
12+
* Fixes compilation issue with Xcode 9b3. #1341
13+
* Fixes issues with `andThen` operator. #1347
14+
* Improves locking behavior of `merge` and `switch` operators. #1344
15+
16+
## [3.6.0](https://github.com/ReactiveX/RxSwift/releases/tag/3.6.0)
17+
18+
* Adds `timeout` operator to `PrimitiveSequence` (`Single`, `Maybe`, `Observable`)
19+
* Adds `delay` operator to `SharedSequence`.
20+
* Adds `andThen` operator to `Completeable`.
21+
* Adds `concat` operator to `Completeable`.
22+
* Adds `RxPickerViewDataSourceType`
23+
* Adds `UIPickerView` extensions:
24+
* `modelSelected`
25+
* `itemTitles`
26+
* `itemAttributedTitles`
27+
* `items`
28+
* Adds `UITableView` extensions:
29+
* `modelDeleted`
30+
* Adds `UICollectionView` extensions:
31+
* `itemHighlighted`
32+
* `itemUnhighlighted`
33+
* `willDisplayCell`
34+
* `didEndDisplayingCell`
35+
* `willDisplaySupplementaryView`
36+
* `didEndDisplayingSupplementaryView`
37+
* Adds `UIScrollView` extensions:
38+
* `willBeginDecelerating`
39+
* `willBeginDragging`
40+
* `willBeginZooming`
41+
* `didEndZooming`
42+
843
#### Anomalies
944

45+
* Fixes deadlock anomaly in `shareReplayWhileLatest`. #1323
46+
* Removes duplicated events swallowing in `NSControl` on macOS.
1047

1148
## [3.5.0](https://github.com/ReactiveX/RxSwift/releases/tag/3.5.0)
1249

Documentation/GettingStarted.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -668,7 +668,7 @@ This isn't something that should be practiced often, and is a bad code smell, bu
668668
let magicBeings: Observable<MagicBeing> = summonFromMiddleEarth()
669669

670670
magicBeings
671-
.subscribe(onNext: { being in // exit the Rx monad
671+
.subscribe(onNext: { being in // exit the Rx monad
672672
self.doSomeStateMagic(being)
673673
})
674674
.disposed(by: disposeBag)
@@ -699,7 +699,7 @@ Every time you do this, somebody will probably write this code somewhere:
699699
```swift
700700
kittens
701701
.subscribe(onNext: { kitten in
702-
// so something with kitten
702+
// do something with kitten
703703
})
704704
.disposed(by: disposeBag)
705705
```
@@ -843,7 +843,7 @@ extension ObservableType {
843843
### Enabling Debug Mode
844844
In order to [Debug memory leaks using `RxSwift.Resources`](#debugging-memory-leaks) or [Log all HTTP requests automatically](#logging-http-traffic), you have to enable Debug Mode.
845845

846-
In order to enable debug mode, a `TRACE_RESOURCES` flag must be added to the RxSwift target build settings, under _Other Swift Flags_.
846+
In order to enable debug mode, a `TRACE_RESOURCES` flag must be added to the RxSwift target build settings, under _Other Swift Flags_.
847847

848848
For further discussion and instructions on how to set the `TRACE_RESOURCES` flag for Cocoapods & Carthage, see [#378](https://github.com/ReactiveX/RxSwift/issues/378)
849849

@@ -1021,11 +1021,11 @@ There are certain things that your `Observable`s need to satisfy in the UI layer
10211021

10221022
`Observable`s need to send values on `MainScheduler`(UIThread). That's just a normal UIKit/Cocoa requirement.
10231023

1024-
It is usually a good idea for you APIs to return results on `MainScheduler`. In case you try to bind something to UI from background thread, in **Debug** build RxCocoa will usually throw an exception to inform you of that.
1024+
It is usually a good idea for your APIs to return results on `MainScheduler`. In case you try to bind something to UI from background thread, in **Debug** build RxCocoa will usually throw an exception to inform you of that.
10251025

10261026
To fix this you need to add `observeOn(MainScheduler.instance)`.
10271027

1028-
**NSURLSession extensions don't return result on `MainScheduler` by default.**
1028+
**URLSession extensions don't return result on `MainScheduler` by default.**
10291029

10301030
### Errors
10311031

@@ -1064,14 +1064,14 @@ What you usually want is to share search results once calculated. That is what `
10641064

10651065
Making http requests is one of the first things people try.
10661066

1067-
You first need to build `NSURLRequest` object that represents the work that needs to be done.
1067+
You first need to build `URLRequest` object that represents the work that needs to be done.
10681068

10691069
Request determines is it a GET request, or a POST request, what is the request body, query parameters ...
10701070

10711071
This is how you can create a simple GET request
10721072

10731073
```swift
1074-
let req = URLRequest(url: NSURL(string: "http://en.wikipedia.org/w/api.php?action=parse&page=Pizza&format=json"))
1074+
let req = URLRequest(url: URL(string: "http://en.wikipedia.org/w/api.php?action=parse&page=Pizza&format=json"))
10751075
```
10761076

10771077
If you want to just execute that request outside of composition with other observables, this is what needs to be done.
@@ -1101,7 +1101,7 @@ cancelRequest.dispose()
11011101
In case you want a more low level access to response, you can use:
11021102

11031103
```swift
1104-
URLSession.shared.rx.response(myNSURLRequest)
1104+
URLSession.shared.rx.response(myURLRequest)
11051105
.debug("my request") // this will print out information to console
11061106
.flatMap { (data: NSData, response: URLResponse) -> Observable<String> in
11071107
if let response = response as? HTTPURLResponse {

Documentation/Traits.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -379,7 +379,7 @@ Any observable sequence can be converted to `Driver` trait, as long as it satisf
379379

380380
So how do you make sure those properties are satisfied? Just use normal Rx operators. `asDriver(onErrorJustReturn: [])` is equivalent to following code.
381381

382-
```
382+
```swift
383383
let safeSequence = xs
384384
.observeOn(MainScheduler.instance) // observe events on main scheduler
385385
.catchErrorJustReturn(onErrorJustReturn) // can't error out

0 commit comments

Comments
 (0)