Group Group Group Group Group Group Group Group Group

Warnings with .xcworkspace build stops progress on RxSwift tutorials

I am keen to start your tutorial on Reactive Programming with Swift (and hope to learn as much as I did from Swift Apprentice, thank you!)

Following tutorial recommendations on pages 120-121 I created a copy of RxPlayground in /Users/gs/RxSwift-02-starter/. When I ran ./bootstrap.sh, Xcode launched successfully and seemed to create the .xcworkspace file. But warnings from Xcode when I built it have stopped me going further.

Xcode (10.2.1) issued 12 warnings. I resolved 3 deprecated Swift code warnings but there are 3 more warnings I don’t understand.

[1] call to a never-returning function (7 times)
A call to a never-returning function

  • Zip+arity.swift*
  • Will never be executed*

[2] SwiftLint is not installed (once)
Custom shell script SwiftLint runs for 0.1 seconds. The first two commands that appear to use different paths

PhaseScriptExecution SwiftLint /Users/gs/Library/Developer/Xcode/DerivedData/RxSwiftPlayground-hhefrghxicxgokdfidtofqjpnqem/Build/Intermediates.noindex/Rx.build/Debug/RxSwift.build/Script-A21F589121E109AD0051AEA2.sh (in target: RxSwift)
cd /Users/gs/RxSwift-02-starter/RxPlayground/Libs/RxSwift

[3] ‘Hashable.hashValue’ is deprecated (once)

*'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'BagKey' to 'Hashable' by implementing 'hash(into:)' instead*

I should also mention I that recently upgraded MacOS to 10.15 Beta just before starting these tutorials. Will I need to be use a later edition of this tutorial ? what do I need to do to get rid of these warnings ?

@greg_s Do you still have issues with this?

Yes, but I need to do more homework before I return to it. In the meantime you should focus on other issues. Thanks.

I did further homework trying to get started on the RxSwift video tutorials working my way through Episode 3. I managed to install RxSwift using pods and when I launch RxSwift.playground from the Navigation window in Xcode, Xcode reports no issues.

However my RxSwift.playground results sidebar shows no output (unlike output shown in Episode 3 at 5:46). Is this because Headers and Local Podspecs are both empty (as shown below) …

Folders (1-of-2)


and therefore Sources and Resources folders in the Xcode navigation window will also be empty ?

Code (2-of-2)


I made the necessary adjustments to the Podfile in this procedure making sure that my iOS Deployment Target in Xcode matches the instruction in my Podfile but am unable to install RxSwift successfully probably because the Headers and Local Podspecs are empty.

Here is my Podfile

# Uncomment the next line to define a global platform for your project
    `platform :ios, '11.0'`
    `target 'Installing RxSwift' do`
 # Comment the next line if you don't want to use dynamic frameworks
  use_frameworks!
  # Pods for Installing RxSwift
  pod 'RxSwift', '~> 4.0'
end

It made no difference whether I set the iOS Deployment Target to 12.2 (the latest used in my version of Xcode) or 11.0 (as shown in the tutorial). The problem is the same. I also resorted to Scott’s nuke and repave option as suggested in Episode 3 of the tutorial but the problem remains (an excellent, thoughtfully-presented tutorial by the way, thanks).

I am using Mojave 10.14.6 running Xcode 10.2.1.

Have there been revisions to this tutorial ? Or do either of my examples give any clue to what I am doing wrong ? I welcome any suggestions I should try to get on top of this. Thanks.

@greg_s Does this work for you?