All Versions
Latest Version
Avg Release Cycle
84 days
Latest Release
1784 days ago

Changelog History
Page 1

  • v1.0.8 Changes

    November 12, 2018


    • ๐Ÿ‘Œ Support for Room library from Android Jetpack. See README and Wiki for details.
  • v1.0.8.2 Changes

    March 26, 2019

    ๐ŸŽ iOS/macOS

    • ๐Ÿ‘Œ Support Swift 4.2 for Xcode 10.2
  • v1.0.8.1 Changes

    January 14, 2019

    ๐ŸŽ iOS/macOS

    • ๐Ÿ›  Fix a bug that archive failed with Xcode new build system.
  • v1.0.7 Changes

    August 28, 2018

    ๐ŸŽ iOS/macOS

    • ๐Ÿ›  Fix nil string bug while inserting empty string.
    • โฌ‡๏ธ Reduce size of binary and provide a non-bitcode scheme by --configuration WithoutBitcode for Carthage.
    • Avoid conflict between builtin SQLCipher and other SQLite based library(including system library).
    • Code template is not installed automatically now. Developers can run curl -s | sh to install it manually.
  • v1.0.7.5 Changes

    September 21, 2018

    ๐ŸŽ iOS/macOS

    • Compatible with Swift 4.2.
    • Enable FTS5 macro for sqlcipher.
  • v1.0.6 Changes

    January 02, 2018

    ๐ŸŽ iOS/macOS

    ๐Ÿš€ It's the first release for WCDB Swift, which contains exactly the same features as the ObjC version, including:

    • Object-Relational-Mapping based on Swift 4.0 Codable protocol.
    • WCDB Integrated Language Query.
    • Multithreading safety and concurrency.
    • Encryption based on SQLCipher.
    • Protection for SQL injection.
    • Full text search.
    • Corruption recovery.
    • ...

    For further information, please check tutorial on wiki.


    • ๐Ÿ”Œ Migrate to gradle plugin 3.0.0, target API 26, and minimal API 14.
    • ๐Ÿ‘Œ Support NDK r16, change default toolchain to clang.
    • ๐Ÿ›  Various bug fixes.
  • v1.0.6.2 Changes

    June 06, 2018

    ๐ŸŽ iOS/macOS

    ๐Ÿ›  It's a bug fixed version. Since Swift 4.1.x contains bugs that make WCDB fails to compile, developers should use Xcode 10(with Swift 4.2).

    • Compatible with Swift 4.2. The ColumnEncodable and ColumnDecodable is now changed. Check the code snippet, file template or wiki for the new usage.
    • ๐Ÿ‘‰ Use Double column type for Date.

    ๐Ÿ”จ FYI, a refactor is needed to fit the new conditional conformance design of Swift 4.2. We will finish it in next version.


    • ๐Ÿ‘‰ Use C++14 and libc++_static runtime on JNI routines.
    • ๐Ÿ›  Fix "no implementation found" log on initialization.
    • ๐Ÿ›  Fix ProGuard rules when importing from AAR package.
  • v1.0.6.1

    January 09, 2018
  • v1.0.5 Changes

    November 08, 2017

    ๐ŸŽ iOS/macOS

    • ๐Ÿ‘ Builtin full-text search support for ORM. ```objc WCTProperty tableProperty = WCTSampleFTSData.PropertyNamed(tableNameFTS).match("Eng")];

    [databaseFTS getObjectsOfClass:WCTSampleFTSData.class fromTable:tableNameFTS where:tableProperty.match("Eng*")];

    * ๐Ÿ‘Œ Support read-only databases.
    * ๐Ÿ”จ Some minor bug fixes and code refactor.
    #### Android
    * ๐ŸŽ Optimize asynchronous checkpointer, greatly improve write performance with WAL and asynchronous checkpointing.
    SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabaseInWalMode(...);
    • โž• Add benchmark for asynchronous checkpointer.
    • โž• Add connection pooling friendly interface. SQLiteDatabase.setSynchronousMode() to set database synchronization mode.
    • Enable dbstat virtual table while compiling.
  • v1.0.4 Changes

    September 14, 2017

    Repair Kit

    • โž• Add sqliterk_cancel function to cancel ongoing output operations.
    • โž• Add corresponding Java interface to cancel operations on Android.

    ๐ŸŽ iOS/macOS

    • ๐Ÿ‘ Builtin WCTColumnCoding supports all id<NSCoding> objects now.
    • Compatible with iOS 11.
    • 0๏ธโƒฃ Fullfsync is used by default for data integrity.
    • โž• Add -initWithExistingTag: for WCTDatabase to get existing database without path.
    WCTDatabase* database = [WCTDatabase [alloc] initWithPath:path];
    database.tag = 123;
    WCTDatabase* withoutPath = [[WCTDatabase alloc] initWithExistingTag:123];
    • ๐ŸŽ Some minor bug fixes, performance improvement and code refactor.


    • โž• Add asynchronous checkpointing support and custom checkpointing callback. This can improve performance in WAL mode.
    SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabaseInWalMode(...);
    // Use asynchronous checkpointing.
    // OR use custom checkpointer.
    SQLiteCheckpointListener callback = new SQLiteCheckpointListener() {
    • โž• Add SQLiteTrace.onConnectionObtained(...) interface to trace concurrency performance.
    • โž• Add cancelable version of SQLiteDatabase.execSQL(). See CancellationSignal for details.
    CancellationSignal signal = new CancellationSignal();
    db.execSQL(longRunningSQL, args, signal);
    // on another thread
    • Enable SQLITE_ENABLE_FTS3_PARENTHESIS compilation option on SQLCipher, which enables AND, OR operators in FTS3/4.
    • ๐Ÿšฆ Use CancellationSignal for canceling BackupKit, RecoverKit and RepairKit operations. See repair sample for details.
    • โž• Add callback interface for RepairKit to show progress to the users. See RepairKit.Callback and RepairKit.setCallback().
    • Do not load if it's already loaded on the first use. This makes WCDB compatible to Tinker framework.
    • ๐Ÿ›  Various bug fixes.