Snapp iOS Weekly
Hi folks,
The best SwiftUI and Swift stories this week are about knowing what the app is really doing: when absence should flow, where a layout breaks, and which tiny change can bring it down. We’ve got practical fixes for our views, a clever macro trick, and a reminder that “it passed tests” isn’t the same as safe infrastructure. Plus, a peek at designing around hardware that literally folds the screen.
Have fun!
Articles
Swift
Google Analytics for Firebase iOS SDK outage on September 28, 2026
A two-line cleanup left a dangling configuration reference, and suddenly apps using the Google Analytics for Firebase SDK were crashing when they fetched the bad payload. The outage lasted just over two hours, but the postmortem is useful beyond Firebase: validate remote data at the client boundary, catch orphaned config in CI, and don’t let a green server dashboard stand in for client health. The queued crash reports also explain why the incident looked like it lingered after the rollback.
Optional Chaining: Let Absence Flow Through an Expression
Optional chaining is more than a tidy way to dodge nested if lets. It preserves the distinction between a missing value and a present false, and it can skip the right-hand side of an assignment entirely when an earlier link is nil. That’s a small but important behavior to keep in our heads—especially with dictionary subscripts, where “do nothing if missing” is very different from “create a value.”
Advanced macro technique #2: Type inference
Swift macros see syntax, not the compiler’s static type information, which makes generating APIs from inferred properties awkward. Point-Free’s solution is delightfully indirect: generate a protocol with an associated type, then let a witness type infer that type from the property’s default value. The macro can use the inferred type in its generated initializer without asking users to sprinkle annotations everywhere. A neat technique for anyone building macros that generate real types or functions.
UI / UX
Fix misaligned paging in SwiftUI scroll views
If SwiftUI paging drifts a little farther off with every swipe, check the spacing in your LazyHStack before reaching for a custom paging solution. .paging measures stops against the scroll container, while the stack’s default gaps quietly shift the pages out of place. Set the spacing to zero; if you still want breathing room, put padding inside each page before containerRelativeFrame. One of those fixes that’s obvious once you know where to look.
Positioning SwiftUI views around the fold on iPhone Duo
A fold is not just another narrow screen: content that crosses it can be hard to read or tap, and scrolling won’t move a vertical fold out of the way. SwiftUI’s reservedRegions API lets a layout inspect the fold’s frame and place grid columns on either side of it. The clever extra is including inactive regions too, so the number of columns can stay stable as the device folds. Worth a look now if our layouts need to adapt to more than a flat rectangle.
SwiftUI Performance: Find Redraws in Xcode Instruments
When a SwiftUI screen feels sluggish, Instruments can show which view bodies are updating, how much time they take, and what state change triggered them. The practical advice here is to profile a short, focused interaction in a Release build, then inspect both the update hierarchy and the per-update table—lots of individually cheap redraws can still pile up on the main thread. And yes, measure again after changing the code; vibes are not a performance metric.
How native SwiftUI controls look different in iOS 26
Build with the iOS 26 SDK and run on iOS 26: plenty of familiar SwiftUI controls change appearance without a line of custom styling. Buttons get rounder, toolbars pick up glass backgrounds, tab bars float, and partial-height sheets gain inset edges. The useful reminder is to check what the system already gives our apps before adding custom glass effects—though you’ll want to test the whole interaction, not just the controls at rest.
Talk
iPhone Duo Group Lab | 10/15/26 | Meet with Apple
A recording of the most recent event in the “Meet with Apple” series. In their own words: “In this one-hour event, you’ll learn how to adapt your layouts across displays and poses, work with the hinge, support Split View multitasking, and build great camera experiences.” It takes just this much to get up to speed with supporting the new hardware.