Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Started using FlutterEngineGroups by default on Android #37822

Merged
merged 3 commits into from Dec 15, 2022

Conversation

gaaclarke
Copy link
Member

@gaaclarke gaaclarke commented Nov 21, 2022

Also started made the group accessible to plugins. There are a few important plugins that spawn new engines that run in the background, this will allow them to share the isolate group across the whole app. I avoided deprecating FlutterEngine constructors until we get wider acceptance from the team.

issue: flutter/flutter#115507

Pre-launch Checklist

  • I read the Contributor Guide and followed the process outlined there for submitting PRs.
  • I read the Tree Hygiene wiki page, which explains my responsibilities.
  • I read and followed the Flutter Style Guide and the C++, Objective-C, Java style guides.
  • I listed at least one issue that this PR fixes in the description above.
  • I added new tests to check the change I am making or feature I am adding, or Hixie said the PR is test-exempt. See testing the engine for instructions on writing and running engine tests.
  • I updated/added relevant documentation (doc comments with ///).
  • I signed the CLA.
  • All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

@gaaclarke gaaclarke force-pushed the android-flutter-engine-group-always branch 5 times, most recently from 5eb2b04 to 30aa146 Compare November 22, 2022 19:21
@gaaclarke
Copy link
Member Author

cc @xster since this may have ramifications for google usage of flutter
cc @stuartmorgan since this changes the plugin interface
cc @reidbaker since it is a big shift for Android
cc @dnfield since he was involved in the discussion to make this happen

@gaaclarke gaaclarke requested review from reidbaker and removed request for jason-simmons November 22, 2022 19:25
@gaaclarke
Copy link
Member Author

Switching the reviewer to reid since jason isn't available. Feel free to delegate to someone else.

@gaaclarke gaaclarke marked this pull request as ready for review November 22, 2022 22:19
@chinmaygarde
Copy link
Member

From Triage: @jason-simmons is unable to review this. Redirecting to @reidbaker .

@xster
Copy link
Member

xster commented Dec 4, 2022

+1. I think we should do this by default. @jiahaog, this affects a bit the custom engine holders we have. I think nothing materially right out the gate, but we should also hold the engine group as well as the engine so users can easily spawn new engines from the same group.

Copy link
Contributor

@stuartmorgan stuartmorgan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The new plugin API LGTM.

@gaaclarke gaaclarke force-pushed the android-flutter-engine-group-always branch from 30aa146 to 36a8dc3 Compare December 8, 2022 22:53
@reidbaker reidbaker removed their request for review December 13, 2022 15:53
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Dec 16, 2022
jason-simmons added a commit to jason-simmons/flutter_engine that referenced this pull request Dec 16, 2022
…ter#37822)"

This reverts commit 47a358c.

This commit caused a regression in the entrypoint_dart_registrant test.
jason-simmons added a commit that referenced this pull request Dec 16, 2022
…)" (#38351)

This reverts commit 47a358c.

This commit caused a regression in the entrypoint_dart_registrant test.
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Dec 16, 2022
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Dec 16, 2022
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Dec 16, 2022
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Dec 16, 2022
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Dec 16, 2022
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Dec 16, 2022
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Dec 16, 2022
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Dec 16, 2022
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Dec 16, 2022
…117242)

