Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Add SQLiteCompileOptions and InteropCompileOptions properties to the SQLiteConnection class to return the compile-time options for the SQLite core library and interop assembly, respectively. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
30dedcb819084d0c2100bfa322afb1ca |
User & Date: | mistachkin 2014-01-06 04:56:02.735 |
Original Comment: | Add SQLiteCompileOptions and InteropCompileOptions methods to the SQLiteConnection class to return the compile-time options for the SQLite core library and interop assembly, respectively. |
Context
2014-01-06
| ||
04:57 | Fix typo in version history docs. check-in: 6f7c19e383 user: mistachkin tags: trunk | |
04:56 | Add SQLiteCompileOptions and InteropCompileOptions properties to the SQLiteConnection class to return the compile-time options for the SQLite core library and interop assembly, respectively. check-in: 30dedcb819 user: mistachkin tags: trunk | |
04:03 | Move the compile-time options for the interop assembly for Windows Embedded Compact 2013 to the properties file. check-in: bbbb338f7a user: mistachkin tags: trunk | |
Changes
Changes to Doc/Extra/version.html.
︙ | ︙ | |||
41 42 43 44 45 46 47 48 49 50 51 52 53 54 | </table> </div> <div id="mainSection"> <div id="mainBody"> <h1 class="heading">Version History</h1> <p><b>1.0.91.0 - February XX, 2014 <font color="red">(release scheduled)</font></b></p> <ul> <li>Add BindInvariantText and ConvertInvariantText connection flags to force the invariant culture to be used when converting parameter values to/from strings.</li> <li>Modify handling of the design-time components installer to run Visual Studio <b>devenv.exe /setup</b> after installing the package. This appears to be necessary in some circumstances for Visual Studio 2013. Pursuant to <a href="http://system.data.sqlite.org/index.html/info/a47eff2c71">[a47eff2c71]</a>.</li> <li>Modify the native library pre-loader to support reading settings from an XML configuration file and to be capable of checking more than one directory. Persuant to <a href="http://system.data.sqlite.org/index.html/info/f0246d1817">[f0246d1817]</a>.</li> <li>Change the default behavior for the native library pre-loader so it first searches the executing (i.e. System.Data.SQLite) assembly directory and then the application domain directory. Pursuant to <a href="http://system.data.sqlite.org/index.html/info/f0246d1817">[f0246d1817]</a>. <b>** Potentially Incompatible Change **</b></li> </ul> <p><b>1.0.90.0 - December 23, 2013</b></p> <ul> | > | 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | </table> </div> <div id="mainSection"> <div id="mainBody"> <h1 class="heading">Version History</h1> <p><b>1.0.91.0 - February XX, 2014 <font color="red">(release scheduled)</font></b></p> <ul> <li>Add SQLiteCompileOptions and InteropCompileOptions methods to the SQLiteConnection class to return the compile-time options for the SQLite core library and interop assembly, respectively.</li> <li>Add BindInvariantText and ConvertInvariantText connection flags to force the invariant culture to be used when converting parameter values to/from strings.</li> <li>Modify handling of the design-time components installer to run Visual Studio <b>devenv.exe /setup</b> after installing the package. This appears to be necessary in some circumstances for Visual Studio 2013. Pursuant to <a href="http://system.data.sqlite.org/index.html/info/a47eff2c71">[a47eff2c71]</a>.</li> <li>Modify the native library pre-loader to support reading settings from an XML configuration file and to be capable of checking more than one directory. Persuant to <a href="http://system.data.sqlite.org/index.html/info/f0246d1817">[f0246d1817]</a>.</li> <li>Change the default behavior for the native library pre-loader so it first searches the executing (i.e. System.Data.SQLite) assembly directory and then the application domain directory. Pursuant to <a href="http://system.data.sqlite.org/index.html/info/f0246d1817">[f0246d1817]</a>. <b>** Potentially Incompatible Change **</b></li> </ul> <p><b>1.0.90.0 - December 23, 2013</b></p> <ul> |
︙ | ︙ |
Changes to SQLite.Interop/src/win/interop.c.
︙ | ︙ | |||
54 55 56 57 58 59 60 61 62 63 64 65 66 67 | #define sqlite3InteropBreak(a) { sqlite3InteropDebug("%s\n", (a)); __debugbreak(); } #else #define sqlite3InteropBreak(a) #endif typedef void (*SQLITEUSERFUNC)(sqlite3_context *, int, sqlite3_value **); typedef void (*SQLITEFUNCFINAL)(sqlite3_context *); #if defined(INTEROP_DEBUG) || defined(INTEROP_LOG) SQLITE_PRIVATE void sqlite3InteropDebug(const char *zFormat, ...){ va_list ap; /* Vararg list */ StrAccum acc; /* String accumulator */ char zMsg[SQLITE_PRINT_BUF_SIZE*3]; /* Complete log message */ va_start(ap, zFormat); | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 | #define sqlite3InteropBreak(a) { sqlite3InteropDebug("%s\n", (a)); __debugbreak(); } #else #define sqlite3InteropBreak(a) #endif typedef void (*SQLITEUSERFUNC)(sqlite3_context *, int, sqlite3_value **); typedef void (*SQLITEFUNCFINAL)(sqlite3_context *); /* ** An array of names of all compile-time options. This array should ** be sorted A-Z. ** ** This array looks large, but in a typical installation actually uses ** only a handful of compile-time options, so most times this array is usually ** rather short and uses little memory space. */ static const char * const azInteropCompileOpt[] = { /* These macros are provided to "stringify" the value of the define ** for those options in which the value is meaningful. */ #ifndef CTIMEOPT_VAL_ #define CTIMEOPT_VAL_(opt) #opt #endif #ifndef CTIMEOPT_VAL #define CTIMEOPT_VAL(opt) CTIMEOPT_VAL_(opt) #endif #ifdef INTEROP_CODEC "CODEC", #endif #ifdef INTEROP_DEBUG "DEBUG=" CTIMEOPT_VAL(INTEROP_DEBUG), #endif #ifdef INTEROP_EXTENSION_FUNCTIONS "EXTENSION_FUNCTIONS", #endif #ifdef INTEROP_LEGACY_CLOSE "LEGACY_CLOSE", #endif #ifdef INTEROP_LOG "LOG", #endif #ifdef INTEROP_PERCENTILE_EXTENSION "PERCENTILE_EXTENSION", #endif #ifdef INTEROP_REGEXP_EXTENSION "REGEXP_EXTENSION", #endif #ifdef INTEROP_TEST_EXTENSION "TEST_EXTENSION", #endif #ifdef INTEROP_TOTYPE_EXTENSION "TOTYPE_EXTENSION", #endif #ifdef SQLITE_VERSION_NUMBER "VERSION_NUMBER=" CTIMEOPT_VAL(SQLITE_VERSION_NUMBER), #endif #ifdef INTEROP_VIRTUAL_TABLE "VIRTUAL_TABLE", #endif }; /* ** Given the name of a compile-time option, return true if that option ** was used and false if not. ** ** The name can optionally begin with "SQLITE_" or "INTEROP_" but those ** prefixes are not required for a match. */ SQLITE_API int WINAPI interop_compileoption_used(const char *zOptName){ int i, n; if( sqlite3StrNICmp(zOptName, "SQLITE_", 7)==0 ) zOptName += 7; if( sqlite3StrNICmp(zOptName, "INTEROP_", 8)==0 ) zOptName += 8; n = sqlite3Strlen30(zOptName); /* Since ArraySize(azInteropCompileOpt) is normally in single digits, a ** linear search is adequate. No need for a binary search. */ for(i=0; i<ArraySize(azInteropCompileOpt); i++){ if( sqlite3StrNICmp(zOptName, azInteropCompileOpt[i], n)==0 && sqlite3CtypeMap[(unsigned char)azInteropCompileOpt[i][n]]==0 ){ return 1; } } return 0; } /* ** Return the N-th compile-time option string. If N is out of range, ** return a NULL pointer. */ SQLITE_API const char *WINAPI interop_compileoption_get(int N){ if( N>=0 && N<ArraySize(azInteropCompileOpt) ){ return azInteropCompileOpt[N]; } return 0; } #if defined(INTEROP_DEBUG) || defined(INTEROP_LOG) SQLITE_PRIVATE void sqlite3InteropDebug(const char *zFormat, ...){ va_list ap; /* Vararg list */ StrAccum acc; /* String accumulator */ char zMsg[SQLITE_PRINT_BUF_SIZE*3]; /* Complete log message */ va_start(ap, zFormat); |
︙ | ︙ | |||
227 228 229 230 231 232 233 | }else{ ret = SQLITE_OK; } return ret; } #endif | | | | 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 | }else{ ret = SQLITE_OK; } return ret; } #endif SQLITE_API const char *WINAPI interop_libversion(void) { return INTEROP_VERSION; } SQLITE_API const char *WINAPI interop_sourceid(void) { return INTEROP_SOURCE_ID " " INTEROP_SOURCE_TIMESTAMP; } SQLITE_API int WINAPI sqlite3_open_interop(const char *filename, int flags, sqlite3 **ppdb) { int ret; |
︙ | ︙ | |||
279 280 281 282 283 284 285 | if ((ret == SQLITE_OK) && !DbHasProperty(*ppdb, 0, DB_SchemaLoaded)) ENC(*ppdb) = SQLITE_UTF16NATIVE; return ret; } | | | 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 | if ((ret == SQLITE_OK) && !DbHasProperty(*ppdb, 0, DB_SchemaLoaded)) ENC(*ppdb) = SQLITE_UTF16NATIVE; return ret; } SQLITE_API const char *WINAPI sqlite3_errmsg_interop(sqlite3 *db, int *plen) { const char *pval = sqlite3_errmsg(db); *plen = (pval != 0) ? strlen(pval) : 0; return pval; } SQLITE_API int WINAPI sqlite3_changes_interop(sqlite3 *db) |
︙ | ︙ |
Changes to System.Data.SQLite/SQLite3.cs.
︙ | ︙ | |||
300 301 302 303 304 305 306 | _functions.Add(function); } internal override string Version { get { | | | | 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 | _functions.Add(function); } internal override string Version { get { return SQLiteVersion; } } internal override int VersionNumber { get { return SQLiteVersionNumber; } } internal static string DefineConstants { get { |
︙ | ︙ | |||
360 361 362 363 364 365 366 367 368 369 370 371 372 | internal static string SQLiteSourceId { get { return UTF8ToString(UnsafeNativeMethods.sqlite3_sourceid(), -1); } } internal static string InteropVersion { get { #if !SQLITE_STANDARD | > > > > > > > > > > > > > > > > > > > > > | | > > > > > > > > > > > > > > > > > > > > > > > > > | 360 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 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 | internal static string SQLiteSourceId { get { return UTF8ToString(UnsafeNativeMethods.sqlite3_sourceid(), -1); } } internal static string SQLiteCompileOptions { get { StringBuilder result = new StringBuilder(); int index = 0; IntPtr zValue = UnsafeNativeMethods.sqlite3_compileoption_get(index++); while (zValue != IntPtr.Zero) { if (result.Length > 0) result.Append(' '); result.Append(UTF8ToString(zValue, -1)); zValue = UnsafeNativeMethods.sqlite3_compileoption_get(index++); } return result.ToString(); } } internal static string InteropVersion { get { #if !SQLITE_STANDARD return UTF8ToString(UnsafeNativeMethods.interop_libversion(), -1); #else return null; #endif } } internal static string InteropSourceId { get { #if !SQLITE_STANDARD return UTF8ToString(UnsafeNativeMethods.interop_sourceid(), -1); #else return null; #endif } } internal static string InteropCompileOptions { get { #if !SQLITE_STANDARD StringBuilder result = new StringBuilder(); int index = 0; IntPtr zValue = UnsafeNativeMethods.interop_compileoption_get(index++); while (zValue != IntPtr.Zero) { if (result.Length > 0) result.Append(' '); result.Append(UTF8ToString(zValue, -1)); zValue = UnsafeNativeMethods.interop_compileoption_get(index++); } return result.ToString(); #else return null; #endif } } internal override bool AutoCommit |
︙ | ︙ |
Changes to System.Data.SQLite/SQLiteConnection.cs.
︙ | ︙ | |||
2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 | /// SQLITE_SOURCE_ID C preprocessor macro used when compiling the /// SQLite core library. /// </summary> public static string SQLiteSourceId { get { return SQLite3.SQLiteSourceId; } } /// <summary> /// This method returns the version of the interop SQLite assembly /// used. If the SQLite interop assembly is not in use or the /// necessary information cannot be obtained for any reason, a null /// value may be returned. /// </summary> | > > > > > > > > > | 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 | /// SQLITE_SOURCE_ID C preprocessor macro used when compiling the /// SQLite core library. /// </summary> public static string SQLiteSourceId { get { return SQLite3.SQLiteSourceId; } } /// <summary> /// Returns a string containing the compile-time options used to /// compile the SQLite core native library, delimited with spaces. /// </summary> public static string SQLiteCompileOptions { get { return SQLite3.SQLiteCompileOptions; } } /// <summary> /// This method returns the version of the interop SQLite assembly /// used. If the SQLite interop assembly is not in use or the /// necessary information cannot be obtained for any reason, a null /// value may be returned. /// </summary> |
︙ | ︙ | |||
2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 | /// necessary information cannot be obtained for any reason, a null /// value may be returned. /// </summary> public static string InteropSourceId { get { return SQLite3.InteropSourceId; } } /// <summary> /// This method returns the version of the managed components used /// to interact with the SQLite core library. If the necessary /// information cannot be obtained for any reason, a null value may /// be returned. /// </summary> | > > > > > > > > > | 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 | /// necessary information cannot be obtained for any reason, a null /// value may be returned. /// </summary> public static string InteropSourceId { get { return SQLite3.InteropSourceId; } } /// <summary> /// Returns a string containing the compile-time options used to /// compile the SQLite interop assembly, delimited with spaces. /// </summary> public static string InteropCompileOptions { get { return SQLite3.InteropCompileOptions; } } /// <summary> /// This method returns the version of the managed components used /// to interact with the SQLite core library. If the necessary /// information cannot be obtained for any reason, a null value may /// be returned. /// </summary> |
︙ | ︙ |
Changes to System.Data.SQLite/UnsafeNativeMethods.cs.
︙ | ︙ | |||
1099 1100 1101 1102 1103 1104 1105 | // These functions add existing functionality on top of SQLite and require a little effort to // get working when using the standard SQLite library. #region interop added functionality #if !SQLITE_STANDARD [DllImport(SQLITE_DLL)] | | | > > > > > > | 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 | // These functions add existing functionality on top of SQLite and require a little effort to // get working when using the standard SQLite library. #region interop added functionality #if !SQLITE_STANDARD [DllImport(SQLITE_DLL)] internal static extern IntPtr interop_libversion(); [DllImport(SQLITE_DLL)] internal static extern IntPtr interop_sourceid(); [DllImport(SQLITE_DLL)] internal static extern int interop_compileoption_used(IntPtr zOptName); [DllImport(SQLITE_DLL)] internal static extern IntPtr interop_compileoption_get(int N); [DllImport(SQLITE_DLL)] internal static extern SQLiteErrorCode sqlite3_close_interop(IntPtr db); [DllImport(SQLITE_DLL)] internal static extern SQLiteErrorCode sqlite3_create_function_interop(IntPtr db, byte[] strName, int nArgs, int nType, IntPtr pvUser, SQLiteCallback func, SQLiteCallback fstep, SQLiteFinalCallback ffinal, int needCollSeq); |
︙ | ︙ | |||
1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 | // !SQLITE_STANDARD #endregion // Standard API calls global across versions. There are a few instances of interop calls // scattered in here, but they are only active when PLATFORM_COMPACTFRAMEWORK is declared. #region standard sqlite api calls #if !PLATFORM_COMPACTFRAMEWORK [DllImport(SQLITE_DLL, CallingConvention = CallingConvention.Cdecl)] #else [DllImport(SQLITE_DLL)] #endif internal static extern SQLiteErrorCode sqlite3_enable_load_extension( IntPtr db, int enable); | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 | // !SQLITE_STANDARD #endregion // Standard API calls global across versions. There are a few instances of interop calls // scattered in here, but they are only active when PLATFORM_COMPACTFRAMEWORK is declared. #region standard sqlite api calls #if !PLATFORM_COMPACTFRAMEWORK [DllImport(SQLITE_DLL, CallingConvention = CallingConvention.Cdecl)] #else [DllImport(SQLITE_DLL)] #endif internal static extern IntPtr sqlite3_libversion(); #if !PLATFORM_COMPACTFRAMEWORK [DllImport(SQLITE_DLL, CallingConvention = CallingConvention.Cdecl)] #else [DllImport(SQLITE_DLL)] #endif internal static extern int sqlite3_libversion_number(); #if !PLATFORM_COMPACTFRAMEWORK [DllImport(SQLITE_DLL, CallingConvention = CallingConvention.Cdecl)] #else [DllImport(SQLITE_DLL)] #endif internal static extern IntPtr sqlite3_sourceid(); #if !PLATFORM_COMPACTFRAMEWORK [DllImport(SQLITE_DLL, CallingConvention = CallingConvention.Cdecl)] #else [DllImport(SQLITE_DLL)] #endif internal static extern int sqlite3_compileoption_used(IntPtr zOptName); #if !PLATFORM_COMPACTFRAMEWORK [DllImport(SQLITE_DLL, CallingConvention = CallingConvention.Cdecl)] #else [DllImport(SQLITE_DLL)] #endif internal static extern IntPtr sqlite3_compileoption_get(int N); #if !PLATFORM_COMPACTFRAMEWORK [DllImport(SQLITE_DLL, CallingConvention = CallingConvention.Cdecl)] #else [DllImport(SQLITE_DLL)] #endif internal static extern SQLiteErrorCode sqlite3_enable_load_extension( IntPtr db, int enable); |
︙ | ︙ | |||
1419 1420 1421 1422 1423 1424 1425 | // only). By default, in "Debug" builds of System.Data.SQLite, the // MEMDEBUG allocator is used. // internal static extern SQLiteErrorCode sqlite3_win32_compact_heap(ref uint largest); #endif #endif | < < < < < < < < < < < < < < < < < < < < < | 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 | // only). By default, in "Debug" builds of System.Data.SQLite, the // MEMDEBUG allocator is used. // internal static extern SQLiteErrorCode sqlite3_win32_compact_heap(ref uint largest); #endif #endif #if !PLATFORM_COMPACTFRAMEWORK [DllImport(SQLITE_DLL, CallingConvention = CallingConvention.Cdecl)] #else [DllImport(SQLITE_DLL)] #endif internal static extern IntPtr sqlite3_malloc(int n); |
︙ | ︙ |
Changes to Tests/common.eagle.
︙ | ︙ | |||
2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 | } elseif {[string match \ -nocase */SQLite.Interop.dll $fileName]} then { tputs $::test_channel [appendArgs \ "---- found loaded SQLite interop assembly module: " \ $fileName \n] } } # # NOTE: Show the active test constraints. # tputs $::test_channel [appendArgs "---- constraints: " \ [formatList [lsort [getConstraints]] <none>] \n] | > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856 2857 2858 2859 2860 2861 2862 2863 2864 2865 | } elseif {[string match \ -nocase */SQLite.Interop.dll $fileName]} then { tputs $::test_channel [appendArgs \ "---- found loaded SQLite interop assembly module: " \ $fileName \n] } } catch { tputs $::test_channel \ "---- compile-time options for SQLite core library... " if {[catch {object invoke -flags +NonPublic \ System.Data.SQLite.SQLite3 SQLiteCompileOptions} \ compileOptions] == 0} then { tputs $::test_channel [appendArgs [formatList [lsort \ $compileOptions] <none>] \n] } else { tputs $::test_channel unknown\n } } catch { tputs $::test_channel \ "---- compile-time options for SQLite interop assembly... " if {[catch {object invoke -flags +NonPublic \ System.Data.SQLite.SQLite3 InteropCompileOptions} \ compileOptions] == 0} then { tputs $::test_channel [appendArgs [formatList [lsort \ $compileOptions] <none>] \n] } else { tputs $::test_channel unknown\n } } # # NOTE: Show the active test constraints. # tputs $::test_channel [appendArgs "---- constraints: " \ [formatList [lsort [getConstraints]] <none>] \n] |
︙ | ︙ |
Changes to readme.htm.
︙ | ︙ | |||
186 187 188 189 190 191 192 193 194 195 196 197 198 199 | <h2><b>Version History</b></h2> <p> <b>1.0.91.0 - February XX, 2014 <font color="red">(release scheduled)</font></b> </p> <ul> <li>Add BindInvariantText and ConvertInvariantText connection flags to force the invariant culture to be used when converting parameter values to/from strings.</li> <li>Modify handling of the design-time components installer to run Visual Studio <b>devenv.exe /setup</b> after installing the package. This appears to be necessary in some circumstances for Visual Studio 2013. Pursuant to [a47eff2c71].</li> <li>Modify the native library pre-loader to support reading settings from an XML configuration file and to be capable of checking more than one directory. Persuant to [f0246d1817].</li> <li>Change the default behavior for the native library pre-loader so it first searches the executing (i.e. System.Data.SQLite) assembly directory and then the application domain directory. Pursuant to [f0246d1817]. <b>** Potentially Incompatible Change **</b></li> </ul> <p> <b>1.0.90.0 - December 23, 2013</b> | > | 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 | <h2><b>Version History</b></h2> <p> <b>1.0.91.0 - February XX, 2014 <font color="red">(release scheduled)</font></b> </p> <ul> <li>Add SQLiteCompileOptions and InteropCompileOptions methods to the SQLiteConnection class to return the compile-time options for the SQLite core library and interop assembly, respectively.</li> <li>Add BindInvariantText and ConvertInvariantText connection flags to force the invariant culture to be used when converting parameter values to/from strings.</li> <li>Modify handling of the design-time components installer to run Visual Studio <b>devenv.exe /setup</b> after installing the package. This appears to be necessary in some circumstances for Visual Studio 2013. Pursuant to [a47eff2c71].</li> <li>Modify the native library pre-loader to support reading settings from an XML configuration file and to be capable of checking more than one directory. Persuant to [f0246d1817].</li> <li>Change the default behavior for the native library pre-loader so it first searches the executing (i.e. System.Data.SQLite) assembly directory and then the application domain directory. Pursuant to [f0246d1817]. <b>** Potentially Incompatible Change **</b></li> </ul> <p> <b>1.0.90.0 - December 23, 2013</b> |
︙ | ︙ |
Changes to www/news.wiki.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | <title>News</title> <b>Version History</b> <p> <b>1.0.91.0 - February XX, 2014 <font color="red">(release scheduled)</font></b> </p> <ul> <li>Add BindInvariantText and ConvertInvariantText connection flags to force the invariant culture to be used when converting parameter values to/from strings.</li> <li>Modify handling of the design-time components installer to run Visual Studio <b>devenv.exe /setup</b> after installing the package. This appears to be necessary in some circumstances for Visual Studio 2013. Pursuant to [a47eff2c71].</li> <li>Modify the native library pre-loader to support reading settings from an XML configuration file and to be capable of checking more than one directory. Persuant to [f0246d1817].</li> <li>Change the default behavior for the native library pre-loader so it first searches the executing (i.e. System.Data.SQLite) assembly directory and then the application domain directory. Pursuant to [f0246d1817]. <b>** Potentially Incompatible Change **</b></li> </ul> <p> <b>1.0.90.0 - December 23, 2013</b> | > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | <title>News</title> <b>Version History</b> <p> <b>1.0.91.0 - February XX, 2014 <font color="red">(release scheduled)</font></b> </p> <ul> <li>Add SQLiteCompileOptions and InteropCompileOptions methods to the SQLiteConnection class to return the compile-time options for the SQLite core library and interop assembly, respectively.</li> <li>Add BindInvariantText and ConvertInvariantText connection flags to force the invariant culture to be used when converting parameter values to/from strings.</li> <li>Modify handling of the design-time components installer to run Visual Studio <b>devenv.exe /setup</b> after installing the package. This appears to be necessary in some circumstances for Visual Studio 2013. Pursuant to [a47eff2c71].</li> <li>Modify the native library pre-loader to support reading settings from an XML configuration file and to be capable of checking more than one directory. Persuant to [f0246d1817].</li> <li>Change the default behavior for the native library pre-loader so it first searches the executing (i.e. System.Data.SQLite) assembly directory and then the application domain directory. Pursuant to [f0246d1817]. <b>** Potentially Incompatible Change **</b></li> </ul> <p> <b>1.0.90.0 - December 23, 2013</b> |
︙ | ︙ |