-
Notifications
You must be signed in to change notification settings - Fork 29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Initial port to Swift 4 #67
Conversation
Update to Swift 3.0
Fix SPM tests layout
Remove products from the package manifest
Update to Swift 3.1
Bump podspec version
Algebra needs at least 0.2.3 now, so this change is needed to use Algebra and Swiftx in the same project.
Make Operadics constraint looser in SwiftPM
Alright, I merged the SwiftCheck PR -- so now we can point to that and then we can merge this one! |
Nice one. I've updated Operadics to SPM v4 too. Once that's in we can cascade the rest up! |
Updated to use SPM v4 directory layout/file format Updated for Xcode 9, beta 3 Set Travis to run tests on Linux build
Xcode 9 redid the file paths so they match the project structure. This is undesirable given that I would like to support just a package build in the future. Could you please try to keep everything in their original positions (modulo moving things into the target directory)? |
@@ -0,0 +1,25 @@ | |||
{ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This file should be ignored
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sure. Added to .gitignore
along with the Cartfile resolved. My understanding was that these files should be committed however to ensure that those using the project are using the last known working versions of any dependencies.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sure, but Operadics is essentially frozen, and the other two are test-only dependencies. It doesn’t matter which version our own internal repos are built against, it won’t affect our clients.
Sources/Operators.swift
Outdated
@@ -0,0 +1,236 @@ | |||
// |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should take a dependency on Operadics, not include it directly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good spot. Not sure how that got in there.
Cartfile.private
Outdated
@@ -1,3 +1,3 @@ | |||
github "typelift/Operadics" | |||
github "typelift/SwiftCheck" | |||
github "typelift/Operadics" "swift-develop" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You may remove these. I've just pushed Xcode 9 updates to SwiftCheck and Operadics
Added *.resolved to .gitignore Updated travis to use Swift 4 release build Removed unreferenced Operators file Cleaned up folder hierarchy
Resolved by the merge of #68 |
What's in this pull request?
Initial migration of library to Swift 4. (Minor changes but lib required by Swiftz which has more extensive changes)
Why merge this pull request?
Migrates library to latest version of Swift. All tests passing with the Swift 4 version of SwiftCheck that I submitted as a PR earlier.
What's worth discussing about this pull request?
This PR focuses on getting the build compiling without warning and passing all tests. I will have missed anything not picked up by these! There may be some wider changes you have in mind to take advantage of Swift 4.
What downsides are there to merging this pull request?
Uses temporary refs to my personal SwiftCheck forks with Swift 4 migration. Will need updating to point to official SwiftCheck repos.