Skip to content
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

Upgrade all[most] androidx dependencies to latest #53001

Merged
merged 8 commits into from
May 28, 2024

Conversation

gmackall
Copy link
Member

@gmackall gmackall commented May 23, 2024

Upgrades every androidx dependency in the src/third_party/android_embedding_dependencies bundle to the latest version, except the lifecycle group*. Tested running a couple of apps as well because when updating these dependencies in the past I've been able to build the engine but then flutter run fail when trying to run an app.

Fixes flutter/flutter#129307, also unblocks a feature that will eventually be needed for Scribe.

[*]2.8.0 is the latest there, but I ran into an issue with dexing when I tried to upgrade, due to b/336164417, an AGP bug that had its fix backported to all >8.0.0 versions, but we still support less than that so we will have to wait on that upgrade.

Pre-launch Checklist

  • I read the Contributor Guide and followed the process outlined there for submitting PRs.
  • I read the Tree Hygiene wiki page, which explains my responsibilities.
  • I read and followed the Flutter Style Guide and the C++, Objective-C, Java style guides.
  • I listed at least one issue that this PR fixes in the description above.
  • I added new tests to check the change I am making or feature I am adding, or the PR is test-exempt. See testing the engine for instructions on writing and running engine tests.
  • I updated/added relevant documentation (doc comments with ///).
  • I signed the CLA.
  • All existing and new tests are passing.

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

@gmackall gmackall changed the title Upgrade all[most] all androidx dependencies to latest Upgrade all[most] androidx dependencies to latest May 23, 2024
@gmackall gmackall marked this pull request as ready for review May 23, 2024 19:30
@gmackall gmackall requested a review from a team May 23, 2024 19:31
Copy link
Contributor

@justinmc justinmc left a comment

Choose a reason for hiding this comment

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

I don't know enough about our build dependencies to truly LGTM this, but it looks good for my needs. The Scribe PR that needs this is #52943, where I'd like to be able to call things like EditorInfoCompat#setStylusHandwritingEnabled. Thanks for doing this!

@yaakovschectman
Copy link
Contributor

Looks good as far as I can tell, but I don't think I'm in the best position to actually approve it.

@eyebrowsoffire
Copy link
Contributor

Revert reason: flutter/flutter#149203

@eyebrowsoffire eyebrowsoffire added the revert Label used to revert changes in a closed and merged pull request. label May 28, 2024
Copy link
Contributor

auto-submit bot commented May 28, 2024

A reason for requesting a revert of flutter/engine/53001 could
not be found or the reason was not properly formatted. Begin a comment with 'Reason for revert:' to tell the bot why
this issue is being reverted.

@eyebrowsoffire
Copy link
Contributor

I'll make a manual revert

engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request May 28, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request May 28, 2024
eyebrowsoffire added a commit to eyebrowsoffire/engine that referenced this pull request May 28, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request May 28, 2024
auto-submit bot pushed a commit that referenced this pull request May 28, 2024
Revert label failed due to conflicts

`FlutterFragmentTest.java` was the only file that had merge issues, everything else is the output of `git revert 00e72e9`

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request May 29, 2024
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request May 29, 2024
…sions) (#149220)

Manual roll requested by [email protected]

flutter/engine@d032390...b26e1b0

2024-05-28 [email protected] Manual revert of #53001 (flutter/engine#53075)
2024-05-28 [email protected] Remove --ios-cpu flag. Only the arm64 variant is supported. (flutter/engine#53044)
2024-05-28 [email protected] Roll Skia from 229d94a8807e to ac454b80130c (1 revision) (flutter/engine#53074)
2024-05-28 [email protected] [Impeller] make strokes slightly lighter. (flutter/engine#53067)
2024-05-28 [email protected] Roll Skia from 23ddbb590e44 to 229d94a8807e (2 revisions) (flutter/engine#53071)
2024-05-28 [email protected] FlutterFragment predictive back (flutter/engine#52302)
2024-05-28 [email protected] Roll Skia from 02c359cf8233 to 23ddbb590e44 (2 revisions) (flutter/engine#53070)
2024-05-28 [email protected] Roll Skia from 4f91b3865441 to 02c359cf8233 (1 revision) (flutter/engine#53069)
2024-05-28 [email protected] [Impeller] shrunk the buffer for the rrect_blur (flutter/engine#53068)
2024-05-28 [email protected] Roll Skia from 91cd2b48377a to 4f91b3865441 (4 revisions) (flutter/engine#53066)
2024-05-28 [email protected] Upgrade all[most] androidx dependencies to latest (flutter/engine#53001)
2024-05-28 [email protected] Roll Skia from 0c2c490021b7 to 91cd2b48377a (3 revisions) (flutter/engine#53065)
2024-05-28 [email protected] Roll Skia from 545203f95d4e to 0c2c490021b7 (2 revisions) (flutter/engine#53063)
2024-05-28 [email protected] Roll Skia from 74b4d97be6ab to 545203f95d4e (1 revision) (flutter/engine#53062)
2024-05-28 [email protected] Roll Skia from 848d9498fd68 to 74b4d97be6ab (1 revision) (flutter/engine#53061)
2024-05-28 [email protected] Remove use of --nnbd-agnostic (flutter/engine#53055)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: 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
victorsanni pushed a commit to victorsanni/flutter that referenced this pull request May 31, 2024
…sions) (flutter#149220)

Manual roll requested by [email protected]

flutter/engine@d032390...b26e1b0

2024-05-28 [email protected] Manual revert of flutter#53001 (flutter/engine#53075)
2024-05-28 [email protected] Remove --ios-cpu flag. Only the arm64 variant is supported. (flutter/engine#53044)
2024-05-28 [email protected] Roll Skia from 229d94a8807e to ac454b80130c (1 revision) (flutter/engine#53074)
2024-05-28 [email protected] [Impeller] make strokes slightly lighter. (flutter/engine#53067)
2024-05-28 [email protected] Roll Skia from 23ddbb590e44 to 229d94a8807e (2 revisions) (flutter/engine#53071)
2024-05-28 [email protected] FlutterFragment predictive back (flutter/engine#52302)
2024-05-28 [email protected] Roll Skia from 02c359cf8233 to 23ddbb590e44 (2 revisions) (flutter/engine#53070)
2024-05-28 [email protected] Roll Skia from 4f91b3865441 to 02c359cf8233 (1 revision) (flutter/engine#53069)
2024-05-28 [email protected] [Impeller] shrunk the buffer for the rrect_blur (flutter/engine#53068)
2024-05-28 [email protected] Roll Skia from 91cd2b48377a to 4f91b3865441 (4 revisions) (flutter/engine#53066)
2024-05-28 [email protected] Upgrade all[most] androidx dependencies to latest (flutter/engine#53001)
2024-05-28 [email protected] Roll Skia from 0c2c490021b7 to 91cd2b48377a (3 revisions) (flutter/engine#53065)
2024-05-28 [email protected] Roll Skia from 545203f95d4e to 0c2c490021b7 (2 revisions) (flutter/engine#53063)
2024-05-28 [email protected] Roll Skia from 74b4d97be6ab to 545203f95d4e (1 revision) (flutter/engine#53062)
2024-05-28 [email protected] Roll Skia from 848d9498fd68 to 74b4d97be6ab (1 revision) (flutter/engine#53061)
2024-05-28 [email protected] Remove use of --nnbd-agnostic (flutter/engine#53055)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: 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
gmackall pushed a commit to gmackall/engine that referenced this pull request Jun 18, 2024
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Jun 18, 2024
…0, and Fix test failures blocking androidx upgrade (#149204)

PR to pave the way for flutter/engine#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](#149204 (comment))).

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 #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](#129307 (comment)) and a [crash on folding phones](#114868 (comment)), 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.
auto-submit bot pushed a commit that referenced this pull request Jun 18, 2024
Relands #53001.

Also pulls in @matanlurey's dependency on `androidx.lifecycle:lifecycle-process`, and upgrades it to `2.7.0`.

It is unblocked by the changes in flutter/flutter#149204.

Tested by building the engine, and then also by building the `flutter/packages` `all_packages` app on this branch, so that hopefully it will also roll smoothly into the packages repo.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
auto-submit bot added a commit that referenced this pull request Jun 19, 2024
…53462)" (#53468)

Reverts: #53462
Initiated by: gmackall
Reason for reverting: blocking roll (see flutter/flutter#150465 (comment)).
Original PR Author: gmackall

Reviewed By: {reidbaker}

This change reverts the following previous change:
Relands #53001.

Also pulls in @matanlurey's dependency on `androidx.lifecycle:lifecycle-process`, and upgrades it to `2.7.0`.

It is unblocked by the changes in flutter/flutter#149204.

Tested by building the engine, and then also by building the `flutter/packages` `all_packages` app on this branch, so that hopefully it will also roll smoothly into the packages repo.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
auto-submit bot pushed a commit that referenced this pull request Jun 24, 2024
Re-re-land #53001

(Reland attempt was at #53462)

Unblocked by flutter/flutter#150585, but will still need a manual roll because I will need to re-generate a bunch of lockfiles.

Also, https://github.com/flutter/flutter/blob/master/docs/engine/Testing-presubmit-Engine-PRs-with-the-Flutter-framework.md doesn't work (it's blocked on flutter/flutter#149780) so I mostly just have to pray that no new issues occur in the roll. But I believe all issues that came up in the last attempt should be addressed by the above pr and by manual lockfile generation.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
auto-submit bot added a commit that referenced this pull request Jun 25, 2024
…t" (#53532)" (#53546)

Reverts: #53532
Initiated by: gmackall
Reason for reverting: This breaks apps that use plugins that use compileSdk 31, some of which we use in our postsubmit (so it blocks the tree).
Original PR Author: gmackall

Reviewed By: {reidbaker, matanlurey}

This change reverts the following previous change:
Re-re-land #53001

(Reland attempt was at #53462)

Unblocked by flutter/flutter#150585, but will still need a manual roll because I will need to re-generate a bunch of lockfiles.

Also, https://github.com/flutter/flutter/blob/master/docs/engine/Testing-presubmit-Engine-PRs-with-the-Flutter-framework.md doesn't work (it's blocked on flutter/flutter#149780) so I mostly just have to pray that no new issues occur in the roll. But I believe all issues that came up in the last attempt should be addressed by the above pr and by manual lockfile generation.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Jun 26, 2024
Removes the `dual_screen` package from `new_gallery`. Unblocks the fourth attempt to land flutter/engine#53001.
auto-submit bot added a commit to flutter/flutter that referenced this pull request Jun 26, 2024
…50808)" (#150871)

Reverts: #150808
Initiated by: gmackall
Reason for reverting: Causing the new_gallery tests to hang.

I can repro now though, so should be able to find a fix shortly
Original PR Author: gmackall

Reviewed By: {christopherfujino, johnmccutchan, jtmcdole, jonahwilliams}

This change reverts the following previous change:
Removes the `dual_screen` package from `new_gallery`. Unblocks the fourth attempt to land flutter/engine#53001.
auto-submit bot pushed a commit that referenced this pull request Jun 27, 2024
…3592)

Re-re-re-land #53001.

I recreated the postsubmit failures of the [roll](flutter/flutter#150733) of the [last land](#53532), and then verified on a local branch that those same postsubmits pass with this upgrade after the land of flutter/flutter#150873. 

So I have pretty high confidence this won't cause any problems in the framework repo. I also tested on a previous land attempt that the `all_packages` app builds on this branch, so that is also a good sign for the packages repo.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
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 platform-android
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Update androidx window dependency to 1.1
5 participants