SwiftLee Weekly - Issue 271


This week's SwiftLee Weekly covers:

  • Testing SwiftUI views
  • What's new in Swift 6.2?
  • Using Model Context Protocol on iOS

Enjoy this week's SwiftLee Weekly!

THIS WEEK'S BLOG POST

Universal Links implementation on iOS

Do you know the difference between deeplinks and universal links?

I can at least tell you that Universal Links offers a much better user experience. This week's article explains both differences and how you can implement them for your apps.

SPONSORED

Is Your Mobile CI/CD Pipeline Secure Enough?

As mobile CI/CD practices become more widespread, security vulnerabilities can be inadvertently introduced at every stage of the process. This blog explores the top 5 security risks and the best practices to mitigate them, backed by insights from 200+ enterprise audits. Read on to strengthen your CI/CD pipeline and stay ahead of emerging threats.

CURATED FROM THE COMMUNITY

Using Model Context Protocol in iOS apps

Using a Model Context Protocol (MCP) might sound new to you, but I expect many apps to do so over the upcoming months. This is an excellent introduction to the topic with helpful code examples.
artemnovichkov.com

Debug crashes in iOS using MetricKit

I love MetricKit and even used it inside Diagnostics to enrich data (see my article). This article describes another helpful way to use MetricKit data for crashes.
ohmyswift.com

What's new in Swift 6.2?

Many proposals have already been accepted into Swift 6.2, and while it’s not even released, this is an excellent write-up on what to expect. I covered the concurrency changes not long ago, and this article covers all other features as well!
hackingwithswift.com

Can You use PreferenceKeys for Testing SwiftUI Views

I curate articles every week, and I don’t often see people explore testing SwiftUI views. Here’s an interesting approach: using preference keys.
swiftyplace.com

Concurrency-Safe Testing in Swift 6.1 with @TaskLocal and Test Scoping

In general, I don’t expect many to use task local values for production code. However, for testing purposes, this is an excellent example that can work well!
mobiledevdiary.com

SWIFT EVOLUTION

An overview of last week's Swift Proposal state changes. Check them out when they're in review, as it's your opportunity to influence the direction of Swift's future.

SwIFTLEE COURSES

The Essential Swift Concurrency Course for a Seamless Swift 6 Migration

There's no code snippet of the week this time since I'm writing this issue from the caravan during my holiday. Instead, I'd like to give you a quick update on my latest course: The Essential Swift Concurrency Course for a Seamless Swift 6 Migration.

It's still in development, simply because Swift Concurrency is changing rapidly. Expect a lot of changes during WWDC and in Swift 6.2! Yet, it's an opportunity for you to purchase the course with an early-bird discount.

It currently already has:

  • 48 lessons
  • 8 modules
  • Multiple lessons already updated for Swift 6.2

And 3 more modules will follow over the upcoming months. It's a great opportunity for you to get yourself familiar with Swift Concurrency before WWDC.

QUOTE OF THE WEEK

RocketSim Team Insights finally gives us visibility into our build times beyond just gut feeling. We can actually measure the impact of adding SDKs or improving configurations, seeing results reflected in incremental and clean builds. It’s been invaluable for decisions like upgrading hardware—we can point to real data showing how different machines affect build times. The metrics are broken down beautifully, no extra setup or build phase hacks required—it just works quietly in the background. Honestly, it’s something we could never have justified building in-house, but it’s been a total game-changer.
Max Godfrey, iOS Developer at Empower Finance

That's right, we've got a quote of the week this time! Last November, I started a new venture to develop the teams product for RocketSim. Empower Finance has been one of the early adopters and shared the above quote last week.

If you're new to RocketSim for Teams, it allows you to:

  • Monitor your local Xcode build durations for your whole team
  • Find out which MacBook setup results in the fastest Xcode builds
  • Indicate trends in build performance

If I ask you:

  • How much slower did your Xcode builds become over the past month?

And you don't have an answer, it's time to get yourself started with RocketSim for Teams. It's essential to monitor your local build durations to safeguard your team's productivity.

Get your whole team a 14-day trial and discover how valuable our build insights are, just like Empower Finance did. Just fill in your email & team size, and you'll get a license with just as many seats.

EARN ROCKETSIM LIFETIME

Share and Earn RocketSim Lifetime & a 1-on-1 coaching session

Apple has recognized RocketSim as an Essential Developer Tool in the Mac App Store, and now you can get lifetime Pro access by sharing your unique referral link!

How to get started:

[RH_REFLINK GOES HERE]

Rewards:

  • Earn your first reward after just 3 sign-ups!
  • Check your progress anytime using your referral dashboard.
  • The grand prize? A personalized 1-on-1 career coaching session!

Several subscribers have already claimed their rewards—will you be next?

Thank you so much for your support, and until next Tuesday,

Antoine

SwiftLee Weekly by Antoine van der Lee

Swift Evolution updates, 5 top community articles covering Swift development topics.

Read more from SwiftLee Weekly by Antoine van der Lee

This week's SwiftLee Weekly covers: An Agent Skill for Swift Testing Using Gemini in Xcode Automating Codex & The Agentic Loop Enjoy this week's SwiftLee Weekly! THIS WEEK'S BLOG POST Swift Testing Agent Skill: Write high quality tests with AI You might have noticed that I'm building a collection of Agent Skills lately. This week, I'm introducing you to the latest addition: Swift Testing. I'm coding full-time with agents and run into frequent mistakes. One of these related to tests not being...

This week's SwiftLee Weekly covers: Agentic Coding in Xcode Is Combine dead? A new way of testing VoiceOver Enjoy this week's SwiftLee Weekly! THIS WEEK'S BLOG POST Core Data Agent Skill: Now available open-source You might see a pattern here: I'm converting my SwiftLee categories into Agent Skills. To help you, but to also help myself. These articles reflect my way of coding, and how easy would it be if I can teach my Agents to reflect that same knowledge? This week, I introduce you to my...

This week's SwiftLee Weekly covers: An interview with the creator of Clawd A new SwiftUI Agent Skill How Apple hooks entire frameworks Enjoy this week's SwiftLee Weekly! THIS WEEK'S BLOG POST SwiftUI Agent Skill: Build better views with AI As a SwiftLee Weekly reader, you've probably checked out this skill already after I told you last week. If not, this is a great article that introduces you to it, combined with an example prompt that I like using with it. SPONSORED Release every white-label...