Swift
-
UIViewRepresentable explained to host UIView instances in SwiftUI
Adopting the UIViewRepresentable protocol allows you to host UIView instances in SwiftUI. Your SwiftUI code is converted to UIKit views behind the...
-
URLSessionConfiguration: Exploring opt-in configurations
URLSessionConfiguration can be used to initialize URLSession instances in Swift. While in most cases, you’ll likely use the default...
-
App Store Connect API SDK in Swift: Creating Developer Tools
The new App Store Connect API was announced during WWDC 2018 and made it possible to write applications for App Store Connect. You can use the API...
-
Generics in Swift explained with code examples
Generics in Swift allows you to write generic and reusable code, avoiding duplication. A generic type or function creates constraints for the...
-
Existential any in Swift explained with code examples
Existential any allows you to define existential types in Swift by prefixing a type with the any keyword. In short, an existential means...
-
Some keyword in Swift: Opaque types explained with code examples
The some keyword in Swift declares opaque types, and Swift 5.1 introduced it with support for opaque result types. Many engineers experience...
-
Using NavigationLink programmatically based on binding in SwiftUI
NavigationLink in SwiftUI allows pushing a new destination view on a navigation controller. You can use NavigationLink in a list or decide to push...
-
Swift 5.2 Release Process
This post describes the goals, release process, and estimated schedule for Swift 5.2 . Motivation and Goals Swift 5.2 is a release meant to...
-
Swift 5.1 Released!
Swift 5.1 is now officially released! Swift 5.1 builds on the strengths of Swift 5 by extending the stable features of the language to compile...
-
Thread Sanitizer for Swift on Linux
Thread Sanitizer is now available on Linux as part of Swift 5.1! Head over to Swift.org and grab a Swift 5.1 Development snapshot to try it out....
-
Swift 5 Released!
Swift 5 is now officially released! Swift 5 is a major milestone in the evolution of the language. Thanks to ABI stability, the Swift runtime...
-
UTF-8 String
Swift 5 switches the preferred encoding of strings from UTF-16 to UTF-8 while preserving efficient Objective-C-interoperability. Because the...
-
Behind the Proposal — SE-0200 Enhancing String Literals Delimiters to Support Raw Text
The development, refinement, and deployment of SE-0200 Enhancing String Literals Delimiters to Support Raw Text was a long and surprising...
-
Swift 5.1 Release Process
This post describes the goals, release process, and estimated schedule for Swift 5.1 . Motivation and Goals The primary goal of Swift 5.1...
-
Evolving Swift On Apple Platforms After ABI Stability
With the release of Swift 5.0, Swift is now ABI stable and is delivered as a core component of macOS, iOS, tvOS, and watchOS. ABI stability has...
-
ABI Stability and More
It has been a longstanding goal to stabilize Swift’s ABI on macOS, iOS, watchOS, and tvOS. While a stable ABI is an important milestone for the...
-
Introducing the sourcekitd Stress Tester
Sourcekitd provides the data backing key editor features like code completion, semantic highlighting, and refactoring for Swift files in both...
-
Swift 5 Exclusivity Enforcement
The Swift 5 release enables runtime checking of “Exclusive Access to Memory” by default in Release builds, further enhancing Swift’s capabilities...
-
REPL Support for Swift Packages
The swift run command has a new --repl option which launches the Swift REPL with support for importing library targets of a package. The...
-
How Mirror Works
Swift places a lot of emphasis on static typing, but it also supports rich metadata about types, which allows code to inspect and manipulate...
-
Swift 5.0 Release Process
This post describes the goals, release process, and estimated schedule for Swift 5.0 . Motivation and Goals The primary goal of Swift 5.0...
-
Swift 4.2 Released!
Swift 4.2 is now officially released! Swift 4.2 builds on the strengths of Swift 4, delivering faster compile times, improving the debugging...
-
Introducing Related Projects to Swift Forums
The Swift community is growing and Swift Forums are growing with it. The number of projects in the Swift ecosystem keeps expanding and...
-
Swift Community-Hosted Continuous Integration
We are delighted to announce a significant expansion of our Swift.org continuous integration testing system. Members of the Swift community have...
-
Reimplementation of Implicitly Unwrapped Optionals
A new implementation of implicitly unwrapped optionals (IUOs) landed in the Swift compiler earlier this year and is available to try in recent...