Stay up to date with the latest iOS CI/CD news

Every two weeks, directly to your inbox and packed with everything you need to know and be aware of so that you're always prepared for the next app release!

Read and trusted by engineers from:

Issue 54

Sponsored

Codemagic makes Apple M2 machines available, even on the free tier!

Codemagic is the first CI/CD to make Apple M2 machines available to everyone (including the free tier!). This is a free upgrade from M1 machines with no price change.

🐙 GitHub Universe Week 🐙

GitHub Universe, the San Francisco-based company’s yearly conference, occurred this week. The two-day conference was packed with announcements, mostly about GitHub’s AI features and GitHub Copilot.

You can read the full event recap with a list of all announced features on GitHub’s website, but as I have been a Copilot user for a while and have been longing for an official Xcode extension ever since it came out, I can’t miss this opportunity to share and celebrate that GitHub has announced official support for GitHub Copilot in Xcode. This support comes in the form of an Open Source extension that is publicly available now!

I installed the extension right away and I was immediately impressed. The editing experience is very similar to VSCode’s counterpart extension, which I have been using extensively.

The code suggestions are a lot better than Apple’s assistive code completion features built into Xcode, which I have found irrelevant and unhelpful in most cases.

As it is an early version, it goes without saying that the experience is not perfect. I have noticed a few (very) minor issues with disregarding suggestions that I will report this week. Don’t let these put you off though, the overall experience is great and I would thoroughly recommend you check out the extension now, it’s worth it!

Another announcement that I am particularly excited about is the new GitHub Copilot code review feature, which can provide you with fast, AI-powered feedback on a Pull Request’s code. This is particularly exciting to me, as I work on a lot of solo projects, so I can finally have a reviewer on my Pull Requests 😅.

⏭️ Set build and version number automatically on CI/CD

One of the most annoying issues when uploading a build to App Store Connect is realising that you have not updated the version or build numbers and you have to re-archive and re-upload your build again.

This week, I wrote an article on my blog about how you can automate this process altogether using fastlane from your release CI/CD workflow.

🐢 Why is xcodebuild so slow?

Given Cursor’s AI features and its rise in popularity, some people have been moving away from Xcode as their main editor and have instead been building and running their apps from the command line using xcodebuild.

As I shared in the last issue, there seems to be a bug that makes building an app with xcodebuild much slower than using Xcode’s GUI. Thomas Ricouard has faced this issue recently and has written a wonderful article on how to work around it.

📈 GitHub Actions metrics now available

GitHub have just announced their new Actions Performance Metrics feature. Actions Performance Metrics is a new dashboard that gives you access to metrics about your GitHub Actions workflows such as how long it takes for your workflows to complete or how long they are stuck waiting for a runner to pick them up.

You can access the new feature from your organization’s home page.

🚨 Important update to Bitrise’s App Secrets API

If you are a Bitrise user and use their App Secrets API, then you must read their latest post. Bitrise have made a few updates to their API endpoints that, while they make managing secrets easier, they introduce breaking changes.

Their article goes through all the updates and gives you a nice migration guide that you can follow to ensure a smooth transition.

📦 Emerge Tools’ own build distribution service

This month, the team at Emerge Tools has announced the latest addition to their great suite of tools for iOS developers: their own Build Distribution service.

Given Microsoft’s announcement that AppCenter will be shutting down at the end of March 2025, it’s great to have another alternative in the market!

🚝 How to build the perfect release train

Release trains are a type of time-based release strategy that consists of shipping new mobile app versions on a regular schedule. Contrary to feature-based releases, where you ship a new version of your app when a set of features are ready, release trains go out of the door at a fixed cadence, regardless of the features that are ready to ship at that time.

There are a few things you need to know to get this release strategy for your team right, and I tell you all about it in my latest article on the Runway blog!