Skip to content

Conversation

@jacobsimionato
Copy link
Contributor

@jacobsimionato jacobsimionato commented May 13, 2025

This adds a new flavor of mac_ios_engine, which enables a build flag. This is not part of the merge-queue since it's intended for experimental and internal use at the moment.

Tested locally via et build --config ci/mac_ios_engine_ddm

This follows @sigmundch 's #162855 which achieves the same result for Android.

I branched mac_ios_engine_ddm.json and removed:

  • x86 builds, seeing as I think we're all testing locally with arm64 macs now, and forge supports them as well (with a flag to force use of arm64).
  • All "extension safe" builds seeing as we aren't targeting watches at this point.
  • All "profile" flavor builds

@github-actions github-actions bot added the engine flutter/engine related. See also e: labels. label May 13, 2025
"--xcode-symlinks",
"--gn-args=dart_dynamic_modules=true"
],
"name": "ci/ios_releas_ddm",
Copy link
Member

Choose a reason for hiding this comment

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

Typo here

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Fixed

Copy link
Contributor

@sigmundch sigmundch left a comment

Choose a reason for hiding this comment

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

Thanks Jacob! Adding @matanlurey as a reviewer too, to make sure we are not missing any important details.

timeout: 240
properties:
add_recipes_cq: "true"
release_build: "false"
Copy link
Contributor

Choose a reason for hiding this comment

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

remove this line, apparently the only way to make it false is to not include the line (see 11c3067)

Copy link
Contributor

Choose a reason for hiding this comment

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

+1. I actually fixed this bug, but there is no reason to include it.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Removed.

},
"gn": [
"--target-dir",
"ci/ios_profile_ddm",
Copy link
Contributor

Choose a reason for hiding this comment

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

Consider removing the profile variants. For android we completely skipped them to reduce costs (since we didn't expect to use them for a while.)

Copy link
Contributor

Choose a reason for hiding this comment

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

+1. Please only build what you need.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Removed.

},
"gn": [
"--target-dir",
"ci/ios_debug_sim_arm64_ddm",
Copy link
Contributor

Choose a reason for hiding this comment

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

interesting, in android I don't recall that we needed separate targets for the emulator - I assume there we can use the same debug builds for both?

Bummer we can't just reuse the regular debug builds here :(.

I assume then we need both? Or can it be enough to only pick one or the other?

Copy link
Contributor

Choose a reason for hiding this comment

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

iOS simulators and iOS devices are different engine builds (they work differently).

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Sounds like we still need this here, so I'll keep it for now.

properties:
add_recipes_cq: "true"
release_build: "false"
backfill: "false"
Copy link
Contributor

Choose a reason for hiding this comment

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

I believe now backfill is no longer a property, but a boolean that can be specified next to the properties section:

  properties:
     add_recipes_cq: "true"
  backfill: false # Note: no quotes

(changed happened in 5da19cc)

Copy link
Contributor

Choose a reason for hiding this comment

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

+1.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Fixed.


- name: Mac mac_ios_engine_ddm
recipe: engine_v2/engine_v2
timeout: 240
Copy link
Contributor

Choose a reason for hiding this comment

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

when adding android, we were asked to also write bringup: true to ensure it was scheduled in the staging bots, but I'm not sure if that applies here.

@matanlurey would know :)

Copy link
Contributor

Choose a reason for hiding this comment

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

If this is a new build, you will have to add bringup: true.

And yes, let's initially keep it as a bringup build.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Done.

@sigmundch sigmundch requested a review from matanlurey May 13, 2025 19:02

- name: Mac mac_ios_engine_ddm
recipe: engine_v2/engine_v2
timeout: 240
Copy link
Contributor

Choose a reason for hiding this comment

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

If this is a new build, you will have to add bringup: true.

And yes, let's initially keep it as a bringup build.

timeout: 240
properties:
add_recipes_cq: "true"
release_build: "false"
Copy link
Contributor

Choose a reason for hiding this comment

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

+1. I actually fixed this bug, but there is no reason to include it.

properties:
add_recipes_cq: "true"
release_build: "false"
backfill: "false"
Copy link
Contributor

Choose a reason for hiding this comment

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

+1.

},
"gn": [
"--target-dir",
"ci/ios_debug_sim_arm64_ddm",
Copy link
Contributor

Choose a reason for hiding this comment

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

iOS simulators and iOS devices are different engine builds (they work differently).

},
"gn": [
"--target-dir",
"ci/ios_profile_ddm",
Copy link
Contributor

Choose a reason for hiding this comment

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

+1. Please only build what you need.

enabled_branches:
# Don't run this on release branches
- master
backfill: "false"
Copy link
Contributor

Choose a reason for hiding this comment

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

This is backfill: false. Sorry only properties are strictly string properties for ... reasons?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Done

@jacobsimionato jacobsimionato added this pull request to the merge queue May 15, 2025
Merged via the queue into flutter:master with commit 8556b25 May 15, 2025
178 of 180 checks passed
@jacobsimionato jacobsimionato deleted the ios_ddm_build branch May 15, 2025 02:06
"--simulator-arm64-out-dir",
"out/ci/ios_debug_sim_arm64_ddm"
],
"script": "flutter/sky/tools/create_ios_framework.py",
Copy link
Member

Choose a reason for hiding this comment

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

This is failing on CI because this script is looking for the extension_safe variants, but they aren't being built. I think this script probably needs a command line flag to tell it that the extension_safe variants aren't going to be there:

'extension_safe/Flutter.xcframework/ios-arm64/Flutter.framework/Flutter',
.

cc @cbracken

engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 15, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 15, 2025
auto-submit bot pushed a commit to flutter/packages that referenced this pull request May 15, 2025
flutter/flutter@0b9f928...9a78af5

2025-05-15 [email protected] Manual pub package roll (flutter/flutter#168916)
2025-05-15 [email protected] Remove unnecessary `bringup: true` for release-channel only `Linux flutter_packaging`. (flutter/flutter#168761)
2025-05-15 [email protected] Revert: "Run `flutter_packaging` builders on release candidates (flutter/flutter#168917)
2025-05-15 [email protected] Roll Dart SDK from a6c25e31caa7 to c9640c3a4440 (1 revision) (flutter/flutter#168911)
2025-05-15 [email protected] Roll Packages from 1468581 to 2dff621 (4 revisions) (flutter/flutter#168908)
2025-05-15 [email protected] Roll Dart SDK from b3520981e0f0 to a6c25e31caa7 (11 revisions) (flutter/flutter#168895)
2025-05-15 [email protected] Roll Fuchsia Linux SDK from fSvuEJgRmHxnewRJr... to Jj-iDG5uPOsFgY2_H... (flutter/flutter#168893)
2025-05-15 [email protected] Fix mac_ios_engine_ddm config with missing ci/ios_debug_sim_ddm config (flutter/flutter#168888)
2025-05-15 [email protected] [native assets] Remove `KernelSnapshot` dependency in build (flutter/flutter#168742)
2025-05-15 [email protected] iOS,macOS: Migrate logging to Logger/FlutterLogger (flutter/flutter#168568)
2025-05-15 [email protected] Skip hot reload breakpoints test when running with web (flutter/flutter#168873)
2025-05-15 [email protected] CupertinoSliverNavigationBar respects accessibility text scaling (flutter/flutter#168866)
2025-05-15 [email protected] [display_list] paint cleanup. (flutter/flutter#168082)
2025-05-15 [email protected] Add a new CI build for iOS DDM-enabled artifacts (flutter/flutter#168717)
2025-05-15 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Implements UISceneDelegate dynamically w/ FlutterLaunchEngine (#168396)" (flutter/flutter#168880)
2025-05-14 [email protected] Implements UISceneDelegate dynamically w/ FlutterLaunchEngine (flutter/flutter#168396)
2025-05-14 [email protected] Mark web_tool_tests_1_2 as bringup. (flutter/flutter#168871)
2025-05-14 [email protected] Marks Mac_mokey run_debug_test_android to be unflaky (flutter/flutter#167634)
2025-05-14 [email protected] Reland "Clip search artifacts in CupertinoSliverNavigationBar searchable-to-searchable transitions" (flutter/flutter#168772)
2025-05-14 [email protected] Remove references to `team-release`. (flutter/flutter#168780)
2025-05-14 [email protected] Make Cupertino sheet set the systemUIStyle through an AnnotatedRegion (flutter/flutter#168182)
2025-05-14 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Use live region in error text input decorator for Android (#165531)" (flutter/flutter#168848)
2025-05-14 [email protected] Normalize BottomAppBarTheme (flutter/flutter#168586)
2025-05-14 [email protected] Roll Packages from 2e166de to 1468581 (2 revisions) (flutter/flutter#168828)
2025-05-14 [email protected] macOS,iOS: fix swift target triple (flutter/flutter#168749)
2025-05-14 [email protected] Further update `Engine-artifacts.md`. (flutter/flutter#168779)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages
Please CC [email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
FMorschel pushed a commit to FMorschel/packages that referenced this pull request Jun 9, 2025
…r#9259)

flutter/flutter@0b9f928...9a78af5

2025-05-15 [email protected] Manual pub package roll (flutter/flutter#168916)
2025-05-15 [email protected] Remove unnecessary `bringup: true` for release-channel only `Linux flutter_packaging`. (flutter/flutter#168761)
2025-05-15 [email protected] Revert: "Run `flutter_packaging` builders on release candidates (flutter/flutter#168917)
2025-05-15 [email protected] Roll Dart SDK from a6c25e31caa7 to c9640c3a4440 (1 revision) (flutter/flutter#168911)
2025-05-15 [email protected] Roll Packages from 1468581 to 2dff621 (4 revisions) (flutter/flutter#168908)
2025-05-15 [email protected] Roll Dart SDK from b3520981e0f0 to a6c25e31caa7 (11 revisions) (flutter/flutter#168895)
2025-05-15 [email protected] Roll Fuchsia Linux SDK from fSvuEJgRmHxnewRJr... to Jj-iDG5uPOsFgY2_H... (flutter/flutter#168893)
2025-05-15 [email protected] Fix mac_ios_engine_ddm config with missing ci/ios_debug_sim_ddm config (flutter/flutter#168888)
2025-05-15 [email protected] [native assets] Remove `KernelSnapshot` dependency in build (flutter/flutter#168742)
2025-05-15 [email protected] iOS,macOS: Migrate logging to Logger/FlutterLogger (flutter/flutter#168568)
2025-05-15 [email protected] Skip hot reload breakpoints test when running with web (flutter/flutter#168873)
2025-05-15 [email protected] CupertinoSliverNavigationBar respects accessibility text scaling (flutter/flutter#168866)
2025-05-15 [email protected] [display_list] paint cleanup. (flutter/flutter#168082)
2025-05-15 [email protected] Add a new CI build for iOS DDM-enabled artifacts (flutter/flutter#168717)
2025-05-15 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Implements UISceneDelegate dynamically w/ FlutterLaunchEngine (#168396)" (flutter/flutter#168880)
2025-05-14 [email protected] Implements UISceneDelegate dynamically w/ FlutterLaunchEngine (flutter/flutter#168396)
2025-05-14 [email protected] Mark web_tool_tests_1_2 as bringup. (flutter/flutter#168871)
2025-05-14 [email protected] Marks Mac_mokey run_debug_test_android to be unflaky (flutter/flutter#167634)
2025-05-14 [email protected] Reland "Clip search artifacts in CupertinoSliverNavigationBar searchable-to-searchable transitions" (flutter/flutter#168772)
2025-05-14 [email protected] Remove references to `team-release`. (flutter/flutter#168780)
2025-05-14 [email protected] Make Cupertino sheet set the systemUIStyle through an AnnotatedRegion (flutter/flutter#168182)
2025-05-14 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Use live region in error text input decorator for Android (#165531)" (flutter/flutter#168848)
2025-05-14 [email protected] Normalize BottomAppBarTheme (flutter/flutter#168586)
2025-05-14 [email protected] Roll Packages from 2e166de to 1468581 (2 revisions) (flutter/flutter#168828)
2025-05-14 [email protected] macOS,iOS: fix swift target triple (flutter/flutter#168749)
2025-05-14 [email protected] Further update `Engine-artifacts.md`. (flutter/flutter#168779)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages
Please CC [email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Ortes pushed a commit to Ortes/packages that referenced this pull request Jun 25, 2025
…r#9259)

flutter/flutter@0b9f928...9a78af5

2025-05-15 [email protected] Manual pub package roll (flutter/flutter#168916)
2025-05-15 [email protected] Remove unnecessary `bringup: true` for release-channel only `Linux flutter_packaging`. (flutter/flutter#168761)
2025-05-15 [email protected] Revert: "Run `flutter_packaging` builders on release candidates (flutter/flutter#168917)
2025-05-15 [email protected] Roll Dart SDK from a6c25e31caa7 to c9640c3a4440 (1 revision) (flutter/flutter#168911)
2025-05-15 [email protected] Roll Packages from 1468581 to 2dff621 (4 revisions) (flutter/flutter#168908)
2025-05-15 [email protected] Roll Dart SDK from b3520981e0f0 to a6c25e31caa7 (11 revisions) (flutter/flutter#168895)
2025-05-15 [email protected] Roll Fuchsia Linux SDK from fSvuEJgRmHxnewRJr... to Jj-iDG5uPOsFgY2_H... (flutter/flutter#168893)
2025-05-15 [email protected] Fix mac_ios_engine_ddm config with missing ci/ios_debug_sim_ddm config (flutter/flutter#168888)
2025-05-15 [email protected] [native assets] Remove `KernelSnapshot` dependency in build (flutter/flutter#168742)
2025-05-15 [email protected] iOS,macOS: Migrate logging to Logger/FlutterLogger (flutter/flutter#168568)
2025-05-15 [email protected] Skip hot reload breakpoints test when running with web (flutter/flutter#168873)
2025-05-15 [email protected] CupertinoSliverNavigationBar respects accessibility text scaling (flutter/flutter#168866)
2025-05-15 [email protected] [display_list] paint cleanup. (flutter/flutter#168082)
2025-05-15 [email protected] Add a new CI build for iOS DDM-enabled artifacts (flutter/flutter#168717)
2025-05-15 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Implements UISceneDelegate dynamically w/ FlutterLaunchEngine (#168396)" (flutter/flutter#168880)
2025-05-14 [email protected] Implements UISceneDelegate dynamically w/ FlutterLaunchEngine (flutter/flutter#168396)
2025-05-14 [email protected] Mark web_tool_tests_1_2 as bringup. (flutter/flutter#168871)
2025-05-14 [email protected] Marks Mac_mokey run_debug_test_android to be unflaky (flutter/flutter#167634)
2025-05-14 [email protected] Reland "Clip search artifacts in CupertinoSliverNavigationBar searchable-to-searchable transitions" (flutter/flutter#168772)
2025-05-14 [email protected] Remove references to `team-release`. (flutter/flutter#168780)
2025-05-14 [email protected] Make Cupertino sheet set the systemUIStyle through an AnnotatedRegion (flutter/flutter#168182)
2025-05-14 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Use live region in error text input decorator for Android (#165531)" (flutter/flutter#168848)
2025-05-14 [email protected] Normalize BottomAppBarTheme (flutter/flutter#168586)
2025-05-14 [email protected] Roll Packages from 2e166de to 1468581 (2 revisions) (flutter/flutter#168828)
2025-05-14 [email protected] macOS,iOS: fix swift target triple (flutter/flutter#168749)
2025-05-14 [email protected] Further update `Engine-artifacts.md`. (flutter/flutter#168779)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages
Please CC [email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
github-merge-queue bot pushed a commit that referenced this pull request Aug 5, 2025
Similar to #168233, but this time
for iOS
Follow-up to #168717

As we start to work more seriously with ddm we'd like to have these
builds always available instead of on demand only.
danilozhang pushed a commit to danilozhang/flutter that referenced this pull request Aug 6, 2025
Similar to flutter#168233, but this time
for iOS
Follow-up to flutter#168717

As we start to work more seriously with ddm we'd like to have these
builds always available instead of on demand only.
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 14, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 14, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 15, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 15, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 16, 2025
ksokolovskyi pushed a commit to ksokolovskyi/flutter that referenced this pull request Aug 19, 2025
Similar to flutter#168233, but this time
for iOS
Follow-up to flutter#168717

As we start to work more seriously with ddm we'd like to have these
builds always available instead of on demand only.
mboetger pushed a commit to mboetger/flutter that referenced this pull request Sep 18, 2025
Similar to flutter#168233, but this time
for iOS
Follow-up to flutter#168717

As we start to work more seriously with ddm we'd like to have these
builds always available instead of on demand only.
korca0220 pushed a commit to korca0220/flutter that referenced this pull request Sep 22, 2025
Similar to flutter#168233, but this time
for iOS
Follow-up to flutter#168717

As we start to work more seriously with ddm we'd like to have these
builds always available instead of on demand only.
github-merge-queue bot pushed a commit that referenced this pull request Oct 23, 2025
Work towards [b/452833651](b/452833651).

This adds a new flavor of linux_host_engine, which enables the DDM build
flag with the goal of building a flutter_tester binary that supports
loading DDMs in tests.

Tested locally via `et build --config ci/host_debug_ddm`.

This roughly follows #168717,
which added a similar DDM-enabled build for iOS.

I've branched this off the `linux_host_engine.json`, added the build
flag for DDM support, and removed things we don't need.
lucaantonelli pushed a commit to lucaantonelli/flutter that referenced this pull request Nov 21, 2025
Similar to flutter#168233, but this time
for iOS
Follow-up to flutter#168717

As we start to work more seriously with ddm we'd like to have these
builds always available instead of on demand only.
reidbaker pushed a commit to AbdeMohlbi/flutter that referenced this pull request Dec 10, 2025
)

Work towards [b/452833651](b/452833651).

This adds a new flavor of linux_host_engine, which enables the DDM build
flag with the goal of building a flutter_tester binary that supports
loading DDMs in tests.

Tested locally via `et build --config ci/host_debug_ddm`.

This roughly follows flutter#168717,
which added a similar DDM-enabled build for iOS.

I've branched this off the `linux_host_engine.json`, added the build
flag for DDM support, and removed things we don't need.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

engine flutter/engine related. See also e: labels.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants