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.19.6 → 3.22.3Apr 17, 2024 → Jul 18, 2024 · 4 releases in range

Changes in range
35
Breaking / removed
6
5 with migration guides
Deprecations
0
plan before they are removed
Official evidence
35
6 official migration guide, 29 official changelog

What changed?

35 indexed changes across 4 versions: 4 breaking change, 2 removed, 29 bug fix.

Will this affect my application?

6 high-impact items. Start with: Rename MaterialState to WidgetState; Introduce new ColorScheme roles; Nullable PageView.controller; ….

What action should I take?

Read the 5 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 indexed for the most recent series only. For 3.22 this comparison shows official breaking-change guides and hotfix notes.
  • Release-note items are classified from PR titles (heuristic); breaking-change guides are classified from the official index.
  1. 3.22.0
    May 13, 2024
    6 changes
  2. 3.22.1
    May 22, 2024
    3 changes
  3. 3.22.2
    Jun 6, 2024
    13 changes
  4. 3.22.3
    Jul 18, 2024
    13 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 4

BreakingHigh impact3.22.0 migration guide

Rename MaterialState to WidgetState

`MaterialState`, and its related APIs, have been moved out of the Material library and renamed to `WidgetState`.

Official migration guideVerified classificationFrameworkSource Details
BreakingHigh impact3.22.0 migration guide

Introduce new ColorScheme roles

New color roles in `ColorScheme` include seven tone-based surfaces and containers, and twelve accent colors for primary, secondary, and tertiary groups. This update deprecates three existing color roles: `background`, `onBackground`, and `surfaceVariant`. The `ColorScheme` constructed by the updated `ColorScheme.fromSeed` method now generates different values compared to the previous version, adapting to the Material Design 3 guidelines.

Official migration guideVerified classificationFrameworkSource Details
BreakingHigh impact3.22.0 migration guide

Nullable PageView.controller

If a controller isn't provided in the constructor, the `controller` member is `null`. This makes `PageView` and its `controller` property consistent with other widgets.

Official migration guideVerified classificationFrameworkSource Details
BreakingHigh impact3.22.0 migration guide

Rename MemoryAllocations to FlutterMemoryAllocations

Disposables in pure Dart projects can't use `MemoryAllocations` in Flutter. So, to be leak-trackable they need a Dart-only class. `MemoryAllocations` in Flutter is renamed to make the name available to a non-Flutter, Dart project.

Official migration guideVerified classificationFrameworkSource Details

Removed Removed 2

RemovedHigh impact3.22.0

Deprecated API removed after v3.19

In accordance with Flutter's Deprecation Policy, deprecated APIs that reached end of life after the 3.19 stable release have been removed.

Official migration guideVerified classificationFrameworkSource Details
RemovedHigh impact3.22.0android migration guide

Dropping support for Android KitKat

Flutter's minimum supported Android version is now Lollipop (API 21). Beginning with Flutter's 3.22 stable release, Flutter will no longer work on devices running Android KitKat (API 19).

Official migration guideVerified classificationFrameworkSource Details

Bug fix Bug fix 29

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?