UNPKG

cordova-sqlcipher-adapter

Version:

SQLCipher database adapter for PhoneGap/Cordova, based on cordova-sqlite-storage

507 lines (318 loc) 20.1 kB
# Changes ## cordova-sqlcipher-adapter 0.6.0 - SQLCipher 4.5.3 (community) update for Android now with math functions - enable & test math functions for iOS & macOS - SQLCipher 4.5.3 (community) update for iOS & macOS ## cordova-sqlcipher-adapter 0.5.4 - fix: rebuild SQLCipher 4.4.3 (community) for Android with OpenSSL 1.1.1k (in custom build, as documented) ## cordova-sqlcipher-adapter 0.5.3 - fix: SQLCipher 4.4.3 (community) update for iOS & macOS - fix: SQLCipher 4.4.3 (community) update for Android with OpenSSL 1.1.1j (in custom build, as documented) ### cordova-sqlite-storage-commoncore 2.0.0 - refactor: clean up imports for Android - Fix plugin param name for macOS ("osx") - *tested* with Cordova 9 and cordova-osx@5 - Drop support for __disabled__ Windows on ARM (Windows Mobile) ## cordova-sqlcipher-adapter 0.5.2 - SQLCipher 4.4.2 (community) update for iOS & macOS ("osx") - SQLCipher 4.4.2 (community) update for Android in custom build, as documented ## cordova-sqlcipher-adapter 0.5.1 - SQLCipher 4.4.0 (community) update for Android in custom build, as documented - SQLCipher 4.4.0 (community) update for iOS & macOS ("osx") #### cordova-sqlite-storage 5.0.1 - enable RENAME table with view test - from December 2019 SQLite crash report, fixed in 2020 ref: - http://sqlite.1065341.n5.nabble.com/Crash-Bug-Report-tc109903.html - https://github.com/xpbrew/cordova-sqlite-storage/issues/904 ## cordova-sqlcipher-adapter 0.5.0 - SQLCipher 4.3.0 update for Android in custom build, as documented - SQLCipher 4.3.0 update for iOS/macOS #### cordova-sqlite-storage 5.0.0 - avoid incorrect default directory on iOS/macOS - to be extra safe (see <https://github.com/xpbrew/cordova-sqlite-storage/issues/907>) - ensure that default "nosync" directory *always* has resource value set for `NSURLIsExcludedFromBackupKey` - add more checks for missing database directory #### cordova-sqlite-storage 4.0.0 - rename PSPDFThreadSafeMutableDictionary to CustomPSPDFThreadSafeMutableDictionary and completely remove PSPDFThreadSafeMutableDictionary.h #### cordova-sqlite-storage 3.4.1 - SQLite 3.30.1 update from cordova-sqlite-storage-dependencies@2.1.1 #### cordova-sqlite-storage 3.4.0 - quick workaround for `SYNTAX_ERR` redefinition #### cordova-sqlite-storage 3.3.0 - new default page & cache sizes with cordova-sqlite-storage-dependencies@2.1.0 ##### cordova-sqlite-storage-commoncore 1.0.0 - additional EU string manipulation test cases #### cordova-sqlite-storage 3.2.1 - cordova-sqlite-storage-dependencies@2.0.1 with SQLite 3.28.0 update for all supported platforms Android/iOS/macOS/Windows #### cordova-sqlite-storage 3.2.0 - sqlite3_threadsafe() error handling on iOS/macOS #### cordova-sqlite-storage 3.1.0 - no SQLITE_DEFAULT_CACHE_SIZE compile-time setting on iOS/macOS/Windows #### cordova-sqlite-storage 3.0.0 - Use cordova-sqlite-storage-dependencies 2.0.0 with SQLITE_DBCONFIG_DEFENSIVE setting used by sqlite-native-driver.jar on Android ###### cordova-sqlite-ext-common-core 0.2.0 - Move SQLite3.UWP.vcxproj out of extra SQLite3.UWP subdirectory - Completely remove old Windows 8.1 & Windows Phone 8.1 vcxproj files ###### cordova-sqlite-extcore 0.1.0 - move the embedded `SQLite3-WinRT` component to `src/windows/SQLite3-WinRT-sync` and update `plugin.xml` ##### cordova-sqlite-ext-common-core 0.1.0 ###### cordova-sqlite-ext-core-common 0.1.0 - beforePluginInstall.js updates - use standard Promise - get the plugin package name from package.json - use const instead of var (this should be considered a POSSIBLY BREAKING CHANGE since const may not work on some really old Node.js versions) - remove hasbang line that is not needed ### cordova-sqlite-storage 2.6.0 - Use cordova-sqlite-storage-dependencies 1.2.1 with SQLite 3.26.0, with a security update and support for window functions ### cordova-sqlite-storage 2.5.2 - Ignore Android end transaction error when closing for androidDatabaseProvider: 'system' setting, to avoid possible crash during app shutdown (<https://github.com/litehelpers/Cordova-sqlite-storage/issues/833>) ### cordova-sqlite-storage 2.5.1 - fix internal plugin cleanup error log on Android ### cordova-sqlite-storage 2.5.0 - androidDatabaseProvider: 'system' setting, to replace androidDatabaseImplementation setting which is now deprecated ### cordova-sqlite-storage 2.4.0 - Report internal plugin error in case of attempt to open database with no database name on iOS or macOS - Cover use of standard (WebKit) Web SQL API in spec test suite - Test and document insertId in UPDATE result set on plugin vs (WebKit) Web SQL - other test updates ### cordova-sqlite-storage 2.3.3 - Quick fix for some iOS/macOS internal plugin error log messagess - test updates - quick doc updates ### cordova-sqlite-storage 2.3.2 - Mark some Android errors as internal plugin errors (quick fix) - remove trailing whitespace from Android implementation - test coverage updates - quick doc updates ### cordova-sqlite-storage 2.3.1 - Mark some iOS/macOS plugin error messages as internal plugin errors (quick fix) - Quick documentation updates ### cordova-sqlite-storage 2.3.0 - Use SQLite 3.22.0 with SQLITE_DEFAULT_SYNCHRONOUS=3 (EXTRA DURABLE) compile-time setting on all platforms (Android/iOS/macOS/Windows) ref: litehelpers/Cordova-sqlite-storage#736 ## cordova-sqlcipher-adapter 0.4.1 - SQLCipher 4.2.0 update ## cordova-sqlcipher-adapter 0.4.0 - SQLITE_DBCONFIG_DEFENSIVE flag for Android (custom build) in addition to iOS/macOS/Windows (POTENTIALLY BREAKING CHANGE) - Cleanup SQLiteAndroidDatabase.java in this plugin version (no workaround needed for pre-Honeycomb in this plugin version) - `SQLITE_DEFAULT_SYNCHRONOUS=3` (EXTRA DURABLE) compile-time setting on the disabled Windows platform ###### cordova-sqlite-storage-ext-core-common 2.0.0 - SQLITE_DBCONFIG_DEFENSIVE flag - iOS/macOS/Windows (POTENTIALLY BREAKING CHANGE) - remove internal qid usage from JavaScript (not needed) - non-static Android database runner map (POTENTIALLY BREAKING CHANGE) - Completely remove old Android SuppressLint (android.annotation.SuppressLint) - POSSIBLY BREAKING CHANGE - drop workaround for pre-Honeycomb Android API (BREAKING CHANGE) - no extra @synchronized block per batch (iOS/macOS) - should be considered a POSSIBLY BREAKING change - remove backgroundExecuteSql method not needed (iOS/macOS) - Completely remove iOS/macOS MRC (Manual Reference Counting) support - should be considered a POSSIBLY BREAKING change ## cordova-sqlcipher-adapter 0.3.0 - SQLCipher 4.0.1 update, with SQLITE_OMIT_SHARED_CACHE build flag now used on Android ## cordova-sqlcipher-adapter 0.2.1 - SQLITE_OMIT_DEPRECATED for iOS/macOS ## cordova-sqlcipher-adapter 0.2.0 - Remove default page/cache size settings for unencrypted databases on iOS/macOS & unsupported Windows platforms (already gone for Android) ### cordova-sqlite-storage 2.2.1 - Fix Android/iOS src copyright, perpetually ### cordova-sqlite-storage 2.2.0 - Fix SQLiteAndroidDatabase implementation for Turkish and other foreign locales ### cordova-sqlite-storage 2.1.0 Windows platform updates that are currently not supported in this plugin version: - Visual Studio 2017 updates for Windows UWP build - Fix Windows target platform version - Reference Windows platform toolset v141 to support Visual Studio 2017 (RC) ## cordova-sqlcipher-adapter 0.1.12-rc3 - SQLCipher `3.4.2` with FTS3/FTS5 update from SQLite 3.26.0 (security update) for iOS/macOS from <https://github.com/brodybits/sqlcipher/tree/3.4.x%2Bfts-update> (`3.4.x+fts-update` branch) - SQLCipher `3.5.9` for Android, in JARs again, with FTS3/FTS5 update from SQLite 3.26.0 (security update) in custom build from <https://github.com/brodybits/android-database-sqlcipher/tree/3.5.x%2Bfts-update-custom-jars> (`3.5.x+fts-update-custom-jars` branch) - SQLITE_DEFAULT_SYNCHRONOUS=3 (extra durable build setting) - Fix build settings in README.md ## cordova-sqlcipher-adapter 0.1.12-rc2 - cordova-sqlcipher-adapter with SQLITE_THREADSAFE=1 for iOS/macOS ref: litehelpers/Cordova-sqlite-storage#754 (<https://github.com/litehelpers/Cordova-sqlite-storage/issues/754>) ## cordova-sqlcipher-adapter 0.1.12-rc1 - SQLCipher for Android 3.5.9 Gradle reference - SQLCipher 3.4.2 for iOS/macOS - Windows platform build disabled (no longer tested in this plugin version; CRYPTO no longer enabled in Windows SQLite3 library build; unwanted libTomCrypt provider completely removed) ##### cordova-sqlite-legacy-core 1.0.7 - Add error info text in case of close error on Windows - Signal INTERNAL ERROR in case of attempt to reuse db on Windows (should never happen due to workaround solution to BUG 666) - SQLITE_DEFAULT_CACHE_SIZE build flag fix for macOS ("osx") and Windows ###### cordova-sqlite-legacy-express-core 1.0.5 - iOS/macOS @synchronized guard for sqlite3_open operation - Signal INTERNAL ERROR in case of attempt to reuse db (Android/iOS) (should never happen due to workaround solution to BUG 666) ## cordova-sqlcipher-adapter 0.1.11 ##### cordova-sqlite-legacy-core 1.0.6 ###### cordova-sqlite-legacy-express-core 1.0.4 - Cleaned up workaround solution to BUG 666: close db before opening (ignore close error) - android.database end transaction if active before closing (needed for new BUG 666 workaround solution to pass selfTest in case of builtin android.database implementation) ##### cordova-sqlite-legacy-core 1.0.5 ###### cordova-sqlite-legacy-express-core 1.0.3 - Resolve Java 6/7/8 concurrent map compatibility issue reported in litehelpers/Cordova-sqlite-storage#726, THANKS to pointer by @NeoLSN (Jason Yang/楊朝傑) in litehelpers/Cordova-sqlite-storage#727. - selfTest database cleanup do not ignore close or delete error on any platforms ## cordova-sqlcipher-adapter 0.1.10 - Windows 8.1 and Windows Phone 8.1 supported again, NOW DEPRECATED ##### cordova-sqlite-legacy-core 1.0.4 - New workaround solution to BUG 666: close db before opening (ignore close error) ##### cordova-sqlite-legacy-core 1.0.3 - Suppress warnings when building sqlite3.c & PSPDFThreadSafeMutableDictionary.m on iOS/macOS ##### cordova-sqlite-legacy-core 1.0.2 - Fix log in case of transaction waiting for open to finish; doc fixes - SQLite 3.15.2 build with SQLITE_THREADSAFE=2 on iOS/macOS (SQLITE_THREADSAFE=1 on Android/Windows) and other flag fixes in this version branch to avoid possible malformed database due to multithreaded access ref: litehelpers/Cordova-sqlite-storage#703 - Windows 10 (UWP) build with /SAFESEH flag on Win32 (x86) target ###### cordova-sqlite-legacy-express-core 1.0.2 - Use PSPDFThreadSafeMutableDictionary for iOS/macOS to avoid threading issue ref: litehelpers/Cordova-sqlite-storage#716 ###### cordova-sqlite-legacy-express-core 1.0.1 - Fix bug 666 workaround to trigger ROLLBACK in the next event tick (needed to support version with pre-populated database on Windows) ###### cordova-sqlite-legacy-express-core 1.0.0 - Workaround solution to BUG litehelpers/Cordova-sqlite-storage#666 (hanging transaction in case of location reload/change) - selfTest simulate scenario & test solution to BUG litehelpers/Cordova-sqlite-storage#666 (also includes string test and test of effects of location reload/change in this version branch, along with another internal check) - Drop engine constraints in package.json & plugin.xml (in this version branch) - Remove Lawnchair adapter from this version branch - Support macOS platform with builtin libsqlite3.dylib framework in this version branch ## cordova-sqlcipher-adapter 0.1.9 - SQLCipher 3.4.1, SQLCipher for Android 3.5.6 - Build flag fixes - minor test fixes - certain array and object tests disabled in this version branch due to testing issues on iOS with WKWebView - doc fixes ### cordova-sqlite-storage 1.5.4 - Fix iOS/macOS version to report undefined insertId in case INSERT OR IGNORE is ignored - Fix FIRST_WORD check for android.sqlite.database implementation - SQLite 3.15.2 build fixes - Doc updates ### cordova-sqlite-storage 1.5.3 - Fix merges to prevent possible conflicts with other plugins (Windows) - Fix handling of undefined SQL argument values (Windows) - Signal error in case of a failure opening the database file (iOS/macOS) - Doc fixes and updates ### cordova-sqlite-storage 1.5.2 - Check transaction callback functions to avoid crash on Windows - Fix echoTest callback handling - Fix openDatabase/deleteDatabase exception messages - Move Lawnchair adapter to a separate project - Doc updates ### cordova-sqlite-storage 1.5.1 - Minor test fixes ### cordova-sqlite-storage 1.5.0 - Drop support for Windows 8.1 & Windows Phone 8.1 ### cordova-sqlite-storage 1.4.9 - Minor JavaScript fix (generated by CoffeeScript 1.11.1) - Update test due to issue with u2028/u2029 on cordova-android 6.0.0 - doc fixes - Cleanup plugin.xml: remove old engine constraint that was already commented out - Fix LICENSE.md ## cordova-sqlcipher-adapter 0.1.8 - Android version with android-database-sqlcipher 3.5.4 ### cordova-sqlite-storage 1.4.8 - selfTest function add string test and test of effects of location reload/change - Support macOS ("osx" platform) - Signal an error in case of SQL with too many parameter argument values on iOS (in addition to Android & Windows) - Include proper SQL error code on Android (in certain cases) - Fix reporting of SQL statement execution errors in Windows version - Fix Windows version to report errors with a valid error code (0) - Some doc fixes ### cordova-sqlite-storage 1.4.7 - Minor JavaScript fixes to pass @brodybits/Cordova-sql-test-app ### cordova-sqlite-storage 1.4.6 - Stop remaining transaction callback in case of an error with no error handler returning false - Expand selfTest function to cover CRUD with unique record keys - Fix readTransaction to reject ALTER, REINDEX, and REPLACE operations - Fix Windows 10 ARM Release Build of SQLite3 by disabling SDL check (ARM Release only) - Fix Windows 8.1/Windows Phone 8.1 Release Build of SQLite3 by disabling SDL check - Some documentation fixes ### cordova-sqlite-storage 1.4.5 - Log/error message fixes; remove extra qid from internal JSON interface ### cordova-sqlite-storage 1.4.4 - Fix readTransaction to reject modification statements with extra semicolon(s) in the beginning - Announce new Cordova-sqlite-evcore-extbuild-free version - Additional tests - Other doc fixes ### cordova-sqlite-storage 1.4.3 - Handle executeSql with object sql value (solves another possible crash on iOS) ### cordova-sqlite-storage 1.4.2 - Fix sqlitePlugin.openDatabase and sqlitePlugin.deleteDatabase to check location/iosDatabaseLocation values - Fix sqlitePlugin.deleteDatabase to check that db name is really a string (prevents possible crash on iOS) - Fix iOS version to use DLog macro to remove extra logging from release build - Fix Lawnchair adapter to use new mandatory "location" parameter - Remove special handling of Blob parameters, use toString for all non-value parameter objects - Minor cleanup of Android version code ### cordova-sqlite-storage 1.4.1 - Minimum Cordova version no longer enforced in this version ### cordova-sqlite-storage 1.4.0 - Now using cordova-sqlite-storage-dependencies for SQLite 3.8.10.2 Android/iOS/Windows - Android-sqlite-connector implementation supported by this version again - Enforce minimum cordova-windows version (should be OK in Cordova 6.x) - Support Windows 10 along with Windows 8.1/Windows Phone 8.1 ### cordova-sqlite-storage 1.2.2 - Self-test function to verify ability to open/populate/read/delete a test database - Read BLOB as Base-64 DISABLED in Android version (was already disabled for iOS) ## cordova-sqlcipher-adapter 0.1.7 - Fix Windows build - SQLCipher prerelease fix to use append mode for cipher_profile - SQLCipher for Android updates ## cordova-sqlcipher-adapter 0.1.6 - SQLCipher for Android with API 23 fixes from: https://github.com/litehelpers/android-database-sqlcipher-api-fix - ICU-Unicode string manipulation no longer supported for Android - REGEXP disabled for iOS - Minimum Cordova version no longer enforced ## cordova-sqlcipher-adapter 0.1.5 - SQLCipher 3.4.0 with FTS5 (all platforms) and JSON1 (Android/iOS) - Support Windows 10 UWP build along with Windows 8.1/Windows Phone 8.1 (WAL/MMAP disabled for Windows Phone 8.1) - Renamed SQLiteProxy.js to sqlite-proxy.js in Windows version ### cordova-sqlite-storage 1.2.1 - Close Android SQLiteStatement after INSERT/UPDATE/DELETE - Specify minimum Cordova version 6.0.0 - Lawnchair adapter fix: Changed remove method to work with key array ### x.x.x-common-dev - Fix PCH issue with Debug Win32 UWP (Windows 10) build ### cordova-sqlite-storage 1.2.0 - Rename Lawnchair adapter to prevent clash with standard webkit-sqlite adapter - Support location: 'default' setting in openDatabase & deleteDatabase ### cordova-sqlite-storage 0.8.5 - More explicit iosDatabaseLocation option - iOS database location is now mandatory - Split-up of some more spec test scripts ### cordova-sqlite-storage 0.8.2 - Split spec/www/spec/legacy.js into db-open-close-delete-test.js & tx-extended.js ### cordova-sqlite-storage 0.8.0 - Simple sql batch transaction function - Echo test function - Remove extra runInBackground: step from iOS version - Java source of Android version now using io.sqlc package ### cordova-sqlite-storage 0.7.15-pre - All iOS operations are now using background processing (reported to resolve intermittent problems with cordova-ios@4.0.1) ### cordova-sqlite-storage 0.7.13 - REGEXP support partially removed from this version branch - Rename Windows C++ Database close function to closedb to resolve conflict for Windows Store certification - Android version with sqlite `3.8.10.2` embedded (with error messages fixed) - Pre-populated database support removed from this version branch - Amazon Fire-OS support removed - Fix conversion warnings in iOS version ### cordova-sqlite-storage 0.7.12 - Fix to Windows "Universal" version to support big integers - Implement database close and delete operations for Windows "Universal" - Fix readTransaction to skip BEGIN/COMMIT/ROLLBACK ### cordova-sqlite-storage 0.7.11 - Fix plugin ID in plugin.xml to match npm package ID - Unpacked sqlite-native-driver.so libraries from jar - Fix conversion of INTEGER type (iOS version) - Disable code to read BLOB as Base-64 (iOS version) due to https://issues.apache.org/jira/browse/CB-9638 ## cordova-sqlcipher-adapter 0.1.4-rc - Workaround fix for empty readTransaction issue ## cordova-sqlcipher-adapter 0.1.4-pre - Implement database close and delete operations for Windows "Universal" - Fix conversion warnings in iOS version ### cordova-sqlite-storage 0.7.12 - Fix to Windows "Universal" version to support big integers - Fix readTransaction to skip BEGIN/COMMIT/ROLLBACK ## cordova-sqlcipher-adapter 0.1.3-pre - Update to SQLCipher v3.3.1 (all platforms) - Check that the database name is a string, and throw exception otherwise ### cordova-sqlite-storage 0.7.11 - Fix conversion of INTEGER type (iOS version) ### cordova-sqlite-storage 0.7.8 - Build ARM target of Windows "Universal" version with Function Level Linking ref: http://www.monkey-x.com/Community/posts.php?topic=7739 ## cordova-sqlcipher-adapter 0.1.2 - Update Android and iOS versions to use SQLCipher v3.3.0 - Windows Universal (8.1) including both Windows and Windows Phone 8.1 now supported - insertId and rowsAffected longer missing for Windows (Universal) 8.1 - iOS and Windows Universal versions built with a close match to the sqlite4java sqlite compiler flags-for example: FTS3/FTS4 and R-TREE ## cordova-sqlcipher-adapter 0.1.1 - Abort initially pending transactions for db handle if db cannot be opened (due to incorrect password key, for example) - Proper handling of transactions that may be requested before the database open operation is completed - Report an error upon attempt to close a database handle object multiple times. - Resolve issue with INSERT OR IGNORE (Android)