DevelopmentPlotting a Path to a Package Ecosystem without Data Race Errors
Swift 6 introduces compile-time data race safety checks for code opting into the Swift 6 language mode, significantly reducing crashes and performance issues, but full benefits require ecosystem-wide adoption.
DevelopmentNew GitHub Organization for the Swift Project
The Swift programming language is migrating to a dedicated GitHub organisation at GitHub.com/swiftlang, reflecting its growing versatility and community maturity beyond Apple’s ecosystems.
DevelopmentOn Fluent Models and Sendable warnings
Since FluentKit 1.48.0, users have encountered a warning about mutable stored properties in Sendable
-conforming Model
classes due to Swift’s concurrency requirements and property wrapper limitations.
DevelopmentGet Started with Embedded Swift on ARM and RISC-V Microcontrollers
Apple has introduced a repository, swift-embedded-examples, showcasing Embedded Swift, a new experimental compilation mode for Swift targeting constrained microcontrollers like ARM and RISC-V, suitable for IoT and electronics projects.
DevelopmentSSWG 2024 Annual Update
The Swift Server Workgroup (SSWG) 2024 annual update highlights 2023 achievements and sets goals for the coming year.
DevelopmentWriting GNOME Apps with Swift
Adwaita for Swift is a new open-source package that enables Swift developers to create GNOME applications for Linux, leveraging Swift’s clean syntax, static typing, and result builders for a declarative, readable, and memory-safe user interface design.
DevelopmentIntroducing the Benchmark Package: Complementing Unit Tests with Performance Checks
The Swift Benchmark package, a new open-source tool developed due to the lack of suitable multi-platform benchmarking solutions, integrates performance testing into Swift’s ecosystem, emphasising the importance of speed alongside functionality in software development.
DevelopmentByte-sized Swift: Building Tiny Games for the Playdate
Swift is a versatile language for embedded systems due to its memory safety and ergonomics, as shown by porting games to the Playdate handheld console using the new embedded language mode.
DevelopmentIterate Over Parameter Packs in Swift 6.0
Swift 6.0 introduces pack iteration, enhancing parameter packs from Swift 5.9 to simplify working with variable-length generic arguments.
DevelopmentSwift 5.10 Released
Swift 5.10 achieves full data isolation in its concurrency model, enforcing compile-time checks to prevent data races when using the -strict-concurrency=complete flag, building on features like async/await and actors from Swift 5.5 and Sendable from Swift 5.7.
DevelopmentJWTKit is no longer Boring!
The Swift Server Workgroup announced that Swift 5.10 will be the final release before Swift 6, prompting Vapor to plan Vapor 5, with JWTKit v5 as the first package to adopt modern Swift features like full Sendable compliance and Swift 6’s strict concurrency mode.
DevelopmentSwiftData, pre-seed database
I started developing a new app, and it's been an exciting journey so far. Recently, I've begun utilising SwiftData, which is proving to be a fantastic tool for managing data within the app.
DevelopmentOn-device ML research with MLX and Swift
MLX Swift is a new open-source package from Apple that brings the MLX array framework for machine learning on Apple silicon to Swift. It gives researchers a Swift API to build and run models on Apple hardware.
DevelopmentSwift OpenAPI Generator 1.0 Released
The Swift OpenAPI Generator has reached its stable 1.0 release, enabling type-safe code generation for HTTP client and server operations from OpenAPI 3.0 and 3.1 documents.
DevelopmentWriting HTML with HTMLKit in Swift
Continuing my exploration of HTMLKit, I find its potential quite promising. In this post, I delve deeper into leveraging its capabilities to seamlessly integrate HTML into Swift.
DevelopmentSwift DSL for HTML
Continuing my exploration of HTMLKit, I find its potential quite promising. In this post, I delve deeper into leveraging its capabilities to seamlessly integrate HTML into Swift.
DevelopmentVapor URI Parsing Security Vulnerability
We've just released Vapor 4.90.0 which contains a fix for a security vulnerability in Vapor's URI parsing.
DevelopmentOn-Crash Backtraces in Swift
Swift 5.9 enhances debugging with an out-of-process crash handler that provides detailed backtraces, interactive inspection, and just-in-time debugging, improving on the limited crash messages of prior versions.
DevelopmentIntroducing Packages on Swift.org
Swift.org now has a new top-level Packages page. This page helps users explore the Swift package ecosystem. It lists common categories such as server, networking, testing, and logging.
DevelopmentSwift Everywhere: Using Interoperability to Build on Windows
Swift’s design emphasises seamless interoperability with other languages, particularly C and C++, by embedding clang to avoid the performance and boilerplate costs of traditional C-based Foreign Function Interfaces (FFI) like libffi.
DevelopmentVapor HTTP Error Handling Security Vulnerability
We've just released Vapor 4.84.2 which contains a fix for a security vulnerability in Vapor's error handling.
DevelopmentDebugging Improvements in Swift 5.9
Swift 5.9 enhances debugging with three key improvements to the compiler and LLDB. The p
and po
commands now use the faster dwim-print
command, avoiding persistent result variables and enabling po
to print Swift objects from raw addresses.
DevelopmentSwift 5.9 Released
Swift 5.9 introduces a powerful macro system for expressive libraries, parameter packs for flexible generic APIs, and ownership features like consume and noncopyable types to optimize low-level code performance.
DevelopmentSSWG 2023 Annual Update
The Swift Server Workgroup (SSWG) has released its 2023 annual update, reflecting on community progress and outlining priorities for the year.
DevelopmentIntroducing Swift HTTP Types
Apple announced Swift HTTP Types, a new open-source package providing shared, Swift-first currency types for HTTP operations, enhancing code sharing between clients and servers.