Skip to content

Remove Mac mac_unopt builder - #196027

Merged
auto-submit[bot] merged 1 commit into
flutter:masterfrom
jmagman:remove-mac-unopt
Nov 5, 2026
Merged

auto-submit[bot] merged 1 commit into
flutter:masterfrom
jmagman:remove-mac-unopt

Conversation

@jmagman

@jmagman jmagman commented Nov 5, 2026 •

Copy link
Copy Markdown
Member

The standalone builders added in #195868 are passing, remove bringup: true and delete the Mac mac_unopt builder.

The new builds ran on this PR, for example:
https://ci.chromium.org/ui/p/flutter/builders/try/Mac%20mac_host_release_arm64_licenses/1/overview

A few docs linked to mac_unopt.json or used it as an example, point them instead to the standalone/ configs.

Part of #155041
Fixes #186462

Pre-launch Checklist

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

If this change needs to override an active code freeze, provide a comment explaining why. The code freeze workflow can be overridden by code reviewers. See pinned issues for any active code freezes with guidance.

Note: The Flutter team is currently trialing the use of Gemini Code Assist for GitHub. Comments from the gemini-code-assist bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed.

The standalone builders added in flutter#195868 are passing in post-submit.
Remove bringup from them and delete the old mac_unopt orchestrator
builder and its config. Update docs that referenced mac_unopt.json.
@jmagman jmagman added the c: contributor-productivity Team-specific productivity, code health, technical debt. label Nov 5, 2026
@flutter-dashboard flutter-dashboard Bot added the CICD Run CI/CD label Nov 5, 2026
@github-actions github-actions Bot added engine flutter/engine related. See also e: labels. team-infra Owned by Infrastructure team d: docs/ flutter/flutter/docs, for contributors and removed c: contributor-productivity Team-specific productivity, code health, technical debt. labels Nov 5, 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 removes the mac_unopt target from the CI configuration and updates references to the new standalone build configurations across documentation and tools. The review feedback points out that several updated example commands in README.md and run.dart are missing the standalone/ prefix, which is required for the tool to correctly resolve the configuration files.

Comment thread docs/infra/Security.md
Tests with assertions enabled:

