RepoJournal

$ cat mobile/week/2026-08-24.log

Mobile platforms

Mobile platforms

the week in review · Aug 24 – Aug 30, 2026

Flutter stabilizes Linux popups and release-mode routing, Swift hardens OSSA compiler correctness

Flutter reverted a broken Linux popup layout change and shipped release-mode routing injection, while Swift and Kotlin focused on compiler and tooling hardening.

425 commits 264 PRs merged 1 releases 6 briefings covered

Flutter's week was defined by stabilization. Two reverts [1][2] walked back the initial size and placement logic for popups and tooltips on Linux, which had introduced regressions, and the embedder gained a fix for MSAA rendering [3]. On iOS 27+, the engine now manually processes lldb stops to avoid debugger hangs [4], and a null check for the touch rate correction task runner prevents a crash [5]. For developers, the Linux popup behavior reverts to the pre-regression state, and MSAA on the Linux embedder is restored.

Release-mode routing made it to Android. Flutter now injects the `route` into the Android manifest when specified on the command line in release mode [6], closing a gap that previously required manual manifest edits for deep-link testing. The engine also removed Material and Cupertino references from error messages [7], making framework-agnostic errors clearer, and added a test for `engineAllowHeadlessExecution` [8].

Swift work focused on compiler correctness for ownership and embedded targets. A fix in OSSA RAUW preserves the `[dead_end]` flag when compensating a deleted consume [9], preventing a silent miscompile that could produce wrong code in optimized builds. Separately, the merge functions pass no longer performs invalid casts when merging functions with array types [10]. For embedded Swift, deinit specialization and devirtualization were refined to reduce unnecessary work [11][12][13]. Swift also hardened `swift_distributed_actor_is_remote` against non-actor arguments [14]. The bridging layer now covers all SILFunction thunk kinds [15], improving ObjC interop in specific cases.

Kotlin's week was quieter but intentional. The Analysis API dropped the `analysis-api-extend-ka-resolver` skill [16] and stabilized `KtResolvable` and `KtResolvableCall` [17], signaling a consolidation of the resolver API. The compiler team removed obsolete `DISABLE_IR_VISIBILITY_CHECKS` uses [18], and JS/Wasm companion object initialization aligned behavior across targets.

References

  1. [1] Revert "Improve initial size and placement logic for popups and toolt…ips on Linux (#189994) ↗ flutter/flutter
  2. [2] Revert "Improve initial size and placement logic for popups and toolt…ips on Linux (#189994) (#191498) flutter/flutter
  3. [3] Fixes MSAA on the linux embedder. ↗ flutter/flutter
  4. [4] On iOS 27+ devices, manually process lldb stops (#191434) flutter/flutter
  5. [5] iOS: Add null check for touch rate correction task runner (#191641) flutter/flutter
  6. [6] [Android] Inject `route` into manifest when specified on the command line in release mode (#191328) flutter/flutter
  7. [7] Remove Material/Cupertino references in error messages (#191305) flutter/flutter
  8. [8] iOS: Add test for engineAllowHeadlessExecution (#191635) flutter/flutter
  9. [9] OSSA RAUW: don't drop the `[dead_end]` flag when compensating a deleted consume ↗ apple/swift
  10. [10] SwiftMergeFunctions: Fix invalid cast when merging functions with array types ↗ apple/swift
  11. [11] [Embedded] Ensure that we specialize deinits for move-only generic types ↗ apple/swift
  12. [12] [Embedded] Limit additional specialization of deinits to only those needed for metadata ↗ apple/swift
  13. [13] [Embedded] Improvements to deinit devirtualization ↗ apple/swift
  14. [14] [Distributed] Harden swift_distributed_actor_is_remote against non-actors ↗ apple/swift
  15. [15] [Bridging] Bridge all of the SILFunction thunk kinds ↗ apple/swift
  16. [16] [Analysis API] Drop the `analysis-api-extend-ka-resolver` skill JetBrains/kotlin
  17. [17] [PSI] Stabilize `KtResolvable` and `KtResolvableCall` JetBrains/kotlin
  18. [18] [tests] Remove obsolete `DISABLE_IR_VISIBILITY_CHECKS` JetBrains/kotlin

$ ls mobile/week/ # the briefings behind this review