Apple quietly released Xcode 26.4 beta, bringing updated SDKs and a set of practical improvements — especially around testing and localization workflows.
Unlike Xcode 26.3, which introduced agentic coding, 26.4 is a refinement release. No big headline features — but a lot of small improvements that remove friction from day-to-day development.
Here’s what developers should actually care about.
Updated SDKs
Xcode 26.4 includes SDK updates for all platforms:
Swift Testing Keeps Getting Better
Swift Testing continues to evolve and Xcode 26.4 makes it much more practical for real-world debugging.
Attach Images to Tests
You can now attach images directly to Swift tests:
CGImageNSImageUIImageCIImage
This is especially useful for:
- Snapshot testing
- UI verification
- Rendering tests
- Vision / image pipelines
Instead of logging text failures, you can now see exactly what went wrong.
For UI-heavy apps, this is a big quality-of-life improvement.
Severity Levels for Test Issues
Swift Testing now lets you record issues with a specific severity level.
Instead of everything being a hard failure, you can now distinguish between:
- Warnings
- Non-critical issues
- Actual failures
This makes test reporting more realistic for large test suites.
Not every issue needs to break CI.
Better Error Reporting for Attachments
If Xcode fails to save a test attachment, it now shows up as a runtime issue.
Previously this could fail silently, which made debugging test infrastructure harder.
Now you'll know immediately if something went wrong.
UI Test Crash Reports Are Easier to See
When an app crashes during UI testing via:
XCUIApplication(bundleIdentifier:)
XCUIApplication(url:)
Xcode now:
- Reports the crash as a warning
- Attaches the crash log automatically
This removes a lot of manual digging through DerivedData.
Small change — big time saver.
Mixing XCTest and Swift Testing Is Safer
Many projects are gradually migrating from XCTest to Swift Testing.
Xcode 26.4 improves this transition.
If you call an assertion from the wrong framework:
- XCTest inside Swift Testing
- Swift Testing inside XCTest
Xcode now reports a runtime warning instead of failing silently.
This makes mixed test suites much easier to maintain.
Localization Improvements (Finally)
If you've used String Catalogs for localization, you've probably noticed that editing them could feel limited.
Xcode 26.4 fixes several long-standing pain points.
Removing Languages Is Now Easy
You can now remove languages directly from the String Catalog editor.
Even better, you can choose:
- Remove from just this catalog
- Remove from the entire project
Previously this required manual cleanup.
Now it's a one-click operation.
Pre-Fill Translations When Adding Languages
When adding a new supported language in Project Settings, Xcode can now:
Pre-fill translations using an existing language.
This is surprisingly useful when:
- Creating regional variants
- Bootstrapping translations
- Working with external translators
Instead of starting from empty catalogs, you get a usable baseline.
Copy & Paste Support for String Catalogs
String Catalog editing finally behaves like a normal editor.
You can now:
- Cut
- Copy
- Paste
- Duplicate strings
And this works:
- Within a catalog
- Between catalogs
When pasting strings, you can choose:
- Add as a new key with translations
- Apply translations to an existing key
If you've ever reorganized large catalogs, this will save a lot of time.
Build and Compiler Improvements
Like most minor Xcode updates, 26.4 includes compiler and build system improvements:
- Better diagnostics
- Improved stability
- Fewer unexpected build issues
These updates rarely make headlines but usually improve everyday development.
Large projects tend to benefit the most.
Summary
Xcode 26.4 isn’t a flashy release — but it improves areas developers use every day:
- Better Swift Testing
- Easier localization
- Updated SDKs
- More stable builds
The Testing and Localization improvements alone make this a worthwhile upgrade for many teams.
If Xcode 26.3 introduced new workflows, 26.4 makes the existing ones smoother.
Top comments (0)