You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the bug
When a password reset link or similar link expires an AuthException(message: Email link is invalid or has expired, statusCode: null) is thrown. The AuthException should have a non-null statusCode because the processed auth url contains an error code (error_code=403) as part of its query parameters.
To Reproduce
Steps to reproduce the behavior:
Request a password reset link via email using the Supabase Flutter SDK by executing
Additional context
From the source code (src/supabase_auth.dart),
it seems an omission was made around line 760:
"GoTrueClient.getSessionFromUrl (package:gotrue/src/gotrue_client.dart:760:7)"
final errorDescription = url.queryParameters['error_description'];
if (errorDescription !=null) {
throwAuthException(errorDescription);
}
it could be
final errorCode = url.queryParameters['error_code'];
final errorDescription = url.queryParameters['error_description'];
if (errorDescription !=null) {
throwAuthException(errorDescription, statusCode: errorCode);
}
Making this change is non-breaking.
The text was updated successfully, but these errors were encountered:
Describe the bug
When a password reset link or similar link expires an AuthException(message: Email link is invalid or has expired, statusCode: null) is thrown. The AuthException should have a non-null statusCode because the processed auth url contains an error code (error_code=403) as part of its query parameters.
To Reproduce
Steps to reproduce the behavior:
Alternatively, if you have an existing expired processed auth url, you can execute
Expected behavior
The AuthException thrown should be
Version (please complete the following information):
Dart SDK 3.4.0
Flutter SDK 3.22.0
myapp 1.0.0+1
├── supabase_flutter 2.5.6
│ ├── supabase 2.2.2
│ │ ├── functions_client 2.2.0
│ │ ├── gotrue 2.8.1
│ │ ├── postgrest 2.1.2
│ │ ├── realtime_client 2.1.0
│ │ ├── storage_client 2.0.2
Additional context
From the source code (src/supabase_auth.dart),
it seems an omission was made around line 760:
"GoTrueClient.getSessionFromUrl (package:gotrue/src/gotrue_client.dart:760:7)"
it could be
Making this change is non-breaking.
The text was updated successfully, but these errors were encountered: