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.38.4 → 3.47.7Dec 4, 2025 → Oct 8, 2026 · 34 releases in range

Changes in range
2343
showing the first 400
Breaking / removed
17
15 with migration guides
Deprecations
29
plan before they are removed
Official evidence
2343
16 official migration guide, 2230 official release note, 97 official changelog

What changed?

2343 indexed changes across 34 versions: 10 breaking change, 7 removed, 29 deprecated api, 403 new feature, 616 improvement, 42 performance, 267 platform-specific, 329 developer tooling, 584 bug fix, 56 documentation.

Will this affect my application?

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

What action should I take?

Read the 15 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.38.5
    Dec 12, 2025
    1 changes
  2. 3.38.6
    Jan 8, 2026
    7 changes
  3. 3.38.7
    Jan 14, 2026
    1 changes
  4. 3.38.8
    Jan 27, 2026
    1 changes
  5. 3.38.9
    Jan 29, 2026
    1 changes
  6. 3.38.10
    Feb 11, 2026
    1 changes
  7. 3.41.0
    Feb 11, 2026
    702 changes
  8. 3.41.1
    Feb 13, 2026
    2 changes
  9. 3.41.2
    Feb 19, 2026
    4 changes
  10. 3.41.3
    Mar 4, 2026
    2 changes
  11. 3.41.4
    Mar 4, 2026
    4 changes
  12. 3.41.5
    Mar 18, 2026
    1 changes
  13. 3.41.6
    Mar 26, 2026
    3 changes
  14. 3.41.7
    Apr 16, 2026
    3 changes
  15. 3.41.8
    Apr 27, 2026
    1 changes
  16. 3.41.9
    Apr 30, 2026
    1 changes
  17. 3.44.0
    May 18, 2026
    768 changes
  18. 3.44.1
    Jun 1, 2026
    2 changes
  19. 3.44.2
    Jun 11, 2026
    4 changes
  20. 3.44.3
    Jun 22, 2026
    4 changes
  21. 3.44.4
    Jun 24, 2026
    1 changes
  22. 3.44.5
    Jul 6, 2026
    4 changes
  23. 3.44.6
    Jul 9, 2026
    2 changes
  24. 3.44.7
    Jul 20, 2026
    1 changes
  25. 3.44.8
    Jul 23, 2026
    2 changes
  26. 3.44.9
    Aug 6, 2026
    1 changes
  27. 3.47.0
    Aug 12, 2026
    776 changes
  28. 3.47.1
    Aug 19, 2026
    12 changes
  29. 3.47.2
    Aug 27, 2026
    14 changes
  30. 3.47.3
    Sep 9, 2026
    4 changes
  31. 3.47.4
    Sep 11, 2026
    7 changes
  32. 3.47.5
    Sep 18, 2026
    3 changes
  33. 3.47.6
    Oct 1, 2026
    1 changes
  34. 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 10

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
BreakingHigh impact3.41.0linux migration guide

Merged threads on Linux

Flutter 3.39 merges the UI and platform threads by default on Linux.

Official migration guideVerified classificationFrameworkSource Details
BreakingHigh impact3.41.0 migration guide

Material 3 tokens update

This release updates `package:material_color_utilities` from `v0.11.1` to `0.13.0`. This updated package includes algorithm changes that align with the Material 3 tokens update.

Official migration guideVerified classificationFrameworkSource Details

Removed Removed 7

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 29

New New feature 354

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?