feat: Allow setting timeout
of RealtimeClient
.
#932
Merged
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.
What kind of change does this PR introduce?
Allow the ctor
SupabaseClient
to settimeout
to aRealtimeClient
.What is the current behavior?
Due to the fact the
timeout
is a final field inRealtimeClient
, we cannot change its value after theRealtimeClient
is created, and because theRealtimeClient
is created in the ctor ofSupabaseClient
, there is no way for users to set the timeout.What is the new behavior?
The new behavior allow us to set the timeout of the
RealtimeClient
like this:Additional context
My app is connecting Supabase through Tor proxy. It's normal to cost 10 or more seconds to build a WebSocket connection. However, the current default timeout of
RealtimeClient
is 10 seconds, which is too short, and very often leads to result of no WebSocket connection is created, and therefore no realtime feature is provided.