-
Notifications
You must be signed in to change notification settings - Fork 108
Move support libraries to androidx #1398
Comments
Required for #1391 |
FYI: I copied this issue to our large AndroidX migration meta: TL;DR: We need downstream app projects to migrate first before we can migrate up the dependency tree. Is this something we could contribute? Is there a good time in your release schedule where such a migration would fit (and get the required QA attention)? |
@pocmo It looks like this issue has not been triaged yet. If we were to tackle this, we'd prioritize it in triage next Wednesday: can we get back to you then?
Yeah! I don't see why not. Let us know if you decide to take this route. ...good luck! 😝
I can't speak for the team and as the FFES dev, I'm missing context, but we are just finishing with the regression whack-a-mole from our refactor so I'd think this could be something to land once the refactor is stable (after maybe 1 or 2 releases?). Last week's release is was backed out – it's now in staged rollout – and we're working on the following release currently. |
Sure! :) |
FYI: it looks like the gradle configuration for the androidX testing libraries is different: https://developer.android.com/training/testing/set-up-project We should reconfigure our test set-up when we upgrade. Also, we should pin our versions to the versions from the release notes: https://developer.android.com/jetpack/androidx/releases/archive/test |
|
|
…tion Updated Gradle plugin to the most recent stable version (from 3.1.2 to 3.3.1). This updates Gradle from 4.4 to 4.10.1. Release notes don't show anything to be concerned about, and the app seems to build fine.
…ersion This version was mismatched, which caused Jetifier to not work. We spoke about updating this plugin in the future to prevent similar problems, but in the meantime I've added a comment
…up done. DOES NOT BUILD Cleanup done in following commits
MediaSession and PlaybackState were not updated by the official script
This method included contained a reference that no longer existed. As the method was unused, it was deleted rather than updated.
MediaSession and PlaybackState were not updated by the official script
This method included contained a reference that no longer existed. As the method was unused, it was deleted rather than updated.
These references were resolved by Intellij, but failed to resolve at build time. Replaced these with an alternate method of gaining Application context
…uilds // This Fastlane dependency causes our builds to fail due to having two different // versions of UiAutomator. Fastlane is not on the most recent version of // com.android.support.test.uiautomator, which presumably prevents Jetifier from // fixing this
Exclusions can cause weird runtime issues caused by different parts of the app using different versions of libraries, so this is a Good Thing
…androidx_version
…uttonEvent The newest version of the overridden method is now marked @nonnull
Updated Gradle plugin to the most recent stable version (from 3.1.2 to 3.3.1). This updates Gradle from 4.4 to 4.10.1. Release notes don't show anything to be concerned about, and the app seems to build fine.
This version was mismatched, which caused Jetifier to not work. We spoke about updating this plugin in the future to prevent similar problems, but in the meantime I've added a comment
…NOT BUILD Cleanup done in following commits
MediaSession and PlaybackState were not updated by the official script
This method included contained a reference that no longer existed. As the method was unused, it was deleted rather than updated.
References to ApplicationProvider were recognized in Intellij, but unrecognized at build time until this was redeclared as an androidTestImplementation. ¯\_(ツ)_/¯
// This Fastlane dependency causes our builds to fail due to having two different // versions of UiAutomator. Fastlane is not on the most recent version of // com.android.support.test.uiautomator, which presumably prevents Jetifier from // fixing this
Exclusions can cause weird runtime issues caused by different parts of the app using different versions of libraries, so this is a Good Thing
This dependency is not compatible with AndroidX. androidx.fragment.app.testing should eventually take its place, seems unstable at this time (we were unable to get it to work). Only two tests were using the removed dependency, and neither was of high importance, so they were removed.
These conditions are handled in main/AndroidManifest
The decision was made to suppress this warning until it became a problem in #848. The lint error reappeared during the AndroidX migration, while no other changes were made to the file
The newest version of the overridden method is now marked @nonnull
Why/User Benefit/User Problem
Like #991, we have to stay up to date with the latest android conventions. Staying up to date ensures we can add new android features for users easily. This migration is part of that. I don't know if there's a date that we have to do this by but I'd assume it's by next fall, for SDK 29. That being said, components and other libraries that migrate may force us to adopt this so we should do it sooner.
What / Requirements
Acceptance Criteria (how do I know when I’m done?)
The text was updated successfully, but these errors were encountered: