DevelopmentAVSpeechSynthesizer
The article highlights the role of Swift’s AVSpeechSynthesizer, introduced in iOS 7 and macOS 10.14, in enabling speech synthesis for computer-assisted communication across languages, supporting over 30 languages with voices selected via IETF Language Tags.
DevelopmentSwift Numerics
The Swift Numerics open-source project introduces a modular Swift package for numerical computing, filling gaps in the Standard Library with modules like Real and Complex.
DevelopmentSSWG Annual Update '19
The Swift Server Work Group (SSWG) has made significant progress in its first year, establishing an incubation process for defining high-quality Swift packages through community pitches, reviews, and acceptance.
DevelopmentNew Diagnostic Architecture Overview
Swift 5.2 enhances compiler diagnostics through a new infrastructure that uses 'constraint fixes' to pinpoint type errors more accurately, allowing the type checker to continue solving and report multiple issues with actionable guidance, unlike the old system's vague guesses.
DevelopmentSwift 5.2 Release Process
Swift 5.2 focuses on delivering significant improvements in quality and performance.
DevelopmentSwift 5.1 Released!
Swift 5.1 advances Swift 5 by introducing module stability, enabling binary frameworks that work across compiler versions, alongside library evolution support for resilient APIs.
DevelopmentApple Push Notification Device Tokens
In iOS 13 where a change in NSData’s description format—from a full hexadecimal string to a summarised form—breaks push notification workflows that relied on string manipulation of deviceToken in application(_:didRegisterForRemoteNotificationsWithDeviceToken:).
DevelopmentThread Sanitizer for Swift on Linux
Swift 5.1 introduces Thread Sanitizer on Linux, enabling runtime detection of data races in multithreaded code, which can cause unexpected behaviour or memory corruption despite Swift's single-threaded safety guarantees.
DevelopmentFormatter
The article explores the Formatter class in Swift’s Foundation framework, essential for transforming data into human-readable formats, addressing complexities like user language, calendar, and currency preferences.
DevelopmentCAEmitterLayer
The article introduces CAEmitterLayer for creating a confetti effect on iOS, explaining its role as a high-performance particle system within the Quartz Core framework for rendering effects like confetti, fire, or rain.
DevelopmentPrivacy and User Experience
Good serie on privacy and user experience by Smashing Magazine. Worth the read!
DevelopmentCoreGraphics Geometry Primitives
The article provides a concise guide to Core Graphics geometry types in Swift, essential for Quartz 2D drawing on Apple platforms, covering CGFloat, CGPoint, CGVector, CGSize, and CGRect, with iOS using a top-left origin and macOS a bottom-left origin by default.
DevelopmentGuided Access
Guided Access, introduced in iOS 6, is an accessibility feature that locks an iOS app to prevent unintended exits, configurable to disable specific screen regions, hardware buttons, motion, keyboards, touch, or set time limits, activated via triple-clicking the Home/Side button or Siri.
DevelopmentSwift 5 Released!
Swift 5.0 marks a major milestone with ABI stability on Apple platforms, integrating the Swift runtime into macOS, iOS, tvOS, and watchOS for smaller apps and better performance.
DevelopmentUTF-8 String
Swift 5 changes String's preferred encoding from UTF-16 to UTF-8 for better performance in modern computing, like server-side work and C interop, while keeping efficient Objective-C bridging.
DevelopmentJavaScriptCore
The article explores the JavaScriptCore framework, which integrates WebKit’s JavaScript engine into Swift apps, allowing developers to execute JavaScript code and interoperate with Swift.
DevelopmentBehind the Proposal — SE-0200 Enhancing String Literals Delimiters to Support Raw Text
SE-0200 introduces custom delimiters for Swift string literals in Swift 5, allowing raw text that ignores escape sequences unless adjusted with matching pound signs, blending features from languages like Rust while retaining Swift's interpolation.
DevelopmentSwift 5.1 Release Process
Swift 5.1 aims to achieve module stability for the language. On Apple platforms, it keeps binary compatibility with Swift 5.0 and future releases because the ABI is now stable.
DevelopmentEvolving Swift On Apple Platforms After ABI Stability
Swift 5.0 achieves ABI stability on Apple platforms, allowing apps to use the OS-provided Swift runtime instead of bundling it, which reduces download sizes and enables better performance through deeper integration.
DevelopmentABI Stability and More
Swift 5 achieves ABI stability on Apple platforms, ensuring binary compatibility for apps and libraries across future Swift versions without needing to embed the Swift runtime in app bundles.
DevelopmentIntroducing the sourcekitd Stress Tester
Sourcekitd powers essential editor features like code completion and refactoring in Xcode and SourceKit-LSP, handling both syntactic and semantic requests for Swift files.
DevelopmentSwift 5 Exclusivity Enforcement
Swift 5 turns on runtime checks for exclusive access to memory by default in release builds.
DevelopmentDictionary Services
The article explores dictionary-related APIs in Swift across Unix, macOS, and iOS, highlighting their role in features like spell check and semantic analysis.
DevelopmentBundles and Packages
The article clarifies the distinction between bundles and packages on Apple platforms, often confused due to overlapping use cases.
DevelopmentCharacterSet
The article introduces CharacterSet, a Foundation type in Swift for manipulating Unicode scalar values, distinct from Set<Character> despite its name, as it conforms to the SetAlgebra protocol rather than storing Character values directly.