-
Notifications
You must be signed in to change notification settings - Fork 29.7k
Make native asset integration test more robust, thereby allowing smooth auto-update of packages via flutter update-packages
#158170
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
Merged
mkustermann
merged 2 commits into
flutter:master
from
mkustermann:native-assets-tests-fix
Nov 5, 2024
Merged
Make native asset integration test more robust, thereby allowing smooth auto-update of packages via flutter update-packages
#158170
mkustermann
merged 2 commits into
flutter:master
from
mkustermann:native-assets-tests-fix
Nov 5, 2024
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…th auto-update of packages via `flutter update-packages`
Currently the bot that runs `flutter update-packages` makes PRs that
fail due to native asset integration tests failing.
The root cause is due to incompatible versions on `package:logging`. The
bot tries to upgrade `package:logging` from `1.2.0` to `1.3.0`.
Here's what seems to happen:
* `flutter update-packages` will update
`dev/integration_tests/link_hook/pubspec.yaml` with `package:logging`
to `1.3.0` (as it does with all other `pubspec.yaml` files in
the flutter repository)
* `flutter create --template=package_ffi` will generate a template
with `package:logging` `^1.2.0`
* The test in question
* creates ffi template (which will use `^1.2.0`)
* make it depend on `dev/integration_tests/link_hook` (which uses `=1.3.0`)
* changes logging dependency from the template from `^1.2.0` to `=1.2.0`
IMHO
* `flutter update-packages` is doing what it's supposed to
* `flutter create --template=package_ffi` can generate templates
with versions it determines (maybe there are use cases where
we want to generate templates with older versions)
* The problematic part is the test:
* it makes the generated template depend on `link_hook` and
* changes template generated pubspec to use pinned dependencies
This PR makes the test package (created via template) use the pinned
package versions from `dev/integration_tests/link_hook`
(for dependencies that are common among the two).
All other dependencies that the template has on top of
`dev/integration_tests/link_hook` it can pin as it does currently.
This will give us deterministic CI behavior (as we use flutter pined
packages and remaining deps being pinned via template)
It avoids changing the `flutter update-packages` and
`flutter create --template=package_ffi` (as their behavior seems reasonable)
mraleph
approved these changes
Nov 5, 2024
Member
mraleph
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 with changes
packages/flutter_tools/test/integration.shard/isolated/native_assets_test_utils.dart
Outdated
Show resolved
Hide resolved
packages/flutter_tools/test/integration.shard/isolated/native_assets_test_utils.dart
Outdated
Show resolved
Hide resolved
packages/flutter_tools/test/integration.shard/isolated/native_assets_test_utils.dart
Outdated
Show resolved
Hide resolved
Member
Author
|
Thanks, @mraleph ! |
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/packages
that referenced
this pull request
Nov 5, 2024
…ing smooth auto-update of packages via `flutter update-packages` (flutter/flutter#158170)
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/packages
that referenced
this pull request
Nov 5, 2024
…ing smooth auto-update of packages via `flutter update-packages` (flutter/flutter#158170)
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/packages
that referenced
this pull request
Nov 5, 2024
…ing smooth auto-update of packages via `flutter update-packages` (flutter/flutter#158170)
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/packages
that referenced
this pull request
Nov 5, 2024
…ing smooth auto-update of packages via `flutter update-packages` (flutter/flutter#158170)
auto-submit bot
pushed a commit
to flutter/packages
that referenced
this pull request
Nov 5, 2024
flutter/flutter@8591d0c...29d40f7 2024-11-05 [email protected] increase subsharding for `Windows build_tests` from 8 to 9 (flutter/flutter#158146) 2024-11-05 [email protected] Reland2: Revert "Revert "Add a warning/additional handlers for parsing`synthetic-package`."" (flutter/flutter#158184) 2024-11-05 [email protected] Reland1: "Revert "Add and plumb `useImplicitPubspecResolution` across `flutter_tools`."" (flutter/flutter#158126) 2024-11-05 [email protected] Roll Packages from 796afa3 to 7219431 (11 revisions) (flutter/flutter#158179) 2024-11-05 [email protected] Make native asset integration test more robust, thereby allowing smooth auto-update of packages via `flutter update-packages` (flutter/flutter#158170) 2024-11-05 [email protected] Readability change to `flutter.groovy`, align on null assignment, reduce unused scope for some methods, apply static where possible (flutter/flutter#157471) 2024-11-05 [email protected] Roll Flutter Engine from 7207a8fbec93 to f56401062e42 (1 revision) (flutter/flutter#158169) 2024-11-05 [email protected] Add test for `raw_scrollbar.shape.0.dart` (flutter/flutter#158094) 2024-11-05 [email protected] Roll Flutter Engine from 418609dd5b58 to 7207a8fbec93 (1 revision) (flutter/flutter#158156) 2024-11-05 [email protected] Refactor DropdownMenu tests (flutter/flutter#157913) 2024-11-05 [email protected] Roll Flutter Engine from 6271a92a376f to 418609dd5b58 (3 revisions) (flutter/flutter#158152) 2024-11-05 [email protected] Marks Linux_pixel_7pro flavors_test to be flaky (flutter/flutter#156956) 2024-11-05 [email protected] Further remove web-only considerations that are no longer necessary (flutter/flutter#158143) 2024-11-05 [email protected] Add optional parameter to FlutterTesterDevices. (flutter/flutter#158133) 2024-11-05 [email protected] Roll Flutter Engine from 75acceedca41 to 6271a92a376f (2 revisions) (flutter/flutter#158148) 2024-11-05 [email protected] Extract and restore a test that a blank native assets project still builds (flutter/flutter#158141) 2024-11-04 [email protected] Remove references to the HTML renderer in public docs. (flutter/flutter#158035) 2024-11-04 [email protected] Roll Flutter Engine from f880b56b6ede to 75acceedca41 (1 revision) (flutter/flutter#158137) 2024-11-04 [email protected] Fix `WidgetStateProperty` documentation (flutter/flutter#154298) 2024-11-04 [email protected] Roll Flutter Engine from 25c7e471e2ef to f880b56b6ede (5 revisions) (flutter/flutter#158132) 2024-11-04 [email protected] Roll Flutter Engine from 05cb5d7f7939 to 25c7e471e2ef (12 revisions) (flutter/flutter#158127) 2024-11-04 [email protected] Remove use_modular_headers! from Swift Podfiles (flutter/flutter#156257) 2024-11-04 [email protected] Disable failing native assets test (flutter/flutter#158119) 2024-11-04 [email protected] Fix `NestedScrollView` inner position logic (flutter/flutter#157756) 2024-11-04 [email protected] Add benchmarks for single-threaded Skwasm. (flutter/flutter#158027) 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
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/packages
that referenced
this pull request
Feb 12, 2025
…ing smooth auto-update of packages via `flutter update-packages` (flutter/flutter#158170)
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/packages
that referenced
this pull request
Feb 13, 2025
…ing smooth auto-update of packages via `flutter update-packages` (flutter/flutter#158170)
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/packages
that referenced
this pull request
Feb 13, 2025
…ing smooth auto-update of packages via `flutter update-packages` (flutter/flutter#158170)
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/packages
that referenced
this pull request
Mar 6, 2025
…ing smooth auto-update of packages via `flutter update-packages` (flutter/flutter#158170)
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/packages
that referenced
this pull request
Mar 7, 2025
…ing smooth auto-update of packages via `flutter update-packages` (flutter/flutter#158170)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Currently the bot that runs
flutter update-packagesmakes PRs that fail due to native asset integration tests failing.The root cause is due to incompatible versions on
package:logging. The bot tries to upgradepackage:loggingfrom1.2.0to1.3.0.Here's what seems to happen:
flutter update-packageswill updatedev/integration_tests/link_hook/pubspec.yamlwithpackage:loggingto1.3.0(as it does with all otherpubspec.yamlfiles in the flutter repository)flutter create --template=package_ffiwill generate a template withpackage:logging^1.2.0The test in question
^1.2.0)dev/integration_tests/link_hook(which uses=1.3.0)^1.2.0to=1.2.0IMHO
flutter update-packagesis doing what it's supposed toflutter create --template=package_ffican generate templates with versions it determines (maybe there are use cases where we want to generate templates with older versions)The problematic part is the test:
link_hookandThis PR makes the test package (created via template) use the pinned package versions from
dev/integration_tests/link_hook(for dependencies that are common among the two).All other dependencies that the template has on top of
dev/integration_tests/link_hookit can pin as it does currently.This will give us deterministic CI behavior (as we use flutter pined packages and remaining deps being pinned via template) It avoids changing the
flutter update-packagesandflutter create --template=package_ffi(as their behavior seems reasonable)Should fix #158135