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

Update Android Material from 1.9.0 to 1.10.0 #12186

Merged
merged 4 commits into from
Aug 5, 2024

Conversation

malinajirka
Copy link
Contributor

@malinajirka malinajirka commented Aug 1, 2024

Description

This PR updates the Android Material library from version 1.9.0 to 1.10.0. In the code it seems we are upgrading from 1.6.1, but thanks to how transitive dependencies and gradle conflict resolution works, in reality we have been using version 1.9.0. You can verify this in the diff-tree-summary below.

The reason for this update is that we want to update Stripe Terminal SDK, which bumps this version to 1.10.0. Following the best practices - 🎩 hattip to @ParaskP7 - I'm updating an explicitly declared dependency in a separate PR.

The release notes can be found here. Notice they mention a known issue which is caused by the fact that 1.10.0 relies on AppCompat 1.6.1 which contains a bug - however, our app has already been using AppCompat 1.6.1 so this shouldn't affect this PR.

This PR also updates a transitive dependency - kotlin-reflect from 1.6.10 to 1.9.25. However, I haven't been able to find a standalone changelog for this library. Considering we are not using reflection directly in the app - just through dependencies - I believe this change is safe.

Testing information

Smoke test critical flows of the app - this update shouldn't theoretically break behavior, just animations/ui, but it's better to be safe and test it.

  • I have considered if this change warrants release notes and have added them to RELEASE-NOTES.txt if necessary. Use the "[Internal]" label for non-user-facing changes.

@malinajirka malinajirka requested a review from AnirudhBhat August 1, 2024 10:35
@malinajirka malinajirka added this to the 19.8 milestone Aug 1, 2024
@malinajirka malinajirka marked this pull request as draft August 1, 2024 10:38
@wpmobilebot
Copy link
Collaborator

Found 1 violations:

The PR caused the following dependency changes:

expand

