
Issue 733
31st October 2025
Written by Dave Verwer
Comment
Happy Halloween! 🎃
The first time I ever wrote about Swift running on Android was back in Issue 220 when I linked to Romain Goyet’s post. What he demonstrated was primitive, and even printing “Hello World” was beyond what was achievable at that time. He did manage to get a simple function call working, though, which was something! Romain published his post almost exactly ten years ago, and to give that context, Swift wasn’t even open source at the time.
It’s been quite the journey from that experiment to where we are now, and last Friday, Joannis Orlandos, on behalf of the Android Workgroup, announced nightly preview releases of the Swift SDK for Android on the official Swift language blog.
It wouldn’t be fair to attribute this major step towards Android becoming an officially supported Swift platform entirely to the formation of the Android Workgroup, but it’s hard not to see some influence from it. Years of thankless effort have gone into Swift on Android and related projects, but things have certainly accelerated in terms of official adoption in recent months. It’s worth reading Marc Prud’hommeaux’s “afterword” on the SKIP.tools site for a great list of people who deserve credit.
The workgroup started with the formation of what was originally called a “Community Workgroup”, which then developed into a “full” workgroup, and in my opinion, it’s a testament to how well the Swift open source project is working. Yes, Apple regularly announces new workgroups, but it’s fantastic to see that the community can also initiate this process for projects that are significant.
In terms of getting started with the nightly build of Swift on Android, there are some good next steps in the announcement, including a Getting Started guide and a repository full of example code.
Before I sign off, I also want to mention the continuing efforts around Swift on Wasm, and I am grateful to Max Desiatov for taking the time to write up how the project has progressed during the past two months. It’s really great to see Swift on both platforms progress so … swiftly. 😂
– Dave Verwer
Sponsored Link
The best mobile app monitoring product just keeps getting betterSentry automatically captures crashes recorded on macOS, iOS, and tvOS to make sure you’re shipping the best experience to your users. Oh… and also Emerge Tools is now a part of Sentry, so things are getting even better. Use coupon IOSDEVWEEKLY2025 for Sentry’s Business Plan and get started now with 2 free months.
News
Enhancements to help you submit and market your apps and gamesApple may have already announced this:
Offer codes build on the functionality of promo codes and provide improved configuration and customer eligibility options. As a result, starting March 26, 2026, you’ll no longer be able to create promo codes for In-App Purchases in App Store Connect. Any existing promo codes for In-App Purchases you’ve created can be redeemed until they expire. You can continue to use promo codes in order to provide people with a free download of your app.
… but if they did, then I wasn’t aware of it. It seems reasonable, but it’s something you’ll want to be aware of.
Tools
swift-commit-genIs your repository commit history full of “WIP”, “Fixed it”, “No, really, I fixed it this time” messages? To help solve that problem, Hesham Salman created this fun tool that uses Apple’s foundation models to summarise changes and give you better commit messages. It won’t be as good as describing why you made the change, but it will be better than “Fixed it”.
Code
spmgraphHere’s an interesting new package/tool from Felipe Marino. It can visualise, test, and lint your package’s dependencies. Linting is especially interesting, as you can define your own rules. It’s perfect for making sure your dependencies don’t get out of control.
Cultivated Task Cancellation
Apropos dirty hands… we’re 1,500 words into task cancellation and not done yet. I have two more posts coming up on the dirtier part—cancellation handlers and what I call the cancellation trap.
This post starts a well-written three-part series (1, 2, and 3) on task cancellation. 👍
Videos
Videos from Swift Connection 2025Earlier this month, a group of people gathered in Paris to be educated and entertained at Swift Connection 2025. If you didn’t manage to make it to the conference, this set of videos from the event is the next best thing.
Jobs
Senior QLab Developer (macOS) @ Figure 53 – We’re a small (18 person) company with unusually non-hierarchical structures and a dedication to enjoying our work and taking care of each other. We’re hiring a senior macOS developer to work on QLab, powerful software for the design and play back of sound, video, lighting, and show control cues. – Remote (within US timezones)
Senior iOS Engineer @ alba – We have a unique approach to identifying opportunities, entering markets, and scaling our products. This approach puts us on a fast trajectory for maximizing the reach and delight our products create. In just two years since our founding, our products have already been used by over 28 million users. – Remote (within European timezones) or on-site (United Kingdom)
