-
Notifications
You must be signed in to change notification settings - Fork 137
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
Add credential manager support #10647
Conversation
📲 You can test the changes from this Pull Request in WooCommerce Android by scanning the QR code below to install the corresponding build.
|
Generated by 🚫 Danger |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work @ThomazFB. I tested the three scenarios, and everything is working as expected. Thanks for also taking care of the fail scenario.
LGTM!
Found 1 violations: The PR caused the following dependency changes:expand
+--- androidx.navigation:navigation-dynamic-features-fragment:2.7.7
| \--- androidx.navigation:navigation-dynamic-features-runtime:2.7.7
| \--- com.google.android.play:feature-delivery:2.0.1
-| +--- com.google.android.gms:play-services-basement:18.1.0
+| +--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0
| \--- com.google.android.gms:play-services-tasks:18.0.2
-| \--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| \--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
+--- com.google.firebase:firebase-messaging -> 23.4.0
-| +--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| +--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
| +--- com.google.firebase:firebase-iid-interop:17.1.0
-| | \--- com.google.android.gms:play-services-basement:17.0.0 -> 18.1.0 (*)
+| | \--- com.google.android.gms:play-services-basement:17.0.0 -> 18.2.0 (*)
| +--- com.google.android.gms:play-services-base:18.0.1 -> 18.1.0
-| | \--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| | \--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
| +--- com.google.android.gms:play-services-cloud-messaging:17.1.0
-| | \--- com.google.android.gms:play-services-basement:18.0.0 -> 18.1.0 (*)
+| | \--- com.google.android.gms:play-services-basement:18.0.0 -> 18.2.0 (*)
| +--- com.google.android.gms:play-services-stats:17.0.2
-| | \--- com.google.android.gms:play-services-basement:18.0.0 -> 18.1.0 (*)
+| | \--- com.google.android.gms:play-services-basement:18.0.0 -> 18.2.0 (*)
| +--- com.google.firebase:firebase-measurement-connector:19.0.0
-| | \--- com.google.android.gms:play-services-basement:17.0.0 -> 18.1.0 (*)
+| | \--- com.google.android.gms:play-services-basement:17.0.0 -> 18.2.0 (*)
| \--- com.google.firebase:firebase-common:20.4.2
-| \--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| \--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
+--- com.google.firebase:firebase-config -> 21.6.0
| \--- com.google.firebase:firebase-abt:21.1.1
-| \--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| \--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
+--- com.google.firebase:firebase-analytics -> 21.5.0
| +--- com.google.android.gms:play-services-measurement:21.5.0
| | +--- com.google.android.gms:play-services-ads-identifier:18.0.0
-| | | \--- com.google.android.gms:play-services-basement:18.0.0 -> 18.1.0 (*)
+| | | \--- com.google.android.gms:play-services-basement:18.0.0 -> 18.2.0 (*)
-| | +--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| | +--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
| | +--- com.google.android.gms:play-services-measurement-base:21.5.0
-| | | \--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| | | \--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
| | \--- com.google.android.gms:play-services-measurement-impl:21.5.0
-| | \--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| | \--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
| +--- com.google.android.gms:play-services-measurement-api:21.5.0
-| | +--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| | +--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
| | \--- com.google.android.gms:play-services-measurement-sdk-api:21.5.0
-| | \--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| | \--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
| \--- com.google.android.gms:play-services-measurement-sdk:21.5.0
-| \--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| \--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
-+--- com.google.android.gms:play-services-auth:20.2.0
-| +--- androidx.fragment:fragment:1.0.0 -> 1.6.2 (*)
-| +--- androidx.loader:loader:1.0.0 (*)
-| +--- com.google.android.gms:play-services-auth-api-phone:18.0.1
-| | +--- com.google.android.gms:play-services-base:18.0.1 -> 18.1.0 (*)
-| | +--- com.google.android.gms:play-services-basement:18.0.0 -> 18.1.0 (*)
-| | \--- com.google.android.gms:play-services-tasks:18.0.1 -> 18.0.2 (*)
-| +--- com.google.android.gms:play-services-auth-base:18.0.1
-| | +--- androidx.collection:collection:1.0.0 -> 1.2.0 (*)
-| | +--- com.google.android.gms:play-services-base:18.0.1 -> 18.1.0 (*)
-| | +--- com.google.android.gms:play-services-basement:18.0.0 -> 18.1.0 (*)
-| | \--- com.google.android.gms:play-services-tasks:18.0.1 -> 18.0.2 (*)
-| +--- com.google.android.gms:play-services-base:18.0.1 -> 18.1.0 (*)
-| +--- com.google.android.gms:play-services-basement:18.0.0 -> 18.1.0 (*)
-| \--- com.google.android.gms:play-services-tasks:18.0.1 -> 18.0.2 (*)
++--- com.google.android.gms:play-services-auth:20.2.0 -> 20.7.0
+| +--- androidx.fragment:fragment:1.0.0 -> 1.6.2 (*)
+| +--- androidx.loader:loader:1.0.0 (*)
+| +--- com.google.android.gms:play-services-auth-api-phone:18.0.1
+| | +--- com.google.android.gms:play-services-base:18.0.1 -> 18.1.0 (*)
+| | +--- com.google.android.gms:play-services-basement:18.0.0 -> 18.2.0 (*)
+| | \--- com.google.android.gms:play-services-tasks:18.0.1 -> 18.0.2 (*)
+| +--- com.google.android.gms:play-services-auth-base:18.0.4
+| | +--- androidx.collection:collection:1.0.0 -> 1.2.0 (*)
+| | +--- com.google.android.gms:play-services-base:18.0.1 -> 18.1.0 (*)
+| | +--- com.google.android.gms:play-services-basement:18.0.0 -> 18.2.0 (*)
+| | \--- com.google.android.gms:play-services-tasks:18.0.1 -> 18.0.2 (*)
+| +--- com.google.android.gms:play-services-base:18.0.1 -> 18.1.0 (*)
+| +--- com.google.android.gms:play-services-basement:18.2.0 (*)
+| +--- com.google.android.gms:play-services-fido:20.0.1 -> 20.1.0
+| | +--- com.google.android.gms:play-services-base:18.0.1 -> 18.1.0 (*)
+| | +--- com.google.android.gms:play-services-basement:18.0.0 -> 18.2.0 (*)
+| | \--- com.google.android.gms:play-services-tasks:18.0.1 -> 18.0.2 (*)
+| \--- com.google.android.gms:play-services-tasks:18.0.1 -> 18.0.2 (*)
+--- androidx.constraintlayout:constraintlayout:2.1.4
-| \--- androidx.appcompat:appcompat:1.2.0 -> 1.5.0
-| +--- androidx.activity:activity:1.5.0 -> 1.8.0 (*)
-| +--- androidx.annotation:annotation:1.3.0 -> 1.7.0 (*)
-| +--- androidx.appcompat:appcompat-resources:1.5.0
-| | +--- androidx.annotation:annotation:1.2.0 -> 1.7.0 (*)
-| | +--- androidx.collection:collection:1.0.0 -> 1.2.0 (*)
-| | +--- androidx.core:core:1.6.0 -> 1.12.0 (*)
-| | +--- androidx.vectordrawable:vectordrawable:1.1.0
-| | | +--- 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.2.0 (*)
-| | +--- androidx.vectordrawable:vectordrawable-animated:1.1.0
-| | | +--- androidx.vectordrawable:vectordrawable:1.1.0 (*)
-| | | +--- androidx.interpolator:interpolator:1.0.0 (*)
-| | | \--- androidx.collection:collection:1.1.0 -> 1.2.0 (*)
-| | \--- androidx.appcompat:appcompat:1.5.0 (c)
-| +--- androidx.collection:collection:1.0.0 -> 1.2.0 (*)
-| +--- androidx.core:core:1.8.0 -> 1.12.0 (*)
-| +--- androidx.core:core-ktx:1.8.0 -> 1.12.0 (*)
-| +--- androidx.cursoradapter:cursoradapter:1.0.0
-| | \--- androidx.annotation:annotation:1.0.0 -> 1.7.0 (*)
-| +--- androidx.drawerlayout:drawerlayout:1.0.0 -> 1.1.1
-| | +--- androidx.annotation:annotation:1.1.0 -> 1.7.0 (*)
-| | +--- androidx.core:core:1.2.0 -> 1.12.0 (*)
-| | \--- androidx.customview:customview:1.1.0 (*)
-| +--- androidx.emoji2:emoji2:1.2.0 -> 1.4.0
-| | +--- androidx.annotation:annotation:1.2.0 -> 1.7.0 (*)
-| | +--- androidx.collection:collection:1.1.0 -> 1.2.0 (*)
-| | +--- androidx.core:core:1.3.0 -> 1.12.0 (*)
-| | +--- androidx.lifecycle:lifecycle-process:2.4.1 -> 2.6.2
-| | | +--- androidx.annotation:annotation:1.2.0 -> 1.7.0 (*)
-| | | +--- androidx.lifecycle:lifecycle-runtime:2.6.2 (*)
-| | | +--- androidx.startup:startup-runtime:1.1.1 (*)
-| | | +--- org.jetbrains.kotlin:kotlin-stdlib:1.8.10 -> 1.9.22 (*)
-| | | +--- androidx.lifecycle:lifecycle-common:2.6.2 (c)
-| | | +--- androidx.lifecycle:lifecycle-livedata:2.6.2 (c)
-| | | +--- androidx.lifecycle:lifecycle-livedata-core:2.6.2 (c)
-| | | +--- androidx.lifecycle:lifecycle-livedata-core-ktx:2.6.2 (c)
-| | | +--- androidx.lifecycle:lifecycle-livedata-ktx:2.6.2 (c)
-| | | +--- androidx.lifecycle:lifecycle-runtime:2.6.2 (c)
-| | | +--- androidx.lifecycle:lifecycle-runtime-ktx:2.6.2 (c)
-| | | +--- androidx.lifecycle:lifecycle-viewmodel:2.6.2 (c)
-| | | +--- androidx.lifecycle:lifecycle-viewmodel-compose:2.6.2 (c)
-| | | +--- androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.2 (c)
-| | | +--- androidx.lifecycle:lifecycle-viewmodel-savedstate:2.6.2 (c)
-| | | +--- androidx.lifecycle:lifecycle-common-java8:2.6.2 (c)
-| | | \--- androidx.lifecycle:lifecycle-service:2.6.2 (c)
-| | +--- androidx.startup:startup-runtime:1.0.0 -> 1.1.1 (*)
-| | \--- androidx.emoji2:emoji2-views-helper:1.4.0 (c)
-| +--- androidx.emoji2:emoji2-views-helper:1.2.0 -> 1.4.0
-| | +--- androidx.collection:collection:1.1.0 -> 1.2.0 (*)
-| | +--- androidx.core:core:1.3.0 -> 1.12.0 (*)
-| | +--- androidx.emoji2:emoji2:1.4.0 (*)
-| | \--- androidx.emoji2:emoji2:1.4.0 (c)
-| +--- androidx.fragment:fragment:1.3.6 -> 1.6.2 (*)
-| +--- androidx.lifecycle:lifecycle-runtime:2.3.1 -> 2.6.2 (*)
-| +--- androidx.lifecycle:lifecycle-viewmodel:2.3.1 -> 2.6.2 (*)
-| +--- androidx.resourceinspection:resourceinspection-annotation:1.0.1
-| | \--- androidx.annotation:annotation:1.1.0 -> 1.7.0 (*)
-| +--- androidx.savedstate:savedstate:1.1.0 -> 1.2.1 (*)
-| +--- org.jetbrains.kotlin:kotlin-stdlib:1.7.10 -> 1.9.22 (*)
-| \--- androidx.appcompat:appcompat-resources:1.5.0 (c)
+| \--- androidx.appcompat:appcompat:1.2.0 -> 1.6.1
+| +--- androidx.activity:activity:1.6.0 -> 1.8.0 (*)
+| +--- androidx.annotation:annotation:1.3.0 -> 1.7.0 (*)
+| +--- androidx.appcompat:appcompat-resources:1.6.1
+| | +--- androidx.annotation:annotation:1.2.0 -> 1.7.0 (*)
+| | +--- androidx.collection:collection:1.0.0 -> 1.2.0 (*)
+| | +--- androidx.core:core:1.6.0 -> 1.12.0 (*)
+| | +--- androidx.vectordrawable:vectordrawable:1.1.0
+| | | +--- 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.2.0 (*)
+| | +--- androidx.vectordrawable:vectordrawable-animated:1.1.0
+| | | +--- androidx.vectordrawable:vectordrawable:1.1.0 (*)
+| | | +--- androidx.interpolator:interpolator:1.0.0 (*)
+| | | \--- androidx.collection:collection:1.1.0 -> 1.2.0 (*)
+| | \--- androidx.appcompat:appcompat:1.6.1 (c)
+| +--- androidx.collection:collection:1.0.0 -> 1.2.0 (*)
+| +--- androidx.core:core:1.9.0 -> 1.12.0 (*)
+| +--- androidx.core:core-ktx:1.8.0 -> 1.12.0 (*)
+| +--- androidx.cursoradapter:cursoradapter:1.0.0
+| | \--- androidx.annotation:annotation:1.0.0 -> 1.7.0 (*)
+| +--- androidx.drawerlayout:drawerlayout:1.0.0 -> 1.1.1
+| | +--- androidx.annotation:annotation:1.1.0 -> 1.7.0 (*)
+| | +--- androidx.core:core:1.2.0 -> 1.12.0 (*)
+| | \--- androidx.customview:customview:1.1.0 (*)
+| +--- androidx.emoji2:emoji2:1.2.0 -> 1.4.0
+| | +--- androidx.annotation:annotation:1.2.0 -> 1.7.0 (*)
+| | +--- androidx.collection:collection:1.1.0 -> 1.2.0 (*)
+| | +--- androidx.core:core:1.3.0 -> 1.12.0 (*)
+| | +--- androidx.lifecycle:lifecycle-process:2.4.1 -> 2.6.2
+| | | +--- androidx.annotation:annotation:1.2.0 -> 1.7.0 (*)
+| | | +--- androidx.lifecycle:lifecycle-runtime:2.6.2 (*)
+| | | +--- androidx.startup:startup-runtime:1.1.1 (*)
+| | | +--- org.jetbrains.kotlin:kotlin-stdlib:1.8.10 -> 1.9.22 (*)
+| | | +--- androidx.lifecycle:lifecycle-common:2.6.2 (c)
+| | | +--- androidx.lifecycle:lifecycle-livedata:2.6.2 (c)
+| | | +--- androidx.lifecycle:lifecycle-livedata-core:2.6.2 (c)
+| | | +--- androidx.lifecycle:lifecycle-livedata-core-ktx:2.6.2 (c)
+| | | +--- androidx.lifecycle:lifecycle-livedata-ktx:2.6.2 (c)
+| | | +--- androidx.lifecycle:lifecycle-runtime:2.6.2 (c)
+| | | +--- androidx.lifecycle:lifecycle-runtime-ktx:2.6.2 (c)
+| | | +--- androidx.lifecycle:lifecycle-viewmodel:2.6.2 (c)
+| | | +--- androidx.lifecycle:lifecycle-viewmodel-compose:2.6.2 (c)
+| | | +--- androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.2 (c)
+| | | +--- androidx.lifecycle:lifecycle-viewmodel-savedstate:2.6.2 (c)
+| | | +--- androidx.lifecycle:lifecycle-common-java8:2.6.2 (c)
+| | | \--- androidx.lifecycle:lifecycle-service:2.6.2 (c)
+| | +--- androidx.startup:startup-runtime:1.0.0 -> 1.1.1 (*)
+| | \--- androidx.emoji2:emoji2-views-helper:1.4.0 (c)
+| +--- androidx.emoji2:emoji2-views-helper:1.2.0 -> 1.4.0
+| | +--- androidx.collection:collection:1.1.0 -> 1.2.0 (*)
+| | +--- androidx.core:core:1.3.0 -> 1.12.0 (*)
+| | +--- androidx.emoji2:emoji2:1.4.0 (*)
+| | \--- androidx.emoji2:emoji2:1.4.0 (c)
+| +--- androidx.fragment:fragment:1.3.6 -> 1.6.2 (*)
+| +--- androidx.lifecycle:lifecycle-runtime:2.5.1 -> 2.6.2 (*)
+| +--- androidx.lifecycle:lifecycle-viewmodel:2.5.1 -> 2.6.2 (*)
+| +--- androidx.resourceinspection:resourceinspection-annotation:1.0.1
+| | \--- androidx.annotation:annotation:1.1.0 -> 1.7.0 (*)
+| +--- androidx.savedstate:savedstate:1.2.0 -> 1.2.1 (*)
+| +--- org.jetbrains.kotlin:kotlin-stdlib:1.7.10 -> 1.9.22 (*)
+| \--- androidx.appcompat:appcompat-resources:1.6.1 (c)
-+--- androidx.appcompat:appcompat:1.4.2 -> 1.5.0 (*)
++--- androidx.appcompat:appcompat:1.4.2 -> 1.6.1 (*)
+--- com.google.android.material:material:1.6.1 -> 1.9.0
-| \--- androidx.appcompat:appcompat:1.5.0 (*)
+| \--- androidx.appcompat:appcompat:1.5.0 -> 1.6.1 (*)
+--- androidx.preference:preference:1.2.0
-| \--- androidx.appcompat:appcompat:1.1.0 -> 1.5.0 (*)
+| \--- androidx.appcompat:appcompat:1.1.0 -> 1.6.1 (*)
+--- org.wordpress:fluxc:trunk-3a4c421cb0a18898c23dc95fef044e991b16868d
-| \--- androidx.appcompat:appcompat:1.0.2 -> 1.5.0 (*)
+| \--- androidx.appcompat:appcompat:1.0.2 -> 1.6.1 (*)
-+--- org.wordpress:login:1.9.0
-| +--- com.google.android.gms:play-services-auth:18.1.0 -> 20.2.0 (*)
-| +--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10 -> 1.9.0 (*)
-| +--- androidx.appcompat:appcompat:1.0.2 -> 1.5.0 (*)
-| +--- androidx.vectordrawable:vectordrawable-animated:1.1.0 (*)
-| +--- androidx.media:media:1.2.1
-| | +--- androidx.collection:collection:1.1.0 -> 1.2.0 (*)
-| | \--- androidx.core:core:1.3.0 -> 1.12.0 (*)
-| +--- androidx.legacy:legacy-support-v13:1.0.0
-| | \--- androidx.legacy:legacy-support-v4:1.0.0
-| | +--- androidx.core:core:1.0.0 -> 1.12.0 (*)
-| | +--- androidx.media:media:1.0.0 -> 1.2.1 (*)
-| | +--- androidx.legacy:legacy-support-core-utils:1.0.0 (*)
-| | +--- androidx.legacy:legacy-support-core-ui:1.0.0
-| | | +--- androidx.annotation:annotation:1.0.0 -> 1.7.0 (*)
-| | | +--- androidx.core:core:1.0.0 -> 1.12.0 (*)
-| | | +--- androidx.legacy:legacy-support-core-utils:1.0.0 (*)
-| | | +--- androidx.customview:customview:1.0.0 -> 1.1.0 (*)
-| | | +--- androidx.viewpager:viewpager:1.0.0 (*)
-| | | +--- androidx.coordinatorlayout:coordinatorlayout:1.0.0 -> 1.1.0 (*)
-| | | +--- androidx.drawerlayout:drawerlayout:1.0.0 -> 1.1.1 (*)
-| | | +--- androidx.slidingpanelayout:slidingpanelayout:1.0.0 -> 1.2.0 (*)
-| | | +--- androidx.interpolator:interpolator:1.0.0 (*)
-| | | +--- androidx.swiperefreshlayout:swiperefreshlayout:1.0.0 -> 1.1.0 (*)
-| | | +--- androidx.asynclayoutinflater:asynclayoutinflater:1.0.0
-| | | | +--- androidx.annotation:annotation:1.0.0 -> 1.7.0 (*)
-| | | | \--- androidx.core:core:1.0.0 -> 1.12.0 (*)
-| | | \--- androidx.cursoradapter:cursoradapter:1.0.0 (*)
-| | \--- androidx.fragment:fragment:1.0.0 -> 1.6.2 (*)
-| +--- androidx.gridlayout:gridlayout:1.0.0
-| | +--- androidx.core:core:1.0.0 -> 1.12.0 (*)
-| | \--- androidx.legacy:legacy-support-core-ui:1.0.0 (*)
-| +--- androidx.constraintlayout:constraintlayout:2.0.4 -> 2.1.4 (*)
-| +--- com.google.android.material:material:1.2.1 -> 1.9.0 (*)
-| +--- androidx.core:core-ktx:1.3.2 -> 1.12.0 (*)
-| +--- com.github.bumptech.glide:glide:4.12.0 -> 4.16.0
-| | +--- com.github.bumptech.glide:gifdecoder:4.16.0
-| | | \--- androidx.annotation:annotation:1.5.0 -> 1.7.0 (*)
-| | +--- com.github.bumptech.glide:disklrucache:4.16.0
-| | +--- com.github.bumptech.glide:annotations:4.16.0
-| | +--- androidx.fragment:fragment:1.3.6 -> 1.6.2 (*)
-| | +--- androidx.vectordrawable:vectordrawable-animated:1.1.0 (*)
-| | +--- androidx.exifinterface:exifinterface:1.3.6 (*)
-| | \--- androidx.tracing:tracing:1.0.0 (*)
-| +--- com.google.android.gms:play-services-fido:20.1.0
-| | +--- com.google.android.gms:play-services-base:18.0.1 -> 18.1.0 (*)
-| | +--- com.google.android.gms:play-services-basement:18.0.0 -> 18.1.0 (*)
-| | \--- com.google.android.gms:play-services-tasks:18.0.1 -> 18.0.2 (*)
-| +--- com.google.dagger:dagger:2.42 -> 2.50 (*)
-| \--- com.google.dagger:dagger-android-support:2.42 -> 2.50
-| +--- com.google.dagger:dagger:2.50 (*)
-| +--- com.google.dagger:dagger-android:2.50
-| | +--- com.google.dagger:dagger:2.50 (*)
-| | +--- com.google.dagger:dagger-lint-aar:2.50
-| | +--- androidx.annotation:annotation:1.2.0 -> 1.7.0 (*)
-| | \--- javax.inject:javax.inject:1
-| +--- com.google.dagger:dagger-lint-aar:2.50
-| +--- androidx.activity:activity:1.5.1 -> 1.8.0 (*)
-| +--- androidx.annotation:annotation:1.2.0 -> 1.7.0 (*)
-| +--- androidx.appcompat:appcompat:1.3.1 -> 1.5.0 (*)
-| +--- androidx.fragment:fragment:1.5.1 -> 1.6.2 (*)
-| +--- androidx.lifecycle:lifecycle-common:2.5.1 -> 2.6.2 (*)
-| +--- androidx.lifecycle:lifecycle-viewmodel:2.5.1 -> 2.6.2 (*)
-| +--- androidx.lifecycle:lifecycle-viewmodel-savedstate:2.5.1 -> 2.6.2 (*)
-| \--- javax.inject:javax.inject:1
++--- org.wordpress:login:trunk-a90b1ce939aba700d822f188d41624385f9c1dce
+| +--- androidx.appcompat:appcompat:1.6.1 (*)
+| +--- androidx.vectordrawable:vectordrawable-animated:1.1.0 (*)
+| +--- androidx.media:media:1.2.1
+| | +--- androidx.collection:collection:1.1.0 -> 1.2.0 (*)
+| | \--- androidx.core:core:1.3.0 -> 1.12.0 (*)
+| +--- androidx.legacy:legacy-support-v13:1.0.0
+| | \--- androidx.legacy:legacy-support-v4:1.0.0
+| | +--- androidx.core:core:1.0.0 -> 1.12.0 (*)
+| | +--- androidx.media:media:1.0.0 -> 1.2.1 (*)
+| | +--- androidx.legacy:legacy-support-core-utils:1.0.0 (*)
+| | +--- androidx.legacy:legacy-support-core-ui:1.0.0
+| | | +--- androidx.annotation:annotation:1.0.0 -> 1.7.0 (*)
+| | | +--- androidx.core:core:1.0.0 -> 1.12.0 (*)
+| | | +--- androidx.legacy:legacy-support-core-utils:1.0.0 (*)
+| | | +--- androidx.customview:customview:1.0.0 -> 1.1.0 (*)
+| | | +--- androidx.viewpager:viewpager:1.0.0 (*)
+| | | +--- androidx.coordinatorlayout:coordinatorlayout:1.0.0 -> 1.1.0 (*)
+| | | +--- androidx.drawerlayout:drawerlayout:1.0.0 -> 1.1.1 (*)
+| | | +--- androidx.slidingpanelayout:slidingpanelayout:1.0.0 -> 1.2.0 (*)
+| | | +--- androidx.interpolator:interpolator:1.0.0 (*)
+| | | +--- androidx.swiperefreshlayout:swiperefreshlayout:1.0.0 -> 1.1.0 (*)
+| | | +--- androidx.asynclayoutinflater:asynclayoutinflater:1.0.0
+| | | | +--- androidx.annotation:annotation:1.0.0 -> 1.7.0 (*)
+| | | | \--- androidx.core:core:1.0.0 -> 1.12.0 (*)
+| | | \--- androidx.cursoradapter:cursoradapter:1.0.0 (*)
+| | \--- androidx.fragment:fragment:1.0.0 -> 1.6.2 (*)
+| +--- androidx.gridlayout:gridlayout:1.0.0
+| | +--- androidx.core:core:1.0.0 -> 1.12.0 (*)
+| | \--- androidx.legacy:legacy-support-core-ui:1.0.0 (*)
+| +--- androidx.constraintlayout:constraintlayout:2.0.4 -> 2.1.4 (*)
+| +--- com.google.android.material:material:1.2.1 -> 1.9.0 (*)
+| +--- androidx.core:core-ktx:1.12.0 (*)
+| +--- com.github.bumptech.glide:glide:4.12.0 -> 4.16.0
+| | +--- com.github.bumptech.glide:gifdecoder:4.16.0
+| | | \--- androidx.annotation:annotation:1.5.0 -> 1.7.0 (*)
+| | +--- com.github.bumptech.glide:disklrucache:4.16.0
+| | +--- com.github.bumptech.glide:annotations:4.16.0
+| | +--- androidx.fragment:fragment:1.3.6 -> 1.6.2 (*)
+| | +--- androidx.vectordrawable:vectordrawable-animated:1.1.0 (*)
+| | +--- androidx.exifinterface:exifinterface:1.3.6 (*)
+| | \--- androidx.tracing:tracing:1.0.0 (*)
+| +--- androidx.credentials:credentials:1.2.0
+| | +--- androidx.annotation:annotation:1.5.0 -> 1.7.0 (*)
+| | +--- org.jetbrains.kotlin:kotlin-stdlib:1.8.22 -> 1.9.22 (*)
+| | +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.1 -> 1.7.3 (*)
+| | \--- androidx.credentials:credentials-play-services-auth:1.2.0 (c)
+| +--- androidx.credentials:credentials-play-services-auth:1.2.0
+| | +--- androidx.credentials:credentials:1.2.0 (*)
+| | +--- com.google.android.gms:play-services-auth:20.7.0 (*)
+| | +--- com.google.android.gms:play-services-fido:20.1.0 (*)
+| | +--- com.google.android.libraries.identity.googleid:googleid:1.1.0
+| | | +--- org.jetbrains.kotlin:kotlin-stdlib:1.8.0 -> 1.9.22 (*)
+| | | \--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.0 -> 1.9.0 (*)
+| | +--- org.jetbrains.kotlin:kotlin-stdlib:1.8.22 -> 1.9.22 (*)
+| | \--- androidx.credentials:credentials:1.2.0 (c)
+| +--- com.google.dagger:dagger:2.47 -> 2.50 (*)
+| +--- com.google.dagger:dagger-android-support:2.47 -> 2.50
+| | +--- com.google.dagger:dagger:2.50 (*)
+| | +--- com.google.dagger:dagger-android:2.50
+| | | +--- com.google.dagger:dagger:2.50 (*)
+| | | +--- com.google.dagger:dagger-lint-aar:2.50
+| | | +--- androidx.annotation:annotation:1.2.0 -> 1.7.0 (*)
+| | | \--- javax.inject:javax.inject:1
+| | +--- com.google.dagger:dagger-lint-aar:2.50
+| | +--- androidx.activity:activity:1.5.1 -> 1.8.0 (*)
+| | +--- androidx.annotation:annotation:1.2.0 -> 1.7.0 (*)
+| | +--- androidx.appcompat:appcompat:1.3.1 -> 1.6.1 (*)
+| | +--- androidx.fragment:fragment:1.5.1 -> 1.6.2 (*)
+| | +--- androidx.lifecycle:lifecycle-common:2.5.1 -> 2.6.2 (*)
+| | +--- androidx.lifecycle:lifecycle-viewmodel:2.5.1 -> 2.6.2 (*)
+| | +--- androidx.lifecycle:lifecycle-viewmodel-savedstate:2.5.1 -> 2.6.2 (*)
+| | \--- javax.inject:javax.inject:1
+| +--- com.google.android.gms:play-services-auth:18.1.0 -> 20.7.0 (*)
+| \--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.0 -> 1.9.0 (*)
+--- project :libs:cardreader
| \--- com.stripe:stripeterminal-localmobile:3.1.1
| +--- com.google.android.gms:play-services-safetynet:18.0.1
-| | \--- com.google.android.gms:play-services-basement:18.0.0 -> 18.1.0 (*)
+| | \--- com.google.android.gms:play-services-basement:18.0.0 -> 18.2.0 (*)
| \--- com.google.android.play:integrity:1.1.0
-| \--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| \--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
+--- project :libs:iap
-| \--- androidx.appcompat:appcompat:1.4.2 -> 1.5.0 (*)
+| \--- androidx.appcompat:appcompat:1.4.2 -> 1.6.1 (*)
+--- com.github.chrisbanes:PhotoView:2.3.0
-| \--- androidx.appcompat:appcompat:1.0.0 -> 1.5.0 (*)
+| \--- androidx.appcompat:appcompat:1.0.0 -> 1.6.1 (*)
+--- com.automattic:about:0.0.6
| \--- com.google.android.material:compose-theme-adapter:1.1.1
-| \--- androidx.appcompat:appcompat:1.3.0 -> 1.5.0 (*)
+| \--- androidx.appcompat:appcompat:1.3.0 -> 1.6.1 (*)
+--- com.google.android.play:app-update-ktx:2.1.0
-| +--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| +--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
| \--- com.google.android.play:app-update:2.1.0
-| \--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| \--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
+--- com.google.android.play:review-ktx:2.0.1
-| +--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| +--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
| \--- com.google.android.play:review:2.0.1
-| \--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| \--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
+--- com.google.android.gms:play-services-code-scanner:16.1.0
-| +--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| +--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
| \--- com.google.mlkit:barcode-scanning-common:17.0.0
-| +--- com.google.android.gms:play-services-basement:18.0.0 -> 18.1.0 (*)
+| +--- com.google.android.gms:play-services-basement:18.0.0 -> 18.2.0 (*)
| \--- com.google.mlkit:vision-common:17.0.0 -> 17.3.0
-| +--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| +--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
| \--- com.google.mlkit:common:18.6.0 -> 18.9.0
-| \--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| \--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
+--- com.google.mlkit:text-recognition:16.0.0
-| +--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| +--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
| +--- com.google.android.gms:play-services-mlkit-text-recognition:19.0.0
-| | +--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| | +--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
| | \--- com.google.android.gms:play-services-mlkit-text-recognition-common:19.0.0
-| | +--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| | +--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
| | \--- com.google.mlkit:vision-interfaces:16.2.0
-| | \--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| | \--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
| \--- com.google.mlkit:text-recognition-bundled-common:16.0.0
-| \--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| \--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
+--- com.google.mlkit:barcode-scanning:17.2.0
-| +--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| +--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.0 (*)
| \--- com.google.android.gms:play-services-mlkit-barcode-scanning:18.3.0
-| \--- com.google.android.gms:play-services-basement:18.1.0 (*)
+| \--- com.google.android.gms:play-services-basement:18.1.0 -> 18.2.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
-| | | | \--- androidx.appcompat:appcompat:1.0.0 -> 1.5.0 (*)
+| | | | \--- androidx.appcompat:appcompat:1.0.0 -> 1.6.1 (*)
-| | | \--- androidx.appcompat:appcompat:1.0.0 -> 1.5.0 (*)
+| | | \--- androidx.appcompat:appcompat:1.0.0 -> 1.6.1 (*)
-| | \--- androidx.appcompat:appcompat -> 1.5.0 (*)
+| | \--- androidx.appcompat:appcompat -> 1.6.1 (*)
-| \--- androidx.appcompat:appcompat:1.0.0 -> 1.5.0 (*)
+| \--- androidx.appcompat:appcompat:1.0.0 -> 1.6.1 (*)
+--- org.wordpress:mediapicker:0.3.0
-| \--- androidx.appcompat:appcompat:1.4.2 -> 1.5.0 (*)
+| \--- androidx.appcompat:appcompat:1.4.2 -> 1.6.1 (*)
+--- io.coil-kt:coil-compose:2.1.0
| \--- io.coil-kt:coil-compose-base:2.1.0
| \--- io.coil-kt:coil-base:2.1.0
-| \--- androidx.appcompat:appcompat-resources:1.4.1 -> 1.5.0 (*)
+| \--- androidx.appcompat:appcompat-resources:1.4.1 -> 1.6.1 (*)
\--- androidx.camera:camera-view:1.2.3
- \--- androidx.appcompat:appcompat:1.1.0 -> 1.5.0 (*)
+ \--- androidx.appcompat:appcompat:1.1.0 -> 1.6.1 (*)
Please review and act accordingly
|
Summary
It brings to the Woo app the rework of the Passkey fetching system inside the WordPress Login Library, where instead of relying on the FIDO2 API, it uses the Credential Manager. This will allow us to properly support Passkeys provided by third-party security services, like 1Password.
Screen capture
Screen_recording_20240201_124606.mp4
How to Test
To make this test scenario possible, make sure you have the following:
Scenario 1 - Login with locally installed Passkey
Use security key
button appears and click on it.Scenario 2 - Login with Passkey provided by 1Password
Use security key
button appears and click on it.Scenario 3 - Login with Passkey provided by another device
Use security key
button appears and click on it.login with another device
option.Update release notes:
RELEASE-NOTES.txt
if necessary.