Skip to content

Releases: powersync-ja/powersync-swift

PowerSync 1.8.1

16 Dec 14:12
aed6bf7

Choose a tag to compare

Pin dependency on CSQLite to avoid "unstable version package" errors.

PowerSync 1.8.0

15 Dec 16:10
c48e90e

Choose a tag to compare

  • Enable the newClientImplementation by default. This should improve performance and memory usage.
  • Potential Breaking Change The newClientImplementation now uses WebSockets to connect to the PowerSync service. These WebSockets connections do not log events to SyncClientConfiguration->requestLogger.
  • Add the soft flag to disconnectAndClear() which keeps an internal copy of synced data in the database, allowing faster re-sync if a compatible token is used in the next connect() call
  • Update PowerSync SQLite core to 0.4.10
  • Update Kotlin SDK to 1.9.0.
  • Bumped the minimum Swift tools version requirement to 6.1

PowerSync 1.7.0

06 Nov 13:44
9196f8a

Choose a tag to compare

  • Update Kotlin SDK to 1.7.0.
  • Add close(deleteDatabase:) method to PowerSyncDatabaseProtocol for deleting SQLite database files when closing the database. This includes the main database file and all WAL mode files (.wal, .shm, .journal). Files that don't exist are ignored, but an error is thrown if a file exists but cannot be deleted.
// Close the database and delete all SQLite files
try await database.close(deleteDatabase: true)

// Close the database without deleting files (default behavior)
try await database.close(deleteDatabase: false)
// or simply
try await database.close()
  • Add PowerSyncDataTypeConvertible protocol for casting query parameters to SQLite supported types.
  • [Internal] Removed unnecessary Task creation in Attachment helper FileManagerStorageAdapter.

PowerSync 1.6.0

19 Sep 08:47
08fd253

Choose a tag to compare

  • Update core extension to 0.4.6 (changelog)
  • Add getCrudTransactions(), returning an async sequence of transactions.
  • Compatibility with Swift 6.2 and XCode 26.
  • Update minimum MacOS target to v12
  • Update minimum iOS target to v15
  • [Attachment Helpers] Added automatic verification or records' local_uri values on AttachmentQueue initialization.
    initialization can be awaited with AttachmentQueue.waitForInit(). AttachmentQueue.startSync() also performs this verification.
    waitForInit() is only recommended if startSync is not called directly after creating the queue.

PowerSync 1.5.1

05 Sep 20:19
174282d

Choose a tag to compare

  • Update core extension to 0.4.5 (changelog)
  • Additional Swift 6 Strict Concurrency Checking declarations added for remaining protocols in #75
  • Fix issue in legacy sync client where local writes made offline could have their upload delayed until a keepalive event was received. This could also cause downloaded updates to be delayed even further until all uploads were completed in powersync-ja/powersync-kotlin#255

PowerSync 1.5.0

28 Aug 15:44
20ec94b

Choose a tag to compare

  • Fix null values in CRUD entries being reported as strings in #69

  • Added support for Swift 6 strict concurrency checking in #70

    • Accepted query parameter types have been updated from [Any] to [Sendable]. This should cover all supported query parameter types.
    • Query and lock methods' return Result generic types now should extend Sendable.
    • Deprecated default open class PowerSyncBackendConnector. Devs should preferably implement the PowerSyncBackendConnectorProtocol
  • Potential Breaking Change: Attachment helpers have been updated to better support Swift 6 strict concurrency checking. Actor isolation is improved, but developers who customize or extend AttachmentQueue will need to update their implementations. The default instantiation of AttachmentQueue remains unchanged.
    AttachmentQueueProtocol now defines the basic requirements for an attachment queue, with most base functionality provided via an extension. Custom implementations should extend AttachmentQueueProtocol.

  • Added PowerSyncDynamic product to package. Importing this product should restore XCode preview functionality in #71

  • [Internal] Instantiate Kotlin Kermit logger directly in #67

  • [Internal] Improved connection context error handling in #69

PowerSync 1.4.0

07 Aug 15:49

Choose a tag to compare

  • Add network logging support in #63
  • Update core extension in #65

Full Changelog: 1.3.1...1.4.0

PowerSync 1.3.1

06 Aug 09:15

Choose a tag to compare

  • Update SQLite to 3.50.3.
  • Support receiving binary sync lines over HTTP when the Rust client is enabled.
  • Remove the experimental websocket transport mode.

PowerSync 1.3.0

17 Jul 11:53

Choose a tag to compare

  • Use version 0.4.2 of the PowerSync core extension, which improves the reliability
    of the new Rust client implementation.
  • Add support for raw tables, which
    are custom tables managed by the user instead of JSON-based views managed by the SDK.
  • Fix attachments never downloading again when the sandbox path of the app (e.g. on the simulator)
    changes.

PowerSync 1.2.1

07 Jul 14:14

Choose a tag to compare

  • Use version 0.4.1 of the PowerSync core extension, which fixes an issue with the new Rust client implementation.
  • Fix crud uploads when web sockets are used as a connection method.