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.
3.47.1 → 3.47.7Aug 19, 2026 → Oct 8, 2026 · 6 releases in range
What changed?
31 indexed changes across 6 versions: 31 bug fix.
Will this affect my application?
No high-impact items were indexed for this range. Review deprecations and platform-specific items for the platforms you ship to.
What action should I take?
Upgrade, run `flutter analyze` and your tests. No migration guides apply to this range.
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.
- Release-note items are classified from PR titles (heuristic); breaking-change guides are classified from the official index.
A source diff proves code changed; it does not by itself show that a public API is breaking. Use it to corroborate the announcements above.
Commits (48)
- e4cfadc[stable] [flutter_tools] Handle all DartDevelopmentServiceExceptions gracefully in resident web runner (#191323)
- aecc9c8[CP-stable][Linux] Fix a potential GList leak in FlTouchManager (#191396)
- 8184829[CP-stable]Always update swift package dependencies (#191514)
- d989cca[CP-stable]Remove Xcode environment when building swift tools in Xcode pre-action (#191582)
- a3eae14[CP-stable]Makes sure impeller context's are plumbed through to LayerTree::Flatten. (#191222)
- d2ab418[CP-stable][linux] Read heading text through the AtkText interface (#191397)
- f4670be[stable] [flutter_tools] Gracefully handle ping timeouts for custom devices (#191324)
- e57eab8[CP-stable]Rolls libpng to 1.6.58 (#191452)
- e03b8f9[stable] [flutter_tools] Fix crash when migrating flow-style exclude lists in analysis_options.yaml (#191598)
- aff2b56[stable] Only exclude platform directories that actually exist in analysis_options.yaml (#191530)
- 2c72122[stable] [tool] Fix Windows hot reload mtime truncation issue (#191599)
- 78c8547[stable] fix: forward --build-name and --build-number to desktop version.json (#191602)
- b3bc058[stable] [flutter_tools] Handle HttpException during VM service connection (#191607)
- bb693d7[stable] [flutter_tools] Fix crash in symbolize command on stream error (#191605)
- c18ad6dUpdate CHANGELOG.md for Flutter 3.47.2 (#191814)
- a804b26[flutter-3.47-candidate.0] Update Flutter DEPS to Dart 60a57cd42d64dc03e9f07aa60a2e250755c1ef28 (#191811)
- d3b14c8[flutter-3.47-candidate.0] Sync engine.version to a804b261645ef8c13eb3d5c44a5c2fb0340c5539 (#191840)
- ad4b29a[CP-stable]Denylists b-series powervr from vulkan (#191903)
- 115c53d[stable] [flutter_tools] Handle missing Xcode gracefully in getInfo and buildMacOS (#191902)
- 383b332[CP-stable]Fix Android license detection for cmdline-tools 23.0+ (#192133)
- 75a5dd9[CP-stable]Fix Actions.handler to forward the intent type to maybeFind (#192203)
- b29eb3f[flutter-3.47-candidate.0] Sync engine.version to ad4b29ad6eb09fbfc827fa7defe115aedbe1e347 (#192211)
- 06a2e2a[flutter-3.47-candidate.0] Update Flutter DEPS to Dart 1d1a730ef918d602aedafc939a4cf5940e7589ab (#192210)
- 858dc66Changelog entries from all CPs (#192214)
- e8113bf[flutter-3.47-candidate.0] Sync engine.version to 06a2e2a110089dff50fe635cffd2a61e1b24fbcd (#192312)
- e71ed18[stable] [flutter_tools] Gracefully handle Windows Application Control and security policy execution blocks (#192254)
- 4c685f8[stable] [flutter_tools] Report preview reload timing analytics in LspPreviewDetector (#192256)
- 7d70527[CP-stable] Collect analytics about SwiftPM errors and warnings (#191746) (#192303)
- 015aafa[CP-stable][native assets] Bump minimum iOS version from 13 to 15 (#192506)
- c41a033[CP-stable] Prepare and warn when missing iOS Device Support Symbols (#192301)
- 5743177[CP-stable]fix(tool): remove redundant --enable-experiment=record-use flag (#192318)
- 9584c67[CP-stable][flutter_tools] Safely handle non-JSON messages in test stream parsers (#192419)
- 38b01f4Update changelog for 3.47.4 (#192647)
- d3c78d8[CP-stable]On iOS 27+ devices, manually process lldb stops (#192810)
- 64d4f62[stable] [Widget Preview] Isolate PageStorage scope in widget preview group expansion tile (#192255)
- 0a12baf[stable] [flutter_tools] Roll package:dds to 5.4.0 (#192295)
- af7e796[flutter-3.47-candidate.0] Update Flutter DEPS to Dart b530c21f7de367b94fb04787bfed9d8e989d75e8 (#192875)
- cddf29d[flutter-3.47-candidate.0] Sync engine.version to af7e796e161ae0bb1ff0758c71a7105418bd9ded (#192894)
- 6a19ccaUpdate changelog for 3.47.5 (#192925)
- 905ca64Update CHANGELOG with missing Flutter 3.44.8 and 3.44.9 (#193120)
- c16aa05[CP-stable][win32] Remove the predicate from TimerThread condition variable (#193238)
- c05f452Add changelog entries for 3.47.6. (#193537)
- 692136c[flutter-3.47-candidate.0] Update Flutter DEPS to Dart 04bcd1036cdc799ac6564988f159ee454d42c822 (#193536)
- a9f5569[CP-stable]Move iOS compile benchmarks to Mac_benchmark and pin Mac_benchmark to M1 (#193581)
- 5fc3468[flutter-3.47-candidate.0] Sync engine.version to 692136cb6582dbfc5af3fb33c2515a069f2f66d0 (#193584)
- deb2874[stable] [iOS] Preserve semantics parents after reparenting (#189686) + Fix OverlayPortal semantics bounds corruption (#192139) (#193420)
- 632f36eUpdate changelog for the single CP for this stable hotfix release. (#193959)
- abaf9c5[flutter-3.47-candidate.0] Sync engine.version to deb287481e3ce9468f3434937ced4240a70539ca (#193957)
Changes by category
31 shownBug fix Bug fix 31
When debugging on physical iOS 27 devices, app occasionally crashes.
When re-expanding a preview group in the Widget Previewer, previews crash due to a type error in scroll restoration.
When Dart Development Service encounters a startup failure, flutter_tools crashes with an unhandled FormatException.
When Windows Smart App Control or security policies block binary execution on Windows, gracefully handle the error with an actionable...
When debugging with Xcode 27, the app may launch to a white screen and hang for multiple minutes.
When remote test processes emit plain-text error output on all platforms, prevent flutter_tools from crashing with an unhandled...
When building for macOS or iOS on machines with missing or incomplete Xcode installations, flutter_tools displays an actionable error...
When WebSocket upgrade fails during DDS startup on web, handle the `DartDevelopmentServiceException` gracefully instead of crashing.
When building an existing native iOS app that's integrated with Flutter using SwiftPM on Xcode 27, it may fail to build Flutter's Swift...
When using external textures on Windows, a crash could occur when the engine paints them.
The Flutter tool crashes if a configured custom device ping times out.
Updates `libpng` to fix security vulnerability.
When `analysis_options.yaml` contains flow-style `exclude:` sequences, `AnalysisOptionsMigration` converts the node to block style...
When an OverlayPortal is displayed on iOS, accessibility frames are shrunk by the device pixel ratio and anchored to the top-left, so...
When using VoiceOver on iOS with a ReorderableListView, Semantics focus is incorrectly shifted to the top left of the screen.
Fixes missing preview reload timing analytics in LspPreviewDetector across all platforms.
When building iOS and macOS app, SwiftPM migration warnings and errors are not tracked in analytics.
On iOS, apps bundling native assets fail App Store submission when native libraries are compiled with deployment targets above iOS 13.
When running WebAssembly dry-run builds on Web, remove redundant experiment flag warning that dropped telemetry error findings.
When calling Actions.handler on all platforms, null was always returned.
When using Impeller on Android devices with B-Series PowerVR GPUs, visual oddities and performance drops can be experienced.
When using Android SDK Command-line Tools 23.0+ for Android, flutter doctor incorrectly reports "Android license status unknown".
Fix memory leak caused by processing touch events on Linux.
iOS or macOS builds may fail when Swift Package Manager is enabled.
On Linux, fix header elements not being announced by screen reader.
Only exclude platform directories that actually exist from analysis, so web/** sources in Dart web packages are no longer silently dropped.
On Windows, truncate `lastCompiled` timestamp to whole seconds in `ProjectFileInvalidator` so rapid consecutive file modifications...
On desktop platforms, forward `--build-name` and `--build-number` flags to the desktop build pipeline so generated `version.json`...
Prevent `StateError: Bad state: Future already completed in Symbolizer` during stack symbolization.
Handle `HttpException` during VM service connection retries and ensure typed exceptions are passed to error completers.
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.