Skip to content
Boring Doc

Version Comparison Studio

Choose two real stable releases. Boring Doc lists every indexed change between them with its evidence, impact and migration instructions, and can fetch the verified source diff from GitHub.

Categories
Platform
Explain

3.41.9 → 3.47.7Apr 30, 2026 → Oct 8, 2026 · 18 releases in range

Changes in range
1698
showing the first 400
Breaking / removed
11
10 with migration guides
Deprecations
10
plan before they are removed
Official evidence
1698
11 official migration guide, 1623 official release note, 64 official changelog

What changed?

1698 indexed changes across 18 versions: 8 breaking change, 3 removed, 10 deprecated api, 299 new feature, 567 improvement, 28 performance, 188 platform-specific, 247 developer tooling, 316 bug fix, 32 documentation.

Will this affect my application?

11 high-impact items. Start with: OpenGL ES render-to-texture content is stored top-down; Update semantics header and headingLevel behavior on iOS and Android; Changing RawMenuAnchor close order; ….

What action should I take?

Read the 10 official migration guides first, apply `dart fix` where available, then upgrade and run your test suite. Deprecations can be scheduled; removals cannot.

How do I migrate safely?

Prefer stepping through stable series sequentially; each breaking-change page has a checklist, before/after code and the official guide. Verify with `flutter analyze`, `flutter test` and a profile-mode run on each target platform.

What this comparison covers
  • Release-note items are classified from PR titles (heuristic); breaking-change guides are classified from the official index.
  1. 3.44.0
    May 18, 2026
    823 changes
  2. 3.44.1
    Jun 1, 2026
    2 changes
  3. 3.44.2
    Jun 11, 2026
    4 changes
  4. 3.44.3
    Jun 22, 2026
    4 changes
  5. 3.44.4
    Jun 24, 2026
    1 changes
  6. 3.44.5
    Jul 6, 2026
    4 changes
  7. 3.44.6
    Jul 9, 2026
    2 changes
  8. 3.44.7
    Jul 20, 2026
    1 changes
  9. 3.44.8
    Jul 23, 2026
    2 changes
  10. 3.44.9
    Aug 6, 2026
    1 changes
  11. 3.47.0
    Aug 12, 2026
    811 changes
  12. 3.47.1
    Aug 19, 2026
    12 changes
  13. 3.47.2
    Aug 27, 2026
    14 changes
  14. 3.47.3
    Sep 9, 2026
    4 changes
  15. 3.47.4
    Sep 11, 2026
    7 changes
  16. 3.47.5
    Sep 18, 2026
    3 changes
  17. 3.47.6
    Oct 1, 2026
    1 changes
  18. 3.47.7current
    Oct 8, 2026
    2 changes

Tick “Fetch verified source diff” above (or load it now) to corroborate these announcements with the git history between the two tags.

Breaking Breaking change 8

BreakingHigh impact3.47.0 migration guide

OpenGL ES render-to-texture content is stored top-down

Impeller's OpenGL ES backend now stores render-to-texture content top-down, the same as the Metal and Vulkan backends. A fragment shader or Flutter GPU app that sampled a render-target texture on OpenGL ES and added a vertical flip to compensate for the old bottom-up orientation now renders that content upside down.

Official migration guideVerified classificationFrameworkSource Details
BreakingHigh impact3.44.0 migration guide

Changing RawMenuAnchor close order

Closing a `RawMenuAnchor` now triggers the `onCloseRequested` and `onClose` callbacks for all descendant `RawMenuAnchor`s. The `onCloseRequested` callback is triggered top-down, starting from the triggering `RawMenuAnchor` and moving to its descendants, while the `onClose` callback is triggered bottom-up. If a `RawMenuAnchor` is already closed, calls to `MenuController.close` and `MenuController.closeChildren` don't trigger the `onCloseRequested` callback.

Official migration guideVerified classificationFrameworkSource Details
BreakingHigh impact3.44.0 migration guide

IconData class marked as final

The `IconData` class is now marked as `final`, which prevents it from being implemented or extended. This change is part of an effort to generalize the mechanism for tree-shaking assets and native code.

Official migration guideVerified classificationFrameworkSource Details
BreakingHigh impact3.44.0 migration guide

Page transition builders reorganization

`CupertinoPageTransitionsBuilder` has been relocated from `package:material_ui/material_ui.dart` to the Cupertino package, which is now in `package:cupertino_ui/cupertino_ui.dart`.

Official migration guideVerified classificationFrameworkSource Details

Removed Removed 3

RemovedHigh impact3.47.0 migration guide

Removal of describeEnum

The `describeEnum` method has been removed from the framework because it's redundant with the `name` getter on `Enum` which was introduced in `Dart 2.14`.

Official migration guideVerified classificationFrameworkSource Details

Deprecated Deprecated API 10

DeprecatedMedium impact3.44.0 migration guide

Deprecate onReorder callback

The `onReorder` callback in the `ReorderableListView`, `ReorderableListView.builder`, `ReorderableList`, and `SliverReorderableList` widgets has been replaced by a new callback, `onReorderItem`, which provides more intuitive behavior for `newIndex`.

Official migration guideVerified classificationFrameworkSource Details
DeprecatedMedium impact3.44.0 migration guide

Deprecate TextInputConnection.setStyle

`TextInputConnection.setStyle` is deprecated in favor of `TextInputConnection.updateStyle`, which supports synchronizing `letterSpacing`, `wordSpacing`, and `lineHeight` to the engine.

Official migration guideVerified classificationFrameworkSource Details
DeprecatedMedium impact3.44.0 migration guide

Deprecated cacheExtent and cacheExtentStyle

Flutter 3.44 deprecates `cacheExtent` and `cacheExtentStyle` in scrolling-related widgets, such as `ListView`, `GridView`, `CustomScrollView`, and `Viewport`, and their corresponding render objects, such as `RenderViewport`. The new `scrollCacheExtent` property encapsulates both the value and the caching strategy (pixels or viewport).

Official migration guideVerified classificationFrameworkSource Details

New New feature 299

Performance Performance 28

Tooling Developer tooling 52

AI explanationAI-generated · grounded in cited sources
AI explanations are not configured
Set AI_PROVIDER (for example to openai-compatible with a local Ollama or LM Studio endpoint) to enable grounded explanations. Everything else on this page works without an AI provider.
Was this useful?