-+--- com.google.android.material:material:1.6.1 -> 1.9.0
-|    +--- com.google.errorprone:error_prone_annotations:2.15.0 -> 2.26.1
-|    +--- androidx.annotation:annotation:1.2.0 -> 1.7.0 (*)
-|    +--- androidx.appcompat:appcompat:1.5.0 -> 1.6.1 (*)
-|    +--- androidx.cardview:cardview:1.0.0
-|    |    \--- androidx.annotation:annotation:1.0.0 -> 1.7.0 (*)
-|    +--- androidx.coordinatorlayout:coordinatorlayout:1.1.0
-|    |    +--- androidx.annotation:annotation:1.1.0 -> 1.7.0 (*)
-|    |    +--- androidx.core:core:1.1.0 -> 1.12.0 (*)
-|    |    +--- androidx.customview:customview:1.0.0 -> 1.1.0 (*)
-|    |    \--- androidx.collection:collection:1.0.0 -> 1.4.0 (*)
-|    +--- androidx.constraintlayout:constraintlayout:2.0.1 -> 2.1.4 (*)
-|    +--- androidx.core:core:1.6.0 -> 1.12.0 (*)
-|    +--- androidx.drawerlayout:drawerlayout:1.1.1 (*)
-|    +--- androidx.dynamicanimation:dynamicanimation:1.0.0
-|    |    +--- androidx.core:core:1.0.0 -> 1.12.0 (*)
-|    |    +--- androidx.collection:collection:1.0.0 -> 1.4.0 (*)
-|    |    \--- androidx.legacy:legacy-support-core-utils:1.0.0 (*)
-|    +--- androidx.annotation:annotation-experimental:1.0.0 -> 1.3.1 (*)
-|    +--- androidx.fragment:fragment:1.2.5 -> 1.6.2 (*)
-|    +--- androidx.lifecycle:lifecycle-runtime:2.0.0 -> 2.6.2 (*)
-|    +--- androidx.recyclerview:recyclerview:1.0.0 -> 1.3.2 (*)
-|    +--- androidx.transition:transition:1.2.0 -> 1.4.1
-|    |    +--- androidx.annotation:annotation:1.1.0 -> 1.7.0 (*)
-|    |    +--- androidx.core:core:1.1.0 -> 1.12.0 (*)
-|    |    \--- androidx.collection:collection:1.1.0 -> 1.4.0 (*)
-|    +--- androidx.vectordrawable:vectordrawable:1.1.0 (*)
-|    \--- androidx.viewpager2:viewpager2:1.0.0 -> 1.1.0-beta02
-|         +--- androidx.annotation:annotation:1.1.0 -> 1.7.0 (*)
-|         +--- androidx.annotation:annotation-experimental:1.3.0 -> 1.3.1 (*)
-|         +--- androidx.collection:collection:1.1.0 -> 1.4.0 (*)
-|         +--- androidx.core:core:1.3.2 -> 1.12.0 (*)
-|         +--- androidx.fragment:fragment:1.1.0 -> 1.6.2 (*)
-|         \--- androidx.recyclerview:recyclerview:1.3.1-rc01 -> 1.3.2 (*)
++--- com.google.android.material:material:1.10.0
+|    +--- org.jetbrains.kotlin:kotlin-bom:1.8.22
+|    |    +--- org.jetbrains.kotlin:kotlin-stdlib:1.8.22 -> 1.9.25 (c)
+|    |    +--- org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.22 -> 1.9.10 (c)
+|    |    +--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.22 -> 1.9.10 (c)
+|    |    +--- org.jetbrains.kotlin:kotlin-stdlib-common:1.8.22 -> 1.9.25 (c)
+|    |    \--- org.jetbrains.kotlin:kotlin-reflect:1.8.22 (c)
+|    +--- com.google.errorprone:error_prone_annotations:2.15.0 -> 2.26.1
+|    +--- androidx.activity:activity:1.8.0 (*)
+|    +--- androidx.annotation:annotation:1.2.0 -> 1.7.0 (*)
+|    +--- androidx.appcompat:appcompat:1.6.1 (*)
+|    +--- androidx.cardview:cardview:1.0.0
+|    |    \--- androidx.annotation:annotation:1.0.0 -> 1.7.0 (*)
+|    +--- androidx.coordinatorlayout:coordinatorlayout:1.1.0
+|    |    +--- androidx.annotation:annotation:1.1.0 -> 1.7.0 (*)
+|    |    +--- androidx.core:core:1.1.0 -> 1.12.0 (*)
+|    |    +--- androidx.customview:customview:1.0.0 -> 1.1.0 (*)
+|    |    \--- androidx.collection:collection:1.0.0 -> 1.4.0 (*)
+|    +--- androidx.constraintlayout:constraintlayout:2.0.1 -> 2.1.4 (*)
+|    +--- androidx.core:core:1.6.0 -> 1.12.0 (*)
+|    +--- androidx.drawerlayout:drawerlayout:1.1.1 (*)
+|    +--- androidx.dynamicanimation:dynamicanimation:1.0.0
+|    |    +--- androidx.core:core:1.0.0 -> 1.12.0 (*)
+|    |    +--- androidx.collection:collection:1.0.0 -> 1.4.0 (*)
+|    |    \--- androidx.legacy:legacy-support-core-utils:1.0.0 (*)
+|    +--- androidx.annotation:annotation-experimental:1.0.0 -> 1.3.1 (*)
+|    +--- androidx.fragment:fragment:1.2.5 -> 1.6.2 (*)
+|    +--- androidx.lifecycle:lifecycle-runtime:2.0.0 -> 2.6.2 (*)
+|    +--- androidx.recyclerview:recyclerview:1.0.0 -> 1.3.2 (*)
+|    +--- androidx.resourceinspection:resourceinspection-annotation:1.0.1 (*)
+|    +--- androidx.transition:transition:1.2.0 -> 1.4.1
+|    |    +--- androidx.annotation:annotation:1.1.0 -> 1.7.0 (*)
+|    |    +--- androidx.core:core:1.1.0 -> 1.12.0 (*)
+|    |    \--- androidx.collection:collection:1.1.0 -> 1.4.0 (*)
+|    +--- androidx.vectordrawable:vectordrawable:1.1.0 (*)
+|    \--- androidx.viewpager2:viewpager2:1.0.0 -> 1.1.0-beta02
+|         +--- androidx.annotation:annotation:1.1.0 -> 1.7.0 (*)
+|         +--- androidx.annotation:annotation-experimental:1.3.0 -> 1.3.1 (*)
+|         +--- androidx.collection:collection:1.1.0 -> 1.4.0 (*)
+|         +--- androidx.core:core:1.3.2 -> 1.12.0 (*)
+|         +--- androidx.fragment:fragment:1.1.0 -> 1.6.2 (*)
+|         \--- androidx.recyclerview:recyclerview:1.3.1-rc01 -> 1.3.2 (*)
 +--- androidx.navigation:navigation-ui-ktx:2.7.7
 |    \--- androidx.navigation:navigation-ui:2.7.7
-|         \--- com.google.android.material:material:1.4.0-beta01 -> 1.9.0 (*)
+|         \--- com.google.android.material:material:1.4.0-beta01 -> 1.10.0 (*)
 +--- org.wordpress:utils:3.5.0
-|    \--- com.google.android.material:material:1.2.1 -> 1.9.0 (*)
+|    \--- com.google.android.material:material:1.2.1 -> 1.10.0 (*)
 +--- org.wordpress:login:1.17.0
-|    \--- com.google.android.material:material:1.2.1 -> 1.9.0 (*)
+|    \--- com.google.android.material:material:1.2.1 -> 1.10.0 (*)
 +--- com.github.wordpress-mobile.WordPress-Aztec-Android:aztec:v1.3.45
