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; | ||||
| } | ||||
|  | ||||
| pub const SQLITE_VERSION: &[u8; 7] = b"3.45.3\0"; | ||||
| pub const SQLITE_VERSION_NUMBER: i32 = 3045003; | ||||
| pub const SQLITE_VERSION: &[u8; 7] = b"3.46.0\0"; | ||||
| pub const SQLITE_VERSION_NUMBER: i32 = 3046000; | ||||
| 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_ERROR: i32 = 1; | ||||
| pub const SQLITE_INTERNAL: i32 = 2; | ||||
| @@ -2883,6 +2883,12 @@ extern "C" { | ||||
|         pData: *mut ::std::os::raw::c_void, | ||||
|     ) -> ::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" { | ||||
|     pub fn sqlite3changegroup_output( | ||||
|         arg1: *mut sqlite3_changegroup, | ||||
|   | ||||
| @@ -1,9 +1,9 @@ | ||||
| /* automatically generated by rust-bindgen 0.69.4 */ | ||||
|  | ||||
| pub const SQLITE_VERSION: &[u8; 7] = b"3.45.3\0"; | ||||
| pub const SQLITE_VERSION_NUMBER: i32 = 3045003; | ||||
| pub const SQLITE_VERSION: &[u8; 7] = b"3.46.0\0"; | ||||
| pub const SQLITE_VERSION_NUMBER: i32 = 3046000; | ||||
| 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_ERROR: i32 = 1; | ||||
| 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()], | ||||
| ** [sqlite_version()] and [sqlite_source_id()]. | ||||
| */ | ||||
| #define SQLITE_VERSION        "3.45.3" | ||||
| #define SQLITE_VERSION_NUMBER 3045003 | ||||
| #define SQLITE_SOURCE_ID      "2024-04-15 13:34:05 8653b758870e6ef0c98d46b3ace27849054af85da891eb121e9aaa537f1e8355" | ||||
| #define SQLITE_VERSION        "3.46.0" | ||||
| #define SQLITE_VERSION_NUMBER 3046000 | ||||
| #define SQLITE_SOURCE_ID      "2024-05-23 13:25:27 96c92aba00c8375bc32fafcdf12429c58bd8aabfcadab6683e35bbb9cdebf19e" | ||||
|  | ||||
| /* | ||||
| ** CAPI3REF: Run-Time Library Version Numbers | ||||
| @@ -764,11 +764,11 @@ struct sqlite3_file { | ||||
| ** </ul> | ||||
| ** xLock() upgrades the database file lock.  In other words, xLock() moves the | ||||
| ** 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 | ||||
| ** requested lock, then the call to xLock() is a no-op. | ||||
| ** 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. | ||||
| ** The xCheckReservedLock() method checks whether any database connection, | ||||
| ** 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            */ | ||||
|  | ||||
| /* | ||||
| ** CAPI3REF: Tracing And Profiling Functions | ||||
| ** METHOD: sqlite3 | ||||
| ** CAPI3REF: Deprecated Tracing And Profiling Functions | ||||
| ** DEPRECATED | ||||
| ** | ||||
| ** These routines are deprecated. Use the [sqlite3_trace_v2()] interface | ||||
| ** 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 | ||||
| ** 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 database connection that invoked the update hook.  Any actions | ||||
| ** 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 | ||||
| ** 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 | ||||
| ** 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 | ||||
| @@ -9936,24 +9942,45 @@ SQLITE_API const char *sqlite3_vtab_collation(sqlite3_index_info*,int); | ||||
| ** <li value="2"><p> | ||||
| ** ^(If the sqlite3_vtab_distinct() interface returns 2, that means | ||||
| ** 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 | ||||
| ** are adjacent.)^  ^(Furthermore, only a single row for each particular | ||||
| ** combination of values in the columns identified by the "aOrderBy" field | ||||
| ** needs to be returned.)^  ^It is always ok for two or more rows with the same | ||||
| ** values in all "aOrderBy" columns to be returned, as long as all such rows | ||||
| ** are adjacent.  ^The virtual table may, if it chooses, omit extra rows | ||||
| ** that have the same value for all columns identified by "aOrderBy". | ||||
| ** ^However omitting the extra rows is optional. | ||||
| ** order, as long as rows with the same values in all columns identified | ||||
| ** by "aOrderBy" are adjacent.)^  ^(Furthermore, when two or more rows | ||||
| ** contain the same values for all columns identified by "colUsed", all but | ||||
| ** one such row may optionally be omitted from the result.)^ | ||||
| ** 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 a DISTINCT query. | ||||
| ** <li value="3"><p> | ||||
| ** ^(If the sqlite3_vtab_distinct() interface returns 3, that means | ||||
| ** that the query planner needs only distinct rows but it does need the | ||||
| ** rows to be sorted.)^ ^The virtual table implementation is free to omit | ||||
| ** rows that are identical in all aOrderBy columns, if it wants to, but | ||||
| ** it is not required to omit any rows.  This mode is used for queries | ||||
| ** ^(If the sqlite3_vtab_distinct() interface returns 3, that means the | ||||
| ** virtual table must return rows in the order defined by "aOrderBy" as | ||||
| ** if the sqlite3_vtab_distinct() interface had returned 0.  However if | ||||
| ** two or more rows in the result have the same values for all columns | ||||
| ** 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. | ||||
| ** </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 | ||||
| ** values are same value for sorting purposes, two NULL values are considered | ||||
| ** 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); | ||||
|  | ||||
| /* | ||||
| ** 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 | ||||
| ** METHOD: sqlite3_changegroup | ||||
| @@ -12802,8 +12853,8 @@ struct Fts5PhraseIter { | ||||
| ** EXTENSION API FUNCTIONS | ||||
| ** | ||||
| ** xUserData(pFts): | ||||
| **   Return a copy of the context pointer the extension function was | ||||
| **   registered with. | ||||
| **   Return a copy of the pUserData pointer passed to the xCreateFunction() | ||||
| **   API when the extension function was registered. | ||||
| ** | ||||
| ** xColumnTotalSize(pFts, iCol, 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" | ||||
|  | ||||
| # Download and extract amalgamation | ||||
| SQLITE=sqlite-amalgamation-3450300 | ||||
| SQLITE=sqlite-amalgamation-3460000 | ||||
| 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.h" > "$SQLITE3_LIB_DIR/sqlite3.h" | ||||
|   | ||||
		Reference in New Issue
	
	Block a user