The Wire · Showcase
FLUTTER CLEANS HOUSE WHILE SWIFT TIGHTENS C++ INTEROP
By RepoJournal · Filed · About Mobile platforms
Flutter's tackling test hygiene and animation bugs as the team refactors Material imports, while Swift ships critical C++ pointer bridging fixes that unblock smart pointer imports.
Flutter shipped a material cleanup pass [1] removing unnecessary Material imports from widget-layer tests, cutting cross-package coupling and tightening test boundaries across the test suite. The same branch rolled Dart SDK to 3.13.0-123 [2], bringing compiler and runtime improvements into the pipeline. More pressingly, AnimatedList.separated now correctly handles mid-removal operations [3] by tracking visible children separately from those animating out, fixing assertion failures when removing the last item while animations are in flight. The team reverted a shader recompilation feature [4] due to test flakes in web asset processing, pushing that work back for stabilization. On accessibility, traversal child detachment now properly marks parents dirty [5], ensuring TalkBack and other assistive readers don't see phantom items after UI state changes. Swift merged C++ interop improvements [7] that handle ambiguous smart pointer constructors and const-qualified references, finally unblocking types that had both T& and T* constructors. The compiler also landed CAS caching enhancements [8] for offline result replay, and cleaned up deprecated bool conversion APIs [6]. Kotlin's build system is shedding compiler plugin jar references [10] [11] [13] and added WebAssembly toolchain support [12], while updating security documentation [9] to clarify standard library support windows.
Action items
- → Test AnimatedList.separated removals in your app if using animated list mutations flutter/flutter [plan]
- → Review smart pointer bridging in your C++ interop code after Swift's pointer fixes apple/swift [monitor]
- → Check Kotlin SECURITY.md for stdlib support window updates before pinning versions JetBrains/kotlin [monitor]
References
- [1] Remove unnecessary Material imports from non-Material tests in flutter package (#185271) flutter/flutter
- [2] Roll Dart SDK from 84220a34788e to a07b6f5d8402 (6 revisions) ↗ flutter/flutter
- [3] Fix AnimatedList.separated assert when removing last item mid-removal… (#186389) flutter/flutter
- [4] Reverts "[web, tool] Support recompiling shaders and unify asset processing (#185534)" ↗ flutter/flutter
- [5] Detached traversal child should update its traversal parent ↗ flutter/flutter
- [6] Merge pull request #89258 from j-hui/convert-to-bool-depr apple/swift
- [7] [cxx-interop] SWIFT_REFCOUNTED_PTR improvements ↗ apple/swift
- [8] [CAS] Store the input index along the compiler results ↗ apple/swift
- [9] update: update SECURITY.md with standard library support window JetBrains/kotlin
- [10] [Build] Remove references to lombok-compiler-plugin.jar from args JetBrains/kotlin
- [11] [Build] Remove references to allopen-compiler-plugin.jar from args JetBrains/kotlin
- [12] [BTA] Add Wasm toolchain ↗ JetBrains/kotlin
- [13] [Build] Remove references to noarg-compiler-plugin.jar from args JetBrains/kotlin
FAQ
- What changed in Mobile platforms on May 21, 2026?
- Flutter's tackling test hygiene and animation bugs as the team refactors Material imports, while Swift ships critical C++ pointer bridging fixes that unblock smart pointer imports.
- What should Mobile platforms teams do about it?
- Test AnimatedList.separated removals in your app if using animated list mutations • Review smart pointer bridging in your C++ interop code after Swift's pointer fixes • Check Kotlin SECURITY.md for stdlib support window updates before pinning versions
- Which Mobile platforms repositories shipped on May 21, 2026?
- flutter/flutter, apple/swift, JetBrains/kotlin