PowerSync Product Team
Flutter SDK

Flutter Client SDK: v1.3.1

AUTHOR: PowerSync Product Team

We are pleased to announce the release of version 1.3.1 of the PowerSync Flutter client SDK.

See the full changelog below.

Have any questions or feedback? Chat with us and the PowerSync community on Discord.




  • [ADDED] crudThrottleTime option to arguments when running PowerSyncDatabase.connect to set the throttle time for CRUD operations.


  • [IMPROVED] Deprecated the DevConnector and DevCredentials classes. These will be removed in the next major release, at which point it will be a breaking change.


  • [FIXED] Indexes incorrectly being dropped after the first run.

  • [FIXED] viewName override causing view "..." already exists errors after the first run.


  • [IMPROVED] The default log output and errors to better assist in debugging.

  • Breaking changes:

    • PowerSyncCredentials constructor is no longer const, and the endpoint URL is validated in the constructor.

    • Different error and exception classes are now used by the library, including CredentialsException, SyncResponseException and PowerSyncProtocolException, instead of more generic AssertionError and HttpException.

  • Other changes:

    • The library now logs to the console in debug builds by default. To get the old behavior, use logger: attachedLogger in the PowerSyncDatabase constructor.

    • Log messages have been improved to better explain the sync process and errors.


  • [FIXED] An error occasionally occurring when calling powersync.connect() right when opening the database.

  • [IMPROVED] Update getting started docs.


  • [IMPROVED] Expand SyncStatus to include connected, downloading, and uploading status, and the last errors.

  • [FIXED] Delete operations rejected by the server not being reverted locally.

  • [FIXED] SyncStatus.connected to be updated when calling PowerSyncDatabase.disconnect().

  • [FIXED] Network error messages only containing a single character in some cases.

  • [IMPROVED] Update sqlite_async dependency:

    • Supports catching errors in transactions and continuing the transaction.

    • Add tx.closed and db/tx.getAutoCommit()

  • [IMPROVED] Update uuid dependency:

    • Now uses CryptoRNG from uuid package now that the performance improvements are upstream.

  • Note: This version requires Dart ^3.2.0 / Flutter ^3.16.0.


  • Use stable version range.


  • [ADDED] Support for overriding view names, which allows having separate tables for a synced mode and a local-only mode, and moving data between the two.

    • The use case is a user first using the app completely offline (without registering an account) and then potentially at a later stage connecting an account and syncing data, without the upload queue continuously growing in size before that.

    • Includes support for preserving local-only tables when clearing the database: await db.disconnectAndClear(clearLocal: false)

  • [ADDED] Enable SQLite recursive triggers, which allows full-text search functionality.

  • [IMPROVED] Validation of the schema definition now includes checks for invalid characters in names, duplicate columns and indexes, and invalid indexes.

  • [IMPROVED] HTTP error messages now include more details about the error if available.


  • [IMPROVED] License the entire library under Apache 2.0.

  • [IMPROVED] Update the uuid dependency.


  • [IMPROVED] Some parameters to PowerSyncCredentials are now optional.

  • [IMPROVED] Update dependencies.

Powered by LaunchNotes