Skip to content

Releases: powersync-ja/powersync-swift

1.14.2

08 Jun 11:31

Choose a tag to compare

  • Fix readTransaction throwing. This issue was introduced in version 1.14.0.

1.14.1

02 Jun 12:54

Choose a tag to compare

  • [Internal] The GRDB integration uses high-level GRDB APIs to run statements. Previously, it would use the raw connection pointer only.

PowerSync 1.14.0

27 May 12:13

Choose a tag to compare

Previous versions of the Swift SDK were based on a pre-compiled build of the Kotlin SDK. That build has been removed in this release, the Swift SDK is now written in Swift. This improves performance, makes future platform integrations simpler, and allows you to debug and explore our SDK sources in XCode.

This doesn't change the public API, but it's a substantial internal refactoring. We recommend testing queries and sync in your app after upgrading.

  • The SQLite connection pool, sync client driver, schema serializer, and CRUD layer are now Swift-native.
  • Add opDataTyped and previousValuesTyped fields (both JsonParam?) to CrudEntry. Use them to upload column values with their SQLite types preserved instead of stringified. The old opData and previousValues properties still work.
  • CrudBatch, CrudEntry, and CrudTransaction are concrete structs now, not protocols. Reading their properties still works. You can't construct them in your own code anymore (in tests or mocks, for example); they're SDK-owned types.

Full Changelog: 1.13.1...1.14.0

PowerSync 1.13.1

26 Mar 14:59
c4f8126

Choose a tag to compare

  • Don't attempt to create WebSocket connections on watchOS.
  • Update default SQLite cache size to 50MB, this was previously erroneously set to 200MB.
  • Skip creating ps_crud entries when clearing raw tables.
  • Prevent swallowing CancellationErrors for PowerSync wrapped operations.

PowerSync 1.13.0

14 Mar 17:27
041e845

Choose a tag to compare

  • Add optional logger parameter on openPowerSyncWithGRDB to enable custom loggers.
  • Fixed potential connection issues
    • Fix false connected: true status when using an invalid token.
    • Fix sync loop terminating permanently when the server rejects the connection.
    • Fix sync loop stalling indefinitely after a transport-layer failure (dead socket, network
      dropout).

PowerSync 1.12.0

05 Mar 12:34

Choose a tag to compare

  • Make raw tables easier to use:
    • Introduce the RawTableSchema struct storing the name of a raw table in the database. When set, put and delete statements can be inferred automatically.
    • Add RawTable//jsonDescription, which can be passed to the powersync_create_raw_table_crud_trigger SQL function to auto-create triggers forwarding writes to ps_crud.
  • Fix SyncStreamStatus fields not being visible.
  • Update PowerSync core extension to version 0.4.11.

PowerSync 1.11.0

10 Feb 13:08

Choose a tag to compare

  • Sync streams in #86
  • Support tvOS in #112
  • Fix UserAgent actor isolation in #110

Full Changelog: 1.10.0...1.11.0

PowerSync 1.10.0

20 Jan 12:54

Choose a tag to compare

  • Fix "Linking a static library that was built with -gmodules, but the module cache was not found.` build warnings (#107).
  • Update to SQLite 3.51.2.
  • Add initialStatements parameter to PowerSyncDatabase(). These statements run before anything else when databases are opened, which is useful to e.g. enable encryption (#82).

PowerSync 1.9.0

06 Jan 12:20
9c31b12

Choose a tag to compare

  • Fixed user agent strings not following expected format in #95

  • Added Alpha PowerSyncGRDB product which supports sharing GRDB DatabasePools with PowerSync and application logic in #78

  • Add appMetadata parameter to PowerSyncDatabase.connect() (via ConnectOptions) to include application metadata in sync requests. This metadata is merged into sync requests and displayed in PowerSync service logs in #104
    Note: This requires a PowerSync service version >=1.17.0 in order for logs to display metadata.

    try await database.connect(
        connector: connector,
        options: ConnectOptions(
            appMetadata: ["appVersion": "1.0.0", "deviceId": "device456"]
        )
    )

PowerSync 1.8.2

17 Dec 17:53
0de4477

Choose a tag to compare

Fix PowerSyncKotlin frameworks not containing a CFBundleVersion.