Releases: supabase-community/supabase-kt
Releases · supabase-community/supabase-kt
2.2.3
Note
There is now a Slack channel for supabase-kt!
Changes
Compose Auth
- Fix iOS Native Apple Sign-In Digest error by @jan-tennert in #527
Nonce hashing is now done by Krypto.
2.2.2-wasm0
Changes
Add wasm-js support for compose-auth, compose-auth-ui and apollo-graphql.
Auth
- Migrate HTTP Callback Servers to use Ktor 3.0.0
Note
- You have to add this repository: https://maven.pkg.jetbrains.space/kotlin/p/wasm/experimental
- You have to use a 3.0.0 Ktor Client Engine version, otherwise there will be a build error. Supabase-kt uses
3.0.0-wasm2.
2.2.2
Changes
Core
Postgrest
- Rename
filterparam torequestin Postgrest#rpc by @jan-tennert in #506
Auth
- Change default value of
OTP.Config#createUserto true to match docs and other client libs - Add support for anonymous sign ins by @jan-tennert in #497 (experimental, as untested)
- Rename
phoneNumberparameter inAuth#resendPhonetophone.
Realtime
- Deprecate
Realtime.Config#eventsPerSecond(yes, I know this was just introduced, but apparently all other client libs are now also deprecating it)
2.2.1
Changes
Compose Auth UI
- Remove print statement in Compose Auth UI by @jan-tennert in #502
Realtime
- Fix realtime reconnecting suspending indefinitely by @jan-tennert in #505
- Fix session status flow being collected multiple times
2.2.0
Changes
Core
- Reworked internal logging to support new features, including:
- Setting the default logging level within the SupabaseClientBuilder:
Note: The default logging level is set to
val supabase = createSupabaseClient(url, key) { defaultLogLevel = LogLevel.WARNING }
LogLevel.INFO - Changing the logging level per plugins:
Auth.setLogLevel(LogLevel.NONE)
- Overall better and more debug log messages
- Setting the default logging level within the SupabaseClientBuilder:
Auth
- Changes to
SessionStatus:- The
Authenticatednow has asourceproperty which can beStorage,SignIn,SignUp,Refresh,External,UserChanged,UserIdentitiesChangedorUnknown - The
Authenticatednow also has aisNewproperty which returns true if thesourceis eitherSignIn,SignUporExternal - The
NotAuthenticatedstatus is now a data class rather than an object and has aisSignOutproperty
- The
- Rename
Auth#oAuthUrltoAuth#getOAuthUrl - Changes to OAuth using Http Callback Servers:
- Switch to Ktor for Http Callback Servers when using OAuth on Desktop targets. Signing in using an OAuth provider e.g. with
signInWith(Google)will now block the current coroutine until the flow succeeds or times out. - Add support for using a Http Callback Server for OAuth in the Kotlin
macosX64*andlinuxX64targets
* Only used if no deeplink host & scheme or a default redirect url is provided. - Add
AuthConfig#httpCallbackConfig()method for configuring these servers.
- Switch to Ktor for Http Callback Servers when using OAuth on Desktop targets. Signing in using an OAuth provider e.g. with
- Add
hostandschemeauth config properties to common code (will still not used by all targets) - Add
AuthConfig#defaultRedirectUrlto override the default redirect url used for requests. Defaults to null, which means that everything stays as it is; Desktop targets will use a http callback server, mobile targets deeplinks, etc.
Compose Auth
- (Android) The Credential Manager will now always be used for all Android versions
- By default, when signing out using
Auth#signOutorAuth#clearSessionthe Google credential will now also be cleared.- Because sign-outs are now handled automatically,
ComposeAuth#rememberSignOutWithGooglehas been removed.
- Because sign-outs are now handled automatically,
- You now pass in the
nonceandextraDatawhen callingstartFlowrather than in the plugin settings.- If no
nonceparameter is specified (or not set to null manually), the library will now take care of generating a nonce and using it for authentication.
- If no
NativeSignInState#startedhas been changed toNativeSignInState#statuswhich can beStartedorNotStarted- The Apple Native Sign-In method no longer has any arguments, as they are not needed. Note: I don't think that fixes the Apple Native Sign-In problem.
- Add debug logs and log exceptions caught while trying Native Sign-In
Realtime
- Add support for realtime message throttling in #471
There is now a new realtime config property:eventsPerSecond(default is 10), which configures a client-side rate-limit for sending broadcasts, presence updates etc. If this rate-limit is exceeded, any message within this duration will fail.
Set to a negative number to disable.
Check the Supabase docs for more information.
2.1.6
2.2.0-rc-1
Note
WASM support will be skipped again as Ktor won't be releasing a stable version supporting WASM-JS anytime soon.
Changes
Auth
- Add
SessionStatus.Authenticated#isNew: This will be true if the session source is a sign in, sign up or is external. Use this to to determine whether you e.g. change the screen.
2.2.0-alpha-2
Changes
Auth
- Changes to
SessionStatus:- The
Authenticatednow has asourceproperty which can beStorage,SignIn,SignUp,Refresh,External,UserChanged,UserIdentitiesChangedorUnknown - The
NotAuthenticatedstatus is now a data class rather than an object and has aisSignOutproperty
- The
Compose Auth
- (Android) The Credential Manager will now always be used for all Android versions
- By default, when signing out using
Auth#signOutorAuth#clearSessionthe Google credential will now also be cleared. - You now pass in the
nonceandextraDatawhen callingstartFlowrather than in the plugin settings. - If no
nonceparameter is specified (or not set to null manually), the library will now take care of generating a nonce and using it for authentication. NativeSignInState#startedhas been changed toNativeSignInState#statuswhich can beStartedorNotStarted- The apple native sign in method no longer has any arguments, as they are not needed. Note: I don't think that fixes the Apple Native Sign in problem.