github CharlesWiltgen/Axiom v27.1.2
Axiom v27.1.2

3 hours ago

Released September 19, 2026

New

  • String Catalog tooling – localization now covers writing an .xcstrings file from a script: the byte layout Xcode expects, the two key styles a tool must read, and xcstringstool, including the --skip-marking-strings-stale flag that keeps sync from deleting untranslated entries missing from its input. It also explains why one English word used for two meanings ships one translation, whatever its comments say.

Updated

  • iPhone Duo vertical bars – Explains that toolbar items join a vertical bar only inside a system-managed container, what hosting a NavigationStack in a custom layer costs (an opaque background, and the window’s safe-area insets returned to its content), and why a control with on, off and unavailable states needs a custom view opted in with .axisBehavior(.verticalPreferred).
  • Simulator rotation – Points to devicectl device orientation set for rotating a simulator from the host, checked by the screenshot’s dimensions. It notes that iPhone Duo ignores the command, since its poses change only in Device Hub, and that iPad refuses an app’s own requestGeometryUpdate under the windowing model, reporting it only to the error handler. The change covers device-control-ref, iphone-duo and uikit-modernization.
  • Simulator screenshots – Explains what each screenshot mask shows at a display’s rounded corners, and how to capture a chosen display on a device with two, since iPhone Duo’s default capture is its inner display, even while the device is closed. The change covers device-control-ref and iphone-duo.
  • Simulator tap styles – Pass --tap-style physical to every direct axe tap, because SwiftUI buttons, list rows, menus and tabs ignore AXe’s default style, and judge any tap by its effect, since it reports success either way. The change covers axe-ref, xcui-ref, simulator-tester and the tool notes Axiom adds at session start.
  • Also updated – Apple’s shipped translations and App Shortcuts phrases in the simulator runtime, as a reference for exact UI wording, and the iOS 27.1 simulator runtime, which creates only iPhone Duo.

Fixed

  • xcui device selection – With more than one simulator booted and no --udid, every command that drives a device exits with status 2 and lists each booted simulator’s UDID, name and runtime, and doctor reports the same list.

Changed

  • AXe 1.7.0 required – xcui now requires AXe 1.7.0 or later, which its doctor command checks; upgrade with brew upgrade cameroncooke/axe/axe. Its taps send a physical touch unless you choose a tap style, so SwiftUI buttons, list rows, menus and tabs respond, and dialog accept and dismiss close system alerts.

Full Changelog: v27.1.1...v27.1.2

Don't miss a new Axiom release

NewReleases is sending notifications on new releases.