* e28b26e1d [linux] Allow overriding asset, ICU data path (flutter/engine#38296)

* 35bdb8bfc Roll Skia from 9f728d78f10d to f549128104ba (1 revision) (flutter/engine#38319)

* 97e246cb5 Roll Dart SDK from 358d0d1aa3e7 to 1dd5b1bf1099 (7 revisions) (flutter/engine#38320)

* d9580a5e7 Migrate iOS text input plugin to use ARC (flutter/engine#38179)

* c9e9fa5a9 Update web_sdk -> package test dependency to get updated package matcher (flutter/engine#38323)

* a7ec07f13 [fuchsia] Manually roll Fuchsia Linux SDK. (flutter/engine#38324)

* 61e95bacb Remove doc reference to the compute method (flutter/engine#38246)

* 353d6949e make sure CanvasRecorder updates clip bounds methods (flutter/engine#38325)

* 47a358c5e Started using FlutterEngineGroups by default on Android  (flutter/engine#37822)

* 7d8e10652 Bump github/codeql-action from 2.1.35 to 2.1.36 (flutter/engine#38210)

* 8915b81d4 Update buildroot to b2ab6e1908b3eb2. (flutter/engine#38329)

* 4fe620643 Revert "Roll Dart SDK from 358d0d1aa3e7 to 1dd5b1bf1099 (7 revisions) (#38320)" (flutter/engine#38331)

* 2ff490c1e Roll Skia from f549128104ba to 5e69caecd166 (11 revisions) (flutter/engine#38333)

* 22251857f Add missing include to FlutterThreadSynchronizer (flutter/engine#38337)

* 467cfd7ef Roll Fuchsia Mac SDK from VEOIaacOA75U7PYyz... to KtItDj-MERuua77aS... (flutter/engine#38339)

* 010f4ee7a Roll Fuchsia Linux SDK from zwfwHRSLdmV61hYqe... to urDNtEiHFAcBBhYe0... (flutter/engine#38340)

* 773b43571 Sped up reading with FlutterStandardCodec. (flutter/engine#38327)

* 70439f606 Roll Skia from 5e69caecd166 to 62f22c9c7d67 (3 revisions) (flutter/engine#38341)

* bc1647f0d Roll the test package used by Web in preparation for a Dart 3 SDK roll (flutter/engine#38342)

* cac228aff Roll Dart SDK from 358d0d1aa3e7 to 7b4d4ec3cad1 (14 revisions) (flutter/engine#38344)

* 13ae6eb75 Revert "Started using FlutterEngineGroups by default on Android  (#37822)" (flutter/engine#38351)

* ed8063861 Add an explicit constraint on the matcher package version to ensure Dart 3 compatibility (flutter/engine#38352)

* dcafebf44 Roll Skia from 62f22c9c7d67 to 1b1f53d77ced (1 revision) (flutter/engine#38343)

* 6f6158580 Roll Fuchsia Mac SDK from KtItDj-MERuua77aS... to bn5VF1-xDf-wKjIw8... (flutter/engine#38348)

* 0c00bc0a9 Remove 30fps cap from playgrounds (flutter/engine#38347)

* 38340bb57 [Impeller] Fix SceneC crash for nodes with children (flutter/engine#38346)

* 3a6b3f986 Roll Fuchsia Linux SDK from urDNtEiHFAcBBhYe0... to H6B0UgW07fc1nBtnc... (flutter/engine#38357)

* 81b453535 Roll Skia from 1b1f53d77ced to 7b0a9d9a3008 (8 revisions) (flutter/engine#38358)

* d91e20879 Port touch-based tests from embedder integration test (flutter/engine#38234)
gaaclarke added a commit to gaaclarke/engine that referenced this pull request Dec 17, 2022
gaaclarke added a commit that referenced this pull request Dec 19, 2022
* Revert "Revert "Started using FlutterEngineGroups by default on Android  (#37822)" (#38351)"

This reverts commit 13ae6eb.

* fixed the entrypoint test

* updated old test

* coldpalelight's suggestion

* added entrypoint args
loic-sharma pushed a commit to loic-sharma/flutter-engine that referenced this pull request Jan 3, 2023
* Started using FlutterEngineGroups by default on Android and making
them accessible to plugins.

* added docstring

* format
loic-sharma pushed a commit to loic-sharma/flutter-engine that referenced this pull request Jan 3, 2023
…ter#37822)" (flutter#38351)

This reverts commit 47a358c.

This commit caused a regression in the entrypoint_dart_registrant test.
loic-sharma pushed a commit to loic-sharma/flutter-engine that referenced this pull request Jan 3, 2023
…ter#38367)

* Revert "Revert "Started using FlutterEngineGroups by default on Android  (flutter#37822)" (flutter#38351)"

This reverts commit 13ae6eb.

* fixed the entrypoint test

* updated old test

* coldpalelight's suggestion

* added entrypoint args
gspencergoog pushed a commit to gspencergoog/flutter that referenced this pull request Jan 19, 2023
…lutter#117242)

* e28b26e1d [linux] Allow overriding asset, ICU data path (flutter/engine#38296)

* 35bdb8bfc Roll Skia from 9f728d78f10d to f549128104ba (1 revision) (flutter/engine#38319)

* 97e246cb5 Roll Dart SDK from 358d0d1aa3e7 to 1dd5b1bf1099 (7 revisions) (flutter/engine#38320)

* d9580a5e7 Migrate iOS text input plugin to use ARC (flutter/engine#38179)

* c9e9fa5a9 Update web_sdk -> package test dependency to get updated package matcher (flutter/engine#38323)

* a7ec07f13 [fuchsia] Manually roll Fuchsia Linux SDK. (flutter/engine#38324)

* 61e95bacb Remove doc reference to the compute method (flutter/engine#38246)

* 353d6949e make sure CanvasRecorder updates clip bounds methods (flutter/engine#38325)

* 47a358c5e Started using FlutterEngineGroups by default on Android  (flutter/engine#37822)

* 7d8e10652 Bump github/codeql-action from 2.1.35 to 2.1.36 (flutter/engine#38210)

* 8915b81d4 Update buildroot to b2ab6e1908b3eb2. (flutter/engine#38329)

* 4fe620643 Revert "Roll Dart SDK from 358d0d1aa3e7 to 1dd5b1bf1099 (7 revisions) (flutter#38320)" (flutter/engine#38331)

* 2ff490c1e Roll Skia from f549128104ba to 5e69caecd166 (11 revisions) (flutter/engine#38333)

* 22251857f Add missing include to FlutterThreadSynchronizer (flutter/engine#38337)

* 467cfd7ef Roll Fuchsia Mac SDK from VEOIaacOA75U7PYyz... to KtItDj-MERuua77aS... (flutter/engine#38339)

* 010f4ee7a Roll Fuchsia Linux SDK from zwfwHRSLdmV61hYqe... to urDNtEiHFAcBBhYe0... (flutter/engine#38340)

* 773b43571 Sped up reading with FlutterStandardCodec. (flutter/engine#38327)

* 70439f606 Roll Skia from 5e69caecd166 to 62f22c9c7d67 (3 revisions) (flutter/engine#38341)

* bc1647f0d Roll the test package used by Web in preparation for a Dart 3 SDK roll (flutter/engine#38342)

* cac228aff Roll Dart SDK from 358d0d1aa3e7 to 7b4d4ec3cad1 (14 revisions) (flutter/engine#38344)

* 13ae6eb75 Revert "Started using FlutterEngineGroups by default on Android  (flutter#37822)" (flutter/engine#38351)

* ed8063861 Add an explicit constraint on the matcher package version to ensure Dart 3 compatibility (flutter/engine#38352)

* dcafebf44 Roll Skia from 62f22c9c7d67 to 1b1f53d77ced (1 revision) (flutter/engine#38343)

* 6f6158580 Roll Fuchsia Mac SDK from KtItDj-MERuua77aS... to bn5VF1-xDf-wKjIw8... (flutter/engine#38348)

* 0c00bc0a9 Remove 30fps cap from playgrounds (flutter/engine#38347)

* 38340bb57 [Impeller] Fix SceneC crash for nodes with children (flutter/engine#38346)

* 3a6b3f986 Roll Fuchsia Linux SDK from urDNtEiHFAcBBhYe0... to H6B0UgW07fc1nBtnc... (flutter/engine#38357)

* 81b453535 Roll Skia from 1b1f53d77ced to 7b0a9d9a3008 (8 revisions) (flutter/engine#38358)

* d91e20879 Port touch-based tests from embedder integration test (flutter/engine#38234)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants