Skip to content

chore: migrate samples to Flutter 3.47.0, Shorebird 1.6.117 & modern Gradle toolchain - #45

Merged
AbhishekDoshi26 merged 2 commits into
mainfrom
chore/flutter-3.47
Aug 20, 2026
Merged

chore: migrate samples to Flutter 3.47.0, Shorebird 1.6.117 & modern Gradle toolchain#45
AbhishekDoshi26 merged 2 commits into
mainfrom
chore/flutter-3.47

Conversation

@AbhishekDoshi26

Copy link
Copy Markdown
Member

Description

This PR migrates all 6 sample projects in the monorepo to Flutter 3.47.0 (Dart SDK 3.13.0) and Shorebird 1.6.117, adopts Flutter 3.47 standalone design widget packages, modernizes both Android and iOS build toolchains, and adds root-level artifact protection.


Key Changes

1. Flutter & Shorebird SDK Upgrades

  • Bumped SDK constraints across all 6 sample projects (flavors, multi_dimensional_flavors, add_to_app/my_flutter_module, progressive_rollout_demo, shorebird_fintech_wallet, clear_skies):
    • Dart SDK: >=3.13.0 <4.0.0
    • Flutter SDK: >=3.47.0 <4.0.0
  • Bumped shorebird_code_push to ^2.0.7.
  • Upgraded Shorebird CLI to 1.6.117 and refreshed all dependency lockfiles with pub upgrade.

2. Standalone Design Widgets Migration (material_ui)

  • Applied dart fix --apply --code=migrate_design_widgets across all packages to adopt Flutter 3.47 standalone material_ui design widgets.
  • Added material_ui: any dependency where required.
  • Updated shorebird_fintech_wallet theme configuration (app_theme.dart) for clean material_ui TextTheme integration with google_fonts.

3. Android / Gradle Toolchain Modernization

  • Upgraded Gradle wrapper to 8.14 across all Android apps.
  • Upgraded Android Gradle Plugin to 8.11.1 and Kotlin Gradle Plugin to 2.2.20 / 2.1.0.
  • Updated Java source & target compatibility to Java 17.
  • Configured Gradle JVM args (-Xmx4G) and removed obsolete Jetifier transforms to prevent out-of-memory errors during multi-flavor builds.

4. iOS / Xcode Project Modernization

  • Updated iOS projects to iOS 15.0 minimum deployment target.
  • Added Swift Package Manager (SPM) integration support and migrated to UIScene lifecycle.

5. Repository Protection & .gitignore

  • Added repository-root .gitignore to permanently ignore build outputs, .dart_tool/, .packages, .pub/, .idea/, .vscode/, DerivedData/, and Xcode SPM cache folders.

Verification & Test Results

1. Static Analysis & Tests

  • flutter analyze: 0 issues across all 6 sample projects.
  • flutter test: 109/109 tests passing (100%).
  • dart format: All files formatted.
  • shorebird_ci verify: All packages verified with full CI coverage.

2. Native Build Verification

  • flavors:
    • Android APK (internal flavor): build/app/outputs/flutter-apk/app-internal-debug.apk
    • iOS Simulator App (internal flavor): build/ios/iphonesimulator/Runner.app
  • multi_dimensional_flavors:
    • Android APK (internalGlobal flavor): build/app/outputs/flutter-apk/app-internalglobal-debug.apk
  • add_to_app/my_flutter_module:
    • Android AARs (debug, profile, release): build/host/outputs/repo
  • progressive_rollout_demo:
    • iOS Simulator App: build/ios/iphonesimulator/Runner.app
  • shorebird_fintech_wallet:
    • Android APK: build/app/outputs/flutter-apk/app-debug.apk
    • iOS Simulator App: build/ios/iphonesimulator/Runner.app
  • clear_skies:
    • Android APK: build/app/outputs/flutter-apk/app-debug.apk
    • iOS Simulator App: build/ios/iphonesimulator/Runner.app

@AbhishekDoshi26
AbhishekDoshi26 merged commit ab38beb into main Aug 20, 2026
12 checks passed
@AbhishekDoshi26
AbhishekDoshi26 deleted the chore/flutter-3.47 branch August 20, 2026 07:03
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.

1 participant