Flutter’s Big Shift: Swift Package Manager Becomes Default for iOS and macOS Dependencies

By

Introduction: A New Default for iOS/macOS Dependencies

Starting with the upcoming stable Flutter release (version 3.44), Apple’s Swift Package Manager (SwiftPM) will take over as the standard dependency manager for iOS and macOS apps. This marks the end of relying on CocoaPods and Ruby installations just to get a Flutter app running. CocoaPods has entered maintenance mode, and its registry is set to become permanently read-only on December 2, 2026. After that date, no new versions or pods will be added to the trunk, though existing builds will still work. To keep apps receiving dependency updates and to tap into the growing Swift package ecosystem, Flutter is moving to Apple’s own supported solution: Swift Package Manager.

Flutter’s Big Shift: Swift Package Manager Becomes Default for iOS and macOS Dependencies

If you have already migrated your plugin(s) to SwiftPM, please read the “Plugin Developers” section below for additional requirements.

What App Developers Need to Know

Automatic Migration via the Flutter CLI

For app developers, the transition is largely handled by the Flutter command-line interface. When you run or build your iOS or macOS app, the CLI automatically updates your Xcode project to use Swift Package Manager. You can find full details in the official Flutter migration docs.

Handling Plugins That Haven’t Adopted SwiftPM

If your app depends on plugins that do not yet support Swift Package Manager, Flutter will print a warning listing exactly which dependencies are unsupported. In those cases, Flutter will temporarily fall back to CocoaPods for the affected plugins. However, because CocoaPods support will eventually be removed entirely, if a plugin remains incompatible and breaks your build, you should file an issue with the plugin’s maintainer requesting Swift package support, or find an alternative package.

Temporarily Opting Out of Swift Package Manager

If SwiftPM causes a breaking issue, you can disable it temporarily for your project. Open your pubspec.yaml file, go to the flutter section, and under the config block set enable-swift-package-manager to false:

flutter:
  config:
    enable-swift-package-manager: false

If you choose to opt out, please file a bug report using the Flutter GitHub issue template. Include error details, a list of your plugins and versions, and copies of your Xcode project files. This helps the Flutter team resolve issues before CocoaPods support is completely removed.

What Plugin Developers Must Do

If you maintain an iOS or macOS Flutter plugin, you need to add Swift Package Manager support if you haven’t already. As of now, 61% of the top 100 iOS plugins have migrated, but the remaining ones must catch up to prevent app developers from being stuck with a deprecated tool. To encourage adoption, packages without SwiftPM support now receive lower pub.dev scores until they migrate.

Steps for Adding SwiftPM Support

  • Add a Package.swift file to your plugin repository.
  • Move your source files to match the standard Swift package directory structure.
  • If you already migrated your plugin during the 2025 pilot, you must take one additional step: add FlutterFramework as a dependency in your Package.swift file.

For detailed instructions, refer to the Flutter migration documentation for plugins.

Looking Ahead

The move to Swift Package Manager simplifies the iOS/macOS development workflow for Flutter. With the December 2026 deadline for CocoaPods registry changes, now is the time to update your dependencies. App developers should check for plugin warnings and report issues, while plugin authors should prioritize migration to maintain pub.dev scores and ensure a smooth experience for the community.

Related Articles

Recommended

Discover More

April 2026 Patch Tuesday: 10 Critical Security Updates You Must Know AboutSecuring Social Security: The Best and Worst Reform Ideas RatedMay 2026 Wallpapers: Fresh Views for a New Season – Your Questions AnsweredHow to Evaluate the Effects of Tree Diversity on Subterranean Energy Dynamics in European ForestsBreaking: XPENG Unveils X-Cache – World Model Accelerator Cuts Training Needs, Boosts Inference Speed 2.7x