cordova-sqlite-evmax-build-free 0.0.3 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -43,7 +43,30 @@ extern "C" {
43
43
 
44
44
 
45
45
  /*
46
- ** Provide the ability to override linkage features of the interface.
46
+ ** Facilitate override of interface linkage and calling conventions.
47
+ ** Be aware that these macros may not be used within this particular
48
+ ** translation of the amalgamation and its associated header file.
49
+ **
50
+ ** The SQLITE_EXTERN and SQLITE_API macros are used to instruct the
51
+ ** compiler that the target identifier should have external linkage.
52
+ **
53
+ ** The SQLITE_CDECL macro is used to set the calling convention for
54
+ ** public functions that accept a variable number of arguments.
55
+ **
56
+ ** The SQLITE_APICALL macro is used to set the calling convention for
57
+ ** public functions that accept a fixed number of arguments.
58
+ **
59
+ ** The SQLITE_STDCALL macro is no longer used and is now deprecated.
60
+ **
61
+ ** The SQLITE_CALLBACK macro is used to set the calling convention for
62
+ ** function pointers.
63
+ **
64
+ ** The SQLITE_SYSAPI macro is used to set the calling convention for
65
+ ** functions provided by the operating system.
66
+ **
67
+ ** Currently, the SQLITE_CDECL, SQLITE_APICALL, SQLITE_CALLBACK, and
68
+ ** SQLITE_SYSAPI macros are used only when building for environments
69
+ ** that require non-default calling conventions.
47
70
  */
48
71
  #ifndef SQLITE_EXTERN
49
72
  # define SQLITE_EXTERN extern
@@ -123,9 +146,9 @@ extern "C" {
123
146
  ** [sqlite3_libversion_number()], [sqlite3_sourceid()],
124
147
  ** [sqlite_version()] and [sqlite_source_id()].
125
148
  */
126
- #define SQLITE_VERSION "3.36.0"
127
- #define SQLITE_VERSION_NUMBER 3036000
128
- #define SQLITE_SOURCE_ID "2021-06-18 18:36:39 5c9a6c06871cb9fe42814af9c039eb6da5427a6ec28f187af7ebfb62eafa66e5"
149
+ #define SQLITE_VERSION "3.37.2"
150
+ #define SQLITE_VERSION_NUMBER 3037002
151
+ #define SQLITE_SOURCE_ID "2022-01-06 13:25:41 872ba256cbf61d9290b571c0e6d82a20c224ca3ad82971edc46b29818d5d17a0"
129
152
 
130
153
  /*
131
154
  ** CAPI3REF: Run-Time Library Version Numbers
@@ -537,6 +560,7 @@ SQLITE_API int sqlite3_exec(
537
560
  #define SQLITE_CONSTRAINT_VTAB (SQLITE_CONSTRAINT | (9<<8))
538
561
  #define SQLITE_CONSTRAINT_ROWID (SQLITE_CONSTRAINT |(10<<8))
539
562
  #define SQLITE_CONSTRAINT_PINNED (SQLITE_CONSTRAINT |(11<<8))
563
+ #define SQLITE_CONSTRAINT_DATATYPE (SQLITE_CONSTRAINT |(12<<8))
540
564
  #define SQLITE_NOTICE_RECOVER_WAL (SQLITE_NOTICE | (1<<8))
541
565
  #define SQLITE_NOTICE_RECOVER_ROLLBACK (SQLITE_NOTICE | (2<<8))
542
566
  #define SQLITE_WARNING_AUTOINDEX (SQLITE_WARNING | (1<<8))
@@ -550,6 +574,19 @@ SQLITE_API int sqlite3_exec(
550
574
  ** These bit values are intended for use in the
551
575
  ** 3rd parameter to the [sqlite3_open_v2()] interface and
552
576
  ** in the 4th parameter to the [sqlite3_vfs.xOpen] method.
577
+ **
578
+ ** Only those flags marked as "Ok for sqlite3_open_v2()" may be
579
+ ** used as the third argument to the [sqlite3_open_v2()] interface.
580
+ ** The other flags have historically been ignored by sqlite3_open_v2(),
581
+ ** though future versions of SQLite might change so that an error is
582
+ ** raised if any of the disallowed bits are passed into sqlite3_open_v2().
583
+ ** Applications should not depend on the historical behavior.
584
+ **
585
+ ** Note in particular that passing the SQLITE_OPEN_EXCLUSIVE flag into
586
+ ** [sqlite3_open_v2()] does *not* cause the underlying database file
587
+ ** to be opened using O_EXCL. Passing SQLITE_OPEN_EXCLUSIVE into
588
+ ** [sqlite3_open_v2()] has historically be a no-op and might become an
589
+ ** error in future versions of SQLite.
553
590
  */
554
591
  #define SQLITE_OPEN_READONLY 0x00000001 /* Ok for sqlite3_open_v2() */
555
592
  #define SQLITE_OPEN_READWRITE 0x00000002 /* Ok for sqlite3_open_v2() */
@@ -572,6 +609,7 @@ SQLITE_API int sqlite3_exec(
572
609
  #define SQLITE_OPEN_PRIVATECACHE 0x00040000 /* Ok for sqlite3_open_v2() */
573
610
  #define SQLITE_OPEN_WAL 0x00080000 /* VFS only */
574
611
  #define SQLITE_OPEN_NOFOLLOW 0x01000000 /* Ok for sqlite3_open_v2() */
612
+ #define SQLITE_OPEN_EXRESCODE 0x02000000 /* Extended result codes */
575
613
 
576
614
  /* Reserved: 0x00F00000 */
577
615
  /* Legacy compatibility: */
@@ -2464,11 +2502,14 @@ SQLITE_API void sqlite3_set_last_insert_rowid(sqlite3*,sqlite3_int64);
2464
2502
  ** CAPI3REF: Count The Number Of Rows Modified
2465
2503
  ** METHOD: sqlite3
2466
2504
  **
2467
- ** ^This function returns the number of rows modified, inserted or
2505
+ ** ^These functions return the number of rows modified, inserted or
2468
2506
  ** deleted by the most recently completed INSERT, UPDATE or DELETE
2469
2507
  ** statement on the database connection specified by the only parameter.
2470
- ** ^Executing any other type of SQL statement does not modify the value
2471
- ** returned by this function.
2508
+ ** The two functions are identical except for the type of the return value
2509
+ ** and that if the number of rows modified by the most recent INSERT, UPDATE
2510
+ ** or DELETE is greater than the maximum value supported by type "int", then
2511
+ ** the return value of sqlite3_changes() is undefined. ^Executing any other
2512
+ ** type of SQL statement does not modify the value returned by these functions.
2472
2513
  **
2473
2514
  ** ^Only changes made directly by the INSERT, UPDATE or DELETE statement are
2474
2515
  ** considered - auxiliary changes caused by [CREATE TRIGGER | triggers],
@@ -2517,16 +2558,21 @@ SQLITE_API void sqlite3_set_last_insert_rowid(sqlite3*,sqlite3_int64);
2517
2558
  ** </ul>
2518
2559
  */
2519
2560
  SQLITE_API int sqlite3_changes(sqlite3*);
2561
+ SQLITE_API sqlite3_int64 sqlite3_changes64(sqlite3*);
2520
2562
 
2521
2563
  /*
2522
2564
  ** CAPI3REF: Total Number Of Rows Modified
2523
2565
  ** METHOD: sqlite3
2524
2566
  **
2525
- ** ^This function returns the total number of rows inserted, modified or
2567
+ ** ^These functions return the total number of rows inserted, modified or
2526
2568
  ** deleted by all [INSERT], [UPDATE] or [DELETE] statements completed
2527
2569
  ** since the database connection was opened, including those executed as
2528
- ** part of trigger programs. ^Executing any other type of SQL statement
2529
- ** does not affect the value returned by sqlite3_total_changes().
2570
+ ** part of trigger programs. The two functions are identical except for the
2571
+ ** type of the return value and that if the number of rows modified by the
2572
+ ** connection exceeds the maximum value supported by type "int", then
2573
+ ** the return value of sqlite3_total_changes() is undefined. ^Executing
2574
+ ** any other type of SQL statement does not affect the value returned by
2575
+ ** sqlite3_total_changes().
2530
2576
  **
2531
2577
  ** ^Changes made as part of [foreign key actions] are included in the
2532
2578
  ** count, but those made as part of REPLACE constraint resolution are
@@ -2554,6 +2600,7 @@ SQLITE_API int sqlite3_changes(sqlite3*);
2554
2600
  ** </ul>
2555
2601
  */
2556
2602
  SQLITE_API int sqlite3_total_changes(sqlite3*);
2603
+ SQLITE_API sqlite3_int64 sqlite3_total_changes64(sqlite3*);
2557
2604
 
2558
2605
  /*
2559
2606
  ** CAPI3REF: Interrupt A Long-Running Query
@@ -3383,6 +3430,14 @@ SQLITE_API void sqlite3_progress_handler(sqlite3*, int, int(*)(void*), void*);
3383
3430
  ** the default shared cache setting provided by
3384
3431
  ** [sqlite3_enable_shared_cache()].)^
3385
3432
  **
3433
+ ** [[OPEN_EXRESCODE]] ^(<dt>[SQLITE_OPEN_EXRESCODE]</dt>
3434
+ ** <dd>The database connection comes up in "extended result code mode".
3435
+ ** In other words, the database behaves has if
3436
+ ** [sqlite3_extended_result_codes(db,1)] where called on the database
3437
+ ** connection as soon as the connection is created. In addition to setting
3438
+ ** the extended result code mode, this flag also causes [sqlite3_open_v2()]
3439
+ ** to return an extended result code.</dd>
3440
+ **
3386
3441
  ** [[OPEN_NOFOLLOW]] ^(<dt>[SQLITE_OPEN_NOFOLLOW]</dt>
3387
3442
  ** <dd>The database filename is not allowed to be a symbolic link</dd>
3388
3443
  ** </dl>)^
@@ -3390,7 +3445,15 @@ SQLITE_API void sqlite3_progress_handler(sqlite3*, int, int(*)(void*), void*);
3390
3445
  ** If the 3rd parameter to sqlite3_open_v2() is not one of the
3391
3446
  ** required combinations shown above optionally combined with other
3392
3447
  ** [SQLITE_OPEN_READONLY | SQLITE_OPEN_* bits]
3393
- ** then the behavior is undefined.
3448
+ ** then the behavior is undefined. Historic versions of SQLite
3449
+ ** have silently ignored surplus bits in the flags parameter to
3450
+ ** sqlite3_open_v2(), however that behavior might not be carried through
3451
+ ** into future versions of SQLite and so applications should not rely
3452
+ ** upon it. Note in particular that the SQLITE_OPEN_EXCLUSIVE flag is a no-op
3453
+ ** for sqlite3_open_v2(). The SQLITE_OPEN_EXCLUSIVE does *not* cause
3454
+ ** the open to fail if the database already exists. The SQLITE_OPEN_EXCLUSIVE
3455
+ ** flag is intended for use by the [sqlite3_vfs|VFS interface] only, and not
3456
+ ** by sqlite3_open_v2().
3394
3457
  **
3395
3458
  ** ^The fourth parameter to sqlite3_open_v2() is the name of the
3396
3459
  ** [sqlite3_vfs] object that defines the operating system interface that
@@ -4158,12 +4221,17 @@ SQLITE_API int sqlite3_prepare16_v3(
4158
4221
  ** are managed by SQLite and are automatically freed when the prepared
4159
4222
  ** statement is finalized.
4160
4223
  ** ^The string returned by sqlite3_expanded_sql(P), on the other hand,
4161
- ** is obtained from [sqlite3_malloc()] and must be free by the application
4224
+ ** is obtained from [sqlite3_malloc()] and must be freed by the application
4162
4225
  ** by passing it to [sqlite3_free()].
4226
+ **
4227
+ ** ^The sqlite3_normalized_sql() interface is only available if
4228
+ ** the [SQLITE_ENABLE_NORMALIZE] compile-time option is defined.
4163
4229
  */
4164
4230
  SQLITE_API const char *sqlite3_sql(sqlite3_stmt *pStmt);
4165
4231
  SQLITE_API char *sqlite3_expanded_sql(sqlite3_stmt *pStmt);
4232
+ #ifdef SQLITE_ENABLE_NORMALIZE
4166
4233
  SQLITE_API const char *sqlite3_normalized_sql(sqlite3_stmt *pStmt);
4234
+ #endif
4167
4235
 
4168
4236
  /*
4169
4237
  ** CAPI3REF: Determine If An SQL Statement Writes The Database
@@ -6347,6 +6415,72 @@ SQLITE_API sqlite3_stmt *sqlite3_next_stmt(sqlite3 *pDb, sqlite3_stmt *pStmt);
6347
6415
  SQLITE_API void *sqlite3_commit_hook(sqlite3*, int(*)(void*), void*);
6348
6416
  SQLITE_API void *sqlite3_rollback_hook(sqlite3*, void(*)(void *), void*);
6349
6417
 
6418
+ /*
6419
+ ** CAPI3REF: Autovacuum Compaction Amount Callback
6420
+ ** METHOD: sqlite3
6421
+ **
6422
+ ** ^The sqlite3_autovacuum_pages(D,C,P,X) interface registers a callback
6423
+ ** function C that is invoked prior to each autovacuum of the database
6424
+ ** file. ^The callback is passed a copy of the generic data pointer (P),
6425
+ ** the schema-name of the attached database that is being autovacuumed,
6426
+ ** the the size of the database file in pages, the number of free pages,
6427
+ ** and the number of bytes per page, respectively. The callback should
6428
+ ** return the number of free pages that should be removed by the
6429
+ ** autovacuum. ^If the callback returns zero, then no autovacuum happens.
6430
+ ** ^If the value returned is greater than or equal to the number of
6431
+ ** free pages, then a complete autovacuum happens.
6432
+ **
6433
+ ** <p>^If there are multiple ATTACH-ed database files that are being
6434
+ ** modified as part of a transaction commit, then the autovacuum pages
6435
+ ** callback is invoked separately for each file.
6436
+ **
6437
+ ** <p><b>The callback is not reentrant.</b> The callback function should
6438
+ ** not attempt to invoke any other SQLite interface. If it does, bad
6439
+ ** things may happen, including segmentation faults and corrupt database
6440
+ ** files. The callback function should be a simple function that
6441
+ ** does some arithmetic on its input parameters and returns a result.
6442
+ **
6443
+ ** ^The X parameter to sqlite3_autovacuum_pages(D,C,P,X) is an optional
6444
+ ** destructor for the P parameter. ^If X is not NULL, then X(P) is
6445
+ ** invoked whenever the database connection closes or when the callback
6446
+ ** is overwritten by another invocation of sqlite3_autovacuum_pages().
6447
+ **
6448
+ ** <p>^There is only one autovacuum pages callback per database connection.
6449
+ ** ^Each call to the sqlite3_autovacuum_pages() interface overrides all
6450
+ ** previous invocations for that database connection. ^If the callback
6451
+ ** argument (C) to sqlite3_autovacuum_pages(D,C,P,X) is a NULL pointer,
6452
+ ** then the autovacuum steps callback is cancelled. The return value
6453
+ ** from sqlite3_autovacuum_pages() is normally SQLITE_OK, but might
6454
+ ** be some other error code if something goes wrong. The current
6455
+ ** implementation will only return SQLITE_OK or SQLITE_MISUSE, but other
6456
+ ** return codes might be added in future releases.
6457
+ **
6458
+ ** <p>If no autovacuum pages callback is specified (the usual case) or
6459
+ ** a NULL pointer is provided for the callback,
6460
+ ** then the default behavior is to vacuum all free pages. So, in other
6461
+ ** words, the default behavior is the same as if the callback function
6462
+ ** were something like this:
6463
+ **
6464
+ ** <blockquote><pre>
6465
+ ** &nbsp; unsigned int demonstration_autovac_pages_callback(
6466
+ ** &nbsp; void *pClientData,
6467
+ ** &nbsp; const char *zSchema,
6468
+ ** &nbsp; unsigned int nDbPage,
6469
+ ** &nbsp; unsigned int nFreePage,
6470
+ ** &nbsp; unsigned int nBytePerPage
6471
+ ** &nbsp; ){
6472
+ ** &nbsp; return nFreePage;
6473
+ ** &nbsp; }
6474
+ ** </pre></blockquote>
6475
+ */
6476
+ SQLITE_API int sqlite3_autovacuum_pages(
6477
+ sqlite3 *db,
6478
+ unsigned int(*)(void*,const char*,unsigned int,unsigned int,unsigned int),
6479
+ void*,
6480
+ void(*)(void*)
6481
+ );
6482
+
6483
+
6350
6484
  /*
6351
6485
  ** CAPI3REF: Data Change Notification Callbacks
6352
6486
  ** METHOD: sqlite3
@@ -9010,8 +9144,9 @@ SQLITE_API void sqlite3_log(int iErrCode, const char *zFormat, ...);
9010
9144
  **
9011
9145
  ** A single database handle may have at most a single write-ahead log callback
9012
9146
  ** registered at one time. ^Calling [sqlite3_wal_hook()] replaces any
9013
- ** previously registered write-ahead log callback. ^Note that the
9014
- ** [sqlite3_wal_autocheckpoint()] interface and the
9147
+ ** previously registered write-ahead log callback. ^The return value is
9148
+ ** a copy of the third parameter from the previous call, if any, or 0.
9149
+ ** ^Note that the [sqlite3_wal_autocheckpoint()] interface and the
9015
9150
  ** [wal_autocheckpoint pragma] both invoke [sqlite3_wal_hook()] and will
9016
9151
  ** overwrite any prior [sqlite3_wal_hook()] settings.
9017
9152
  */
@@ -9878,6 +10013,10 @@ SQLITE_API unsigned char *sqlite3_serialize(
9878
10013
  ** database is currently in a read transaction or is involved in a backup
9879
10014
  ** operation.
9880
10015
  **
10016
+ ** It is not possible to deserialized into the TEMP database. If the
10017
+ ** S argument to sqlite3_deserialize(D,S,P,N,M,F) is "temp" then the
10018
+ ** function returns SQLITE_ERROR.
10019
+ **
9881
10020
  ** If sqlite3_deserialize(D,S,P,N,M,F) fails for any reason and if the
9882
10021
  ** SQLITE_DESERIALIZE_FREEONCLOSE bit is set in argument F, then
9883
10022
  ** [sqlite3_free()] is invoked on argument P prior to returning.