Comments (8)
Deferred supports the range of Swift versions our clients are using. The final release of Deferred 4.0 will be specifically compatible with Swift 4.1, 4.2, and 5.0 compilers by using syntax that is common to all 3. Swift has supported multiple dialects in this way since Swift 4.
Compiling Deferred 4.0 using a Swift 5 compiler nets all the benefits of Swift 5, including use of the stable ABI. Likewise, compiling Deferred 4.0 against the planned Swift 5.1 will grant module stability and allow shipping binary releases of Deferred — still with no code changes needed.
After cutting the 4.0 release, we will likely move on master to drop Swift 4.1, but certainly won't be dropping Swift 4.2 until Swift 5.0 has gone stable.
For its part, CocoaPods does not allow us to express this range of support without a feature that has only just now entered beta: CocoaPods/CocoaPods#8191.
from deferred.
Agreed, CocoaPods support is behind.
But this is what I was referring to: shouldn't the preferred Swift version (set via the podspec) be set to at least 4.2?
from deferred.
We are choosing to support Swift 4.1, so no.
from deferred.
Hey, I'm trying out the 4.0 final release and it looks like when building using Xcode 10.2 and setting the Swift version to 5 it's not compiling due to some outdated annotations:
I have seen that the CI has passed on Swift 5 with Linux so I don't know if there's an extra flag I should set to benefit from Swift 5 here.
As always: thank you!
from deferred.
Changing the version is not necessary to benefit from the Swift 5 compiler.
The next point release of Deferred will adjust the language version appropriately.
from deferred.
Would this mean that the final App that links Deferred would reduce in size due to using the built-in Swift libraries when available (iOS 12.2+)?
from deferred.
Yes.
from deferred.
Ok! Thanks!
from deferred.
Related Issues (20)
- Consider modern names for conveniences HOT 1
- Performance testing HOT 1
- Can't compile with Cocoapods 1.5.0 HOT 4
- Better interactions between Future and Task HOT 1
- Inconsistencies between Void and Future()
- Adopt conditional conformances
- How to use URLSession's Progress HOT 4
- throwing an error when I try to exportArchive HOT 2
- Rename `Task.init(upon:queue:flags:onCancel:execute:)`
- Audit naming of all convenience initializers to Task
- How to correctly track a Task's progress? HOT 11
- Swift version should be set to 4.0 for CocoaPods
- Improve implicit progress handling in Task.map
- Align Task.Result with Swift 5 Result
- Swift 4.2 Compatibility for @_versioned HOT 3
- Using a Task's progress after an `andThen` HOT 3
- Cancel not propagating after recover HOT 1
- Canonical examples for how to use `andThen`
- SPM should use .dynamic packages HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from deferred.