refactor: Removed the PasskeyProvider and the PasskeyManager class#909
refactor: Removed the PasskeyProvider and the PasskeyManager class#909pmathew92 merged 2 commits intov4_developmentfrom
Conversation
There was a problem hiding this comment.
Pull request overview
This PR removes the Passkey signup/sign-in wrapper types (PasskeyAuthProvider and internal PasskeyManager) and relies on AuthenticationAPIClient’s passkey APIs directly, including cleaning up related dependencies and Proguard configuration.
Changes:
- Removed
PasskeyAuthProvider,PasskeyManager, and the associated unit tests. - Dropped
androidx.credentialsdependencies and removed the Jetpack Proguard rules file. - Updated the v4 migration guide to document the removal and point to
AuthenticationAPIClientpasskey APIs.
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| sample/build.gradle | Removes Credential Manager dependencies from the sample app. |
| proguard/proguard-jetpack.pro | Deletes Jetpack/CredentialManager Proguard rules. |
| auth0/src/test/java/com/auth0/android/provider/PasskeyManagerTest.kt | Removes tests for the deleted internal PasskeyManager. |
| auth0/src/main/java/com/auth0/android/provider/PasskeyManager.kt | Deletes internal PasskeyManager implementation. |
| auth0/src/main/java/com/auth0/android/provider/PasskeyAuthProvider.kt | Deletes deprecated public PasskeyAuthProvider wrapper. |
| auth0/build.gradle | Removes consumer proguard include + credentials dependencies/version pin. |
| V4_MIGRATION_GUIDE.md | Documents PasskeyAuthProvider removal and points to new API usage. |
| AGP_UPGRADE_PLAN.md | Deletes upgrade planning document. |
Comments suppressed due to low confidence (1)
proguard/proguard-jetpack.pro:1
- This file is being removed, but
EXAMPLES.mdstill listsproguard-jetpack.proas a recommended Proguard rules file. Please update the docs to stop referencing this file (or keep an equivalent consumer Proguard rules file) to avoid broken guidance/links for users.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| @@ -53,8 +53,6 @@ dependencies { | |||
| implementation 'androidx.constraintlayout:constraintlayout:2.0.4' | |||
| implementation 'androidx.navigation:navigation-fragment-ktx:2.3.5' | |||
| implementation 'androidx.navigation:navigation-ui-ktx:2.3.5' | |||
There was a problem hiding this comment.
The sample module still imports and uses androidx.credentials.* (e.g. sample/src/main/java/com/auth0/sample/DatabaseLoginFragment.kt uses CredentialManager, CreatePublicKeyCredentialRequest, etc.), so removing the androidx.credentials:credentials and credentials-play-services-auth dependencies here will break sample compilation. Either re-add these dependencies to the sample module, or remove/guard the passkey sample code that depends on Credential Manager.
| implementation 'androidx.navigation:navigation-ui-ktx:2.3.5' | |
| implementation 'androidx.navigation:navigation-ui-ktx:2.3.5' | |
| implementation 'androidx.credentials:credentials:1.2.2' | |
| implementation 'androidx.credentials:credentials-play-services-auth:1.2.2' |
Changes
This PR removes the public
PasskeyAuthProviderand the internalPasskeyManagerclasses used for Passkey signup and sign-in operations in favor of using the APIs directly from theAuthenticationAPIClientclass.References
#893
Checklist
I have read the Auth0 general contribution guidelines
I have read the Auth0 Code of Conduct
All existing and new tests complete without errors