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.
Development
SwiftData, 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.
Development
On-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.
Development
Swift 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.
Development
Writing 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.
Development
Swift 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.
Development
Vapor 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.
Development
On-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.
Development
Introducing 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.
Development
Swift 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.
Development
Vapor 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.
Development
Debugging 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.
Development
Swift 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.
Development
SSWG 2023 Annual Update
The Swift Server Workgroup (SSWG) has released its 2023 annual update, reflecting on community progress and outlining priorities for the year.
Development
Introducing 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.
Development
My App Store Screenshots Flow
Creating 975 screenshots for the App Store is a daunting task if done manually. For my app, Quiet, I need screenshots for multiple devices and languages, and framing them nicely with labels adds even more work.
Development
Introducing Swift OpenAPI Generator
Apple released Swift OpenAPI Generator, a set of open-source libraries that automate HTTP communication for clients and servers using the OpenAPI specification.
Development
I am happy with TipKit
Over the years I became more convinced that onboarding flows were users are educated are not working. It is much better to educate people in context and when needed.
Development
On Device Machine Learning
I loved how during the WWDC Keynote and The State of Union not once the term AI was used. AI is an hype word and could mean a lot of things. Love how Apple keeps saying “On Device Machine Learning”.
Development
Using Upcoming Feature Flags
Swift 5.8 introduces a flexible mechanism to adopt upcoming features via the -enable-upcoming-feature compiler flag and the hasFeature() condition, allowing developers to incrementally prepare for Swift 6 while maintaining source compatibility.
Development
Upcoming changes to Vapor with Sendable
The Vapor team is implementing Sendable annotations across its repositories, starting with a significant pull request, to enhance safety in Swift Concurrency, following a challenging but unsuccessful attempt to use actors for some internals.
Development
Penny Update
The Vapor team announced a new update for Penny, their Discord bot, enhancing it to post Swift Evolution proposal updates in the #swift-evolution channel, with an option for users to follow these updates on their own servers.
Development
PostgresNIO Security Vulnerability
We released PostgresNIO 1.14.2 last week, which contains a security fix for a vulnerability in PostgresNIO's TLS support. This has been designated as CVE-2023-31136.
Development
Updating Vapor's Templates for Swift 5.8
The Vapor team has updated its project templates to support Swift 5.8, adopting a unified target with the @main syntax for application entry points, aligning with Swift’s modern features and enabling asynchronous setup functions.
Development
Foundation Package Preview Now Available
The Swift Core Team is restructuring the Swift project by organising workgroups into steering groups and workgroups to enhance community contributions and focus.