mirror of
				https://github.com/isar/rusqlite.git
				synced 2025-10-31 22:08:55 +08:00 
			
		
		
		
	Bump bundled SQLite version to 3.46.0
This commit is contained in:
		| @@ -23,10 +23,10 @@ extern "C" { | |||||||
|     ) -> ::std::os::raw::c_int; |     ) -> ::std::os::raw::c_int; | ||||||
| } | } | ||||||
|  |  | ||||||
| pub const SQLITE_VERSION: &[u8; 7] = b"3.45.3\0"; | pub const SQLITE_VERSION: &[u8; 7] = b"3.46.0\0"; | ||||||
| pub const SQLITE_VERSION_NUMBER: i32 = 3045003; | pub const SQLITE_VERSION_NUMBER: i32 = 3046000; | ||||||
| pub const SQLITE_SOURCE_ID: &[u8; 85] = | pub const SQLITE_SOURCE_ID: &[u8; 85] = | ||||||
|     b"2024-04-15 13:34:05 8653b758870e6ef0c98d46b3ace27849054af85da891eb121e9aaa537f1e8355\0"; |     b"2024-05-23 13:25:27 96c92aba00c8375bc32fafcdf12429c58bd8aabfcadab6683e35bbb9cdebf19e\0"; | ||||||
| pub const SQLITE_OK: i32 = 0; | pub const SQLITE_OK: i32 = 0; | ||||||
| pub const SQLITE_ERROR: i32 = 1; | pub const SQLITE_ERROR: i32 = 1; | ||||||
| pub const SQLITE_INTERNAL: i32 = 2; | pub const SQLITE_INTERNAL: i32 = 2; | ||||||
| @@ -2883,6 +2883,12 @@ extern "C" { | |||||||
|         pData: *mut ::std::os::raw::c_void, |         pData: *mut ::std::os::raw::c_void, | ||||||
|     ) -> ::std::os::raw::c_int; |     ) -> ::std::os::raw::c_int; | ||||||
| } | } | ||||||
|  | extern "C" { | ||||||
|  |     pub fn sqlite3changegroup_add_change( | ||||||
|  |         arg1: *mut sqlite3_changegroup, | ||||||
|  |         arg2: *mut sqlite3_changeset_iter, | ||||||
|  |     ) -> ::std::os::raw::c_int; | ||||||
|  | } | ||||||
| extern "C" { | extern "C" { | ||||||
|     pub fn sqlite3changegroup_output( |     pub fn sqlite3changegroup_output( | ||||||
|         arg1: *mut sqlite3_changegroup, |         arg1: *mut sqlite3_changegroup, | ||||||
|   | |||||||
| @@ -1,9 +1,9 @@ | |||||||
| /* automatically generated by rust-bindgen 0.69.4 */ | /* automatically generated by rust-bindgen 0.69.4 */ | ||||||
|  |  | ||||||
| pub const SQLITE_VERSION: &[u8; 7] = b"3.45.3\0"; | pub const SQLITE_VERSION: &[u8; 7] = b"3.46.0\0"; | ||||||
| pub const SQLITE_VERSION_NUMBER: i32 = 3045003; | pub const SQLITE_VERSION_NUMBER: i32 = 3046000; | ||||||
| pub const SQLITE_SOURCE_ID: &[u8; 85] = | pub const SQLITE_SOURCE_ID: &[u8; 85] = | ||||||
|     b"2024-04-15 13:34:05 8653b758870e6ef0c98d46b3ace27849054af85da891eb121e9aaa537f1e8355\0"; |     b"2024-05-23 13:25:27 96c92aba00c8375bc32fafcdf12429c58bd8aabfcadab6683e35bbb9cdebf19e\0"; | ||||||
| pub const SQLITE_OK: i32 = 0; | pub const SQLITE_OK: i32 = 0; | ||||||
| pub const SQLITE_ERROR: i32 = 1; | pub const SQLITE_ERROR: i32 = 1; | ||||||
| pub const SQLITE_INTERNAL: i32 = 2; | pub const SQLITE_INTERNAL: i32 = 2; | ||||||
|   | |||||||
							
								
								
									
										8297
									
								
								libsqlite3-sys/sqlite3/sqlite3.c
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										8297
									
								
								libsqlite3-sys/sqlite3/sqlite3.c
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										97
									
								
								libsqlite3-sys/sqlite3/sqlite3.h
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										97
									
								
								libsqlite3-sys/sqlite3/sqlite3.h
									
									
									
									
										vendored
									
									
								
							| @@ -146,9 +146,9 @@ extern "C" { | |||||||
| ** [sqlite3_libversion_number()], [sqlite3_sourceid()], | ** [sqlite3_libversion_number()], [sqlite3_sourceid()], | ||||||
| ** [sqlite_version()] and [sqlite_source_id()]. | ** [sqlite_version()] and [sqlite_source_id()]. | ||||||
| */ | */ | ||||||
| #define SQLITE_VERSION        "3.45.3" | #define SQLITE_VERSION        "3.46.0" | ||||||
| #define SQLITE_VERSION_NUMBER 3045003 | #define SQLITE_VERSION_NUMBER 3046000 | ||||||
| #define SQLITE_SOURCE_ID      "2024-04-15 13:34:05 8653b758870e6ef0c98d46b3ace27849054af85da891eb121e9aaa537f1e8355" | #define SQLITE_SOURCE_ID      "2024-05-23 13:25:27 96c92aba00c8375bc32fafcdf12429c58bd8aabfcadab6683e35bbb9cdebf19e" | ||||||
|  |  | ||||||
| /* | /* | ||||||
| ** CAPI3REF: Run-Time Library Version Numbers | ** CAPI3REF: Run-Time Library Version Numbers | ||||||
| @@ -764,11 +764,11 @@ struct sqlite3_file { | |||||||
| ** </ul> | ** </ul> | ||||||
| ** xLock() upgrades the database file lock.  In other words, xLock() moves the | ** xLock() upgrades the database file lock.  In other words, xLock() moves the | ||||||
| ** database file lock in the direction NONE toward EXCLUSIVE. The argument to | ** database file lock in the direction NONE toward EXCLUSIVE. The argument to | ||||||
| ** xLock() is always on of SHARED, RESERVED, PENDING, or EXCLUSIVE, never | ** xLock() is always one of SHARED, RESERVED, PENDING, or EXCLUSIVE, never | ||||||
| ** SQLITE_LOCK_NONE.  If the database file lock is already at or above the | ** SQLITE_LOCK_NONE.  If the database file lock is already at or above the | ||||||
| ** requested lock, then the call to xLock() is a no-op. | ** requested lock, then the call to xLock() is a no-op. | ||||||
| ** xUnlock() downgrades the database file lock to either SHARED or NONE. | ** xUnlock() downgrades the database file lock to either SHARED or NONE. | ||||||
| *  If the lock is already at or below the requested lock state, then the call | ** If the lock is already at or below the requested lock state, then the call | ||||||
| ** to xUnlock() is a no-op. | ** to xUnlock() is a no-op. | ||||||
| ** The xCheckReservedLock() method checks whether any database connection, | ** The xCheckReservedLock() method checks whether any database connection, | ||||||
| ** either in this process or in some other process, is holding a RESERVED, | ** either in this process or in some other process, is holding a RESERVED, | ||||||
| @@ -3305,8 +3305,8 @@ SQLITE_API int sqlite3_set_authorizer( | |||||||
| #define SQLITE_RECURSIVE            33   /* NULL            NULL            */ | #define SQLITE_RECURSIVE            33   /* NULL            NULL            */ | ||||||
|  |  | ||||||
| /* | /* | ||||||
| ** CAPI3REF: Tracing And Profiling Functions | ** CAPI3REF: Deprecated Tracing And Profiling Functions | ||||||
| ** METHOD: sqlite3 | ** DEPRECATED | ||||||
| ** | ** | ||||||
| ** These routines are deprecated. Use the [sqlite3_trace_v2()] interface | ** These routines are deprecated. Use the [sqlite3_trace_v2()] interface | ||||||
| ** instead of the routines described here. | ** instead of the routines described here. | ||||||
| @@ -6887,6 +6887,12 @@ SQLITE_API int sqlite3_autovacuum_pages( | |||||||
| ** The exceptions defined in this paragraph might change in a future | ** The exceptions defined in this paragraph might change in a future | ||||||
| ** release of SQLite. | ** release of SQLite. | ||||||
| ** | ** | ||||||
|  | ** Whether the update hook is invoked before or after the | ||||||
|  | ** corresponding change is currently unspecified and may differ | ||||||
|  | ** depending on the type of change. Do not rely on the order of the | ||||||
|  | ** hook call with regards to the final result of the operation which | ||||||
|  | ** triggers the hook. | ||||||
|  | ** | ||||||
| ** The update hook implementation must not do anything that will modify | ** The update hook implementation must not do anything that will modify | ||||||
| ** the database connection that invoked the update hook.  Any actions | ** the database connection that invoked the update hook.  Any actions | ||||||
| ** to modify the database connection must be deferred until after the | ** to modify the database connection must be deferred until after the | ||||||
| @@ -8357,7 +8363,7 @@ SQLITE_API int sqlite3_test_control(int op, ...); | |||||||
| ** The sqlite3_keyword_count() interface returns the number of distinct | ** The sqlite3_keyword_count() interface returns the number of distinct | ||||||
| ** keywords understood by SQLite. | ** keywords understood by SQLite. | ||||||
| ** | ** | ||||||
| ** The sqlite3_keyword_name(N,Z,L) interface finds the N-th keyword and | ** The sqlite3_keyword_name(N,Z,L) interface finds the 0-based N-th keyword and | ||||||
| ** makes *Z point to that keyword expressed as UTF8 and writes the number | ** makes *Z point to that keyword expressed as UTF8 and writes the number | ||||||
| ** of bytes in the keyword into *L.  The string that *Z points to is not | ** of bytes in the keyword into *L.  The string that *Z points to is not | ||||||
| ** zero-terminated.  The sqlite3_keyword_name(N,Z,L) routine returns | ** zero-terminated.  The sqlite3_keyword_name(N,Z,L) routine returns | ||||||
| @@ -9936,24 +9942,45 @@ SQLITE_API const char *sqlite3_vtab_collation(sqlite3_index_info*,int); | |||||||
| ** <li value="2"><p> | ** <li value="2"><p> | ||||||
| ** ^(If the sqlite3_vtab_distinct() interface returns 2, that means | ** ^(If the sqlite3_vtab_distinct() interface returns 2, that means | ||||||
| ** that the query planner does not need the rows returned in any particular | ** that the query planner does not need the rows returned in any particular | ||||||
| ** order, as long as rows with the same values in all "aOrderBy" columns | ** order, as long as rows with the same values in all columns identified | ||||||
| ** are adjacent.)^  ^(Furthermore, only a single row for each particular | ** by "aOrderBy" are adjacent.)^  ^(Furthermore, when two or more rows | ||||||
| ** combination of values in the columns identified by the "aOrderBy" field | ** contain the same values for all columns identified by "colUsed", all but | ||||||
| ** needs to be returned.)^  ^It is always ok for two or more rows with the same | ** one such row may optionally be omitted from the result.)^ | ||||||
| ** values in all "aOrderBy" columns to be returned, as long as all such rows | ** The virtual table is not required to omit rows that are duplicates | ||||||
| ** are adjacent.  ^The virtual table may, if it chooses, omit extra rows | ** over the "colUsed" columns, but if the virtual table can do that without | ||||||
| ** that have the same value for all columns identified by "aOrderBy". | ** too much extra effort, it could potentially help the query to run faster. | ||||||
| ** ^However omitting the extra rows is optional. |  | ||||||
| ** This mode is used for a DISTINCT query. | ** This mode is used for a DISTINCT query. | ||||||
| ** <li value="3"><p> | ** <li value="3"><p> | ||||||
| ** ^(If the sqlite3_vtab_distinct() interface returns 3, that means | ** ^(If the sqlite3_vtab_distinct() interface returns 3, that means the | ||||||
| ** that the query planner needs only distinct rows but it does need the | ** virtual table must return rows in the order defined by "aOrderBy" as | ||||||
| ** rows to be sorted.)^ ^The virtual table implementation is free to omit | ** if the sqlite3_vtab_distinct() interface had returned 0.  However if | ||||||
| ** rows that are identical in all aOrderBy columns, if it wants to, but | ** two or more rows in the result have the same values for all columns | ||||||
| ** it is not required to omit any rows.  This mode is used for queries | ** identified by "colUsed", then all but one such row may optionally be | ||||||
|  | ** omitted.)^  Like when the return value is 2, the virtual table | ||||||
|  | ** is not required to omit rows that are duplicates over the "colUsed" | ||||||
|  | ** columns, but if the virtual table can do that without | ||||||
|  | ** too much extra effort, it could potentially help the query to run faster. | ||||||
|  | ** This mode is used for queries | ||||||
| ** that have both DISTINCT and ORDER BY clauses. | ** that have both DISTINCT and ORDER BY clauses. | ||||||
| ** </ol> | ** </ol> | ||||||
| ** | ** | ||||||
|  | ** <p>The following table summarizes the conditions under which the | ||||||
|  | ** virtual table is allowed to set the "orderByConsumed" flag based on | ||||||
|  | ** the value returned by sqlite3_vtab_distinct().  This table is a | ||||||
|  | ** restatement of the previous four paragraphs: | ||||||
|  | ** | ||||||
|  | ** <table border=1 cellspacing=0 cellpadding=10 width="90%"> | ||||||
|  | ** <tr> | ||||||
|  | ** <td valign="top">sqlite3_vtab_distinct() return value | ||||||
|  | ** <td valign="top">Rows are returned in aOrderBy order | ||||||
|  | ** <td valign="top">Rows with the same value in all aOrderBy columns are adjacent | ||||||
|  | ** <td valign="top">Duplicates over all colUsed columns may be omitted | ||||||
|  | ** <tr><td>0<td>yes<td>yes<td>no | ||||||
|  | ** <tr><td>1<td>no<td>yes<td>no | ||||||
|  | ** <tr><td>2<td>no<td>yes<td>yes | ||||||
|  | ** <tr><td>3<td>yes<td>yes<td>yes | ||||||
|  | ** </table> | ||||||
|  | ** | ||||||
| ** ^For the purposes of comparing virtual table output values to see if the | ** ^For the purposes of comparing virtual table output values to see if the | ||||||
| ** values are same value for sorting purposes, two NULL values are considered | ** values are same value for sorting purposes, two NULL values are considered | ||||||
| ** to be the same.  In other words, the comparison operator is "IS" | ** to be the same.  In other words, the comparison operator is "IS" | ||||||
| @@ -11998,6 +12025,30 @@ SQLITE_API int sqlite3changegroup_schema(sqlite3_changegroup*, sqlite3*, const c | |||||||
| */ | */ | ||||||
| SQLITE_API int sqlite3changegroup_add(sqlite3_changegroup*, int nData, void *pData); | SQLITE_API int sqlite3changegroup_add(sqlite3_changegroup*, int nData, void *pData); | ||||||
|  |  | ||||||
|  | /* | ||||||
|  | ** CAPI3REF: Add A Single Change To A Changegroup | ||||||
|  | ** METHOD: sqlite3_changegroup | ||||||
|  | ** | ||||||
|  | ** This function adds the single change currently indicated by the iterator | ||||||
|  | ** passed as the second argument to the changegroup object. The rules for | ||||||
|  | ** adding the change are just as described for [sqlite3changegroup_add()]. | ||||||
|  | ** | ||||||
|  | ** If the change is successfully added to the changegroup, SQLITE_OK is | ||||||
|  | ** returned. Otherwise, an SQLite error code is returned. | ||||||
|  | ** | ||||||
|  | ** The iterator must point to a valid entry when this function is called. | ||||||
|  | ** If it does not, SQLITE_ERROR is returned and no change is added to the | ||||||
|  | ** changegroup. Additionally, the iterator must not have been opened with | ||||||
|  | ** the SQLITE_CHANGESETAPPLY_INVERT flag. In this case SQLITE_ERROR is also | ||||||
|  | ** returned. | ||||||
|  | */ | ||||||
|  | SQLITE_API int sqlite3changegroup_add_change( | ||||||
|  |   sqlite3_changegroup*, | ||||||
|  |   sqlite3_changeset_iter* | ||||||
|  | ); | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
| /* | /* | ||||||
| ** CAPI3REF: Obtain A Composite Changeset From A Changegroup | ** CAPI3REF: Obtain A Composite Changeset From A Changegroup | ||||||
| ** METHOD: sqlite3_changegroup | ** METHOD: sqlite3_changegroup | ||||||
| @@ -12802,8 +12853,8 @@ struct Fts5PhraseIter { | |||||||
| ** EXTENSION API FUNCTIONS | ** EXTENSION API FUNCTIONS | ||||||
| ** | ** | ||||||
| ** xUserData(pFts): | ** xUserData(pFts): | ||||||
| **   Return a copy of the context pointer the extension function was | **   Return a copy of the pUserData pointer passed to the xCreateFunction() | ||||||
| **   registered with. | **   API when the extension function was registered. | ||||||
| ** | ** | ||||||
| ** xColumnTotalSize(pFts, iCol, pnToken): | ** xColumnTotalSize(pFts, iCol, pnToken): | ||||||
| **   If parameter iCol is less than zero, set output variable *pnToken | **   If parameter iCol is less than zero, set output variable *pnToken | ||||||
|   | |||||||
| @@ -9,7 +9,7 @@ export SQLITE3_LIB_DIR="$SCRIPT_DIR/sqlite3" | |||||||
| mkdir -p "$TARGET_DIR" "$SQLITE3_LIB_DIR" | mkdir -p "$TARGET_DIR" "$SQLITE3_LIB_DIR" | ||||||
|  |  | ||||||
| # Download and extract amalgamation | # Download and extract amalgamation | ||||||
| SQLITE=sqlite-amalgamation-3450300 | SQLITE=sqlite-amalgamation-3460000 | ||||||
| curl -O https://sqlite.org/2024/$SQLITE.zip | curl -O https://sqlite.org/2024/$SQLITE.zip | ||||||
| unzip -p "$SQLITE.zip" "$SQLITE/sqlite3.c" > "$SQLITE3_LIB_DIR/sqlite3.c" | unzip -p "$SQLITE.zip" "$SQLITE/sqlite3.c" > "$SQLITE3_LIB_DIR/sqlite3.c" | ||||||
| unzip -p "$SQLITE.zip" "$SQLITE/sqlite3.h" > "$SQLITE3_LIB_DIR/sqlite3.h" | unzip -p "$SQLITE.zip" "$SQLITE/sqlite3.h" > "$SQLITE3_LIB_DIR/sqlite3.h" | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user