Skip to content

Commit 1d4756c

Browse files
committed
auth: verb + accessToken-position consistency (getJwks, getSsoUrl, MFA)
Align the auth surface with the SDK-wide conventions in API_DESIGN.md: - Rename to the standard `get` verb: `fetchJwks` -> `getJwks`, `retrieveSsoUrl` -> `getSsoUrl` (and its Ext `retrieveSsoUrlForCurrentSession` -> `getSsoUrlForCurrentSession`). - Move `accessToken` to the first parameter on the MFA mutators (`mfaEnroll`, `mfaChallenge`, `mfaVerify`, `mfaUnenroll`) to match every other token-taking auth method — and so the required token precedes the optional params. Also corrects the README's jvmTarget requirement: consumers need `jvmTarget` of 17 *or higher* (Java 21 is fine); only a lower target breaks inline-bytecode linking. Breaking, intentional pre-1.0. apiDump regenerated; tests + gate green.
1 parent 27fb8d1 commit 1d4756c

9 files changed

Lines changed: 62 additions & 61 deletions

File tree

README.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,10 +34,11 @@ Full guides for [Authentication](https://androidpoet.github.io/supabase-kmp/auth
3434
## Setup
3535

3636
> **Requirements:** the published Android/JVM artifacts are compiled for **Java 17**
37-
> and ship inline functions, so consuming modules must build with **`jvmTarget = 17`**
38-
> (Android `compileOptions`/`kotlinOptions` JVM 17, or JVM `jvmToolchain(17)`).
39-
> Building at a lower target fails with *"cannot inline bytecode built with JVM
40-
> target 17 into bytecode being built with JVM target 11"*.
37+
> and ship inline functions, so consuming modules must build with a **`jvmTarget` of
38+
> 17 or higher** (Android `compileOptions`/`kotlinOptions` JVM 17+, or JVM
39+
> `jvmToolchain(17)` or newer — Java 21 is fine). Only a *lower* target fails, with
40+
> *"cannot inline bytecode built with JVM target 17 into bytecode being built with
41+
> JVM target 11"*; matching or higher targets inline cleanly.
4142
4243
Add the modules you need to your version catalog:
4344

supabase-auth/api/android/supabase-auth.api

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,16 @@ public final class io/github/androidpoet/supabase/auth/AuthAccessorKt {
44

55
public abstract interface class io/github/androidpoet/supabase/auth/AuthClient {
66
public abstract fun exchangeCodeForSession (Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
7-
public abstract fun fetchJwks (Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
87
public abstract fun generateOAuthState ()Ljava/lang/String;
98
public abstract fun generatePkceParams (Lkotlin/jvm/functions/Function1;)Lio/github/androidpoet/supabase/auth/models/PkceParams;
109
public static synthetic fun generatePkceParams$default (Lio/github/androidpoet/supabase/auth/AuthClient;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lio/github/androidpoet/supabase/auth/models/PkceParams;
1110
public abstract fun getHealth (Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
11+
public abstract fun getJwks (Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
1212
public abstract fun getOAuthSignInUrl (Lio/github/androidpoet/supabase/auth/models/OAuthProvider;Ljava/lang/String;Ljava/util/List;Ljava/util/Map;ZLio/github/androidpoet/supabase/auth/models/PkceParams;Ljava/lang/String;)Ljava/lang/String;
1313
public static synthetic fun getOAuthSignInUrl$default (Lio/github/androidpoet/supabase/auth/AuthClient;Lio/github/androidpoet/supabase/auth/models/OAuthProvider;Ljava/lang/String;Ljava/util/List;Ljava/util/Map;ZLio/github/androidpoet/supabase/auth/models/PkceParams;Ljava/lang/String;ILjava/lang/Object;)Ljava/lang/String;
1414
public abstract fun getSettings (Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
15+
public abstract fun getSsoUrl (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/PkceParams;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
16+
public static synthetic fun getSsoUrl$default (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/PkceParams;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
1517
public abstract fun getUser (Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
1618
public abstract fun getUserIdentities (Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
1719
public abstract fun linkIdentity (Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/OAuthProvider;Ljava/lang/String;Ljava/util/List;Ljava/util/Map;Lio/github/androidpoet/supabase/auth/models/PkceParams;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
@@ -20,8 +22,8 @@ public abstract interface class io/github/androidpoet/supabase/auth/AuthClient {
2022
public static synthetic fun linkIdentityWithIdToken$default (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/OAuthProvider;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
2123
public abstract fun mfaChallenge (Ljava/lang/String;Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/MessagingChannel;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
2224
public static synthetic fun mfaChallenge$default (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/MessagingChannel;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
23-
public abstract fun mfaEnroll (Lio/github/androidpoet/supabase/auth/models/MfaFactorType;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
24-
public static synthetic fun mfaEnroll$default (Lio/github/androidpoet/supabase/auth/AuthClient;Lio/github/androidpoet/supabase/auth/models/MfaFactorType;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
25+
public abstract fun mfaEnroll (Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/MfaFactorType;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
26+
public static synthetic fun mfaEnroll$default (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/MfaFactorType;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
2527
public abstract fun mfaGetAuthenticatorAssuranceLevel (Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
2628
public abstract fun mfaGetAuthenticatorAssuranceLevels (Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
2729
public abstract fun mfaListFactors (Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
@@ -50,8 +52,6 @@ public abstract interface class io/github/androidpoet/supabase/auth/AuthClient {
5052
public abstract fun resetPasswordForEmail (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/PkceParams;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
5153
public static synthetic fun resetPasswordForEmail$default (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/PkceParams;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
5254
public abstract fun resolveSigningKey (Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
53-
public abstract fun retrieveSsoUrl (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/PkceParams;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
54-
public static synthetic fun retrieveSsoUrl$default (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/PkceParams;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
5555
public abstract fun signInAnonymously (Lkotlinx/serialization/json/JsonObject;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
5656
public static synthetic fun signInAnonymously$default (Lio/github/androidpoet/supabase/auth/AuthClient;Lkotlinx/serialization/json/JsonObject;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
5757
public abstract fun signInWithEmail (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
@@ -87,16 +87,16 @@ public abstract interface class io/github/androidpoet/supabase/auth/AuthClient {
8787
public final class io/github/androidpoet/supabase/auth/AuthClient$DefaultImpls {
8888
public static synthetic fun generatePkceParams$default (Lio/github/androidpoet/supabase/auth/AuthClient;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lio/github/androidpoet/supabase/auth/models/PkceParams;
8989
public static synthetic fun getOAuthSignInUrl$default (Lio/github/androidpoet/supabase/auth/AuthClient;Lio/github/androidpoet/supabase/auth/models/OAuthProvider;Ljava/lang/String;Ljava/util/List;Ljava/util/Map;ZLio/github/androidpoet/supabase/auth/models/PkceParams;Ljava/lang/String;ILjava/lang/Object;)Ljava/lang/String;
90+
public static synthetic fun getSsoUrl$default (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/PkceParams;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
9091
public static synthetic fun linkIdentity$default (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/OAuthProvider;Ljava/lang/String;Ljava/util/List;Ljava/util/Map;Lio/github/androidpoet/supabase/auth/models/PkceParams;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
9192
public static synthetic fun linkIdentityWithIdToken$default (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/OAuthProvider;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
9293
public static synthetic fun mfaChallenge$default (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/MessagingChannel;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
93-
public static synthetic fun mfaEnroll$default (Lio/github/androidpoet/supabase/auth/AuthClient;Lio/github/androidpoet/supabase/auth/models/MfaFactorType;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
94+
public static synthetic fun mfaEnroll$default (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/MfaFactorType;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
9495
public static synthetic fun mfaVerify$default (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/MfaWebauthnVerification;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
9596
public static synthetic fun passkeyStartAuthentication$default (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
9697
public static synthetic fun resendEmailOtp$default (Lio/github/androidpoet/supabase/auth/AuthClient;Lio/github/androidpoet/supabase/auth/models/OtpType;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
9798
public static synthetic fun resendPhoneOtp$default (Lio/github/androidpoet/supabase/auth/AuthClient;Lio/github/androidpoet/supabase/auth/models/OtpType;Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
9899
public static synthetic fun resetPasswordForEmail$default (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/PkceParams;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
99-
public static synthetic fun retrieveSsoUrl$default (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/PkceParams;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
100100
public static synthetic fun signInAnonymously$default (Lio/github/androidpoet/supabase/auth/AuthClient;Lkotlinx/serialization/json/JsonObject;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
101101
public static synthetic fun signInWithEmail$default (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
102102
public static synthetic fun signInWithIdToken$default (Lio/github/androidpoet/supabase/auth/AuthClient;Lio/github/androidpoet/supabase/auth/models/OAuthProvider;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
@@ -120,6 +120,8 @@ public final class io/github/androidpoet/supabase/auth/AuthClientExtKt {
120120
public static synthetic fun getClaims$default (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;ZZLjava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
121121
public static final fun getClaimsForCurrentSession (Lio/github/androidpoet/supabase/auth/session/SessionManager;Lio/github/androidpoet/supabase/auth/AuthClient;ZZLjava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
122122
public static synthetic fun getClaimsForCurrentSession$default (Lio/github/androidpoet/supabase/auth/session/SessionManager;Lio/github/androidpoet/supabase/auth/AuthClient;ZZLjava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
123+
public static final fun getSsoUrlForCurrentSession (Lio/github/androidpoet/supabase/auth/AuthClient;Lio/github/androidpoet/supabase/auth/session/SessionManager;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
124+
public static synthetic fun getSsoUrlForCurrentSession$default (Lio/github/androidpoet/supabase/auth/AuthClient;Lio/github/androidpoet/supabase/auth/session/SessionManager;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
123125
public static final fun getUserForCurrentSession (Lio/github/androidpoet/supabase/auth/AuthClient;Lio/github/androidpoet/supabase/auth/session/SessionManager;ZLkotlin/coroutines/Continuation;)Ljava/lang/Object;
124126
public static synthetic fun getUserForCurrentSession$default (Lio/github/androidpoet/supabase/auth/AuthClient;Lio/github/androidpoet/supabase/auth/session/SessionManager;ZLkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
125127
public static final fun getUserIdentitiesForCurrentSession (Lio/github/androidpoet/supabase/auth/AuthClient;Lio/github/androidpoet/supabase/auth/session/SessionManager;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
@@ -143,8 +145,6 @@ public final class io/github/androidpoet/supabase/auth/AuthClientExtKt {
143145
public static synthetic fun resendPhoneSignInOtp$default (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
144146
public static final fun resendSignUpEmailOtp (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
145147
public static synthetic fun resendSignUpEmailOtp$default (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
146-
public static final fun retrieveSsoUrlForCurrentSession (Lio/github/androidpoet/supabase/auth/AuthClient;Lio/github/androidpoet/supabase/auth/session/SessionManager;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
147-
public static synthetic fun retrieveSsoUrlForCurrentSession$default (Lio/github/androidpoet/supabase/auth/AuthClient;Lio/github/androidpoet/supabase/auth/session/SessionManager;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
148148
public static final fun sendOtp (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
149149
public static final fun sendPhoneOtp (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/MessagingChannel;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
150150
public static synthetic fun sendPhoneOtp$default (Lio/github/androidpoet/supabase/auth/AuthClient;Ljava/lang/String;Lio/github/androidpoet/supabase/auth/models/MessagingChannel;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;

0 commit comments

Comments
 (0)