Environment & Energy

Navigating the Flutter Material and Cupertino Code Freeze: A Step-by-Step Guide

2026-05-04 17:36:55

Introduction

The Flutter team has announced a significant milestone: the Material and Cupertino libraries within the main Flutter framework (flutter/flutter) are now frozen as of April 7. This means no further code changes will be accepted in these libraries inside the core repository. Instead, these libraries will be re‑released as independent packages named material_ui and cupertino_ui on pub.dev. Whether you’re a Flutter app developer, plugin author, or active contributor to Material or Cupertino, this guide walks you through every step you need to take right now — and what to expect in the coming months.

Navigating the Flutter Material and Cupertino Code Freeze: A Step-by-Step Guide

What You Need

Step 1: Understand the Code Freeze and Its Implications

The code freeze means that the Flutter team will stop merging any pull requests that modify the material or cupertino directories inside the flutter/flutter repository. The goal is to create a stable, identical copy of these libraries that will be used as the foundation for the new packages. Once the packages (material_ui and cupertino_ui) are released (planned after the 3.44 stable release), all future development will happen in the flutter/packages repository. For end‑users, this change is transparent for now — you can continue using the existing Material and Cupertino widgets in your apps without any immediate action.

Step 2: Determine If You Are Affected

Your next action depends on your role:

Step 3: Handle Existing Open Pull Requests (PRs)

If you have pull requests that touch Material or Cupertino code:

  1. Do not close them. Leave them open in flutter/flutter.
  2. Reviewers will continue to provide feedback and can still approve changes. However, the PRs will not be merged until after the new packages are published.
  3. Once material_ui and cupertino_ui are live, the Flutter team will publish instructions on how to port your PRs to the flutter/packages repository. Follow those instructions carefully.
  4. Tip: Keep an eye on the official flutter/flutter issues and the flutter/packages repository for the exact porting guidance.

Step 4: Manage New and Existing Issues

Issues related to Material or Cupertino will not be moved. They will continue to live in the flutter/flutter issue tracker — this is the unified approach used for many other packages in the Flutter ecosystem. You can still file new bug reports or feature requests for Material or Cupertino in the same location. There is no need to re‑open issues elsewhere.

Step 5: Prepare for the Future Migration (After 3.44)

Once the 3.44 stable release is out, the new packages will be published and eventually become the recommended way to use Material and Cupertino widgets. Here’s how to get ready:

Step 6: For Contributors – Know the Timeline

If you actively develop Material or Cupertino widgets, keep these milestones in mind:

Tips and Best Practices

By following these steps, you can navigate the Material and Cupertino code freeze with confidence — whether you’re building apps, contributing code, or planning the next version of your plugin.

Explore

Discussing Terrorism and Violence with Children: A Guide for Parents 10 Major Internet Disruptions That Shaped Q1 2026 10 Critical Insights into the EtherRAT Campaign Targeting IT Professionals via Fake GitHub Repos Massive April 2026 Patch Tuesday: Over 160 Flaws Fixed, Including Zero-Days in SharePoint, Windows Defender, Chrome, and Adobe Go 1.26 Arrives with Language Enhancements, Performance Boosts, and Experimental Features