-
Notifications
You must be signed in to change notification settings - Fork 29.7k
feat: Use engine_stamp.json in flutter tool #171454
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
The flutter tool will now download and use an `engine_stamp.json` file to determine the engine version, content hash, build date, and commit date. This change provides support for content hashed engine artifacts, who's revision (the hash) is not a git commit sha. A side benifit is "git" is only used at build time to extract this information. Content hashed artifacts are not enabled yet; bin/internal/engine.version (releases) and the shell updaters still look for the git commit sha. One can test this out by setting FLUTTER_PREBUILD_ENGINE_VERSION to the content hash.
|
Failing tests look real - so moving to draft while I figure out how to recreate. |
|
This pull request has been changed to a draft. The currently pending flutter-gold status will not be able to resolve until a new commit is pushed or the change is marked ready for review again. For more guidance, visit Writing a golden file test for Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing. |
|
Waiting on g3fix to retest. |
|
G3Fix works. |
bkonyi
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 overall.
flutter/flutter@28a4e85...adffe24 2025-07-08 [email protected] Roll Skia from 0669913308d3 to e159882c6ce0 (1 revision) (flutter/flutter#171766) 2025-07-08 [email protected] Roll Skia from 36b1f71fc14f to 0669913308d3 (4 revisions) (flutter/flutter#171756) 2025-07-08 [email protected] Roll Skia from f35536730dea to 36b1f71fc14f (3 revisions) (flutter/flutter#171751) 2025-07-08 [email protected] Roll Skia from 05374bbe5377 to f35536730dea (1 revision) (flutter/flutter#171744) 2025-07-08 [email protected] Roll Skia from 4968a30d721c to 05374bbe5377 (2 revisions) (flutter/flutter#171742) 2025-07-08 [email protected] Roll Skia from ad5c330487f7 to 4968a30d721c (8 revisions) (flutter/flutter#171739) 2025-07-08 [email protected] feat: Use engine_stamp.json in flutter tool (flutter/flutter#171454) 2025-07-08 [email protected] [ Tool ] Remove long-deprecated `make-host-app-editable` (flutter/flutter#171715) 2025-07-07 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Bump warn and error versions of agp, kotlin and gradle versions in preparation for gradle 9 (#171399)" (flutter/flutter#171736) 2025-07-07 [email protected] Bump warn and error versions of agp, kotlin and gradle versions in preparation for gradle 9 (flutter/flutter#171399) 2025-07-07 [email protected] [android] release background image readers on <= Android 14 (flutter/flutter#171193) 2025-07-07 [email protected] [ Tool ] Fix crash when SIGQUIT is sent to enable the VM service for `flutter analyze --watch` (flutter/flutter#171713) 2025-07-07 [email protected] Roll Skia from 47a5693d191a to ad5c330487f7 (2 revisions) (flutter/flutter#171716) 2025-07-07 [email protected] Run hot_reload_web_test.dart on Mac/Windows (flutter/flutter#171279) 2025-07-07 [email protected] Roll Fuchsia Linux SDK from 2DeZD1utFrnSwUfVT... to AinHuT0vgOelA1g7_... (flutter/flutter#171700) 2025-07-07 [email protected] [ Tool ] Prepare for enabling `omit_obvious_*_types` and `specify_nonobvious_*_types` (flutter/flutter#171651) 2025-07-07 [email protected] Roll Packages from e4fd6c0 to 2c52f24 (1 revision) (flutter/flutter#171705) 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],[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
|
It looks like this change broke Dart/Flutter head-head bots: These bots run @jtmcdole Can you advise on how to repair those bots? |
The flutter tool will now download and use an `engine_stamp.json` file to determine the engine version, content hash, build date, and commit date. The file is treated as a new `DevelopmentArtifact.informative` and is fetched before flutterVersion is used. This ensures we have build information for a clean checkout with no bin/cache folder. Users that download from flutter.dev will have engine_stamp.json, so its a no-op. This change provides support for content hashed engine artifacts, who's revision (the hash) is not a git commit sha. A side benefit is "git" is only used at build time to extract this information. > [!NOTE] > Content hashed artifacts are not enabled yet for downloads; bin/internal/engine.version (releases) and the shell updaters still look for the git commit sha. One can test this out by setting `FLUTTER_PREBUILD_ENGINE_VERSION` to the content hash.
The flutter tool will now download and use an `engine_stamp.json` file to determine the engine version, content hash, build date, and commit date. The file is treated as a new `DevelopmentArtifact.informative` and is fetched before flutterVersion is used. This ensures we have build information for a clean checkout with no bin/cache folder. Users that download from flutter.dev will have engine_stamp.json, so its a no-op. This change provides support for content hashed engine artifacts, who's revision (the hash) is not a git commit sha. A side benefit is "git" is only used at build time to extract this information. > [!NOTE] > Content hashed artifacts are not enabled yet for downloads; bin/internal/engine.version (releases) and the shell updaters still look for the git commit sha. One can test this out by setting `FLUTTER_PREBUILD_ENGINE_VERSION` to the content hash.
…r#9580) flutter/flutter@28a4e85...adffe24 2025-07-08 [email protected] Roll Skia from 0669913308d3 to e159882c6ce0 (1 revision) (flutter/flutter#171766) 2025-07-08 [email protected] Roll Skia from 36b1f71fc14f to 0669913308d3 (4 revisions) (flutter/flutter#171756) 2025-07-08 [email protected] Roll Skia from f35536730dea to 36b1f71fc14f (3 revisions) (flutter/flutter#171751) 2025-07-08 [email protected] Roll Skia from 05374bbe5377 to f35536730dea (1 revision) (flutter/flutter#171744) 2025-07-08 [email protected] Roll Skia from 4968a30d721c to 05374bbe5377 (2 revisions) (flutter/flutter#171742) 2025-07-08 [email protected] Roll Skia from ad5c330487f7 to 4968a30d721c (8 revisions) (flutter/flutter#171739) 2025-07-08 [email protected] feat: Use engine_stamp.json in flutter tool (flutter/flutter#171454) 2025-07-08 [email protected] [ Tool ] Remove long-deprecated `make-host-app-editable` (flutter/flutter#171715) 2025-07-07 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Bump warn and error versions of agp, kotlin and gradle versions in preparation for gradle 9 (#171399)" (flutter/flutter#171736) 2025-07-07 [email protected] Bump warn and error versions of agp, kotlin and gradle versions in preparation for gradle 9 (flutter/flutter#171399) 2025-07-07 [email protected] [android] release background image readers on <= Android 14 (flutter/flutter#171193) 2025-07-07 [email protected] [ Tool ] Fix crash when SIGQUIT is sent to enable the VM service for `flutter analyze --watch` (flutter/flutter#171713) 2025-07-07 [email protected] Roll Skia from 47a5693d191a to ad5c330487f7 (2 revisions) (flutter/flutter#171716) 2025-07-07 [email protected] Run hot_reload_web_test.dart on Mac/Windows (flutter/flutter#171279) 2025-07-07 [email protected] Roll Fuchsia Linux SDK from 2DeZD1utFrnSwUfVT... to AinHuT0vgOelA1g7_... (flutter/flutter#171700) 2025-07-07 [email protected] [ Tool ] Prepare for enabling `omit_obvious_*_types` and `specify_nonobvious_*_types` (flutter/flutter#171651) 2025-07-07 [email protected] Roll Packages from e4fd6c0 to 2c52f24 (1 revision) (flutter/flutter#171705) 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],[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
The flutter tool will now download and use an `engine_stamp.json` file to determine the engine version, content hash, build date, and commit date. The file is treated as a new `DevelopmentArtifact.informative` and is fetched before flutterVersion is used. This ensures we have build information for a clean checkout with no bin/cache folder. Users that download from flutter.dev will have engine_stamp.json, so its a no-op. This change provides support for content hashed engine artifacts, who's revision (the hash) is not a git commit sha. A side benefit is "git" is only used at build time to extract this information. > [!NOTE] > Content hashed artifacts are not enabled yet for downloads; bin/internal/engine.version (releases) and the shell updaters still look for the git commit sha. One can test this out by setting `FLUTTER_PREBUILD_ENGINE_VERSION` to the content hash.
The flutter tool will now download and use an
engine_stamp.jsonfile to determine the engine version, content hash, build date, and commit date.The file is treated as a new
DevelopmentArtifact.informativeand is fetched before flutterVersion is used. This ensures we have build information for a clean checkout with no bin/cache folder. Users that download from flutter.dev will have engine_stamp.json, so its a no-op.This change provides support for content hashed engine artifacts, who's revision (the hash) is not a git commit sha. A side benefit is "git" is only used at build time to extract this information.
Note
Content hashed artifacts are not enabled yet for downloads; bin/internal/engine.version (releases) and the shell updaters still look for the git commit sha. One can test this out by setting
FLUTTER_PREBUILD_ENGINE_VERSIONto the content hash.