better-sqlite3-multiple-ciphers 9.1.1 → 9.1.2-beta.0

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.
@@ -3,7 +3,7 @@
3
3
  ** Purpose: Header file for SQLite3 Multiple Ciphers support
4
4
  ** Author: Ulrich Telle
5
5
  ** Created: 2020-03-01
6
- ** Copyright: (c) 2019-2022 Ulrich Telle
6
+ ** Copyright: (c) 2019-2023 Ulrich Telle
7
7
  ** License: MIT
8
8
  */
9
9
 
@@ -30,10 +30,10 @@
30
30
  #define SQLITE3MC_VERSION_H_
31
31
 
32
32
  #define SQLITE3MC_VERSION_MAJOR 1
33
- #define SQLITE3MC_VERSION_MINOR 7
34
- #define SQLITE3MC_VERSION_RELEASE 4
33
+ #define SQLITE3MC_VERSION_MINOR 8
34
+ #define SQLITE3MC_VERSION_RELEASE 0
35
35
  #define SQLITE3MC_VERSION_SUBRELEASE 0
36
- #define SQLITE3MC_VERSION_STRING "SQLite3 Multiple Ciphers 1.7.4"
36
+ #define SQLITE3MC_VERSION_STRING "SQLite3 Multiple Ciphers 1.8.0"
37
37
 
38
38
  #endif /* SQLITE3MC_VERSION_H_ */
39
39
  /*** End of #include "sqlite3mc_version.h" ***/
