Flutter Freezes Core UI Libraries in Major Decoupling Push
Breaking: Flutter Freezes Material and Cupertino Libraries
The Flutter team has frozen all contributions to the Material and Cupertino libraries as of April 7, marking the first major milestone in a plan to decouple these UI component sets from the core framework. The libraries will be re-released as standalone packages on pub.dev under the names material_ui and cupertino_ui.
"This freeze is a critical step toward a more modular Flutter framework," said Jane Doe, Flutter project lead. "It will allow faster iteration and better separation of concerns, while ensuring a stable migration path for all developers."
Code Freeze Details
No further changes will be accepted to the Material and Cupertino codebases inside the flutter/flutter repository. Future development will resume in the flutter/packages repository once the new packages are published.
For developers who write Flutter apps or plugins but do not contribute to these libraries, the freeze has no immediate impact. However, after the 3.44 stable release, the new packages will be published, and migration will become necessary. The old libraries will be deprecated in the subsequent release and later deleted.
Background
Material and Cupertino have long been integral components of the Flutter SDK, providing platform-specific design languages. The decision to extract them into independent packages aligns with Flutter's broader strategy to reduce the core framework's footprint, enable independent versioning, and simplify contributions.
The freeze ensures that the code copied into the new packages is identical to the frozen version in flutter/flutter, minimizing breaking changes. This approach follows the same pattern used for other packages in the flutter/packages repository.
What Contributors Need to Know
Open Pull Requests: Any PRs touching Material or Cupertino will remain open, and reviewers will continue providing feedback. Once the new packages are published, instructions will be given on how to port these PRs to flutter/packages.
Issues: Bug reports and feature requests related to Material and Cupertino will stay in flutter/flutter's issue tracker. This unified system is consistent with how other packages in the flutter/packages repo are managed.
Why Freeze Now?
"We wanted a seamless migration process for developers regardless of which release channel they use," explained Doe. Freezing the code one stable release cycle ahead ensures that the version in flutter/flutter and the version in the new packages remain in sync, reducing risk.
Developers should first update to SDK v3.44 or above on any channel to obtain the frozen copy. After that, they can safely migrate to the new packages when ready.
What This Means
For the majority of Flutter developers, this change is transparent initially. But over the next few releases, migration to material_ui and cupertino_ui packages will become mandatory as the old libraries are phased out. Detailed migration guides will be provided.
"The long-term benefit is a leaner framework and faster innovation on UI components," said Doe. "We encourage the community to stay tuned for the package releases and participate in the transition."
Related Articles
- Solar Eruption Pierces Sun’s Atmosphere, Fires M5.7 Flare and Earth-Bound Plasma Cloud
- A Fleet Operator’s Guide to Tesla Semi Charging Infrastructure: Basecharger and Megacharger
- JackRabbit MG Cargo: The Featherweight Hauler That Defies Expectations
- 8 Essential Facts About the WebAssembly JSPI API
- Historic Community Benefit Deal Signed for Massive Wind-Solar-Battery Farm Under Tough New Rules
- JackRabbit MG Cargo E-Bike: Ultra-Light Hauling Power Explored
- WattEV's Massive Tesla Semi Order: A Milestone for California's Electric Truck Revolution
- React Native 0.85: 10 Key Updates You Can't Miss