Skip to content
This repository has been archived by the owner. It is now read-only.

Update project to Swift 4.1 and make compatible with SPM 4.1 #161

Merged
merged 16 commits into from Apr 21, 2018
Merged

Conversation

@JohnSundell
Copy link
Owner

@JohnSundell JohnSundell commented Apr 1, 2018

This change makes Marathon compatible with the Swift 4.1 toolchain, including the 4.1 version of SPM. The biggest change is the removal of the prefetching flag and fixing of some deprecation warnings.

Also includes a fix for the testEditingScriptWithXcodeOnMacOS test that was failing on master.

JohnSundell added 7 commits Apr 1, 2018
This change makes Marathon compatible with the Swift 4.1 toolchain, including
the 4.1 version of SPM. The biggest change is the removal of the prefetching
flag and fixing of some deprecation warnings.

Also includes a fix for the `testEditingScriptWithXcodeOnMacOS` test that was
failing on master.
Otherwise we can end up in a “Catch 22” in case Marathon’s master branch
doesn’t build with the latest Swift tools (like now)
…f TestDrive

TestDrive is not yet updated to Swift 4.x
@orta
Copy link
Collaborator

@orta orta commented Apr 2, 2018

So much red 😝

@JohnSundell
Copy link
Owner Author

@JohnSundell JohnSundell commented Apr 2, 2018

WIP 😅 All tests are passing locally but need to figure out why they're not passing on CI (esp. Linux).

@JohnSundell
Copy link
Owner Author

@JohnSundell JohnSundell commented Apr 10, 2018

We're down to only two failures 😅 Getting close!

@designatednerd
Copy link

@designatednerd designatednerd commented Apr 10, 2018

@JohnSundell FWIW I just checked this branch out and it Works On My Machine™

@JohnSundell
Copy link
Owner Author

@JohnSundell JohnSundell commented Apr 12, 2018

@designatednerd Hehe that's good to know. The problem is (was?, hopefully!) on Linux. Hopefully it's fixed now 😅 I really need to get that Linux environment up and running so I can more easily debug these things.

@ghost
Copy link

@ghost ghost commented Apr 14, 2018

FYI one of the dependencies 'releases' has some deprecations. Not sure if that might upset your CI build. It's a long shot

I run make on latest commit on this branch. Checkout 2d8f59b

Output

///stuff
Resolving https://github.com/JohnSundell/Require.git at 2.0.1
swift build -c release -Xswiftc -static-stdlib
Compile Swift Module 'Require' (1 sources)
Compile Swift Module 'Unbox' (42 sources)
Compile Swift Module 'Wrap' (1 sources)
Compile Swift Module 'ShellOut' (1 sources)
Compile Swift Module 'Files' (1 sources)
Compile Swift Module 'Releases' (4 sources)
/Users/robertnash/Code/Marathon/.build/checkouts/Releases.git--3309408284261296015/Sources/Releases.swift:26:26: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
        return try lines.flatMap { line in
                         ^
/Users/robertnash/Code/Marathon/.build/checkouts/Releases.git--3309408284261296015/Sources/Releases.swift:26:26: note: use 'compactMap(_:)' instead
        return try lines.flatMap { line in
                         ^~~~~~~
                         compactMap
Compile Swift Module 'MarathonCore' (29 sources)
Compile Swift Module 'Marathon' (1 sources)
Linking ./.build/x86_64-apple-macosx10.10/release/Marathon
mkdir -p /usr/local/bin
mv .build/Release/Marathon .build/Release/marathon
install .build/Release/marathon /usr/local/bin
Roberts-iMac:Marathon robertnash$ 
Fix Swift 4.1 branch on Linux
@JohnSundell
Copy link
Owner Author

@JohnSundell JohnSundell commented Apr 21, 2018

OK @sunshinejr comes to the rescue and seems to have fixed the problem! 🚀 Let's see if we finally get it to turn green 😃

@JohnSundell
Copy link
Owner Author

@JohnSundell JohnSundell commented Apr 21, 2018

It's time to pop the 🍾! 😃 Thanks a lot to @sunshinejr for helping me finalize this 🙌

@JohnSundell JohnSundell merged commit ef48654 into master Apr 21, 2018
3 checks passed
3 checks passed
buddybuild: Marathon (iOS, MarathonCore - Debug) Build succeeded
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
continuous-integration/travis-ci/push The Travis CI build passed
Details
@JohnSundell JohnSundell deleted the swift-4.1 branch Apr 21, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

4 participants
You can’t perform that action at this time.