Issue 30
Sponsored
Undo a bad native app release with a single click. Cut out all the lead time needed to investigate and implement a fix, get builds compiled and uploaded, and make it through the store review process.
Hey everyone! 👋 Welcome to the thirtieth issue of the iOS CI Newsletter. Hope you’ve had a great couple of weeks!
This week I have reached a couple of very exciting milestones in my content creation career and I wanted to take the opportunity to reflect and look back at my journey so far.
First of all, after 30 issues of the newsletter, we are now over 1,000 subscribers, which I am super grateful to you all for! Also, with this week’s article on my blog, I have now published over 100 articles and writing my weekly articles has been something that I have come to love and look forward to every week.
It hasn’t always been like that though. Three years ago I was very scared of sharing any form of content online, let alone speaking in front of any kind of audience! I always felt like I didn’t have enough experience or expertise on what I was talking about.
One day I decided to put these fears aside and share my first article, then I did my first conference talk and I finally sent the first issue of this newsletter. And it’s the best decision I have ever taken! If you’re thinking of creating content online or doing some public speaking, I want to encourage you to do it! We all have something to share and learn from each other, regardless of our experience level and background!
🔨 How to import Swift macros without using Swift Package Manager
Did you know that you don’t need a macro target to write a Swift macro? And that you can import a macro as a binary into an Xcode project without using SPM? And what if I told you you can even write and use a Swift macro without using SPM at all? 🤯
In this article, I show you how to create a Swift macro from an executable target and how you can import the resulting binary into an Xcode project without using Swift Package Manager.
🖥️ Self-hosted vs fully managed CI/CD solutions
Choosing which solution to go with for your app’s CI/CD is important. On the one hand, you can opt for going for hosting your runners which gives you more control but a lot more maintenance overhead and, on the other hand, you can opt for a fully managed solution that takes care of the maintenance for you to let you focus on building your app.
In this article on the Bitrise blog, Claire Speedy goes through both approaches and helps you pick the one that’s best for you!
✨ How and why to use Bazel to build your iOS projects
Bazel is an open-source tool that helps developers automate the build and test process of their applications. While I have not used it myself, I know it is used by big companies such as Spotify to build their iOS apps and looks very interesting.
In this article on the Codemagic blog, Mohammed Babelly gives you an awesome introduction to how to use Bazel, including a section on getting it set up and running on a CI/CD workflow.
📦 Use Swift SDKs to cross-compile Swift packages to Linux
As an Apple app developer, you will be familiar with cross-compiling code for different platforms such as iOS, macOS, tvOS and watchOS with very minimal setup and directly from Xcode. However, if you try to cross-compile Swift code for any other platform such as Linux, you will soon find out how arduous the process is.
Thankfully, Apple has made this process much easier with the introduction of Swift SDKs, as I explain in this article.
📹 Using EC2 Mac for your iOS CI/CD
The recordings for Bitrise’s Mobile DevOps Summit 2023 are now up and available for everyone to watch. Among this year’s sessions, there is one that particularly stood out to me: Apple @ AWS—CI/CD developer environments on EC2 Mac.
In this session, Dave Siederer, a Specialist Solutions Architect at Amazon Web Services, goes through how and why to use EC2 Mac instances to build your Apple apps on CI/CD.
📹 Free Xcode Cloud course on Youtube
As you might know, this month is the last chance you have to try out Xcode Cloud for free before the free plan goes away in 2024 and the lowest usage tier costs $14.99 a month.
If you’d like to try it before then and don’t know where to start, I would thoroughly recommend watching Wes Chua’s free course on Youtube!