* [Linux unopt](https://ci.chromium.org/p/flutter/builders/prod/Linux%20Unopt)
* [Mac unopt](https://ci.chromium.org/p/flutter/builders/prod/Linux%20mac_unopt)

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

This was a dead link even before this change flutter-team-archive/engine#50863

@gaaclarke gaaclarke left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

🎺 🎵 🫡

@jmagman jmagman added the autosubmit Merge PR when tree becomes green via auto submit App label Nov 5, 2026
@auto-submit
auto-submit Bot added this pull request to the merge queue Nov 5, 2026
Merged via the queue into flutter:master with commit de37392 Nov 5, 2026
34 checks passed
@flutter-dashboard flutter-dashboard Bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Nov 5, 2026
@jmagman
jmagman deleted the remove-mac-unopt branch November 5, 2026 19:48
chingjun added a commit to chingjun/flutter that referenced this pull request Nov 5, 2026
…migration/phase0

PR flutter#196005 had become unmergeable (Cocoon schedules nothing for a PR
GitHub reports as dirty). One conflict: master removed
ci/builders/mac_unopt.json (flutter#196027: its builds are now standalone
bringup builders under ci/builders/standalone/, GN), which the branch had
changed (517's licenses step, 520's use_rbe) -- resolved by taking the
deletion. The converter's outputs drop the eight mac_unopt configurations
and installs (ci/builders/BUILD.bazel, configs.bazelrc,
build/bazel/builds.json); the Mac test drones are no longer part of the
Bazel presubmit until the standalone builders are switched, a later
decision.

Regenerated for the rolls: deps.lock.bzl (Dart 6623b84628f3, Skia
b5abed66da86, ICU); the pub lock is unchanged; gclient synced; converter
--check current. Checked: converter 282/282, bazel_tools 46, engine_build_
configs 84, bazel_ci_test 23, Bazel analysis of the root suites and of
ci_host_debug_unopt (+tests), android_debug, wasm_release.
auto-submit Bot pushed a commit that referenced this pull request Nov 5, 2026
This pull request is created by [automatic cherry pick workflow](https://github.com/flutter/flutter/blob/main/docs/releases/Flutter-Cherrypick-Process.md#automatically-creates-a-cherry-pick-request)
Please fill in the form below, and a flutter domain expert will evaluate this cherry pick request.

### Issue Link:
#186462

2 PRs: #195868 and #196027

### Impact Description:
Release builders should match the master branch configs. Without this change, the beta release branch will try to run the old builder names and fail because the infra config is missing.

### Changelog Description:
N/A - CI test-only change

### Workaround:
N/A

### Risk:
What is the risk level of this cherry-pick?

### Test Coverage:
Are you confident that your fix is well-tested by automated tests?

### Validation Steps:
Release PRs should not complain about missing builders.
chingjun added a commit to chingjun/flutter that referenced this pull request Nov 5, 2026
…'s builds were; the converter reads ci/builders/standalone/*.json

Master's flutter#195868 and flutter#196027 moved mac_unopt.json's eight builds into
one-build files under ci/builders/standalone/ (the engine_v2/builder
recipe's form: name, gn, ninja and tests at the top of the file) and
removed the mac_unopt builder, so 523's merge took the deletion and the
Mac test drones -- host_{debug,profile,release}_arm64_tests,
host_release_arm64_licenses, mac_release_arm64_tests,
host_debug_unopt_arm64, ios_debug_unopt_sim_arm64 and its extension-safe
twin -- ran GN again in 523's presubmit (and ios_debug_unopt_sim_arm64
failed a timing test of the GN-built embedder unit tests,
testViewWillTransitionToSize_DoesDelayEngineCallIfNonZeroDuration, three
times; it passes on master's postsubmit and failed another PR the same way
this morning).

- tools/gn_to_bazel: withStandaloneBuilds (builders.dart) reads a
  standalone file's build out of it -- BuildConfigLoader reads such a file
  as a builder file with no builds -- as a builder file of that one build
  under the loader's key, so the host's prefix, the configurations, the
  installs, the suites, builds.json and the --bazel checks cover them as
  they cover linux_*.json and mac_*.json; gn_to_bazel.dart applies it.
  Test added. The GN-only standalone builds (linux_benchmarks,
  linux_clangd, mac_clangd) get configurations like any other GN build's;
  linux_license's --enable-minimal-linux has none.
- ci/builders/standalone/mac_*.json (the eight): --no-rbe for --rbe,
  --bazel appended, download_bazelisk among the gclient variables (use_rbe
  stays true: the Mac's reclient and the Linux clang for the wraps), and
  the licenses build's unit-test step as run_tests.py --type binaries, as
  517 had it in mac_unopt.json (the converter refuses the executable
  step). mac_clangd.json stays GN.
- ci/builders/BUILD.bazel, configs.bazelrc, build/bazel/builds.json
  regenerated: the eight Mac configurations and installs are back, plus
  the GN-only standalone builds' configurations. ci.md's builder list.

Converter 282+1 tests, --check current; engine_build_configs 84;
bazel_ci_test 23; buildifier clean.
auto-submit Bot pushed a commit to flutter/packages that referenced this pull request Nov 6, 2026
Roll Flutter from 3623d2d34543 to 09175cdeac89 (61 revisions)

flutter/flutter@3623d2d...09175cd

2026-11-06 [email protected] Roll Skia from ae35b7b2221f to 793b8ac73d4b (3 revisions) (flutter/flutter#196091)
2026-11-06 [email protected] [web] Rasterize scenes at the size passed to `FlutterView.render` (flutter/flutter#196052)
2026-11-06 [email protected] Roll Skia from 4aa043a81e0c to ae35b7b2221f (1 revision) (flutter/flutter#196086)
2026-11-06 [email protected] Roll Fuchsia Linux SDK from Fqe3UlLwAohsPbsCS... to KIc0XZbhLmvDpTluZ... (flutter/flutter#196085)
2026-11-06 [email protected] Allow a zero scale change in InteractiveViewer (flutter/flutter#194949)
2026-11-06 [email protected] Roll Skia from dd5c2553a856 to 4aa043a81e0c (2 revisions) (flutter/flutter#196079)
2026-11-06 [email protected] [web] Keep ImageFilter.blur bounds in equality and description (flutter/flutter#196013)
2026-11-06 [email protected] iOS: Remove unused PlatformViewIOS setup from FlutterPlatformViewsTest (flutter/flutter#196033)
2026-11-06 [email protected] Serialize LoggerTests that mutate the shared Logger (flutter/flutter#196028)
2026-11-06 [email protected] Use reverseDuration for the AnimatedCrossFade size animation (flutter/flutter#194860)
2026-11-05 [email protected] Roll Skia from a5aacd103e68 to dd5c2553a856 (8 revisions) (flutter/flutter#196073)
2026-11-05 [email protected] Fix ListWheelScrollView null check error when it reads itemIndex before content dimensions are set (flutter/flutter#194859)
2026-11-05 [email protected] Allow zero cross axis extent in SliverGridDelegateWithMaxCrossAxisExtent (flutter/flutter#194858)
2026-11-05 [email protected] Revert: Allow color delta tolerance in in-memory fuzzy image comparator (flutter/flutter#196067)
2026-11-05 [email protected] Revert: Mitigate snapshot race in 3D transform test by reducing loop density (flutter/flutter#196066)
2026-11-05 [email protected] Delegate createStream in ResizeImage and ScrollAwareImageProvider (flutter/flutter#194756)
2026-11-05 [email protected] [iOS] Introduce FlutterShell and move thread host and profiler (flutter/flutter#195388)
2026-11-05 [email protected] [web] Support FragmentShader.getImageSampler on CanvasKit and Skwasm (flutter/flutter#195854)
2026-11-05 [email protected] Deprecates setFloat API (flutter/flutter#195505)
2026-11-05 [email protected] [flutter_tools] Remove public GlobalToolContext and globals from runner (flutter/flutter#195561)
2026-11-05 [email protected] Defer TLHC PlatformViewWrapper frame post and avoid initial 1x1 buffer resize (flutter/flutter#195861)
2026-11-05 [email protected] Roll Skia from b5abed66da86 to a5aacd103e68 (17 revisions) (flutter/flutter#196054)
2026-11-05 [email protected] Made `FlutterWindowControllerSizeTest.SizedToContentNotResizable` more robust (flutter/flutter#195845)
2026-11-05 [email protected] Update docs for contributor ladder (flutter/flutter#196011)
2026-11-05 [email protected] [Impeller] Use the transfer stage for the Vulkan readback barrier (flutter/flutter#194991)
2026-11-05 [email protected] Remove Mac mac_unopt builder (flutter/flutter#196027)
2026-11-05 [email protected] Updated Instructions for Determining Gradle Version for `gradle_dists` in CIPD (flutter/flutter#193310)
2026-11-05 [email protected] Move ios_app_with_extensions_test into the tool integration shard (flutter/flutter#195609)
2026-11-05 [email protected] [web] Respect Uint8List view bounds when detecting animated WebP/GIF (flutter/flutter#196010)
2026-11-05 [email protected] Add platform_views_layout to build_tests so iOS/Android build breaks are caught in presubmit (flutter/flutter#192985)
2026-11-05 [email protected] [flutter_tools] Detect macOS TCC permission crashes and provide diagnostic guidance (flutter/flutter#192432)
2026-11-05 [email protected] Roll Packages from 670b30e to 0478162 (15 revisions) (flutter/flutter#196047)
2026-11-05 [email protected] [web] Support Skwasm rendering without bitmap capture (flutter/flutter#195103)
2026-11-05 [email protected] [flutter_tools] Reland fix for local CanvasKit asset paths on Windows (flutter/flutter#195770)
2026-11-05 [email protected] Roll Skia from f96be51af95d to b5abed66da86 (14 revisions) (flutter/flutter#196017)
2026-11-05 [email protected] Split chrome web engine test drone (flutter/flutter#195873)
2026-11-05 [email protected] Roll Dart SDK from c9153304136a to 6623b84628f3 (1 revision) (flutter/flutter#196026)
2026-11-05 [email protected] Roll ICU from 4fe960221710 to a0ea93436c52 (6 revisions) (flutter/flutter#196025)
2026-11-05 [email protected] Add more guidance in README and AGENTS for contributing to flutter_tools (flutter/flutter#195998)
2026-11-05 [email protected] Roll Fuchsia Linux SDK from p0HDXLISPIElJfSz7... to Fqe3UlLwAohsPbsCS... (flutter/flutter#196019)
2026-11-05 [email protected] Roll Dart SDK from e362a23e9738 to c9153304136a (18 revisions) (flutter/flutter#196014)
2026-11-05 [email protected] [Impeller] Fix dilation input bounds when clipping saveLayers (flutter/flutter#195652)
2026-11-05 [email protected] Add `variantOf` to the M3E migration checklist (flutter/flutter#195099)
2026-11-05 [email protected] [flutter_tools] Eliminate globals from remaining subsystem files (flutter/flutter#195555)
2026-11-05 [email protected] Fix gap flipping when dragging variable height reorderable items (flutter/flutter#194478)
2026-11-05 [email protected] [A11y] Send un-merged SemanticsNodes in the same update that first references them (flutter/flutter#195829)
...
chingjun added a commit to chingjun/flutter that referenced this pull request Nov 12, 2026
…'s builds were; the converter reads ci/builders/standalone/*.json

Master's flutter#195868 and flutter#196027 moved mac_unopt.json's eight builds into
one-build files under ci/builders/standalone/ (the engine_v2/builder
recipe's form: name, gn, ninja and tests at the top of the file) and
removed the mac_unopt builder, so 523's merge took the deletion and the
Mac test drones -- host_{debug,profile,release}_arm64_tests,
host_release_arm64_licenses, mac_release_arm64_tests,
host_debug_unopt_arm64, ios_debug_unopt_sim_arm64 and its extension-safe
twin -- ran GN again in 523's presubmit (and ios_debug_unopt_sim_arm64
failed a timing test of the GN-built embedder unit tests,
testViewWillTransitionToSize_DoesDelayEngineCallIfNonZeroDuration, three
times; it passes on master's postsubmit and failed another PR the same way
this morning).

- tools/gn_to_bazel: withStandaloneBuilds (builders.dart) reads a
  standalone file's build out of it -- BuildConfigLoader reads such a file
  as a builder file with no builds -- as a builder file of that one build
  under the loader's key, so the host's prefix, the configurations, the
  installs, the suites, builds.json and the --bazel checks cover them as
  they cover linux_*.json and mac_*.json; gn_to_bazel.dart applies it.
  Test added. The GN-only standalone builds (linux_benchmarks,
  linux_clangd, mac_clangd) get configurations like any other GN build's;
  linux_license's --enable-minimal-linux has none.
- ci/builders/standalone/mac_*.json (the eight): --no-rbe for --rbe,
  --bazel appended, download_bazelisk among the gclient variables (use_rbe
  stays true: the Mac's reclient and the Linux clang for the wraps), and
  the licenses build's unit-test step as run_tests.py --type binaries, as
  517 had it in mac_unopt.json (the converter refuses the executable
  step). mac_clangd.json stays GN.
- ci/builders/BUILD.bazel, configs.bazelrc, build/bazel/builds.json
  regenerated: the eight Mac configurations and installs are back, plus
  the GN-only standalone builds' configurations. ci.md's builder list.

Converter 282+1 tests, --check current; engine_build_configs 84;
bazel_ci_test 23; buildifier clean.
chingjun added a commit to chingjun/flutter that referenced this pull request Nov 12, 2026
The branch was rebased onto master (774b051), which dropped its
nine merges of master. Those merges held the conflict resolutions and
the regenerated lock files and converter output, and the conflicts of
the replayed commits were resolved in favour of the replayed commit. So
the commits below this one are not expected to build on this base.

This commit restores what the merges held. Its tree is the tree of a
merge of the same master into the branch as it was before the rebase,
and that tree was checked: gn_to_bazel's tests (284) and --check,
check_build_configs.sh, check_generated_bazel_files.sh,
bazel_ci_test.py (23), engine_build_configs (84), bazel_tools (46),
buildifier, tools/gn_test.py (7), the analyzer over flutter_tools and
the ten tool test files the branch touches (324 tests); Bazel analysis
of ci_host_debug, of host_release_test and of //:tool_tests
//:dart_tests.

In it:
- deps.lock.bzl and pub.lock.bzl for master's DEPS and pubspec.lock,
  and the converter's output: builds.json, configs.bazelrc,
  ci/builders/BUILD.bazel and six generated BUILD.bazel files.
- dev/bots/BUILD.bazel and packages/flutter_tools/BUILD.bazel for the
  durations file upstream renamed to tool_test_durations.json.
- The builder files without `--no-goma`, which tools/gn no longer
  accepts (flutter#196212), and without mac_unopt.json, which upstream removed
  (flutter#196027).
- Upstream's side of hunks both sides had changed: dev/bots
  (run_command.dart, test.dart and their tests), tools/gn_test.py
  (test_thin_lto), shell/platform/darwin/ios/BUILD.gn, and the tool's
  android_gradle_builder_test.dart in its form after flutter#196125.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CICD Run CI/CD d: docs/ flutter/flutter/docs, for contributors engine flutter/engine related. See also e: labels. team-infra Owned by Infrastructure team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Break up "Mac mac_unopt"

2 participants