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
{{ message }}
Repository navigation
Commit f893550
Browse filesBrowse the repository at this point in the historyBrowse files
pubsub: let a basic-auth realtime connection enter presence for others
A realtime client built from a key alone is told clientId "*" in its
CONNECTED message. _configure_client_id opens with a branch that keeps a
configured clientId against a server wildcard, and with no clientId
configured that branch still fired, recording the clientId as validated
and None. can_assume_client_id then refused every clientId, so
presence.enter_client could never succeed on such a connection
(deviations.md I.2; RSA7b4, RTP14, RTP15). The UTS integration presence
tests and the repository's own presence suite worked around it by
configuring client_id='*'.
The branch now applies only when a clientId is configured, so with none
the client takes the wildcard as its clientId, which RSA7b4 asks for.
Because auth.client_id can now be "*", the Basic auth X-Ably-ClientId
header is taken from the configured clientId, as RSA7e2 specifies,
rather than from auth.client_id, so a wildcard the server reported is
never sent back to it as a clientId. A later authorize() on such a
client requests a wildcard token, which RSA10h asks for and the key
already permits.
This is not a breaking change. The three batch presence tests and the
two realtime integration presence tests that configured client_id='*'
as a workaround now build their clients as the specifications do.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
0 commit comments