-|    \--- com.google.android.material:material:1.0.0 -> 1.9.0 (*)
+|    \--- com.google.android.material:material:1.0.0 -> 1.10.0 (*)
 +--- project :libs:cardreader
 |    \--- com.stripe:stripeterminal-localmobile:3.1.1
-|         \--- com.google.android.material:material:1.9.0 (*)
+|         \--- com.google.android.material:material:1.9.0 -> 1.10.0 (*)
 +--- com.automattic:about:0.0.6
-|    +--- com.google.android.material:material:1.4.0 -> 1.9.0 (*)
+|    +--- com.google.android.material:material:1.4.0 -> 1.10.0 (*)
 |    \--- com.google.android.material:compose-theme-adapter:1.1.1
-|         \--- com.google.android.material:material:1.6.0-alpha01 -> 1.9.0 (*)
+|         \--- com.google.android.material:material:1.6.0-alpha01 -> 1.10.0 (*)
 +--- com.zendesk:support:5.0.8
 |    +--- com.zendesk:guide:1.0.7
 |    |    +--- com.zendesk:messaging:5.2.3
 |    |    |    +--- com.zendesk:common-ui:4.0.3
 |    |    |    |    +--- com.zendesk.belvedere2:belvedere:3.0.0-RC
-|    |    |    |    |    \--- com.google.android.material:material:1.2.0 -> 1.9.0 (*)
+|    |    |    |    |    \--- com.google.android.material:material:1.2.0 -> 1.10.0 (*)
-|    |    |    |    \--- com.google.android.material:material:1.4.0 -> 1.9.0 (*)
+|    |    |    |    \--- com.google.android.material:material:1.4.0 -> 1.10.0 (*)
-|    |    |    \--- com.google.android.material:material:1.4.0 -> 1.9.0 (*)
+|    |    |    \--- com.google.android.material:material:1.4.0 -> 1.10.0 (*)
-|    |    \--- com.google.android.material:material:1.4.0 -> 1.9.0 (*)
+|    |    \--- com.google.android.material:material:1.4.0 -> 1.10.0 (*)
-|    \--- com.google.android.material:material:1.4.0 -> 1.9.0 (*)
+|    \--- com.google.android.material:material:1.4.0 -> 1.10.0 (*)
 \--- org.wordpress:mediapicker:0.3.1
-     +--- com.google.android.material:material:1.6.1 -> 1.9.0 (*)
+     +--- com.google.android.material:material:1.6.1 -> 1.10.0 (*)
      \--- com.google.dagger:hilt-android-compiler:2.46.1
           \--- com.google.dagger:dagger-compiler:2.46.1
                \--- com.squareup:kotlinpoet:1.11.0
-                    \--- org.jetbrains.kotlin:kotlin-reflect:1.6.10
-                         \--- org.jetbrains.kotlin:kotlin-stdlib:1.6.10 -> 1.9.25 (*)
+                    \--- org.jetbrains.kotlin:kotlin-reflect:1.6.10 -> 1.8.22
+                         \--- org.jetbrains.kotlin:kotlin-stdlib:1.8.22 -> 1.9.25 (*)

Please review and act accordingly

@wpmobilebot
Copy link
Collaborator

wpmobilebot commented Aug 1, 2024

📲 You can test the changes from this Pull Request in WooCommerce-Wear Android by scanning the QR code below to install the corresponding build.
App Name WooCommerce-Wear Android
Platform⌚️ Wear OS
FlavorJalapeno
Build TypeDebug
Commitf1cfcf2
Direct Downloadwoocommerce-wear-prototype-build-pr12186-f1cfcf2.apk

@wpmobilebot
Copy link
Collaborator

wpmobilebot commented Aug 1, 2024

📲 You can test the changes from this Pull Request in WooCommerce Android by scanning the QR code below to install the corresponding build.

App Name WooCommerce Android
Platform📱 Mobile
FlavorJalapeno
Build TypeDebug
Commitf1cfcf2
Direct Downloadwoocommerce-prototype-build-pr12186-f1cfcf2.apk

@malinajirka malinajirka marked this pull request as ready for review August 1, 2024 12:31
@malinajirka malinajirka modified the milestones: 19.8, 19.9 Aug 2, 2024
@AnirudhBhat AnirudhBhat self-assigned this Aug 5, 2024
Copy link
Contributor

@AnirudhBhat AnirudhBhat left a comment

Choose a reason for hiding this comment

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

Thanks for updating the library @malinajirka I smoke tested the app and it looks good to me 🚀

@AnirudhBhat AnirudhBhat enabled auto-merge August 5, 2024 09:54
@AnirudhBhat AnirudhBhat merged commit 45364a1 into trunk Aug 5, 2024
13 of 14 checks passed
@AnirudhBhat AnirudhBhat deleted the issue/update-material-android-to-1.10.0 branch August 5, 2024 10:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants