From d958f911a72c7b388d28484e0c847c3c089baf5b Mon Sep 17 00:00:00 2001 From: Simon Binder Date: Mon, 1 Jun 2026 12:35:50 +0200 Subject: [PATCH] Document `unstable_sqlite_expression_engine` --- sync/advanced/compatibility.mdx | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/sync/advanced/compatibility.mdx b/sync/advanced/compatibility.mdx index 0a122fea..688438b3 100644 --- a/sync/advanced/compatibility.mdx +++ b/sync/advanced/compatibility.mdx @@ -99,6 +99,7 @@ This table lists all fixes currently supported: | `versioned_bucket_ids` | [Link](#versioned-bucket-ids) | 1.15.0 | 2 | | `fixed_json_extract` | [Link](#fixed-json-extract) | 1.15.0 | 2 | | `custom_postgres_types` | [Link](#custom-postgres-types). | 1.15.3 | 2 | +| `unstable_sqlite_expression_engine` | [Link](#custom-postgres-types). | 1.22.0 | None (unstable) | ### `timestamps_iso8601` @@ -190,3 +191,17 @@ With this fix applied: | 'empty'; ``` - Multi-ranges sync as an array of ranges. + +### `unstable_sqlite_expression_engine` + + +This option is experimental: When enabled, updates to the PowerSync Service might change how rows are processed +and this option may be removed in a future version of the service. + + +Sync Streams support scalar SQL operators (like `+`, `-` and `||`) and [functions](/sync/supported-sql#functions). +SQL in Sync Streams should behave exactly as it would in SQLite, but the Service uses a custom implementation which differs +from SQLite for some inputs. + +To perfectly align the behavior of the Service and SQLite, enabling this option makes the Service use an actual +SQLite database to evaluate Sync Streams.