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

By

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.

Related Articles

Recommended

Discover More

The Limits of Economic Warfare: How the Iran Conflict Reveals Waning US Sanctions PowerHow to Transform Your Steam Controller into a Handheld Gaming Powerhouse with the Basegrip AccessoryYour Ultimate Guide to Loungefly’s Latest Star Wars Bag CollectionBreakthrough: Generalized Language Models Now See and Describe Images Without Specialized Vision NetworksHow to Track and Analyze Internet Disruptions Using Cloudflare Radar: A Q1 2026 Case Study