flutter/dev
Gray Mackall b98d48549c
Make flutter tool enforce >= kotlin 1.7.0, Gradle 7.0.2, and AGP 7.0.0, and Fix test failures blocking androidx upgrade (#149204)
PR to pave the way for https://github.com/flutter/engine/pull/53001 to re-land

Summary: 
- Enforces use of Kotlin >= `1.7.0` (please see below note)
- Fixes ci failures that prevented the above PR from landing.

Details:

Because it landed initially, we are able to fake the roll in this PR to fix all the tests ([see my comment](https://github.com/flutter/flutter/pull/149204#discussion_r1617924772)).

Fixes all the tests that failed:
1. `module_test` failing on multiple platforms (3/9 of the failures). 
Failure is 
```
> Android resource linking failed
   ERROR:/b/s/w/ir/x/t/flutter_module_test.KECMXW/hello/.android/plugins_build_output/device_info/intermediates/merged_res/release/values/values.xml:194: AAPT: error: resource android:attr/lStar not found.
```

This is a rather unhelpful error message but some [folks online suggest](https://stackoverflow.com/a/69050529) that upgrading your `compileSdk` version fixes this.
These resolve when I remove the dependency on the long discontinued [package_info](https://pub.dev/packages/package_info) and [device_info](https://pub.dev/packages/device_info) packages, perhaps because they are transitively pulling in low `compileSdk` versions? This is unclear to me.

2. `module_custom_host_app_name_test` was failing for the same reason (another 3/9, or cumulative 6/9).
3. `tool_integration_tests_3_4` was a flake 🙂 (7/9)
4. `framework_tests_slow` needed a newer version of the Kotlin Gradle plugin (the flutter tool tells us this, so I just upgraded as suggested) and it resolved (8/9)
5.`android_preview_tool_integration_tests` needed newer AGP and KGP versions. I also refactored the tests, and bumped our error versions, fixing https://github.com/flutter/flutter/issues/142653.

**Note that the bump to KGP is not in line with our policy** - we didn't warn for `1.5.0-1.6.x` for a release (or at all) before dropping support. But I think it might still be justified:
- The bump to our androidx libraries unblocks ongoing Scribe work, and also includes a fix for a [memory leak](https://github.com/flutter/flutter/issues/129307#issuecomment-1601636959) and a [crash on folding phones](https://github.com/flutter/flutter/issues/114868#issuecomment-2133226962), among many other bug fixes.
- Gradle [doesn't test on half of that range](https://docs.gradle.org/current/userguide/compatibility.html#kotlin), and so we implicitly can't claim to support it either. More generally, our Java and Kotlin support ranges should probably strictly fall within what Gradle tests.
2024-06-18 20:24:09 +00:00
..
a11y_assessments Roll pub packages (#150267) 2024-06-14 18:19:41 +00:00
automated_tests Roll pub packages (#150267) 2024-06-14 18:19:41 +00:00
benchmarks Fix flaky complex_layout_scroll_perf__memory & flutter_gallery__memory_nav (#150368) 2024-06-17 17:14:47 +00:00
bots Add test for icon_button.3.dart (#149988) 2024-06-18 15:03:59 +00:00
conductor Update old wiki links (#149544) 2024-06-17 17:26:08 +00:00
customer_testing Roll pub packages (#150267) 2024-06-14 18:19:41 +00:00
devicelab Make flutter tool enforce >= kotlin 1.7.0, Gradle 7.0.2, and AGP 7.0.0, and Fix test failures blocking androidx upgrade (#149204) 2024-06-18 20:24:09 +00:00
docs Update API docs footer (#150347) 2024-06-17 19:39:12 +02:00
forbidden_from_release_tests Roll pub packages (#150070) 2024-06-12 05:40:31 +00:00
integration_tests Update old wiki links (#149544) 2024-06-17 17:26:08 +00:00
manual_tests Roll pub packages (#150267) 2024-06-14 18:19:41 +00:00
missing_dependency_tests Enable private field promotion for dev (#134480) 2023-09-12 18:29:00 +00:00
snippets Roll pub packages (#150267) 2024-06-14 18:19:41 +00:00
tools Update old wiki links (#149544) 2024-06-17 17:26:08 +00:00
tracing_tests Make flutter tool enforce >= kotlin 1.7.0, Gradle 7.0.2, and AGP 7.0.0, and Fix test failures blocking androidx upgrade (#149204) 2024-06-18 20:24:09 +00:00
analysis_options.yaml Enable more lints (#91642) 2021-10-14 22:03:03 -07:00
README.md Migrate to .ci.yaml (#82960) 2021-05-19 20:09:46 -07:00

This directory contains tools and resources that the Flutter team uses during the development of the framework. The tools in this directory should not be necessary for developing Flutter applications, though of course, they may be interesting if you are curious.

The tests in this directory are run in the framework_tests_misc-* shards.