Skip to content

Releases: powersync-ja/powersync-kotlin

v1.2.0

19 Jun 15:51
Compare
Choose a tag to compare
  • Add a new sync client implementation written in Rust instead of Kotlin. While this client is still
    experimental, we intend to make it the default in the future. The main benefit of this client is
    faster sync performance, but upcoming features will also require this client. We encourage
    interested users to try it out by opting in to ExperimentalPowerSyncAPI and passing options when
    connecting:
    //@file:OptIn(ExperimentalPowerSyncAPI::class)
    database.connect(MyConnector(), options = SyncOptions(
      newClientImplementation = true,
    ))
    Switching between the clients can be done at any time without compatibility issues. If you run
    into issues with the new client, please reach out to us!
  • In addition to HTTP streams, the Kotlin SDK also supports fetching sync instructions from the
    PowerSync service in a binary format. This requires the new sync client, and can then be enabled
    on the sync options:
    //@file:OptIn(ExperimentalPowerSyncAPI::class)
    database.connect(MyConnector(), options = SyncOptions(
      newClientImplementation = true,
      method = ConnectionMethod.WebSocket()
    ))
  • [Android, JVM] Use version 0.4.0 of powersync-sqlite-core.

v1.1.1

02 Jun 14:18
Compare
Choose a tag to compare
  • Fix reported progress around compactions / defrags on the sync service.
  • [Android] Set temp_store_directory, avoiding crashes for large materialized views.

1.1.0

07 May 13:21
2fd1d1a
Compare
Choose a tag to compare

1.1.0

  • Add trackPreviousValues option on Table which sets CrudEntry.previousValues to previous values on updates.
  • Add trackMetadata option on Table which adds a _metadata column that can be used for updates.
    The configured metadata is available through CrudEntry.metadata.
  • Add ignoreEmptyUpdates option which skips creating CRUD entries for updates that don't change any values.