220.127.116.11 - November XX, 2011
- Updated to SQLite 3.7.9 [c7c6050ef0].
- More enhancements to the build and test automation.
- Plug native memory leak when closing a database connection containing a statement that cannot be finalized for some reason.
- The SQLite3 class should always attempt to dispose the contained SQLiteConnectionHandle, even when called via the finalizer.
- When compiled with DEBUG defined, emit diagnostic information related to resource cleanup to any TraceListener objects that may be registered.
- Stop characterizing all log messages as errors. From now on, if the errorCode is zero, the message will not be considered an error.
- Never attempt to configure the native logging interface if the SQLite core library has already been initialized for the process. Fix for [2ce0870fad].
- Allow the SQLiteLog class to be used for logging messages without having an open connection.
- Support building the core System.Data.SQLite assemblies using the .NET Framework 4.0 Client Profile. Fix for [566f1ad1e4].
- When generating the schema based on the contents of a SQLiteDataReader, skip flagging columns as unique if the data reader is holding the result of some kind of multi-table construct (e.g. a cross join) because we must allow duplicate values in that case. Fix for [7e3fa93744].
- When returning schema information that may be used by the .NET Framework to construct dynamic SQL, use a fake schema name (instead of null) so that the table names will be properly qualified with the catalog name (i.e. the attached database name). Partial fix for [343d392b51].
- Add SQLiteSourceId property to the SQLiteConnection class to return the SQLite source identifier.
- Add MemoryUsed and MemoryHighwater properties to the SQLiteConnection class to help determine the memory usage of SQLite.
- Add DateTimeKind connection string property to control the DateTimeKind of parsed DateTime values. Partial fix for [343d392b51].
- Improve the robustness of the SQLiteLog class when it will be initialized and unloaded multiple times.
- Fix the name of the interop assembly for Windows CE. Add unit tests to prevent this type of issue from happening again. Fix for [737ca4ff74].
- Formally support the SQL type name BOOLEAN in addition to BOOL. Fix for [544dba0a2f].
- Make sure the SQLiteConvert.TypeNameToDbType method is thread-safe. Fix for [84718e79fa].
18.104.22.168 - October 4, 2011
- Prevent the domain unload event handler in SQLiteLog from being registered multiple times. Fix for [0d5b1ef362].
- Stop allowing non-default application domains to initialize the SQLiteLog class. Fix for [ac47dd230a].
22.214.171.124 - October 3, 2011
- Updated to SQLite 3.7.8 [3e0da808d2].
- More enhancements to the build system.
- Add official NuGet packages for x86 and x64.
- Add Changes and LastInsertRowId properties to the connection class.
- Support more formats when converting data from/to the DateTime type.
- Make all the assembly versioning attributes consistent.
- Add unit testing infrastructure using Eagle.
- Integrate all legacy unit tests, including the "testlinq" project, into the new test suite.
- Add projects to build the interop assembly statically linked to the Visual C++ runtime. Fix for [53f0c5cbf6].
- Add SQLITE_ENABLE_STAT2 compile-time option to the interop assembly. Fix for [74807fbf27].
- Fix mutex issues exposed when running the test suite with the debug version of SQLite.
- Fix transaction enlistment when repeated attempts are made to enlist in the same transaction. Fix for [ccfa69fc32].
- Support the SQLITE_FCNTL_WIN32_AV_RETRY file control to mitigate the impact of file sharing violations caused by external processes.
- Refactor the logging interface to be thread-safe and self-initializing.
- Shutdown the SQLite native interface when the AppDomain is being unloaded. Fix for [b4a7ddc83f].
- Support Skip operation for LINQ using OFFSET. Fix for [8b7d179c3c].
- Support EndsWith operation for LINQ using SUBSTR. Fix for [59edc1018b].
- Support all SQLite journal modes. Fix for [448d663d11].
- Do not throw exceptions when disposing SQLiteDataReader. Fix for [e1b2e0f769].
- The REAL type should be mapped to System.Double. Fix for [2c630bffa7] and [b0a5990f48].
- Minor optimization to GetParamValueBytes(). Fix for [201128cc88].
- Support the ON UPDATE, ON DELETE, and MATCH clause information when generating schema metadata for foreign keys. Partial fix for [b226147b37]. VS designer changes are not yet tested.
- Fix incorrect resource name for SR.resx in the mixed-mode assembly.
- Reduce the number of String.Compare() calls in the hot path for SQLiteCommand.ExecuteReader().
126.96.36.199 - July 4, 2011
- Updated to SQLite 188.8.131.52 [af0d91adf4].
- Fix incorrect hard-coded .NET Framework version information SQLiteFactory_Linq.cs that was causing IServiceProvider.GetService to fail when running against the .NET Framework 3.5.
- Fix all XML documentation warnings.
- Restore support for the mixed-mode assembly (i.e. the one that can be registered in the Global Assembly Cache).
- Restore support for the Compact Framework.
- Remove unused "using" statements from the System.Data.SQLite and System.Data.SQLite.Linq projects.
- Remove hard-coded System.Data.SQLite.Linq version from SQLiteFactory_Linq.cs
- Modify the setup to support bundled packages (i.e. with the mixed-mode assembly) and standard packages (i.e. with the managed assembly separate from the native interop library).
- Disable the ability to register with the Global Assembly Cache in the standard setup package (i.e. it is available in the bundled setup only).
- Remove PATH modification from the setup.
- Modify the naming scheme for the source, setup, and binary packages to allow for the necessary variants.
- In the build automation, attempt to automatically detect if Visual Studio 2008 and/or 2010 are installed and support building binaries for both at once, when available.
- Add release automation to build the source, setup, and binary packages in all supported build variants.
- Add the testlinq project to the new build system and make it work properly with Visual Studio 2008 and 2010.
184.108.40.206 - June 2, 2011
- Updated to SQLite 220.127.116.11 [ed1da510a2].
- Minor optimization to GetBytes(). Fix for [8c1650482e].
- Update various assembly information settings.
- Correct System.Data.SQLite.Linq version and resource information. Fix for [6489c5a396] and [133daf50d6].
- Moved log handler from SQLiteConnection object to SQLiteFactory object to prevent if from being prematurely GCed.
- We should block x64 installs on x86 and we should install native only if the setup package itself is native. Fix for [e058ce156e].
18.104.22.168 - May 1, 2011
- Add the correct directory to the path. Fix for [50515a0c8e].
22.214.171.124 - April 27, 2011
Updated to SQLite 3.7.6+ [1bd1484cd7]
to get additional Windows error logging.
- Updated setup to optionally add install directory to PATH if GAC option selected.
126.96.36.199 - April 12, 2011
- Code merge with [http://www.sqlite.org/releaselog/3_7_6.html | SQLite 3.7.6]
- New VS2008 and VS2010 solution files
- Build and packaging automation
- New Inno Setup files
- Designer support currently not ready for release
188.8.131.52 - February 2011
- Code merge with [http://www.sqlite.org/releaselog/3_7_5.html | SQLite 3.7.5]
- Continuing work on supporting Visual Studio 2010
184.108.40.206 - January 3, 2011
- Code merge with [http://www.sqlite.org/releaselog/3_7_4.html | SQLite 3.7.4]
- Continuing work on supporting Visual Studio 2010