Subscribe for weekly commentary and coverage of Swift and Apple platform development. Written by Dave Verwer and published every Friday. Free.

Picture of Dave Verwer

Issue 679

20th September 2024

Written by Dave Verwer

Comment

Happy New Device Day to those who are celebrating!

I hope you’ll forgive me a shorter-than-usual comment section today. I’m not feeling very well at the moment and haven’t been able to put my usual level of effort into today’s newsletter. 😬

Hopefully I’ll feel better soon and normal service will resume next week. Please do enjoy the articles below, and I’ll be back before you know it!

Dave Verwer

Join the FREE iOS Architect Crash Course

If you’re a mid/senior iOS developer looking to improve both your skills and salary level, join this free online crash course. It’s available only for a limited time, so get it now.

News

Announcing Swift 6

You almost certainly already installed Xcode 16 and Swift 6, but here’s the official post by Holly Borla. What I liked about it is that it doesn’t only talk about concurrency features. I’d recommend giving it a read, even if you think you heard everything about Swift 6 already.

Tools

swift-export

This new tool from Frank Lefebvre looks interesting:

swift-export is a command-line tool used to generate signed and notarized installer packages for macOS. The generated installer packages can contain any executable file (built from a Swift Package Manager project) and optional payloads, such as LaunchDaemons plist files.

It sounds great if you want to automate your releases and need the extra things that a pkg installer can do.


Xcode Folders & Groups

It used to be standard practice to only create groups in Xcode and to have all the files in those groups located in the same folder on disk. It worked, but it was odd compared to every other editor and language I had used before Xcode. Over time, that organisation strategy has changed gradually, and in Xcode 15 the group was still used, but by default they also made a folder. Xcode 16 finally switches to files and folders by default directly, and Sarah Reichelt gives us her thoughts on file organisation.

Code

Cross-Platform macOS/Windows Application Developed Using Swift 6

Ready for more Swift on Windows news? This time, it’s from Fernando Barbat who’s using Swift to make a cross-platform Windows and macOS LLM client app. This post contains the announcement, and the client is open source, and available on GitHub.


MoveMe

What a clearly explained blog post from Sidharth Juyal on dealing with dragging and dropping UI elements with gestures in SwiftUI. The animations at every stage made all the difference.


Previews in Xcode Playgrounds

With Xcode 16 I again tried switching Xcode previews back on to see if I got along with them. Unfortunately, as always, they didn’t last for long, and I always end up preferring the extra editing space and not having to maintain preview code.

But quickly previewing UI code is a useful technique, and it never crosses my mind to use Playgrounds. Thanks to Neil Macy for providing me inspiration with this post.

Design

Discovering Camera Control

There’s no code here, but I liked this breakdown from Emanuele Agosta, Matteo Altobello of the UI for the new Camera Control button that arrived today with the new devices. 👍

And finally...

I didn’t link to this when I first saw it as it was hitting a download limit, but the mad rush of traffic should be over now, and these should not be lost to time. 📖