Skip to content

Revert: Goma is dead, long live RBE! - #196001

Merged
auto-submit[bot] merged 1 commit into
flutter:masterfrom
flutteractionsbot:revert-195798-1793827443
Nov 5, 2026
Merged

auto-submit[bot] merged 1 commit into
flutter:masterfrom
flutteractionsbot:revert-195798-1793827443

Conversation

@flutteractionsbot

Copy link
Copy Markdown
Contributor

@flutter-dashboard

Copy link
Copy Markdown

It looks like this pull request may not have tests. Please make sure to add tests or get an explicit test exemption before merging.

If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix?

Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing. If both you and the PR author believe this PR qualifies for a test exemption, escalate to the tech lead for the changed area to review and apply the test-exempt label. All reviewers should feel empowered to ask for tests before escalating.

@github-actions github-actions Bot added the engine flutter/engine related. See also e: labels. label Nov 4, 2026

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Code Review

This pull request adds --goma and --no-goma command-line flags to the GN build tool and updates various CI builder configuration files to include the --no-goma argument. Feedback on these changes includes addressing a bug in the GN argument parser where the default value for the goma destination unintentionally resolves to True instead of None because --no-goma lacks an explicit default. Additionally, minor formatting cleanup is recommended to remove unnecessary blank lines in mac_host_engine.json.

Comment on lines +1056 to +1057
parser.add_argument('--goma', default=None, action='store_true')
parser.add_argument('--no-goma', dest='goma', action='store_false')

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

high

In argparse, when multiple arguments share the same destination (dest='goma'), the default value of the last defined argument will overwrite any previously specified default. Since --no-goma is defined second with action='store_false' and no explicit default, its default value of True will overwrite the default=None specified on --goma. This means args.goma will default to True when neither flag is passed, which may unintentionally enable Goma by default and break builds for environments without Goma.

To preserve the intended None default (allowing for auto-detection or conditional logic), we should explicitly set default=None on the --no-goma argument as well.

Suggested change
parser.add_argument('--goma', default=None, action='store_true')
parser.add_argument('--no-goma', dest='goma', action='store_false')
parser.add_argument('--goma', default=None, action='store_true')
parser.add_argument('--no-goma', dest='goma', default=None, action='store_false')

Comment on lines 104 to 106
"--xcode-symlinks"

],

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

medium

Remove the unnecessary blank line inside the JSON array to maintain clean and consistent formatting.

                "--xcode-symlinks"
            ],

Comment on lines 159 to 161
"--xcode-symlinks"

],

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

medium

Remove the unnecessary blank line inside the JSON array to maintain clean and consistent formatting.

                "--xcode-symlinks"
            ],

@jtmcdole jtmcdole added the emergency Jump the queue; land PR in front of all others; only use for emergencies label Nov 4, 2026
@flutter-dashboard

Copy link
Copy Markdown

Detected the emergency label.

If you add the autosubmit label, the bot will wait until all presubmits pass but ignore the tree status, allowing fixes for tree breakages while still validating that they don't break any existing presubmits.

The "Merge" button is also unlocked. To bypass presubmits as well as the tree status, press the GitHub "Add to Merge Queue".

@Renzo-Olivares Renzo-Olivares added the autosubmit Merge PR when tree becomes green via auto submit App label Nov 4, 2026
@jtmcdole

jtmcdole commented Nov 4, 2026

Copy link
Copy Markdown
Member

re-running Mac mac_unopt - not sure why this is failing:

Running command "/Volumes/Work/s/w/ir/cache/builder/engine/src/out/ci/host_debug_unopt_arm64/flutter_tester --force-multithreading --disable-vm-service --no-enable-impeller --use-test-fonts --icu-data-file-path=/Volumes/Work/s/w/ir/cache/builder/engine/src/out/ci/host_debug_unopt_arm64/icudtl.dat --flutter-assets-dir=/Volumes/Work/s/w/ir/cache/builder/engine/src/out/ci/host_debug_unopt_arm64/gen/flutter/lib/ui/assets --disable-asset-fonts /Volumes/Work/s/w/ir/cache/builder/engine/src/out/ci/host_debug_unopt_arm64/gen/fail_test.dart.dill" in "/Volumes/Work/s/w/ir/cache/builder/engine/src"
+0 -1: test smoke test -- this test SHOULD FAIL [E]

  Expected: true
    Actual: <false>


  package:matcher/src/expect/expect.dart 195:31             fail
  package:matcher/src/expect/expect.dart 189:3              _expect
  package:matcher/src/expect/expect.dart 68:11              expect.<fn>
  package:matcher/src/async_matcher_restriction.dart 34:65  allowAsyncMatchers
  package:matcher/src/expect/expect.dart 67:3               expect
  flutter/testing/smoke_test_failure/fail_test.dart 9:5     main.<fn>
  package:test_api/src/backend/declarer.dart 253:25         Declarer.test.<fn>.<fn>
  ===== asynchronous gap ===========================
  package:test_api/src/backend/declarer.dart 250:11         Declarer.test.<fn>
  ===== asynchronous gap ===========================
  package:test_api/src/backend/invoker.dart 318:9           Invoker._waitForOutstandingCallbacks.<fn>


+0 -1: Some tests failed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CICD Run CI/CD emergency Jump the queue; land PR in front of all others; only use for emergencies engine flutter/engine related. See also e: labels. missing-tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants