Closed
Description
Most of the files in ios Embedder and some shared darwin codes use MRC(Manual Reference Counting).
Manual Reference Counting is easy to make memory management mistake with. Objecgtive-C with Manual Reference Counting is not pleasant to work with, often scaring away contributors.
Migrate all the objective-C code to ARC will boosts Flutter's stability on iOS and making contributing to Flutter iOS embedder more efficient.
This is an umbrella issue tracks all the work needs to be done to migrate the iOS embedder to ARC:
- Temporarily enable Objective-C smart pointers (scoped_nsobject, scoped_block etc) to work with both ARC and MRC.
- Migrate all Objective-C files to ARC.
- [iOS] Eliminate ARC __bridge casts where possible #155943
- Remove the support of Objective-C smart pointers