Skip to content

Conversation

@gmackall
Copy link
Member

@gmackall gmackall commented Jul 10, 2024

Sets up tests that verify we can build a fresh counter app across our Gradle/AGP/Kotlin support range.

Post submit only, because the suite takes ~30 minutes to run, and I expect it to be somewhat rare that we break only one of these versions (and therefore it doesn't get caught by existing presubmits).

Pre-launch Checklist

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

@github-actions github-actions bot added the tool Affects the "flutter" command-line tool. See also t: labels. label Jul 10, 2024
@gmackall gmackall force-pushed the gradle_agp_test_suite branch from f02f8e1 to 22326f1 Compare July 10, 2024 22:37
@gmackall
Copy link
Member Author

Tested with

../../bin/cache/dart-sdk/bin/dart bin/test_runner.dart test -t android_java17_dependency_smoke_tests

from

//flutter/flutter/dev/devicelab

? null : 'Dependency file should have $expectedTarget as target. Instead found $contentSnapshot';
}

class VersionTuple {
Copy link
Member Author

@gmackall gmackall Jul 30, 2024

Choose a reason for hiding this comment

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

This code is largely duplicated from the code that I also wrote in packages/flutter_tools/test/android_common.dart, with some changes to get it to run in the devicelab test harness.

It's sort of unfortunate that it is duplicated, but I wanted to stop fragmenting the flutter_tool test suite even further than I already had, and also didn't feel that it made much sense for this suite to live inside the flutter_tool tests anyways at it largely isn't intended as a test of the tool, but of the dependencies we rely on to build Android apps.

Copy link
Contributor

Choose a reason for hiding this comment

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

Then it is especially important to document that this class is a duplicate and link to/from each implementation so that if improvements or fixes are made they can be applied to both.

This will be easier if the class is in its own file.

Copy link
Member Author

Choose a reason for hiding this comment

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

Moved to own file + added a comment in both files to suggest mirroring changes.

@gmackall gmackall marked this pull request as ready for review July 30, 2024 22:01
@gmackall gmackall requested a review from a team July 31, 2024 01:38
@reidbaker reidbaker requested a review from bartekpacia July 31, 2024 14:35

- name: Linux android_java11_dependency_smoke_tests
recipe: devicelab/devicelab_drone
presubmit: false
Copy link
Contributor

Choose a reason for hiding this comment

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

Is this presubmit false because this test is slow?

Copy link
Member Author

Choose a reason for hiding this comment

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

Yes, that was my intention

import 'package:flutter_devicelab/framework/apk_utils.dart';
import 'package:flutter_devicelab/framework/framework.dart';

List<VersionTuple> versionTuples = <VersionTuple>[
Copy link
Contributor

Choose a reason for hiding this comment

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

Consider linking to the documentation for where we define the lowest supported versions and where we know that these versions are java 11 compatible.

Copy link
Member Author

Choose a reason for hiding this comment

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

Added a link to the file where we define range, and added a link to compatibility matrix explaining the choice of Java 11

import 'package:flutter_devicelab/framework/apk_utils.dart';
import 'package:flutter_devicelab/framework/framework.dart';

// Methodology:
Copy link
Contributor

Choose a reason for hiding this comment

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

Good comment

];


const String gradleSettingsFileContent = r'''
Copy link
Contributor

Choose a reason for hiding this comment

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

Please add dart doc.

Copy link
Member Author

Choose a reason for hiding this comment

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

Added

Copy link
Member Author

Choose a reason for hiding this comment

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

Also added dart docs to the main test methods

? null : 'Dependency file should have $expectedTarget as target. Instead found $contentSnapshot';
}

class VersionTuple {
Copy link
Contributor

Choose a reason for hiding this comment

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

Then it is especially important to document that this class is a duplicate and link to/from each implementation so that if improvements or fixes are made they can be applied to both.

This will be easier if the class is in its own file.

@gmackall
Copy link
Member Author

Addressed feedback, going to land this now and verify the targets start running correctly and aren't flakey. Will still be marked bringup for a while before I unmark. Any reviewers feel free to provide feedback after landing

@gmackall gmackall added the autosubmit Merge PR when tree becomes green via auto submit App label Jul 31, 2024
@auto-submit auto-submit bot merged commit a1f0360 into flutter:master Jul 31, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 1, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 1, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 1, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 1, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 1, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 2, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 2, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 2, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 2, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 3, 2024
auto-submit bot pushed a commit to flutter/packages that referenced this pull request Aug 3, 2024
Manual roll Flutter from 85960d2 to 4ff9462 (45 revisions)

Manual roll requested by stuartmorgan@google.com

flutter/flutter@85960d2...4ff9462

2024-08-01 matanlurey@users.noreply.github.com Fix local testing, gradle XML errors, and enable on CI. (flutter/flutter#152383)
2024-08-01 32538273+ValentinVignal@users.noreply.github.com Fix formatting issues in `search_anchor.0_test.dart` (flutter/flutter#152669)
2024-08-01 32538273+ValentinVignal@users.noreply.github.com Add tests for search anchor examples (flutter/flutter#152659)
2024-08-01 engine-flutter-autoroll@skia.org Roll Flutter Engine from 4dc94d6f88ba to 7c4a44611abe (1 revision) (flutter/flutter#152665)
2024-08-01 engine-flutter-autoroll@skia.org Roll Flutter Engine from f546fef7d7cd to 4dc94d6f88ba (1 revision) (flutter/flutter#152663)
2024-08-01 engine-flutter-autoroll@skia.org Roll Flutter Engine from 0fbff219c498 to f546fef7d7cd (2 revisions) (flutter/flutter#152661)
2024-08-01 engine-flutter-autoroll@skia.org Roll Flutter Engine from 32f788823f43 to 0fbff219c498 (5 revisions) (flutter/flutter#152658)
2024-08-01 engine-flutter-autoroll@skia.org Manual roll Flutter Engine from 32f788823f43 to ed95b491f260 (3 revisions) (flutter/flutter#152654)
2024-08-01 engine-flutter-autoroll@skia.org Manual roll Flutter Engine from 16332725788c to 32f788823f43 (11 revisions) (flutter/flutter#152648)
2024-07-31 dkwingsmt@users.noreply.github.com [CupertinoActionSheet] Make `_ActionSheetButtonBackground` stateless (flutter/flutter#152283)
2024-07-31 nate.w5687@gmail.com Implementing null-aware logic in `/packages/flutter/` (flutter/flutter#152294)
2024-07-31 andrewrkolos@gmail.com Reintroduce verbose logging for hot reload flake (flutter/flutter#152639)
2024-07-31 59215665+davidhicks980@users.noreply.github.com [material/menu_anchor.dart] Remove unused early key event listener (flutter/flutter#150915)
2024-07-31 victorsanniay@gmail.com Improve `CupertinoCheckbox` fidelity (flutter/flutter#151441)
2024-07-31 43054281+camsim99@users.noreply.github.com Update docs to support new Android version (flutter/flutter#152503)
2024-07-31 43054281+camsim99@users.noreply.github.com [Android] Update integration test AVD dependency to use Android 35 emulators (flutter/flutter#152498)
2024-07-31 rmolivares@renzo-olivares.dev Shift + click gesture support for SelectionArea on desktop platforms (flutter/flutter#148574)
2024-07-31 tessertaha@gmail.com Add ability to clip `Stepper` step content (flutter/flutter#152370)
2024-07-31 58190796+MitchellGoodwin@users.noreply.github.com Calendar font factor (flutter/flutter#152341)
2024-07-31 ian@hixie.ch Remove redundant usages of zones in skia_client.dart (flutter/flutter#149366)
2024-07-31 34871572+gmackall@users.noreply.github.com Set up tests that verify we can build a fresh counter app across our Gradle/AGP/Kotlin support range (flutter/flutter#151568)
2024-07-31 andrewrkolos@gmail.com remove bringup from Windows tool_integration_tests_* (flutter/flutter#152599)
2024-07-31 38110731+aliasgar4558@users.noreply.github.com � : Animation controller now has ability to repeat animation 'n' no. of times. (flutter/flutter#150764)
2024-07-31 engine-flutter-autoroll@skia.org Roll Flutter Engine from 3b31b21599d1 to 16332725788c (1 revision) (flutter/flutter#152631)
2024-07-31 engine-flutter-autoroll@skia.org Roll Flutter Engine from b73367a30e9b to 3b31b21599d1 (8 revisions) (flutter/flutter#152625)
2024-07-31 engine-flutter-autoroll@skia.org Roll Packages from 99e8606 to 46a712f (8 revisions) (flutter/flutter#152622)
2024-07-31 32538273+ValentinVignal@users.noreply.github.com Add tests for scaffold messenger examples (flutter/flutter#152536)
2024-07-31 32538273+ValentinVignal@users.noreply.github.com Add test for search_anchor.0.dart (flutter/flutter#152371)
2024-07-31 bruno.leroux@gmail.com Use decoration hint text as the default value for dropdown button hints (flutter/flutter#152474)
2024-07-31 bruno.leroux@gmail.com Deprecate invalid InputDecoration.collapsed parameters (flutter/flutter#152486)
2024-07-31 andrewrkolos@gmail.com increase sharding on Windows tool_integration_tests (flutter/flutter#152582)
2024-07-31 engine-flutter-autoroll@skia.org Roll Flutter Engine from e2ece7e58480 to b73367a30e9b (4 revisions) (flutter/flutter#152592)
2024-07-31 engine-flutter-autoroll@skia.org Roll Flutter Engine from 0b42657a184e to e2ece7e58480 (2 revisions) (flutter/flutter#152589)
2024-07-31 engine-flutter-autoroll@skia.org Roll Flutter Engine from 08f9be3ab284 to 0b42657a184e (2 revisions) (flutter/flutter#152586)
2024-07-30 matanlurey@users.noreply.github.com Clarify and cleanup the test-exemption wording in tree-hygiene. (flutter/flutter#152402)
2024-07-30 ditman@gmail.com [web] Set COEP:credentialless on flutter run/drive. (flutter/flutter#152413)
2024-07-30 engine-flutter-autoroll@skia.org Roll Flutter Engine from a4b88a37d511 to 08f9be3ab284 (5 revisions) (flutter/flutter#152583)
2024-07-30 fluttergithubbot@gmail.com Marks Mac platform_channel_sample_test_macos to be flaky (flutter/flutter#151884)
2024-07-30 engine-flutter-autoroll@skia.org Roll Flutter Engine from a6c5ff26c266 to a4b88a37d511 (2 revisions) (flutter/flutter#152575)
2024-07-30 jhy03261997@gmail.com Reland #151599 (Add button semantics in list tile ) with a flag to control behavior.  (flutter/flutter#152526)
2024-07-30 zanderso@users.noreply.github.com Shift macOS/Android tests from Pixel 7 to mokey in staging (flutter/flutter#152571)
2024-07-30 engine-flutter-autoroll@skia.org Roll Flutter Engine from 31bb9f98472a to a6c5ff26c266 (5 revisions) (flutter/flutter#152573)
2024-07-30 engine-flutter-autoroll@skia.org Roll Packages from 247fb5f to 99e8606 (5 revisions) (flutter/flutter#152567)
2024-07-30 tessertaha@gmail.com Fix default avatar icon theme size for Material 2 (flutter/flutter#152307)
...
TytaniumDev pushed a commit to TytaniumDev/flutter that referenced this pull request Aug 7, 2024
…Gradle/AGP/Kotlin support range (flutter#151568)

Sets up tests that verify we can build a fresh counter app across our Gradle/AGP/Kotlin support range.

Post submit only, because the suite takes ~30 minutes to run, and I expect it to be _somewhat_ rare that we break only one of these versions (and therefore it doesn't get caught by existing presubmits).
Buchimi pushed a commit to Buchimi/flutter that referenced this pull request Sep 2, 2024
…Gradle/AGP/Kotlin support range (flutter#151568)

Sets up tests that verify we can build a fresh counter app across our Gradle/AGP/Kotlin support range.

Post submit only, because the suite takes ~30 minutes to run, and I expect it to be _somewhat_ rare that we break only one of these versions (and therefore it doesn't get caught by existing presubmits).
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 11, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 12, 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 tool Affects the "flutter" command-line tool. See also t: labels.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants