这是indexloc提供的服务,不要输入任何密码
Skip to content

[CLI tool] in flutter test, consider --flavor when validating the cached asset bundle #150461

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

andrewkolos
Copy link
Contributor

@andrewkolos andrewkolos commented Jun 18, 2024

Fixes #150296

Context. flutter test has its own code path for writing flutter app assets. #132985 introduced flavor-conditional asset bundling , which lets users control which assets get bundled based on --flavor. --flavor is supported in flutter test.

Bug and fix. --flavor isn't considered when deciding whether we need to rebuild this asset bundle:

bool _needRebuild(Map<String, AssetBundleEntry> entries) {

This PR address this by writing the value of --flavor to a file in the build directory and checking that when validating the cached asset bundle.

Pre-launch Checklist

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

@andrewkolos andrewkolos added the tool Affects the "flutter" command-line tool. See also t: labels. label Jun 18, 2024
@andrewkolos andrewkolos marked this pull request as ready for review June 18, 2024 22:32
@andrewkolos andrewkolos requested review from jonahwilliams and christopherfujino and removed request for christopherfujino June 18, 2024 22:32
Copy link
Contributor

@jonahwilliams jonahwilliams left a comment

Choose a reason for hiding this comment

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

LGTM with nit

@andrewkolos andrewkolos added the autosubmit Merge PR when tree becomes green via auto submit App label Jun 20, 2024
@auto-submit auto-submit bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Jun 20, 2024
Copy link
Contributor

auto-submit bot commented Jun 20, 2024

auto label is removed for flutter/flutter/150461, due to - The status or check suite Mac plugin_test_ios has failed. Please fix the issues identified (or deflake) before re-applying this label.

@andrewkolos andrewkolos added cp: stable cherry pick this pull request to stable release candidate branch autosubmit Merge PR when tree becomes green via auto submit App labels Jun 20, 2024
@auto-submit auto-submit bot merged commit 8e4f704 into flutter:master Jun 20, 2024
130 checks passed
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jun 20, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jun 20, 2024
@andrewkolos andrewkolos added cp: stable cherry pick this pull request to stable release candidate branch and removed cp: stable cherry pick this pull request to stable release candidate branch labels Jun 21, 2024
flutteractionsbot pushed a commit to flutteractionsbot/flutter that referenced this pull request Jun 21, 2024
… cached asset bundle (flutter#150461)

Fixes flutter#150296

**Context.** `flutter test` has its own code path for writing flutter app [assets](https://docs.flutter.dev/ui/assets/assets-and-images). flutter#132985 introduced [flavor-conditional asset bundling ](https://docs.flutter.dev/deployment/flavors#conditionally-bundling-assets-based-on-flavor), which lets users control which assets get bundled based on `--flavor`. `--flavor` is supported in `flutter test`.

**Bug and fix.** `--flavor` isn't considered when deciding whether we need to rebuild this asset bundle:

https://github.com/flutter/flutter/blob/5e448f4ce57723ac0792ae822ebac69df3188ba1/packages/flutter_tools/lib/src/commands/test.dart#L709

This PR address this by writing the value of `--flavor` to a file in the build directory and checking that when validating the cached asset bundle.
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jun 21, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jun 21, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jun 21, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jun 22, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jun 22, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jun 23, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jun 23, 2024
hello-coder-xu added a commit to hello-coder-xu/flutter that referenced this pull request Jun 24, 2024
* master: (213 commits)
  Fix: Memory leak in UndoHistory widget because it never de-registered itself as global UndoManager client (Resolves flutter#148291) (flutter#150661)
  [CupertinoActionSheet] Fix the layout (part 1) (flutter#149636)
  Remove discontinued `device_info` and `connectivity` plugins from `flutter_gallery`, roll pub packages (flutter#150585)
  [a11y] Update semantics in bottom_navigation_bar.dart (flutter#150576)
  Roll Flutter Engine from dda82d905f37 to 33415c6ee7c2 (7 revisions) (flutter#150637)
  Reland 4: [CupertinoActionSheet] Match colors to native (flutter#150442)
  Enable SelectionArea double tap/triple tap gesture support for mobile platforms (flutter#149295)
  made SelectionArea alignment consistent between web and other platform (flutter#150037)
  Fix link hook typo (flutter#150194)
  Stop looking for .packages when analyzing (flutter#150349)
  Update flutter.dev links from misc packages to more permanent destinations (flutter#150532)
  Roll Flutter Engine from dd37cefd4a94 to dda82d905f37 (9 revisions) (flutter#150582)
  Update Material token to the latest 4.1.0 (flutter#150382)
  Let the lockfile script generate lockfiles for kotlin gradle files as well (flutter#150471)
  Make popup menu hardcoded padding configurable (flutter#150506)
  [flutter_tools] un-hide the --dds flag (flutter#150280)
  [material/menu_anchor.dart] Remove _MenuAnchorState from parent when disposed. (flutter#149586)
  Add test for inherited_notifier.0.dart (flutter#150344)
  [CLI tool] in `flutter test`, consider `--flavor` when validating the cached asset bundle (flutter#150461)
  Test InputDecoration API examples (flutter#148560)
  ...
hello-coder-xu added a commit to hello-coder-xu/flutter that referenced this pull request Jun 24, 2024
…ileTheme

* master: (88 commits)
  Fix: Memory leak in UndoHistory widget because it never de-registered itself as global UndoManager client (Resolves flutter#148291) (flutter#150661)
  [CupertinoActionSheet] Fix the layout (part 1) (flutter#149636)
  Remove discontinued `device_info` and `connectivity` plugins from `flutter_gallery`, roll pub packages (flutter#150585)
  [a11y] Update semantics in bottom_navigation_bar.dart (flutter#150576)
  Roll Flutter Engine from dda82d905f37 to 33415c6ee7c2 (7 revisions) (flutter#150637)
  Reland 4: [CupertinoActionSheet] Match colors to native (flutter#150442)
  Enable SelectionArea double tap/triple tap gesture support for mobile platforms (flutter#149295)
  made SelectionArea alignment consistent between web and other platform (flutter#150037)
  Fix link hook typo (flutter#150194)
  Stop looking for .packages when analyzing (flutter#150349)
  Update flutter.dev links from misc packages to more permanent destinations (flutter#150532)
  Roll Flutter Engine from dd37cefd4a94 to dda82d905f37 (9 revisions) (flutter#150582)
  Update Material token to the latest 4.1.0 (flutter#150382)
  Let the lockfile script generate lockfiles for kotlin gradle files as well (flutter#150471)
  Make popup menu hardcoded padding configurable (flutter#150506)
  [flutter_tools] un-hide the --dds flag (flutter#150280)
  [material/menu_anchor.dart] Remove _MenuAnchorState from parent when disposed. (flutter#149586)
  Add test for inherited_notifier.0.dart (flutter#150344)
  [CLI tool] in `flutter test`, consider `--flavor` when validating the cached asset bundle (flutter#150461)
  Test InputDecoration API examples (flutter#148560)
  ...
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jun 24, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jun 24, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jun 25, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jun 25, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jun 25, 2024
auto-submit bot pushed a commit to flutter/packages that referenced this pull request Jun 25, 2024
Roll Flutter from 6c06abb to e726eb4 (51 revisions)

flutter/flutter@6c06abb...e726eb4

2024-06-25 engine-flutter-autoroll@skia.org Roll Packages from 711b4ac to 03f5f6d (21 revisions) (flutter/flutter#150779)
2024-06-25 engine-flutter-autoroll@skia.org Roll Flutter Engine from afa7ce19bca8 to fbd92055f3a6 (1 revision) (flutter/flutter#150777)
2024-06-25 32538273+ValentinVignal@users.noreply.github.com Reland Add tests for form_text_field.1.dart (#150481) (#150696) (flutter/flutter#150750)
2024-06-25 104349824+huycozy@users.noreply.github.com Add an example for CupertinoPopupSurface (flutter/flutter#150357)
2024-06-25 danny@tuppeny.com [flutter_tools/dap] Handle app.stop errors when launching/attaching (flutter/flutter#149734)
2024-06-25 engine-flutter-autoroll@skia.org Roll Flutter Engine from be7db94196fe to afa7ce19bca8 (18 revisions) (flutter/flutter#150762)
2024-06-25 sigurdm@google.com Remove dubious comment (flutter/flutter#150608)
2024-06-25 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Manual engine roll to 6884e83 (#150733)" (flutter/flutter#150746)
2024-06-25 34871572+gmackall@users.noreply.github.com Manual engine roll to 6884e83 (flutter/flutter#150733)
2024-06-24 goderbauer@google.com Linkify 'see also' sections (flutter/flutter#150734)
2024-06-24 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#150712)
2024-06-24 parlough@gmail.com Update flutter.dev links from framework to more permanent destinations (flutter/flutter#150531)
2024-06-24 jason-simmons@users.noreply.github.com Manual engine roll to be7db94196fe (flutter/flutter#150714)
2024-06-24 reidbaker@google.com allow adb to set canfail then use canFail=true for clearing logs (flutter/flutter#150517)
2024-06-24 reidbaker@google.com Update android_device.dart to have clearLogs not print to standard error (flutter/flutter#150197)
2024-06-24 goderbauer@google.com Update issue link in analysis_options.yaml (flutter/flutter#150395)
2024-06-24 srawlins@google.com Fix a number of broken doc comment references (flutter/flutter#150540)
2024-06-24 katelovett@google.com Fix flaky sliver tree test (flutter/flutter#150707)
2024-06-24 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Add tests for form_text_field.1.dart (#150481)" (flutter/flutter#150696)
2024-06-24 32538273+ValentinVignal@users.noreply.github.com Add tests for form_text_field.1.dart (flutter/flutter#150481)
2024-06-22 matthew-carroll@users.noreply.github.com Fix: Memory leak in UndoHistory widget because it never de-registered itself as global UndoManager client (Resolves #148291) (flutter/flutter#150661)
2024-06-22 dkwingsmt@users.noreply.github.com [CupertinoActionSheet] Fix the layout (part 1) (flutter/flutter#149636)
2024-06-21 34871572+gmackall@users.noreply.github.com Remove discontinued `device_info` and `connectivity` plugins from `flutter_gallery`, roll pub packages (flutter/flutter#150585)
2024-06-21 jhy03261997@gmail.com [a11y] Update semantics in bottom_navigation_bar.dart (flutter/flutter#150576)
2024-06-21 engine-flutter-autoroll@skia.org Roll Flutter Engine from dda82d905f37 to 33415c6ee7c2 (7 revisions) (flutter/flutter#150637)
2024-06-21 dkwingsmt@users.noreply.github.com Reland 4: [CupertinoActionSheet] Match colors to native (flutter/flutter#150442)
2024-06-21 rmolivares@renzo-olivares.dev Enable SelectionArea double tap/triple tap gesture support for mobile platforms (flutter/flutter#149295)
2024-06-21 limanegaya@gmail.com made SelectionArea alignment consistent between web and other platform (flutter/flutter#150037)
2024-06-21 moritz@suemmermann.de Fix link hook typo (flutter/flutter#150194)
2024-06-21 sigurdm@google.com Stop looking for .packages when analyzing (flutter/flutter#150349)
2024-06-20 parlough@gmail.com Update flutter.dev links from misc packages to more permanent destinations (flutter/flutter#150532)
2024-06-20 engine-flutter-autoroll@skia.org Roll Flutter Engine from dd37cefd4a94 to dda82d905f37 (9 revisions) (flutter/flutter#150582)
2024-06-20 36861262+QuncCccccc@users.noreply.github.com Update Material token to the latest 4.1.0 (flutter/flutter#150382)
2024-06-20 34871572+gmackall@users.noreply.github.com Let the lockfile script generate lockfiles for kotlin gradle files as well (flutter/flutter#150471)
2024-06-20 bruno.leroux@gmail.com Make popup menu hardcoded padding configurable (flutter/flutter#150506)
2024-06-20 christopherfujino@gmail.com [flutter_tools] un-hide the --dds flag (flutter/flutter#150280)
2024-06-20 59215665+davidhicks980@users.noreply.github.com [material/menu_anchor.dart] Remove _MenuAnchorState from parent when disposed. (flutter/flutter#149586)
2024-06-20 32538273+ValentinVignal@users.noreply.github.com Add test for inherited_notifier.0.dart (flutter/flutter#150344)
2024-06-20 andrewrkolos@gmail.com [CLI tool] in `flutter test`, consider `--flavor` when validating the cached asset bundle (flutter/flutter#150461)
2024-06-20 82763757+NobodyForNothing@users.noreply.github.com Test InputDecoration API examples (flutter/flutter#148560)
2024-06-20 polinach@google.com Clean leaky tests. (flutter/flutter#150335)
2024-06-20 engine-flutter-autoroll@skia.org Roll Flutter Engine from f9c497f178d3 to dd37cefd4a94 (2 revisions) (flutter/flutter#150537)
2024-06-20 engine-flutter-autoroll@skia.org Roll Flutter Engine from a31279381b40 to f9c497f178d3 (9 revisions) (flutter/flutter#150528)
2024-06-19 32538273+ValentinVignal@users.noreply.github.com Add tests for about_list_tile.0.dart (flutter/flutter#150181)
2024-06-19 engine-flutter-autoroll@skia.org Roll Flutter Engine from 0ad18fe4c0b5 to a31279381b40 (7 revisions) (flutter/flutter#150473)
2024-06-18 jhy03261997@gmail.com Revert "[a11y] Add semantics: button to bottom navigation bar items and dropdown menu items" (flutter/flutter#150445)
...
sigurdm pushed a commit to sigurdm/flutter that referenced this pull request Jun 26, 2024
… cached asset bundle (flutter#150461)

Fixes flutter#150296

**Context.** `flutter test` has its own code path for writing flutter app [assets](https://docs.flutter.dev/ui/assets/assets-and-images). flutter#132985 introduced [flavor-conditional asset bundling ](https://docs.flutter.dev/deployment/flavors#conditionally-bundling-assets-based-on-flavor), which lets users control which assets get bundled based on `--flavor`. `--flavor` is supported in `flutter test`.

**Bug and fix.** `--flavor` isn't considered when deciding whether we need to rebuild this asset bundle:

https://github.com/flutter/flutter/blob/5e448f4ce57723ac0792ae822ebac69df3188ba1/packages/flutter_tools/lib/src/commands/test.dart#L709

This PR address this by writing the value of `--flavor` to a file in the build directory and checking that when validating the cached asset bundle.
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
autosubmit Merge PR when tree becomes green via auto submit App cp: stable cherry pick this pull request to stable release candidate branch tool Affects the "flutter" command-line tool. See also t: labels.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Conditionally bundling assets based on flavor make tests to fail
2 participants