Skip to content

⬆️ Update flutter version to >=3.10.0 and dart sdk to >= 3.0.0 - #551

Open
lavigarg-simform wants to merge 1 commit into
masterfrom
feat/flutter-upgrade-3.29.0
Open

lavigarg-simform wants to merge 1 commit into
masterfrom
feat/flutter-upgrade-3.29.0

Conversation

@lavigarg-simform

@lavigarg-simform lavigarg-simform commented Jun 15, 2026 •

Copy link
Copy Markdown
Contributor

⬆️ Update flutter version to >=3.10.0 and dart sdk to >= 3.0.0

Description

This PR upgrades the Flutter framework version requirement to 3.10.0 or higher and updates the example application to Flutter 3.44.0. The changes include comprehensive updates to all platform-specific configurations (iOS, Android, macOS, Windows, and Linux) and their respective build tools to align with the latest Flutter ecosystem standards.

Key Changes

Core Version Updates

  • Flutter SDK: Updated from 3.38.x to 3.44.0 (example app)
  • Dart SDK: Updated to >=3.12.0 <4.0.0 (was >=3.10.4 <4.0.0)
  • Minimum Flutter Version: Changed to ^3.44.0 in example pubspec.yaml

Platform-Specific Updates

Android:

  • Gradle wrapper: 8.11.1 → 8.14
  • Android Gradle Plugin: 8.9.2 → 8.11.1
  • Kotlin: 2.1.0 → 2.2.20
  • Added Kotlin built-in and new DSL flags for migration support

iOS:

  • Minimum iOS Deployment Target: 12.0 → 13.0
  • Updated AppDelegate.swift to use FlutterImplicitEngineDelegate pattern
  • Added UIApplicationSceneManifest configuration in Info.plist
  • Removed deprecated CocoaPods framework embedding script
  • Metadata updated to Flutter 3.44 revision

macOS:

  • Minimum macOS Deployment Target: 10.11 → 10.15
  • Xcode build settings updated to version 1510
  • Added Pods framework integration and CocoaPods manifest checking
  • Updated AppDelegate with @main attribute and secure restorable state support

Linux:

  • Added new CMake build configuration (CMakeLists.txt, main.cc, my_application.cc/h)
  • Enables Linux platform support for the example app

Windows:

  • CMake minimum version: 3.15 → 3.14
  • Updated CMakeLists.txt structure and documentation
  • Added Flutter version preprocessor definitions
  • Added dwmapi.lib linker dependency
  • Removed deprecated run_loop architecture in flutter_window.cpp
  • Updated version resource definitions

Web:

  • Removed explicit main.dart.js script tag (now handled by flutter_bootstrap.js)

Dependency Updates (example)

  • Removed caret (^) version constraints in favor of fixed versions
  • Added explicit versions for build tools:
    • build_runner: 2.15.0
    • build_web_compilers: 4.8.0
    • lints: 6.1.0

Testing

  • Updated widget test to use modern test patterns and proper device sizing

Migration Notes

This upgrade may require developers to:

  1. Update their Android build environments for Gradle 8.14 compatibility
  2. Update iOS minimum deployment target to 13.0
  3. Update macOS minimum deployment target to 10.15
  4. Rebuild iOS and macOS pods with the new configurations

Checklist

  • The title of my PR starts with a Conventional Commit prefix
  • I have followed the Contributor Guide
  • I have updated/added tests for ALL new/updated/fixed functionality
  • I have updated/added relevant documentation in docs and added dartdoc comments
  • I have updated/added relevant examples in examples or docs

Breaking Change?

  • Yes, this PR is a breaking change
  • No, this PR is not a breaking change

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates this package and the bundled example app to newer Flutter/Dart baselines, and applies the corresponding template/migration changes across the library widgets and example platform runners.

Changes:

  • Bumps package Flutter constraint to >=3.29.0 (and example app to Flutter ^3.44.0), adjusting related dependency versions.
  • Refactors many widget constructors to use super.key/super-parameter forwarding for cleaner Dart 3-style code.
  • Updates example platform runners (Windows/macOS/iOS/Linux/Web/Android) to newer Flutter-generated templates and build settings.

Reviewed changes

Copilot reviewed 55 out of 56 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
pubspec.yaml Raises SDK/Flutter constraints and pins lints.
lib/src/zoom_scroll_controller.dart Uses super-parameter forwarding in controller/position constructors.
lib/src/week_view/week_view.dart Migrates constructor to super.key and removes explicit super(key: ...).
lib/src/week_view/_internal_week_view_page.dart Migrates constructor to super.key.
lib/src/multi_day_view/multi_day_view.dart Migrates constructor to super.key and removes explicit super(key: ...).
lib/src/multi_day_view/_internal_multi_day_view_page.dart Migrates constructor to super.key.
lib/src/month_view/month_view.dart Migrates constructors to super.key.
lib/src/day_view/day_view.dart Migrates constructor to super.key and removes explicit super(key: ...).
lib/src/day_view/_internal_day_view_page.dart Migrates constructor to super.key.
lib/src/components/safe_area_wrapper.dart Forwards child via super.child.
lib/src/components/month_view_components.dart Migrates constructors to super.key.
lib/src/components/headers/week_page_header.dart Refactors to super-parameter forwarding and trims imports.
lib/src/components/headers/month_page_header.dart Refactors to super-parameter forwarding (imports adjusted).
lib/src/components/headers/day_page_header.dart Refactors to super-parameter forwarding and trims imports.
lib/src/components/headers/calendar_page_header.dart Migrates constructor to super.key and simplifies initializer list.
lib/src/components/day_view_components.dart Migrates constructors to super.key.
lib/src/components/_internal_components.dart Migrates constructors to super.key.
lib/src/calendar_theme_provider.dart Forwards child/key via super parameters.
lib/src/calendar_controller_provider.dart Forwards child/key via super parameters.
example/windows/runner/win32_window.h Updates window creation API and adds theme update/show APIs.
example/windows/runner/win32_window.cpp Implements new Create/Show flow and adds dark-mode decoration update.
example/windows/runner/utils.cpp Hardens UTF-16 to UTF-8 conversion for safer length handling.
example/windows/runner/Runner.rc Updates version macro wiring to Flutter version defines.
example/windows/runner/runner.exe.manifest Adjusts supported OS declarations for Windows 10/11.
example/windows/runner/run_loop.h Removed (switches away from custom run loop).
example/windows/runner/run_loop.cpp Removed (switches away from custom run loop).
example/windows/runner/main.cpp Uses standard Windows message loop and updated window API.
example/windows/runner/flutter_window.h Removes run loop dependency from FlutterWindow API.
example/windows/runner/flutter_window.cpp Shows window on first Flutter frame; removes run loop registration.
example/windows/runner/CMakeLists.txt Updates build settings, adds version defines and new link libraries.
example/windows/flutter/CMakeLists.txt Updates Flutter-level build steps and adds target-platform fallback.
example/windows/CMakeLists.txt Updates project-level CMake policies and native assets install step.
example/web/index.html Uses flutter_bootstrap.js only (removes direct main.dart.js).
example/test/widget_test.dart Replaces counter test with a boot/smoke widget test and view sizing.
example/pubspec.yaml Updates Flutter/Dart constraints and pins dependency versions.
example/macos/Runner/AppDelegate.swift Migrates to @main and enables secure restorable state.
example/macos/Runner.xcworkspace/contents.xcworkspacedata Adds Pods project reference.
example/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme Updates Xcode upgrade/version settings and GPU validation mode.
example/macos/Runner.xcodeproj/project.pbxproj Updates deployment target, integrates Pods, and updates project format.
example/macos/Podfile Raises macOS deployment target to 10.15.
example/macos/.gitignore Ignores Podfile.lock.
example/linux/runner/my_application.h Adds new GTK runner application entry points.
example/linux/runner/my_application.cc Adds new GTK runner implementation using modern Flutter Linux embedding.
example/linux/runner/main.cc Adds new Linux main entry point.
example/linux/runner/CMakeLists.txt Adds Linux runner build configuration.
example/ios/Runner/Info.plist Adds scene manifest configuration.
example/ios/Runner/AppDelegate.swift Adopts implicit engine delegate plugin registration.
example/ios/Runner.xcodeproj/project.pbxproj Raises iOS deployment target and adjusts Pods integration phases.
example/ios/Podfile Updates commented iOS platform version to 13.0.
example/ios/Flutter/AppFrameworkInfo.plist Removes MinimumOSVersion entry.
example/ios/.gitignore Ignores Podfile.lock.
example/android/settings.gradle Updates Android Gradle Plugin and Kotlin plugin versions.
example/android/gradle/wrapper/gradle-wrapper.properties Updates Gradle distribution version.
example/android/gradle.properties Adds Flutter migrator flags for Kotlin/new DSL.
example/.metadata Updates Flutter revision metadata and migration section.
example/.fvmrc Updates pinned FVM Flutter version to 3.44.0.
Files not reviewed (1)
  • example/macos/Runner.xcworkspace/contents.xcworkspacedata: Generated file

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread example/windows/runner/CMakeLists.txt
Comment thread example/windows/runner/utils.cpp Outdated
Comment thread example/windows/runner/flutter_window.cpp
Comment thread lib/src/components/headers/month_page_header.dart
@lavigarg-simform
lavigarg-simform force-pushed the feat/flutter-upgrade-3.29.0 branch 2 times, most recently from 69fe19b to 3f08645 Compare June 17, 2026 09:00
@lavigarg-simform lavigarg-simform changed the title ⬆️ Update flutter version to >=3.29.0 and example app to 3.44 ⬆️ Update flutter version to >=3.10.0 and dart sdk to >= 3.0.0 Jun 17, 2026
@lavigarg-simform
lavigarg-simform force-pushed the feat/flutter-upgrade-3.29.0 branch 2 times, most recently from 87bcb52 to 02878fb Compare June 17, 2026 13:52
@lavigarg-simform
lavigarg-simform marked this pull request as ready for review June 17, 2026 13:54
@kavantrivedi
kavantrivedi requested a review from Copilot June 18, 2026 05:36

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 56 out of 57 changed files in this pull request and generated 4 comments.

Files not reviewed (1)
  • example/macos/Runner.xcworkspace/contents.xcworkspacedata: Generated file

Comment thread example/windows/runner/win32_window.h Outdated
Comment thread example/windows/runner/win32_window.h Outdated
Comment thread CHANGELOG.md Outdated
Comment thread example/windows/CMakeLists.txt Outdated

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants