Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Changes In Branch zipvfs Excluding Merge-Ins
This is equivalent to a diff from b994e3c790 to 212beca674
2015-06-03
| ||
17:17 | Add support for integrating with ZipVFS. check-in: 0c9928dbbf user: mistachkin tags: trunk | |
16:38 | Fix incorrect test result. Closed-Leaf check-in: 212beca674 user: mistachkin tags: zipvfs | |
16:33 | Update embedded documentation and the version history docs. check-in: 984f5d1c0d user: mistachkin tags: zipvfs | |
2015-06-02
| ||
18:21 | Add optional support for building the interop assembly with ZIPVFS. check-in: dcd24352a0 user: mistachkin tags: zipvfs | |
2015-05-30
| ||
22:45 | Update SQLite core library to the latest trunk code. check-in: b994e3c790 user: mistachkin tags: trunk | |
21:38 | Implement the Substring method for LINQ using the 'substr' core SQL function. check-in: 52085afe23 user: mistachkin tags: trunk | |
Changes to Doc/Extra/Provider/version.html.
︙ | |||
43 44 45 46 47 48 49 50 51 52 53 54 55 56 | 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | + + | <div id="mainSection"> <div id="mainBody"> <h1 class="heading">Version History</h1> <p><b>1.0.98.0 - August XX, 2015 <font color="red">(release scheduled)</font></b></p> <ul> <li>Updated to <a href="https://www.sqlite.org/draft/releaselog/3_8_11.html">SQLite 3.8.11</a>.</li> <li>Implement the Substring method for LINQ using the "substr" core SQL function. <b>** Potentially Incompatible Change **</b></li> <li>Add the VfsName connection string property to allow a non-default VFS to be used by the SQLite core library.</li> <li>Enable integration with the <a href="http://www.hwaci.com/sw/sqlite/zipvfs.html">ZipVFS</a> extension.</li> </ul> <p><b>1.0.97.0 - May 26, 2015</b></p> <ul> <li>Updated to <a href="https://www.sqlite.org/releaselog/3_8_10_2.html">SQLite 3.8.10.2</a>.</li> <li>Updated to <a href="https://www.nuget.org/packages/EntityFramework/6.1.3">Entity Framework 6.1.3</a>.</li> <li>Improve ADO.NET conformance of the SQLiteDataReader.RecordsAffected property. Fix for <a href="https://system.data.sqlite.org/index.html/info/74542e702e">[74542e702e]</a>. <b>** Potentially Incompatible Change **</b></li> <li>Prevent the IDataReader.GetDataTypeName method from throwing "No current row" exceptions. Fix for <a href="https://system.data.sqlite.org/index.html/info/94252b9059">[94252b9059]</a>.</li> |
︙ |
Changes to SQLite.Interop/props/SQLite.Interop.2005.vsprops.
︙ | |||
55 56 57 58 59 60 61 | 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 | - + | <UserMacro Name="INTEROP_DEBUG_DEFINES" Value="INTEROP_DEBUG=0x31F;INTEROP_LOG=1;INTEROP_TEST_EXTENSION=1" PerformEnvironmentSet="true" /> <UserMacro Name="INTEROP_EXTRA_DEFINES" |
︙ |
Changes to SQLite.Interop/props/SQLite.Interop.2008.vsprops.
︙ | |||
55 56 57 58 59 60 61 | 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 | - + | <UserMacro Name="INTEROP_DEBUG_DEFINES" Value="INTEROP_DEBUG=0x31F;INTEROP_LOG=1;INTEROP_TEST_EXTENSION=1" PerformEnvironmentSet="true" /> <UserMacro Name="INTEROP_EXTRA_DEFINES" |
︙ |
Changes to SQLite.Interop/props/SQLite.Interop.2010.props.
︙ | |||
14 15 16 17 18 19 20 | 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | - + | <INTEROP_LINKER_VERSION>1.0</INTEROP_LINKER_VERSION> <INTEROP_MANIFEST_VERSION>1.0.98.0</INTEROP_MANIFEST_VERSION> <INTEROP_RC_VERSION>1,0,98,0</INTEROP_RC_VERSION> <INTEROP_INCLUDE_DIRECTORIES>src\core</INTEROP_INCLUDE_DIRECTORIES> <INTEROP_LIBRARY_DIRECTORIES></INTEROP_LIBRARY_DIRECTORIES> <INTEROP_LIBRARY_DEPENDENCIES></INTEROP_LIBRARY_DEPENDENCIES> <INTEROP_DEBUG_DEFINES>INTEROP_DEBUG=0x31F;INTEROP_LOG=1;INTEROP_TEST_EXTENSION=1</INTEROP_DEBUG_DEFINES> |
︙ |
Changes to SQLite.Interop/props/SQLite.Interop.2012.props.
︙ | |||
14 15 16 17 18 19 20 | 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | - + | <INTEROP_LINKER_VERSION>1.0</INTEROP_LINKER_VERSION> <INTEROP_MANIFEST_VERSION>1.0.98.0</INTEROP_MANIFEST_VERSION> <INTEROP_RC_VERSION>1,0,98,0</INTEROP_RC_VERSION> <INTEROP_INCLUDE_DIRECTORIES>src\core</INTEROP_INCLUDE_DIRECTORIES> <INTEROP_LIBRARY_DIRECTORIES></INTEROP_LIBRARY_DIRECTORIES> <INTEROP_LIBRARY_DEPENDENCIES></INTEROP_LIBRARY_DEPENDENCIES> <INTEROP_DEBUG_DEFINES>INTEROP_DEBUG=0x31F;INTEROP_LOG=1;INTEROP_TEST_EXTENSION=1</INTEROP_DEBUG_DEFINES> |
︙ |
Changes to SQLite.Interop/props/SQLite.Interop.2013.props.
︙ | |||
14 15 16 17 18 19 20 | 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | - + | <INTEROP_LINKER_VERSION>1.0</INTEROP_LINKER_VERSION> <INTEROP_MANIFEST_VERSION>1.0.98.0</INTEROP_MANIFEST_VERSION> <INTEROP_RC_VERSION>1,0,98,0</INTEROP_RC_VERSION> <INTEROP_INCLUDE_DIRECTORIES>src\core</INTEROP_INCLUDE_DIRECTORIES> <INTEROP_LIBRARY_DIRECTORIES></INTEROP_LIBRARY_DIRECTORIES> <INTEROP_LIBRARY_DEPENDENCIES></INTEROP_LIBRARY_DEPENDENCIES> <INTEROP_DEBUG_DEFINES>INTEROP_DEBUG=0x31F;INTEROP_LOG=1;INTEROP_TEST_EXTENSION=1</INTEROP_DEBUG_DEFINES> |
︙ |
Changes to SQLite.Interop/props/sqlite3.props.
︙ | |||
8 9 10 11 12 13 14 | 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | - + | * --> <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0"> <PropertyGroup Label="UserMacros"> <SQLITE_MANIFEST_VERSION>3.8.11.0</SQLITE_MANIFEST_VERSION> <SQLITE_RC_VERSION>3,8,11,0</SQLITE_RC_VERSION> <SQLITE_COMMON_DEFINES>_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;SQLITE_THREADSAFE=1;SQLITE_USE_URI=1;SQLITE_ENABLE_COLUMN_METADATA=1;SQLITE_ENABLE_STAT4=1;SQLITE_ENABLE_FTS3=1;SQLITE_ENABLE_LOAD_EXTENSION=1;SQLITE_ENABLE_RTREE=1;SQLITE_SOUNDEX=1;SQLITE_ENABLE_MEMORY_MANAGEMENT=1</SQLITE_COMMON_DEFINES> |
︙ |
Changes to SQLite.Interop/props/sqlite3.vsprops.
︙ | |||
25 26 27 28 29 30 31 | 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | - + | <UserMacro Name="SQLITE_COMMON_DEFINES" Value="_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;SQLITE_THREADSAFE=1;SQLITE_USE_URI=1;SQLITE_ENABLE_COLUMN_METADATA=1;SQLITE_ENABLE_STAT4=1;SQLITE_ENABLE_FTS3=1;SQLITE_ENABLE_LOAD_EXTENSION=1;SQLITE_ENABLE_RTREE=1;SQLITE_SOUNDEX=1;SQLITE_ENABLE_MEMORY_MANAGEMENT=1" PerformEnvironmentSet="true" /> <UserMacro Name="SQLITE_EXTRA_DEFINES" |
︙ |
Changes to SQLite.Interop/src/win/interop.c.
︙ | |||
16 17 18 19 20 21 22 23 24 25 26 27 28 29 | 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | + + + + + | #if defined(INTEROP_INCLUDE_CEROD) #include "../ext/cerod.c" #endif #if defined(INTEROP_INCLUDE_SEE) #include "../ext/see.c" #endif #if defined(INTEROP_INCLUDE_ZIPVFS) #include "../ext/zipvfs.c" #include "../ext/algorithms.c" #endif #if defined(INTEROP_VIRTUAL_TABLE) && SQLITE_VERSION_NUMBER >= 3004001 #include "../ext/vtshim.c" #endif #if defined(INTEROP_PERCENTILE_EXTENSION) #include "../ext/percentile.c" |
︙ | |||
104 105 106 107 108 109 110 111 112 113 114 115 116 117 | 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 | + + + | "INCLUDE_CEROD", #endif #ifdef INTEROP_INCLUDE_EXTRA "INCLUDE_EXTRA", #endif #ifdef INTEROP_INCLUDE_SEE "INCLUDE_SEE", #endif #ifdef INTEROP_INCLUDE_ZIPVFS "INCLUDE_ZIPVFS", #endif #ifdef INTEROP_LEGACY_CLOSE "LEGACY_CLOSE", #endif #ifdef INTEROP_LOG "LOG", #endif |
︙ | |||
353 354 355 356 357 358 359 | 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 | - + - + - + - + - + - + - + - + - + | } SQLITE_API const char *WINAPI interop_sourceid(void) { return INTEROP_SOURCE_ID " " INTEROP_SOURCE_TIMESTAMP; } |
︙ |
Changes to System.Data.SQLite/SQLite3.cs.
︙ | |||
688 689 690 691 692 693 694 | 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 | - + | /// Non-zero if the associated native connection handle is open. /// </returns> internal override bool IsOpen() { return (_sql != null) && !_sql.IsInvalid && !_sql.IsClosed; } |
︙ | |||
729 730 731 732 733 734 735 | 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 | - - - + + + + + - + - + | } finally /* NOTE: Thread.Abort() protection. */ { IntPtr db = IntPtr.Zero; SQLiteErrorCode n; #if !SQLITE_STANDARD |
︙ |
Changes to System.Data.SQLite/SQLite3_UTF16.cs.
︙ | |||
124 125 126 127 128 129 130 | 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 | - + | if (nbytelen == -1) return Marshal.PtrToStringUni(b); else return Marshal.PtrToStringUni(b, nbytelen / 2); } |
︙ | |||
164 165 166 167 168 169 170 171 | 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 | + + - + - + + + + + + + - + | // do nothing. } finally /* NOTE: Thread.Abort() protection. */ { IntPtr db = IntPtr.Zero; SQLiteErrorCode n; int extFuncs = ((connectionFlags & SQLiteConnectionFlags.NoExtensionFunctions) != SQLiteConnectionFlags.NoExtensionFunctions) ? 1 : 0; #if !SQLITE_STANDARD |
︙ |
Changes to System.Data.SQLite/SQLiteBase.cs.
︙ | |||
91 92 93 94 95 96 97 98 99 100 101 | 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 | + - + | /// Opens a database. /// </summary> /// <remarks> /// Implementers should call SQLiteFunction.BindFunctions() and save the array after opening a connection /// to bind all attributed user-defined functions and collating sequences to the new connection. /// </remarks> /// <param name="strFilename">The filename of the database to open. SQLite automatically creates it if it doesn't exist.</param> /// <param name="vfsName">The name of the VFS to use -OR- null to use the default VFS.</param> /// <param name="connectionFlags">The flags associated with the parent connection object</param> /// <param name="openFlags">The open flags to use when creating the connection</param> /// <param name="maxPoolSize">The maximum size of the pool for the given filename</param> /// <param name="usePool">If true, the connection can be pulled from the connection pool</param> |
︙ |
Changes to System.Data.SQLite/SQLiteConnection.cs.
︙ | |||
138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 | 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 | + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + | /// Starting with release 1.0.86.0, in order to use more than one consecutive backslash (e.g. for a /// UNC path), each of the adjoining backslash characters must be doubled (e.g. "\\Network\Share\test.db" /// would become "\\\\Network\Share\test.db"). /// </description> /// <description>Y</description> /// <description></description> /// </item> /// <item> /// <description>Uri</description> /// <description> /// If specified, this must be a file name that starts with "file://", "file:", or "/". Any leading /// "file://" or "file:" prefix will be stripped off and the resulting file name will be used to open /// the database. /// </description> /// <description>N</description> /// <description>null</description> /// </item> /// <item> /// <description>FullUri</description> /// <description> /// If specified, this must be a URI in a format recognized by the SQLite core library (starting with /// SQLite 3.7.7). It will be passed verbatim to the SQLite core library. /// </description> /// <description>N</description> /// <description>null</description> /// </item> /// <item> /// <description>Version</description> /// <description>3</description> /// <description>N</description> /// <description>3</description> /// </item> /// <item> /// <description>UseUTF16Encoding</description> /// <description><b>True</b><br/><b>False</b></description> /// <description>N</description> /// <description>False</description> /// </item> /// <item> /// <description>DefaultDbType</description> /// <description> /// This is the default <see cref="DbType" /> to use when one cannot be determined based on the /// column metadata and the configured type mappings. /// </description> /// <description>N</description> /// <description>null</description> /// </item> /// <item> /// <description>DefaultTypeName</description> /// <description> /// This is the default type name to use when one cannot be determined based on the column metadata /// and the configured type mappings. /// </description> /// <description>N</description> /// <description>null</description> /// </item> /// <item> /// <description>NoSharedFlags</description> /// <description> /// <b>True</b> - Do not combine the specified (or default) connection flags with the value of the /// <see cref="SharedFlags" /> property. /// <br/> /// <b>False</b> - Combine the specified (or default) connection flags with the value of the /// <see cref="SharedFlags" /> property. /// </description> /// <description>N</description> /// <description>false</description> /// </item> /// <item> /// <description>VfsName</description> /// <description> /// The name of the VFS to use when opening the database connection. /// If this is not specified, the default VFS will be used. /// </description> /// <description>N</description> /// <description>null</description> /// </item> /// <item> /// <description>ZipVfsVersion</description> /// <description> /// If non-null, this is the "version" of ZipVFS to use. This requires /// the System.Data.SQLite interop assembly -AND- primary managed assembly /// to be compiled with the INTEROP_INCLUDE_ZIPVFS option; otherwise, this /// property does nothing. The valid values are "v2" and "v3". Using /// anyother value will cause an exception to be thrown. Please see the /// ZipVFS documentation for more information on how to use this parameter. /// </description> /// <description>N</description> /// <description>null</description> /// </item> /// <item> /// <description>DateTimeFormat</description> /// <description> /// <b>Ticks</b> - Use the value of DateTime.Ticks.<br/> /// <b>ISO8601</b> - Use the ISO-8601 format. Uses the "yyyy-MM-dd HH:mm:ss.FFFFFFFK" format for UTC /// DateTime values and "yyyy-MM-dd HH:mm:ss.FFFFFFF" format for local DateTime values).<br/> /// <b>JulianDay</b> - The interval of time in days and fractions of a day since January 1, 4713 BC.<br/> |
︙ | |||
384 385 386 387 388 389 390 391 392 393 394 395 396 397 | 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 | + + + + + + + + | private const bool DefaultToFullPath = true; private const bool DefaultPooling = false; // TODO: Maybe promote this to static property? private const bool DefaultLegacyFormat = false; private const bool DefaultForeignKeys = false; private const bool DefaultEnlist = true; private const bool DefaultSetDefaults = true; internal const int DefaultPrepareRetries = 3; private const string DefaultVfsName = null; #if INTEROP_INCLUDE_ZIPVFS private const string ZipVfs_V2 = "v2"; private const string ZipVfs_V3 = "v3"; private const string DefaultZipVfsVersion = null; #endif private const int SQLITE_FCNTL_CHUNK_SIZE = 6; private const int SQLITE_FCNTL_WIN32_AV_RETRY = 9; private const string _dataDirectory = "|DataDirectory|"; private const string _masterdb = "sqlite_master"; private const string _tempmasterdb = "sqlite_temp_master"; |
︙ | |||
521 522 523 524 525 526 527 528 529 530 531 532 533 534 | 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 | + + + + + | /// <summary> /// The default databse type name for this connection. This value will only /// be used if the <see cref="SQLiteConnectionFlags.UseConnectionTypes" /> /// flag is set. /// </summary> private string _defaultTypeName; /// <summary> /// The name of the VFS to be used when opening the database connection. /// </summary> private string _vfsName; /// <summary> /// Default command timeout /// </summary> private int _defaultTimeout = DefaultConnectionTimeout; /// <summary> /// The maximum number of retries when preparing SQL to be executed. This |
︙ | |||
676 677 678 679 680 681 682 683 684 685 686 687 688 689 | 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 | + | new TypeNameStringComparer()); _typeNames = new SQLiteDbTypeMap(); _parseViaFramework = parseViaFramework; _flags = SQLiteConnectionFlags.Default; _defaultDbType = null; _defaultTypeName = null; _vfsName = null; _connectionState = ConnectionState.Closed; _connectionString = null; if (connectionString != null) ConnectionString = connectionString; } |
︙ | |||
2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 | 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 | + + + + + + + + + + + + + + + + + + + + + + + | // SQLiteConnectionStringBuilder.DefaultDbType property to null // here. // if ((_defaultDbType != null) && ((DbType)_defaultDbType == BadDbType)) _defaultDbType = null; _defaultTypeName = FindKey(opts, "DefaultTypeName", null); _vfsName = FindKey(opts, "VfsName", DefaultVfsName); #if !NET_COMPACT_20 && TRACE_WARNING bool uri = false; #endif bool fullUri = false; string fileName; if (Convert.ToInt32(FindKey(opts, "Version", DefaultVersion.ToString()), CultureInfo.InvariantCulture) != DefaultVersion) throw new NotSupportedException(String.Format(CultureInfo.CurrentCulture, "Only SQLite Version {0} is supported at this time", DefaultVersion)); #if INTEROP_INCLUDE_ZIPVFS string zipVfsVersion = FindKey(opts, "ZipVfsVersion", DefaultZipVfsVersion); if (zipVfsVersion != null) { if (String.Compare(zipVfsVersion, ZipVfs_V2) == 0) { UnsafeNativeMethods.zipvfsInit_v2(); } else if (String.Compare(zipVfsVersion, ZipVfs_V3) == 0) { UnsafeNativeMethods.zipvfsInit_v3(0); } else { throw new NotSupportedException(String.Format( CultureInfo.CurrentCulture, "Only ZipVFS versions {0} and {1} are supported at this time", ZipVfs_V2, ZipVfs_V3)); } } #endif fileName = FindKey(opts, "Data Source", DefaultDataSource); if (String.IsNullOrEmpty(fileName)) { fileName = FindKey(opts, "Uri", DefaultUri); if (String.IsNullOrEmpty(fileName)) |
︙ | |||
2600 2601 2602 2603 2604 2605 2606 | 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 | - + | { flags |= SQLiteOpenFlagsEnum.ReadWrite; } if (fullUri) flags |= SQLiteOpenFlagsEnum.Uri; |
︙ | |||
2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 | 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 | + + + + + + + + + + | /// value will only be used when not null. /// </summary> public string DefaultTypeName { get { CheckDisposed(); return _defaultTypeName; } set { CheckDisposed(); _defaultTypeName = value; } } /// <summary> /// Gets/sets the VFS name for this connection. This value will only be /// used when opening the database. /// </summary> public string VfsName { get { CheckDisposed(); return _vfsName; } set { CheckDisposed(); _vfsName = value; } } /// <summary> /// Returns non-zero if the underlying native connection handle is /// owned by this instance. /// </summary> public bool OwnHandle { |
︙ |
Changes to System.Data.SQLite/SQLiteConnectionStringBuilder.cs.
︙ | |||
179 180 181 182 183 184 185 | 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 | - + - + - + | [DefaultValue("")] public string DataSource { get { object value; TryGetValue("data source", out value); |
︙ | |||
364 365 366 367 368 369 370 | 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 | - + | [DefaultValue("")] public string Password { get { object value; TryGetValue("password", out value); |
︙ | |||
664 665 666 667 668 669 670 | 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 | - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + | [DefaultValue(null)] public string DefaultTypeName { get { object value; TryGetValue("defaulttypename", out value); |
︙ |
Changes to System.Data.SQLite/SQLiteConvert.cs.
︙ | |||
152 153 154 155 156 157 158 159 160 161 162 163 164 165 | 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 | + | /// <summary> /// Converts a string to a UTF-8 encoded byte array sized to include a null-terminating character. /// </summary> /// <param name="sourceText">The string to convert to UTF-8</param> /// <returns>A byte array containing the converted string plus an extra 0 terminating byte at the end of the array.</returns> public static byte[] ToUTF8(string sourceText) { if (sourceText == null) return null; Byte[] byteArray; int nlen = _utf8.GetByteCount(sourceText) + 1; byteArray = new byte[nlen]; nlen = _utf8.GetBytes(sourceText, 0, sourceText.Length, byteArray, 0); byteArray[nlen] = 0; |
︙ |
Changes to System.Data.SQLite/SQLiteDefineConstants.cs.
︙ | |||
43 44 45 46 47 48 49 50 51 52 53 54 55 56 | 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 | + + + + | #if INTEROP_INCLUDE_EXTRA "INTEROP_INCLUDE_EXTRA", #endif #if INTEROP_INCLUDE_SEE "INTEROP_INCLUDE_SEE", #endif #if INTEROP_INCLUDE_ZIPVFS "INTEROP_INCLUDE_ZIPVFS", #endif #if INTEROP_LEGACY_CLOSE "INTEROP_LEGACY_CLOSE", #endif #if INTEROP_LOG "INTEROP_LOG", |
︙ |
Changes to System.Data.SQLite/Targets/System.Data.SQLite.Properties.targets.
︙ | |||
168 169 170 171 172 173 174 175 176 177 178 179 180 181 | 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 | + + + + + + + + | NOTE: Enable support (in the managed assemblies) for compressed and encrypted databases using CEROD? --> <PropertyGroup Condition="'$(InteropIncludeCerod)' != 'false'"> <DefineConstants>$(DefineConstants);INTEROP_INCLUDE_CEROD</DefineConstants> </PropertyGroup> <!-- NOTE: Enable support (in the managed assemblies) for compressed databases (read/write) using ZipVFS? --> <PropertyGroup Condition="'$(InteropIncludeZipVfs)' != 'false'"> <DefineConstants>$(DefineConstants);INTEROP_INCLUDE_ZIPVFS</DefineConstants> </PropertyGroup> <!-- NOTE: Enable support (in the managed assemblies) for whatever "extra" code (e.g. "extensions") may be included by the custom built interop DLL (i.e. "SQLite.Interop.DLL")? --> <PropertyGroup Condition="'$(InteropIncludeExtra)' != 'false'"> <DefineConstants>$(DefineConstants);INTEROP_INCLUDE_EXTRA</DefineConstants> |
︙ |
Changes to System.Data.SQLite/UnsafeNativeMethods.cs.
︙ | |||
1364 1365 1366 1367 1368 1369 1370 | 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 | - + - + | [DllImport(SQLITE_DLL)] internal static extern SQLiteErrorCode sqlite3_finalize_interop(IntPtr stmt); [DllImport(SQLITE_DLL)] internal static extern SQLiteErrorCode sqlite3_backup_finish_interop(IntPtr backup); [DllImport(SQLITE_DLL)] |
︙ | |||
1733 1734 1735 1736 1737 1738 1739 | 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 | - + | internal static extern void sqlite3_free(IntPtr p); #if !PLATFORM_COMPACTFRAMEWORK [DllImport(SQLITE_DLL, CallingConvention = CallingConvention.Cdecl)] #else [DllImport(SQLITE_DLL)] #endif |
︙ | |||
2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 | 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 | + + + + + + + + + + + + + + + + | #if !PLATFORM_COMPACTFRAMEWORK [DllImport(SQLITE_DLL, CallingConvention = CallingConvention.Cdecl)] #else [DllImport(SQLITE_DLL)] #endif internal static extern SQLiteErrorCode sqlite3_rekey(IntPtr db, byte[] key, int keylen); #endif #if INTEROP_INCLUDE_ZIPVFS #if !PLATFORM_COMPACTFRAMEWORK [DllImport(SQLITE_DLL, CallingConvention = CallingConvention.Cdecl)] #else [DllImport(SQLITE_DLL)] #endif internal static extern void zipvfsInit_v2(); #if !PLATFORM_COMPACTFRAMEWORK [DllImport(SQLITE_DLL, CallingConvention = CallingConvention.Cdecl)] #else [DllImport(SQLITE_DLL)] #endif internal static extern void zipvfsInit_v3(int regDflt); #endif #if !PLATFORM_COMPACTFRAMEWORK [DllImport(SQLITE_DLL, CallingConvention = CallingConvention.Cdecl)] #else [DllImport(SQLITE_DLL)] #endif internal static extern IntPtr sqlite3_set_authorizer(IntPtr db, SQLiteAuthorizerCallback func, IntPtr pvUser); |
︙ |
Changes to Targets/SQLite.NET.Settings.targets.
︙ | |||
372 373 374 375 376 377 378 379 380 381 382 383 384 385 | 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 | + + + + + + + + + + + + + + + + + + + + | "SQLite.Interop\props\SQLite.Interop.20YY.[vs]props" both for the corresponding version(s) of Visual Studio. --> <InteropIncludeCerod Condition="'$(InteropIncludeCerod)' == ''">false</InteropIncludeCerod> <!-- NOTE: Enable including ZipVFS with the custom built interop DLL (i.e. "SQLite.Interop.dll")? By default, this is disabled. If this is enabled, the "zipvfs.c" file will be included from the extensions directory. If this is enabled, it must also be enabled via the "SQLITE_ENABLE_ZIPVFS=1" preprocessor define being present in the "SQLITE_EXTRA_DEFINES" macro in the build properties file: "SQLite.Interop\props\sqlite3.[vs]props" AND via the "INTEROP_INCLUDE_ZIPVFS=1" preprocessor define being present in the "INTEROP_EXTRA_DEFINES" macro in the build properties file: "SQLite.Interop\props\SQLite.Interop.20YY.[vs]props" both for the corresponding version(s) of Visual Studio. --> <InteropIncludeZipVfs Condition="'$(InteropIncludeZipVfs)' == ''">false</InteropIncludeZipVfs> <!-- NOTE: Enable including "extra" code with the custom built interop DLL (i.e. "SQLite.Interop.dll")? By default, this is disabled. If this is enabled, the "extra.c" file will be included from the extensions directory. If this is enabled, it must also be enabled via the "INTEROP_INCLUDE_EXTRA=1" preprocessor define being present in the "INTEROP_EXTRA_DEFINES" macro in the build |
︙ |
Changes to Tests/basic.eagle.
︙ | |||
1049 1050 1051 1052 1053 1054 1055 | 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 | - + + - + - + | set keys [list null Version Synchronous UseUTF16Encoding Pooling \ BinaryGUID "Data Source" Uri FullUri "Default Timeout" \ Enlist FailIfMissing "Legacy Format" "Read Only" \ Password "Page Size" "Max Page Count" "Cache Size" \ DateTimeFormat DateTimeKind DateTimeFormatString \ BaseSchemaName "Journal Mode" "Default IsolationLevel" \ "Foreign Keys" Flags SetDefaults ToFullPath HexPassword \ |
︙ | |||
1102 1103 1104 1105 1106 1107 1108 | 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 | - + + | DateTimeFormatString=yyyy-MM-dd\} 0 \{sqlite_schema,\ BaseSchemaName=sqlite_schema\} 0 \{Memory, Journal Mode=Memory\} 0\ \{Serializable, Default IsolationLevel=Serializable\} 0 \{False, Foreign\ Keys=False\} 0 \{(?:Default|LogCallbackException),\ Flags=(?:Default|LogCallbackException)\} 0 \{False, SetDefaults=False\} 0\ \{False, ToFullPath=False\} 0 {736563726574, HexPassword=736563726574} 0\ \{String, DefaultDbType=String\} 0 \{TEXT, DefaultTypeName=TEXT\} 0 \{True,\ |
︙ |
Changes to Tests/common.eagle.
︙ | |||
3430 3431 3432 3433 3434 3435 3436 | 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 | - - - - - - - + + + + + + + | # for the interop assembly in order to be effective. For those # options, it will be assumed that it was enabled for the interop # assembly if it was enabled for the managed assembly. # foreach defineConstant [list \ CHECK_STATE COUNT_HANDLE DEBUG INTEROP_CODEC INTEROP_DEBUG \ INTEROP_EXTENSION_FUNCTIONS INTEROP_INCLUDE_CEROD \ |
︙ |
Changes to readme.htm.
︙ | |||
210 211 212 213 214 215 216 217 218 219 220 221 222 223 | 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 | + + | <p> <b>1.0.98.0 - August XX, 2015 <font color="red">(release scheduled)</font></b> </p> <ul> <li>Updated to <a href="https://www.sqlite.org/draft/releaselog/3_8_11.html">SQLite 3.8.11</a>.</li> <li>Implement the Substring method for LINQ using the "substr" core SQL function. <b>** Potentially Incompatible Change **</b></li> <li>Add the VfsName connection string property to allow a non-default VFS to be used by the SQLite core library.</li> <li>Enable integration with the <a href="http://www.hwaci.com/sw/sqlite/zipvfs.html">ZipVFS</a> extension.</li> </ul> <p> <b>1.0.97.0 - May 26, 2015</b> </p> <ul> <li>Updated to <a href="https://www.sqlite.org/releaselog/3_8_10_2.html">SQLite 3.8.10.2</a>.</li> <li>Updated to <a href="https://www.nuget.org/packages/EntityFramework/6.1.3">Entity Framework 6.1.3</a>.</li> |
︙ |
Changes to www/news.wiki.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | + + | <title>News</title> <b>Version History</b> <p> <b>1.0.98.0 - August XX, 2015 <font color="red">(release scheduled)</font></b> </p> <ul> <li>Updated to [https://www.sqlite.org/draft/releaselog/3_8_11.html|SQLite 3.8.11].</li> <li>Implement the Substring method for LINQ using the "substr" core SQL function. <b>** Potentially Incompatible Change **</b></li> <li>Add the VfsName connection string property to allow a non-default VFS to be used by the SQLite core library.</li> <li>Enable integration with the [http://www.hwaci.com/sw/sqlite/zipvfs.html|ZipVFS] extension.</li> </ul> <p> <b>1.0.97.0 - May 26, 2015</b> </p> <ul> <li>Updated to [https://www.sqlite.org/releaselog/3_8_10_2.html|SQLite 3.8.10.2].</li> <li>Updated to [https://www.nuget.org/packages/EntityFramework/6.1.3|Entity Framework 6.1.3].</li> |
︙ |