fix: restore storage and httpx_client fields on ClientOptions#1467
Closed
Nikhil-jaiswal007 wants to merge 1 commit intosupabase:mainfrom
Closed
fix: restore storage and httpx_client fields on ClientOptions#1467Nikhil-jaiswal007 wants to merge 1 commit intosupabase:mainfrom
Nikhil-jaiswal007 wants to merge 1 commit intosupabase:mainfrom
Conversation
ClientOptions was missing storage and httpx_client fields in v2.28.3, causing AttributeError when creating a client with custom options. Fixes supabase#1466
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
ClientOptions was missing storage and httpx_client fields in v2.28.3, causing Attribute Error when creating a client with custom options. Fixes #1466
What kind of change does this PR introduce?
Bug fix
What is the current behavior?
In v2.28.3, creating a Supabase client with custom ClientOptions raises:
AttributeError: 'ClientOptions' object has no attribute 'storage'
This happens because the base ClientOptions dataclass is missing the storage and httpx_client fields that Client.init tries to access.
Fixes #1466
What is the new behavior?
The base ClientOptions dataclass now includes storage and httpx_client fields with sensible defaults, consistent with SyncClientOptions and AsyncClientOptions.
Example that now works:
from supabase import create_client
from supabase.lib.client_options import ClientOptions
opts = ClientOptions(headers={"Authorization": "Bearer "})
client = create_client("http://localhost:54321", "anon-key", options=opts)
Additional context
This is a recurring regression — the same bug appeared in v2.22.0, was fixed in v2.23.0, reintroduced in v2.24.0 (issue #1306), and has now reappeared in v2.28.3 (issue #1466).