Skip to content

feat(realtime_client): support new postgres changes filter operators, multi-filter, column selection, and replication-ready events#1526

Merged
filipecabaco merged 4 commits into
mainfrom
feat/support-new-realtime-features
Jul 3, 2026
Merged

feat(realtime_client): support new postgres changes filter operators, multi-filter, column selection, and replication-ready events#1526
filipecabaco merged 4 commits into
mainfrom
feat/support-new-realtime-features

Conversation

@filipecabaco

@filipecabaco filipecabaco commented Jul 3, 2026

Copy link
Copy Markdown
Member

What kind of change does this PR introduce?

Brings the realtime client to parity with the new Realtime server features:

  • New postgres_changes filter operators: like, ilike, is, match, imatch, and isdistinct, exposed via PostgresChangeFilterType.
  • Operator negation: PostgresChangeFilter(negate: true) prefixes any operator with not. (e.g. status=not.in.(draft,archived)).
  • Multiple filters: onPostgresChanges(filters: [...]) combines several PostgresChangeFilters with an AND.
  • Column selection: onPostgresChanges(select: [...]) restricts the change payload to a subset of columns.
  • Replication-ready notification: RealtimeChannelConfig(replicationReady: true) asks the server to emit a system event once the Postgres replication connection is ready. The new RealtimeSystemPayload type parses that payload.

PostgREST-style value quoting is applied to scalar and in filter values so reserved characters (,()"\) and surrounding whitespace don't break the server's filter parser.

https://linear.app/supabase/issue/SDK-1170/parityrealtime-add-postgres-changes-filter-builder-new-operators-and
https://linear.app/supabase/issue/SDK-1179/parityrealtime-add-replication-ready-broadcast-option-and-system-event

@filipecabaco filipecabaco requested a review from a team as a code owner July 3, 2026 11:55
@filipecabaco filipecabaco force-pushed the feat/support-new-realtime-features branch from 84140f6 to e9c162f Compare July 3, 2026 12:14
* support new system message to information replication connection is ready
* support new filters
* support select
@filipecabaco filipecabaco force-pushed the feat/support-new-realtime-features branch from e9c162f to a914411 Compare July 3, 2026 14:12
@spydon spydon changed the title fix: support new realtime features feat(realtime_client): support new postgres changes filter operators, multi-filter, column selection, and replication-ready events Jul 3, 2026

@spydon spydon left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed a few things that broke due to my previous PR, but LGTM!

@filipecabaco

Copy link
Copy Markdown
Member Author

thank you 🙏

@filipecabaco filipecabaco merged commit 1f9d295 into main Jul 3, 2026
26 checks passed
@filipecabaco filipecabaco deleted the feat/support-new-realtime-features branch July 3, 2026 15:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants