From 7e95d647b10744f813c3aaf01e41d383644e3728 Mon Sep 17 00:00:00 2001 From: "Christopher J. Brody" Date: Thu, 4 Feb 2016 16:27:45 +0100 Subject: [PATCH] Add HISTORY.md --- HISTORY.md | 125 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 125 insertions(+) create mode 100644 HISTORY.md diff --git a/HISTORY.md b/HISTORY.md new file mode 100644 index 000000000..c22e3ed0f --- /dev/null +++ b/HISTORY.md @@ -0,0 +1,125 @@ +# History + +## Overall + +@brodybits (Christopher J. Brody aka Chris Brody) assembled the project in April 2012 +from the following parts: +- DroidGap SQLite Storage Java and Javascript parts +- Phonegap-SQLitePlugin for iOS by @davibe (Davide Bertola ) and + @joenoon (Joe Noon ) + +@brodybits has been maintaining this project with a number of bug fixes and other improvements. + +A number of contributions have been integrated. The most important contributors are explicitly +mentioned in AUTHORS.md. + +## 2009-2010 + +DroidGap Storage Java and Javascript parts were initially added in December 2009. + +## 2011 + +Phonegap-SQLitePlugin for iOS was started by @davibe in June 2011. + +In September 2011 @joenoon rewrote the Javascript (using CoffeeScript) and added a +Lawnchair adapter. + +## 2012 + +The original Phonegap-SQLitePlugin for iOS had a major deviation from the Web SQL API draft. +While the Web SQL API draft keeps the sql and the parameters array as separate parameters, +the original Phonegap-SQLitePlugin combined the sql and parameters in a single array. +This project as assembled by @brodybits keeps the sql and parameters array as separate +parameters to follow the Web SQL API draft more closely. + +@marcucio (Mike Arcucio) contributed a major rework of the Android version to support +efficient batch processing. + +For the first year the Javascript part was completely different for the iOS and +Android versions. @brodybits introduced a QUnit test suite, with some help from +the Lawnchair QUnit test suite as well as the usage sample by @joenoon and @davibe. + +In October 2012 @ef4 (Edward Faulkner) reworked the Javascript for the iOS version +to implement the Web SQL failure-safe transaction semantics, along with some tests. + +In December 2012 @brodybits split the project into separate Android and iOS parts +(merged back together in September 2013). + +In December 2012 @marcucio (Mike Arcucio) made a WP8 version using CSharp-SQLite. + +## 2013 + +In May 2013 @j3k0 (Jean-Christophe Hoelt ) contributed major changes +to the iOS version to work in Cordova 2.7 and support background processing. + +In July 2013 @brodybits updated the Android version to use one background thread +per database and ported the failure-safe transaction semantics to work in the +Android version (with the help of CoffeeScript). + +In August 2013 @brodybits fixed the iOS version to work with the Javascript from +the Android version. + +In September 2013 @brodybits merged the Android version and iOS version to use the +same Javascript interface. + +In September 2013 @brodybits published a fork of the WP8 version with a version +of the CSharp-SQLite source embedded. + +Merge notes: The merged version from September 2013 has some of the early commits +repeated in history. This is because @brodybits removed the iOS sources from the +old Android version using the git filter-branch command. + +## 2014 + +In July 2014 @Gillardo (Darren Gillard ) contributed an integration +of the WP8 version with background processing and improved transaction support. + +Also in July 2014 @nolanlawson contributed a number of fixes and got this project +working with PouchDB. For example: introduction of nextTick to schedule actions to be taken +once the current HTML(5) event handler is finished. + +In August 2014 Mark Oppenheim () contributed the following: +- working open/close callbacks and repeated open/close/delete fixes for Android and WP8 versions + (@brodybits fixed these for the iOS version); +- fixed WP8 version to use one thread per database. + +NOTE: The WP8 version is currently supported in the Cordova-sqlite-legacy version. + +## 2015 + +In January 2015 @aarononeal (Aaron Oneal ) raised PR #170 with a +number of fixes, including: +- Fix to prevent double marshaling of data. +- Fix test runner to use correct plugin id (subsequently broken by @brodybits). +- Fix database close conditions and unit test (reject attempt to close database + the middle of a transaction). +- Propagate statement failures to transaction failures (in the case when a + statement error handler does not return false). +- Fix transaction and statement errors to conform to SQLError. +- Fix warning regarding test runner viewport format. +- Fix executeSql to throw on finalized transactions. +- Reproduce & fix truncation in iOS query result string encoding + (in case of UNICODE \u0000 character in the middle). + +In addition, PR #170 includes a two-way SQL blob marshalling mechanism that is still under +consideration. + +Other major changes by @brodybits in 2015: +- Porting of the existing test suite to work within the Jasmine framework. +- Introduction of workaround for Android locking bug. +- Introduction of Windows target version (Windows 8.0/Windows 8.1/Windows Phone 8.1), + which is now available in cordova-sqlite-ext and Cordova-sqlite-legacy version projects. +- Introduction of lightweight Android-sqlite-connector database library, which is + now available in cordova-sqlite-ext and Cordova-sqlite-legacy version projects. +- Use of Circle CI (Android version) and Travis CI (iOS version). +- Introduction of other version projects: + - Cordova-sqlcipher-adapter + - cordova-sqlite-ext with REGEXP and pre-populated database support + - Cordova-sqlite-enterprise-free with memory fix and other enhancements, + available under GPL or commercial licensing options +- react-native-sqlite-storage version for Android and iOS developed and maintained + by @andpor (Andrzej Porebski ), based on this project + +## Recent changes + +See CHANGES.md