diff --git a/src/content/release/breaking-changes/index.md b/src/content/release/breaking-changes/index.md index 5dd7e348eab..cb306cf5f02 100644 --- a/src/content/release/breaking-changes/index.md +++ b/src/content/release/breaking-changes/index.md @@ -36,16 +36,18 @@ They're sorted by release and listed in alphabetical order: ### Not yet released to stable -* [`FontWeight` also controls the weight attribute of variable fonts][] +* [Merged threads on Linux][] +* [Stop generating `AssetManifest.json`][] * [UISceneDelegate adoption][] * [`$FLUTTER_ROOT/version` replaced by `$FLUTTER_ROOT/bin/cache/flutter.version.json`][] -* [Stop generating `AssetManifest.json`][] +* [`FontWeight` also controls the weight attribute of variable fonts][] * [Deprecate `TextField.canRequestFocus`][] -[`FontWeight` also controls the weight attribute of variable fonts]: /release/breaking-changes/font-weight-variation -[UISceneDelegate adoption]: /release/breaking-changes/uiscenedelegate +[Merged threads on Linux]: /release/breaking-changes/linux-merged-threads [Stop generating `AssetManifest.json`]: /release/breaking-changes/asset-manifest-dot-json +[UISceneDelegate adoption]: /release/breaking-changes/uiscenedelegate [`$FLUTTER_ROOT/version` replaced by `$FLUTTER_ROOT/bin/cache/flutter.version.json`]: /release/breaking-changes/flutter-root-version-file +[`FontWeight` also controls the weight attribute of variable fonts]: /release/breaking-changes/font-weight-variation [Deprecate `TextField.canRequestFocus`]: /release/breaking-changes/can-request-focus diff --git a/src/content/release/breaking-changes/linux-merged-threads.md b/src/content/release/breaking-changes/linux-merged-threads.md new file mode 100644 index 00000000000..d3fa8956bfc --- /dev/null +++ b/src/content/release/breaking-changes/linux-merged-threads.md @@ -0,0 +1,49 @@ +--- +title: Merged threads on Linux +description: >- + Learn about the threading changes on Linux in Flutter 3.39. +--- + +## Summary + +Flutter 3.39 merges the UI and platform threads by default on Linux. + +## Context + +Originally, Flutter had separate threads to produce UI frames and +to interact with the native platform. + +The split-thread design prevented Flutter apps and plugins from using Dart FFI +to interoperate with native APIs that must be called on the platform thread. + +## Description of change + +Flutter version 3.39 merges the UI and platform threads by default on Linux. + +This mirrors all the other platforms, whose threads were merged by default in +Flutter 3.29 (iOS and Android) and 3.35 (macOS and Windows). + +## Migration guide + +Merged threads shouldn't affect your app. + +If you suspect merged threads have caused regressions to your app, +please reach out on [Issue 150525][]. + +## Timeline + +Landed in version: 3.39.0-0.1.pre
+In stable release: Not yet + +## References + +Relevant issue: + +* [Issue 150525][] + +Relevant PRs: + +* [PR 176759][] + +[Issue 150525]: {{site.repo.flutter}}/issues/150525 +[PR 176759]: {{site.repo.flutter}}/pull/176759