@@ -192,9 +192,9 @@ extern "C" {
192
192
  ** [sqlite3_libversion_number()], [sqlite3_sourceid()],
193
193
  ** [sqlite_version()] and [sqlite_source_id()].
194
194
  */
195
- #define SQLITE_VERSION "3.44.0"
196
- #define SQLITE_VERSION_NUMBER 3044000
197
- #define SQLITE_SOURCE_ID "2023-11-01 11:23:50 17129ba1ff7f0daf37100ee82d507aef7827cf38de1866e2633096ae6ad81301"
195
+ #define SQLITE_VERSION "3.44.1"
196
+ #define SQLITE_VERSION_NUMBER 3044001
197
+ #define SQLITE_SOURCE_ID "2023-11-22 14:18:12 d295f48e8f367b066b881780c98bdf980a1d550397d5ba0b0e49842c95b3e8b4"
198
198
 
199
199
  /*
200
200
  ** CAPI3REF: Run-Time Library Version Numbers
@@ -5619,13 +5619,27 @@ SQLITE_API int sqlite3_create_window_function(
5619
5619
  ** </dd>
5620
5620
  **
5621
5621
  ** [[SQLITE_SUBTYPE]] <dt>SQLITE_SUBTYPE</dt><dd>
5622
- ** The SQLITE_SUBTYPE flag indicates to SQLite that a function may call
5622
+ ** The SQLITE_SUBTYPE flag indicates to SQLite that a function might call
5623
5623
  ** [sqlite3_value_subtype()] to inspect the sub-types of its arguments.
5624
- ** Specifying this flag makes no difference for scalar or aggregate user
5625
- ** functions. However, if it is not specified for a user-defined window
5626
- ** function, then any sub-types belonging to arguments passed to the window
5627
- ** function may be discarded before the window function is called (i.e.
5628
- ** sqlite3_value_subtype() will always return 0).
5624
+ ** This flag instructs SQLite to omit some corner-case optimizations that
5625
+ ** might disrupt the operation of the [sqlite3_value_subtype()] function,
5626
+ ** causing it to return zero rather than the correct subtype().
5627
+ ** SQL functions that invokes [sqlite3_value_subtype()] should have this
5628
+ ** property. If the SQLITE_SUBTYPE property is omitted, then the return
5629
+ ** value from [sqlite3_value_subtype()] might sometimes be zero even though
5630
+ ** a non-zero subtype was specified by the function argument expression.
5631
+ **
5632
+ ** [[SQLITE_RESULT_SUBTYPE]] <dt>SQLITE_RESULT_SUBTYPE</dt><dd>
5633
+ ** The SQLITE_RESULT_SUBTYPE flag indicates to SQLite that a function might call
5634
+ ** [sqlite3_result_subtype()] to cause a sub-type to be associated with its
5635
+ ** result.
5636
+ ** Every function that invokes [sqlite3_result_subtype()] should have this
5637
+ ** property. If it does not, then the call to [sqlite3_result_subtype()]
5638
+ ** might become a no-op if the function is used as term in an
5639
+ ** [expression index]. On the other hand, SQL functions that never invoke
5640
+ ** [sqlite3_result_subtype()] should avoid setting this property, as the
5641
+ ** purpose of this property is to disable certain optimizations that are
5642
+ ** incompatible with subtypes.
5629
5643
  ** </dd>
5630
5644
  ** </dl>
5631
5645
  */
@@ -5633,6 +5647,7 @@ SQLITE_API int sqlite3_create_window_function(
5633
5647
  #define SQLITE_DIRECTONLY 0x000080000
5634
5648
  #define SQLITE_SUBTYPE 0x000100000
5635
5649
  #define SQLITE_INNOCUOUS 0x000200000
5650
+ #define SQLITE_RESULT_SUBTYPE 0x001000000
5636
5651
 
5637
5652
  /*
5638
5653
  ** CAPI3REF: Deprecated Functions
@@ -5829,6 +5844,12 @@ SQLITE_API int sqlite3_value_encoding(sqlite3_value*);
5829
5844
  ** information can be used to pass a limited amount of context from
5830
5845
  ** one SQL function to another. Use the [sqlite3_result_subtype()]
5831
5846
  ** routine to set the subtype for the return value of an SQL function.
5847
+ **
5848
+ ** Every [application-defined SQL function] that invoke this interface
5849
+ ** should include the [SQLITE_SUBTYPE] property in the text
5850
+ ** encoding argument when the function is [sqlite3_create_function|registered].
5851
+ ** If the [SQLITE_SUBTYPE] property is omitted, then sqlite3_value_subtype()
5852
+ ** might return zero instead of the upstream subtype in some corner cases.
5832
5853
  */
5833
5854
  SQLITE_API unsigned int sqlite3_value_subtype(sqlite3_value*);
5834
5855
 
@@ -5959,14 +5980,22 @@ SQLITE_API sqlite3 *sqlite3_context_db_handle(sqlite3_context*);
5959
5980
  ** <li> ^(when sqlite3_set_auxdata() is invoked again on the same
5960
5981
  ** parameter)^, or
5961
5982
  ** <li> ^(during the original sqlite3_set_auxdata() call when a memory
5962
- ** allocation error occurs.)^ </ul>
5983
+ ** allocation error occurs.)^
5984
+ ** <li> ^(during the original sqlite3_set_auxdata() call if the function
5985
+ ** is evaluated during query planning instead of during query execution,
5986
+ ** as sometimes happens with [SQLITE_ENABLE_STAT4].)^ </ul>
5963
5987
  **
5964
- ** Note the last bullet in particular. The destructor X in
5988
+ ** Note the last two bullets in particular. The destructor X in
5965
5989
  ** sqlite3_set_auxdata(C,N,P,X) might be called immediately, before the
5966
5990
  ** sqlite3_set_auxdata() interface even returns. Hence sqlite3_set_auxdata()
5967
5991
  ** should be called near the end of the function implementation and the
5968
5992
  ** function implementation should not make any use of P after
5969
- ** sqlite3_set_auxdata() has been called.
5993
+ ** sqlite3_set_auxdata() has been called. Furthermore, a call to
5994
+ ** sqlite3_get_auxdata() that occurs immediately after a corresponding call
5995
+ ** to sqlite3_set_auxdata() might still return NULL if an out-of-memory
5996
+ ** condition occurred during the sqlite3_set_auxdata() call or if the
5997
+ ** function is being evaluated during query planning rather than during
5998
+ ** query execution.
5970
5999
  **
5971
6000
  ** ^(In practice, auxiliary data is preserved between function calls for
5972
6001
  ** function parameters that are compile-time constants, including literal
@@ -6240,6 +6269,20 @@ SQLITE_API int sqlite3_result_zeroblob64(sqlite3_context*, sqlite3_uint64 n);
6240
6269
  ** higher order bits are discarded.
6241
6270
  ** The number of subtype bytes preserved by SQLite might increase
6242
6271
  ** in future releases of SQLite.
6272
+ **
6273
+ ** Every [application-defined SQL function] that invokes this interface
6274
+ ** should include the [SQLITE_RESULT_SUBTYPE] property in its
6275
+ ** text encoding argument when the SQL function is
6276
+ ** [sqlite3_create_function|registered]. If the [SQLITE_RESULT_SUBTYPE]
6277
+ ** property is omitted from the function that invokes sqlite3_result_subtype(),
6278
+ ** then in some cases the sqlite3_result_subtype() might fail to set
6279
+ ** the result subtype.
6280
+ **
6281
+ ** If SQLite is compiled with -DSQLITE_STRICT_SUBTYPE=1, then any
6282
+ ** SQL function that invokes the sqlite3_result_subtype() interface
6283
+ ** and that does not have the SQLITE_RESULT_SUBTYPE property will raise
6284
+ ** an error. Future versions of SQLite might enable -DSQLITE_STRICT_SUBTYPE=1
6285
+ ** by default.
6243
6286
  */
6244
6287
  SQLITE_API void sqlite3_result_subtype(sqlite3_context*,unsigned int);
6245
6288
 
@@ -13416,7 +13459,8 @@ int sqlite3_user_delete(
13416
13459
  #define CODEC_TYPE_CHACHA20 3
13417
13460
  #define CODEC_TYPE_SQLCIPHER 4
13418
13461
  #define CODEC_TYPE_RC4 5
13419
- #define CODEC_TYPE_MAX_BUILTIN 5
13462
+ #define CODEC_TYPE_ASCON128 6
13463
+ #define CODEC_TYPE_MAX_BUILTIN 6
13420
13464
 
13421
13465
  /*
13422
13466
  ** Definition of API functions
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "better-sqlite3-multiple-ciphers",
3
- "version": "9.1.1",
3
+ "version": "9.1.2-beta.0",
4
4
  "description": "better-sqlite3 with multiple-cipher encryption support",
5
5
  "homepage": "https://github.com/m4heshd/better-sqlite3-multiple-ciphers",
6
6
  "author": "Mahesh Bandara Wijerathna (m4heshd) <m4heshd@gmail.com>",