-
Notifications
You must be signed in to change notification settings - Fork 29.7k
Update engine instructions for monorepo #161184
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
Conversation
matanlurey
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM with one change requested.
| ### Compiling everything that matters on Linux | ||
|
|
||
| The following script will update all the builds that matter if you're developing on Linux and testing on Android and created the `.gclient` file in `~/dev/engine`: | ||
| The following script will update all the builds that matter if you're developing on Linux and testing on Android if your `.gclient` file is located at `~/dev/flutter/engine/.gclient`: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the script has to be in ~/dev/flutter/.gclient actually.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good catch, fixed!
As pointed out by @matanlurey in review.
engine/src/flutter/docs/contributing/Setting-up-the-Engine-development-environment.md
Outdated
Show resolved
Hide resolved
Just point to the instructions in the framework setup doc.
| 1. `git pull upstream master` to update the Flutter repo. | ||
|
|
||
| 2. `gclient sync` to update dependencies. | ||
| 2. `gclient sync -D` to update dependencies. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this is run in the "root" folder and not "engine/src", but then again doesn't gclient find the root for you?
| Run the following steps, from the `engine/src` directory: | ||
|
|
||
| 1. `git pull upstream main` in `src/flutter` to update the Flutter Engine repo. | ||
| 1. `git pull upstream master` to update the Flutter repo. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I know this is old documentation, but why do we have different git instructions than from above? Isn't it always going to be the same:
(assuming you are on origin/master)
- git fetch upstream
- git rebase upstream/main
- gclient sync -D
- et build
flutter/docs/contributing/Tree-hygiene.md
Lines 140 to 153 in 5a23a2a
| ## Using git | |
| Assuming your environment has been configured according to the instructions in | |
| [Setting up the Engine development environment](../engine/contributing/Setting-up-the-Engine-development-environment.md), | |
| [Setting up the Framework development environment](Setting-up-the-Framework-development-environment.md), or | |
| [Setting up the Packages development environment](../ecosystem/contributing/Setting-up-the-Packages-development-environment.md), | |
| follow these steps to start working on a patch: | |
| * `git fetch upstream` | |
| * `git checkout upstream/main -b name_of_your_branch` | |
| * `flutter update-packages` | |
| * Hack away. | |
| * `git commit -a -m "<your informative commit message>"` | |
| * `git push origin name_of_your_branch` |
|
i'm not going to block this because any improvement is for the best. I think we need oen unified "here's how you check out the code" and then one that's specific to "here's how you gclient sync to get deps and et build". |
Instead of repeating how to update the code in every section
|
@jtmcdole I've updated this to have a central "updating" section that all the other sections refer to, instead of repeating the steps each time. Good call. Maybe after the archiving of flutter/engine is finished we should revisit all of these docs overall. For now I hope this PR will help people that might otherwise struggle developing the engine in the monorepo. |
|
Thanks - I didn't mean for the comment to be blocking. LGTM |
Roll Flutter from 4b23b81 to 864d4f5 (50 revisions) flutter/flutter@4b23b81...864d4f5 2025-01-10 [email protected] Mark complex_layout_scroll_perf_macos__timeline_summary unflaky (flutter/flutter#160997) 2025-01-10 [email protected] Mark hello_world_macos__compile unflaky (flutter/flutter#160998) 2025-01-10 [email protected] Mark animated_complex_opacity_perf_macos__e2e_summary unflaky (flutter/flutter#160996) 2025-01-10 [email protected] Mark integration_ui_test_test_macos unflaky (flutter/flutter#160999) 2025-01-10 [email protected] Mark hot_mode_dev_cycle_macos_target__benchmark unflaky (flutter/flutter#161000) 2025-01-10 [email protected] Add a virtual-display (VD) platform view test, and refactor tests a bit. (flutter/flutter#161349) 2025-01-10 [email protected] Remove `CIRRUS_TASK_NAME` from what I can tell, is always omitted on `LUCI` (flutter/flutter#161391) 2025-01-10 [email protected] Replace the always omitted `CPU` environment variable with `numberOfProcessors`. (flutter/flutter#161392) 2025-01-10 [email protected] We no longer have a separate engine repo. (flutter/flutter#161400) 2025-01-10 [email protected] Update Style-guide-for-Flutter-repo.md (flutter/flutter#161344) 2025-01-09 [email protected] integration_test: Add gitignore of golden image (flutter/flutter#161404) 2025-01-09 [email protected] Fix link to engine docs in CONTRIBUTING.md (flutter/flutter#161401) 2025-01-09 [email protected] Roll Packages from 3fc6b7a to 6554751 (11 revisions) (flutter/flutter#161379) 2025-01-09 [email protected] Add `mouseCursor` parameter to `ReorderableListView` (flutter/flutter#160246) 2025-01-09 [email protected] Remove Cirrus CI from Flutter goldens. (flutter/flutter#161396) 2025-01-09 [email protected] remove`useMaterial3: true,` in from the template (flutter/flutter#160525) 2025-01-09 [email protected] Remove `accept_android_sdk_licenses.sh`, which appears unused. (flutter/flutter#161388) 2025-01-09 [email protected] Roll Dart to Version 3.7.0-312.0.dev (flutter/flutter#161394) 2025-01-09 [email protected] Marks Linux analyzer_benchmark to be flaky (flutter/flutter#161307) 2025-01-09 [email protected] [Impeller] fix scaling of trampoline import of GLES textures into Vulkan. (flutter/flutter#161331) 2025-01-09 [email protected] Support DDC library bundle format and remove support for DDC module format (flutter/flutter#161276) 2025-01-09 [email protected] Remove seemingly stale web Cirrus and "Web Installer" instructions (flutter/flutter#161389) 2025-01-09 [email protected] Proposal to deprecate `webGoldenComparator`. (flutter/flutter#161196) 2025-01-09 [email protected] `ImplicitlyAnimatedWidgetState` code cleanup (flutter/flutter#160567) 2025-01-09 [email protected] Exclude `*texture*` as matching for `a: text input` (flutter/flutter#161354) 2025-01-09 [email protected] [Impeller] add opt in flag for SurfaceControl testing. (flutter/flutter#161353) 2025-01-09 [email protected] Roll Dart to Version 3.7.0-307.0.dev (flutter/flutter#161278) 2025-01-09 [email protected] remove formatter from snippet tool (flutter/flutter#161347) 2025-01-09 [email protected] Refactor keyboard manager tests (flutter/flutter#160637) 2025-01-09 [email protected] [flutter_tools] ignore viewpost ime and samsung spam messages. (flutter/flutter#161199) 2025-01-09 [email protected] Revert "[SwiftPM] Add separate feature flag for the app migration (#158897)" (flutter/flutter#161342) 2025-01-09 [email protected] git ignore .ccls-cache (flutter/flutter#161340) 2025-01-08 98614782+auto-submit[bot]@users.noreply.github.com Reverts "[SwiftPM] Turn on by default (#161275)" (flutter/flutter#161339) 2025-01-08 [email protected] Update engine instructions for monorepo (flutter/flutter#161184) 2025-01-08 [email protected] [Impeller] re-enable Adreno 630 (flutter/flutter#161287) 2025-01-08 [email protected] [SwiftPM] Turn on by default (flutter/flutter#161275) 2025-01-08 [email protected] Make the encoding of a `YamlNode` to a `String` more explicit. (flutter/flutter#161270) 2025-01-08 [email protected] Normalize the translation column of the color matrix. (flutter/flutter#161109) 2025-01-08 [email protected] Rename `native_driver` to `android_{driver_extensions|engine_test}` (flutter/flutter#161263) 2025-01-08 [email protected] [Impeller] reland: fix porterduff shader and handle optimized out texture binding in GLES backend. (flutter/flutter#161326) 2025-01-08 [email protected] Updating AVD Dependency for Android 28 Emulator (flutter/flutter#160978) 2025-01-08 [email protected] Adds onHover and onLongPress to IconButton widget (flutter/flutter#160032) 2025-01-08 [email protected] Marks Linux linux_desktop_impeller to be unflaky (flutter/flutter#161302) 2025-01-08 98614782+auto-submit[bot]@users.noreply.github.com Reverts "[Impeller] porter duff workarounds for Adreno GPU. (#161273)" (flutter/flutter#161318) 2025-01-08 [email protected] Revert "fixed keyboardDismissBehavior on scroll without a drag" (flutter/flutter#161277) 2025-01-08 [email protected] Revert "use uuid from package:uuid instead of from package:usage" (flutter/flutter#161292) ...
I was struggling to get the engine to compile now that it's under the flutter/flutter monorepo, and I noticed that the wiki docs have not been updated since the monorepo migration completed. This PR attempts to update them to give a process that works with the new setup. I've gone ahead and updated all of the links in the "Engine repo" section of [the wiki](https://github.com/flutter/flutter/wiki) to point to the flutter/flutter copies of these docs since they were previously pointing to the flutter/engine copies. I tested these instructions by following them myself and successfully getting the engine changes in flutter#161103 to work with the framework changes in flutter#159013 on iOS compiling with `et`.
Roll Flutter from 4b23b81 to 864d4f5 (50 revisions) flutter/flutter@4b23b81...864d4f5 2025-01-10 [email protected] Mark complex_layout_scroll_perf_macos__timeline_summary unflaky (flutter/flutter#160997) 2025-01-10 [email protected] Mark hello_world_macos__compile unflaky (flutter/flutter#160998) 2025-01-10 [email protected] Mark animated_complex_opacity_perf_macos__e2e_summary unflaky (flutter/flutter#160996) 2025-01-10 [email protected] Mark integration_ui_test_test_macos unflaky (flutter/flutter#160999) 2025-01-10 [email protected] Mark hot_mode_dev_cycle_macos_target__benchmark unflaky (flutter/flutter#161000) 2025-01-10 [email protected] Add a virtual-display (VD) platform view test, and refactor tests a bit. (flutter/flutter#161349) 2025-01-10 [email protected] Remove `CIRRUS_TASK_NAME` from what I can tell, is always omitted on `LUCI` (flutter/flutter#161391) 2025-01-10 [email protected] Replace the always omitted `CPU` environment variable with `numberOfProcessors`. (flutter/flutter#161392) 2025-01-10 [email protected] We no longer have a separate engine repo. (flutter/flutter#161400) 2025-01-10 [email protected] Update Style-guide-for-Flutter-repo.md (flutter/flutter#161344) 2025-01-09 [email protected] integration_test: Add gitignore of golden image (flutter/flutter#161404) 2025-01-09 [email protected] Fix link to engine docs in CONTRIBUTING.md (flutter/flutter#161401) 2025-01-09 [email protected] Roll Packages from 3fc6b7a to 6554751 (11 revisions) (flutter/flutter#161379) 2025-01-09 [email protected] Add `mouseCursor` parameter to `ReorderableListView` (flutter/flutter#160246) 2025-01-09 [email protected] Remove Cirrus CI from Flutter goldens. (flutter/flutter#161396) 2025-01-09 [email protected] remove`useMaterial3: true,` in from the template (flutter/flutter#160525) 2025-01-09 [email protected] Remove `accept_android_sdk_licenses.sh`, which appears unused. (flutter/flutter#161388) 2025-01-09 [email protected] Roll Dart to Version 3.7.0-312.0.dev (flutter/flutter#161394) 2025-01-09 [email protected] Marks Linux analyzer_benchmark to be flaky (flutter/flutter#161307) 2025-01-09 [email protected] [Impeller] fix scaling of trampoline import of GLES textures into Vulkan. (flutter/flutter#161331) 2025-01-09 [email protected] Support DDC library bundle format and remove support for DDC module format (flutter/flutter#161276) 2025-01-09 [email protected] Remove seemingly stale web Cirrus and "Web Installer" instructions (flutter/flutter#161389) 2025-01-09 [email protected] Proposal to deprecate `webGoldenComparator`. (flutter/flutter#161196) 2025-01-09 [email protected] `ImplicitlyAnimatedWidgetState` code cleanup (flutter/flutter#160567) 2025-01-09 [email protected] Exclude `*texture*` as matching for `a: text input` (flutter/flutter#161354) 2025-01-09 [email protected] [Impeller] add opt in flag for SurfaceControl testing. (flutter/flutter#161353) 2025-01-09 [email protected] Roll Dart to Version 3.7.0-307.0.dev (flutter/flutter#161278) 2025-01-09 [email protected] remove formatter from snippet tool (flutter/flutter#161347) 2025-01-09 [email protected] Refactor keyboard manager tests (flutter/flutter#160637) 2025-01-09 [email protected] [flutter_tools] ignore viewpost ime and samsung spam messages. (flutter/flutter#161199) 2025-01-09 [email protected] Revert "[SwiftPM] Add separate feature flag for the app migration (#158897)" (flutter/flutter#161342) 2025-01-09 [email protected] git ignore .ccls-cache (flutter/flutter#161340) 2025-01-08 98614782+auto-submit[bot]@users.noreply.github.com Reverts "[SwiftPM] Turn on by default (#161275)" (flutter/flutter#161339) 2025-01-08 [email protected] Update engine instructions for monorepo (flutter/flutter#161184) 2025-01-08 [email protected] [Impeller] re-enable Adreno 630 (flutter/flutter#161287) 2025-01-08 [email protected] [SwiftPM] Turn on by default (flutter/flutter#161275) 2025-01-08 [email protected] Make the encoding of a `YamlNode` to a `String` more explicit. (flutter/flutter#161270) 2025-01-08 [email protected] Normalize the translation column of the color matrix. (flutter/flutter#161109) 2025-01-08 [email protected] Rename `native_driver` to `android_{driver_extensions|engine_test}` (flutter/flutter#161263) 2025-01-08 [email protected] [Impeller] reland: fix porterduff shader and handle optimized out texture binding in GLES backend. (flutter/flutter#161326) 2025-01-08 [email protected] Updating AVD Dependency for Android 28 Emulator (flutter/flutter#160978) 2025-01-08 [email protected] Adds onHover and onLongPress to IconButton widget (flutter/flutter#160032) 2025-01-08 [email protected] Marks Linux linux_desktop_impeller to be unflaky (flutter/flutter#161302) 2025-01-08 98614782+auto-submit[bot]@users.noreply.github.com Reverts "[Impeller] porter duff workarounds for Adreno GPU. (#161273)" (flutter/flutter#161318) 2025-01-08 [email protected] Revert "fixed keyboardDismissBehavior on scroll without a drag" (flutter/flutter#161277) 2025-01-08 [email protected] Revert "use uuid from package:uuid instead of from package:usage" (flutter/flutter#161292) ...
Roll Flutter from 4b23b81 to 864d4f5 (50 revisions) flutter/flutter@4b23b81...864d4f5 2025-01-10 [email protected] Mark complex_layout_scroll_perf_macos__timeline_summary unflaky (flutter/flutter#160997) 2025-01-10 [email protected] Mark hello_world_macos__compile unflaky (flutter/flutter#160998) 2025-01-10 [email protected] Mark animated_complex_opacity_perf_macos__e2e_summary unflaky (flutter/flutter#160996) 2025-01-10 [email protected] Mark integration_ui_test_test_macos unflaky (flutter/flutter#160999) 2025-01-10 [email protected] Mark hot_mode_dev_cycle_macos_target__benchmark unflaky (flutter/flutter#161000) 2025-01-10 [email protected] Add a virtual-display (VD) platform view test, and refactor tests a bit. (flutter/flutter#161349) 2025-01-10 [email protected] Remove `CIRRUS_TASK_NAME` from what I can tell, is always omitted on `LUCI` (flutter/flutter#161391) 2025-01-10 [email protected] Replace the always omitted `CPU` environment variable with `numberOfProcessors`. (flutter/flutter#161392) 2025-01-10 [email protected] We no longer have a separate engine repo. (flutter/flutter#161400) 2025-01-10 [email protected] Update Style-guide-for-Flutter-repo.md (flutter/flutter#161344) 2025-01-09 [email protected] integration_test: Add gitignore of golden image (flutter/flutter#161404) 2025-01-09 [email protected] Fix link to engine docs in CONTRIBUTING.md (flutter/flutter#161401) 2025-01-09 [email protected] Roll Packages from 3fc6b7a to 6554751 (11 revisions) (flutter/flutter#161379) 2025-01-09 [email protected] Add `mouseCursor` parameter to `ReorderableListView` (flutter/flutter#160246) 2025-01-09 [email protected] Remove Cirrus CI from Flutter goldens. (flutter/flutter#161396) 2025-01-09 [email protected] remove`useMaterial3: true,` in from the template (flutter/flutter#160525) 2025-01-09 [email protected] Remove `accept_android_sdk_licenses.sh`, which appears unused. (flutter/flutter#161388) 2025-01-09 [email protected] Roll Dart to Version 3.7.0-312.0.dev (flutter/flutter#161394) 2025-01-09 [email protected] Marks Linux analyzer_benchmark to be flaky (flutter/flutter#161307) 2025-01-09 [email protected] [Impeller] fix scaling of trampoline import of GLES textures into Vulkan. (flutter/flutter#161331) 2025-01-09 [email protected] Support DDC library bundle format and remove support for DDC module format (flutter/flutter#161276) 2025-01-09 [email protected] Remove seemingly stale web Cirrus and "Web Installer" instructions (flutter/flutter#161389) 2025-01-09 [email protected] Proposal to deprecate `webGoldenComparator`. (flutter/flutter#161196) 2025-01-09 [email protected] `ImplicitlyAnimatedWidgetState` code cleanup (flutter/flutter#160567) 2025-01-09 [email protected] Exclude `*texture*` as matching for `a: text input` (flutter/flutter#161354) 2025-01-09 [email protected] [Impeller] add opt in flag for SurfaceControl testing. (flutter/flutter#161353) 2025-01-09 [email protected] Roll Dart to Version 3.7.0-307.0.dev (flutter/flutter#161278) 2025-01-09 [email protected] remove formatter from snippet tool (flutter/flutter#161347) 2025-01-09 [email protected] Refactor keyboard manager tests (flutter/flutter#160637) 2025-01-09 [email protected] [flutter_tools] ignore viewpost ime and samsung spam messages. (flutter/flutter#161199) 2025-01-09 [email protected] Revert "[SwiftPM] Add separate feature flag for the app migration (#158897)" (flutter/flutter#161342) 2025-01-09 [email protected] git ignore .ccls-cache (flutter/flutter#161340) 2025-01-08 98614782+auto-submit[bot]@users.noreply.github.com Reverts "[SwiftPM] Turn on by default (#161275)" (flutter/flutter#161339) 2025-01-08 [email protected] Update engine instructions for monorepo (flutter/flutter#161184) 2025-01-08 [email protected] [Impeller] re-enable Adreno 630 (flutter/flutter#161287) 2025-01-08 [email protected] [SwiftPM] Turn on by default (flutter/flutter#161275) 2025-01-08 [email protected] Make the encoding of a `YamlNode` to a `String` more explicit. (flutter/flutter#161270) 2025-01-08 [email protected] Normalize the translation column of the color matrix. (flutter/flutter#161109) 2025-01-08 [email protected] Rename `native_driver` to `android_{driver_extensions|engine_test}` (flutter/flutter#161263) 2025-01-08 [email protected] [Impeller] reland: fix porterduff shader and handle optimized out texture binding in GLES backend. (flutter/flutter#161326) 2025-01-08 [email protected] Updating AVD Dependency for Android 28 Emulator (flutter/flutter#160978) 2025-01-08 [email protected] Adds onHover and onLongPress to IconButton widget (flutter/flutter#160032) 2025-01-08 [email protected] Marks Linux linux_desktop_impeller to be unflaky (flutter/flutter#161302) 2025-01-08 98614782+auto-submit[bot]@users.noreply.github.com Reverts "[Impeller] porter duff workarounds for Adreno GPU. (#161273)" (flutter/flutter#161318) 2025-01-08 [email protected] Revert "fixed keyboardDismissBehavior on scroll without a drag" (flutter/flutter#161277) 2025-01-08 [email protected] Revert "use uuid from package:uuid instead of from package:usage" (flutter/flutter#161292) ...
I was struggling to get the engine to compile now that it's under the flutter/flutter monorepo, and I noticed that the wiki docs have not been updated since the monorepo migration completed. This PR attempts to update them to give a process that works with the new setup.
I've gone ahead and updated all of the links in the "Engine repo" section of the wiki to point to the flutter/flutter copies of these docs since they were previously pointing to the flutter/engine copies.
I tested these instructions by following them myself and successfully getting the engine changes in #161103 to work with the framework changes in #159013 on iOS compiling with
et.