gwenn
a1b83423a5
Merge pull request #1263 from psarna/from_handle_owned
...
Introduce Connection::from_handle_owned
2022-12-11 10:52:52 +01:00
gwenn
5f851fb90f
Add Statement::clear_bindings
2022-12-11 10:26:13 +01:00
gwenn
312bf41e90
Merge remote-tracking branch 'origin/master' into deprecated
2022-12-11 09:56:22 +01:00
gwenn
aad182aff4
Merge pull request #1252 from gwenn/serde_json
...
Fix FromSql/ToSql for serde_json::Value
2022-12-11 09:50:21 +01:00
gwenn
9e76bf42d1
Merge pull request #1248 from gwenn/db_path
...
Remove Connection path field
2022-12-11 09:41:26 +01:00
gwenn
3aa9addaa3
[breaking change] Update edition from 2018 to 2021
...
And fix clippy warnings
2022-12-09 20:19:04 +01:00
Piotr Sarna
82a56b1b58
Introduce Connection::from_handle_owned
...
It behaves almost the same as Connection::from_handle,
but it promises to close the inner connection when
the returned connection is closed or dropped.
The rationale for having this function is that some users
of Connection::from_handle obtain the handle simply by calling
ffi::sqlite3_open_v2 or other similar function manually, and would
still like for its resources to be released once the connection
is dropped.
The use-case behind this commit is from https://github.com/libsql/libsql/ ,
where a new libsql_open call is introduced to pass other parameters
(like virtual WAL interface) to the connection.
2022-11-29 15:52:30 +01:00
gwenn
2e07650a02
Use ?NNN format instead of ?
...
https://sqlite.org/lang_expr.html#parameters
> But because it is easy to miscount the question marks, the use of this parameter format is discouraged. Programmers are encouraged to use one of the symbolic formats below or the ?NNN format above instead.
2022-11-27 09:38:06 +01:00
gwenn
1038577691
Fix clippy warnings
...
Related to chrono 0.4.23.
Only some tests are impacted.
2022-11-19 13:29:43 +01:00
gwenn
6ca54320fc
Fix FromSql/ToSql for serde_json::Value
...
Fix #882 for valid JSON values
2022-11-11 18:37:22 +01:00
gwenn
503f02ee01
Cosmetic changes in tests
2022-11-11 16:32:42 +01:00
gwenn
784ef95bb6
Intoduce one_column for tests
2022-11-11 16:20:39 +01:00
gwenn
70ebb7f6b4
Merge remote-tracking branch 'upstream/master' into debug_row
2022-11-11 14:59:17 +01:00
gwenn
d79d4a175b
Remove deprecated API
2022-11-11 14:45:22 +01:00
gwenn
8a281679b2
Merge remote-tracking branch 'upstream/master' into db_path
2022-11-09 20:09:04 +01:00
gwenn
27e5fb016b
Fix clippy warnings
2022-11-09 19:57:36 +01:00
gwenn
d24318f7c9
Remove Connection path field
...
Use sqlite3_db_filename instead.
Pros: memory footprint, absolute path
Cons: one cannot make the disctinction between multiple memory
databases anymore (like file:one.db?mode=memory and
file:another.db?mode=memory).
2022-11-08 20:44:12 +01:00
gwenn
5488c7ef50
Merge remote-tracking branch 'upstream/master' into debug_row
2022-10-30 09:03:17 +01:00
gwenn
6d509afe49
Clippy
2022-10-28 19:02:49 +02:00
gwenn
2cb104a40b
Impl Debug for Row
2022-10-09 11:43:02 +02:00
gwenn
456523f312
Fix error: unknown lint: clippy::bool_to_int_with_if
2022-10-08 19:28:38 +02:00
gwenn
ba73b81776
Fix CI build error
...
stable clippy vs nightly clippy
2022-10-08 18:57:12 +02:00
gwenn
cd6ce6e2c3
Fix clippy warnings
2022-10-08 18:45:51 +02:00
gwenn
a37489ec93
Merge pull request #1217 from gwenn/modern_vtab
...
Include vtablog only with modern_sqlite feature
2022-10-05 19:35:52 +02:00
gwenn
ff1b3d5ed4
Merge pull request #1223 from gwenn/const
...
Reuse constants already defined in SQLite <= 3.14.0
2022-10-05 19:30:17 +02:00
gwenn
7dab08c4b2
Fix clippy warnings
2022-10-02 11:34:58 +02:00
Thom Chiovoloni
a100adc1f2
Fix potential unsoundness in SqliteMallocString
2022-09-16 13:38:54 -07:00
gwenn
79b6fd6e61
Merge remote-tracking branch 'upstream/master' into modern_vtab
...
# Conflicts:
# src/vtab/mod.rs
2022-09-02 20:33:21 +02:00
gwenn
dae4390c5e
Reuse constants already defined in SQLite <= 3.14.0
2022-09-02 20:04:18 +02:00
gwenn
6766d6a6cd
Remove old_sqlite
feature
...
And associated bindgen_3.6.8.rs
2022-08-30 13:05:47 -07:00
gwenn
15d56bcb52
Fix sqlcipher build
2022-08-30 13:05:47 -07:00
gwenn
6e740d0611
Change default minimal SQLite API version
...
From 3.6.8 to 3.14.0.
Use `old_sqlite` feature to keep 3.6.8 (or 3.7.16) as the minimal version.
Use `modern_sqlite` for SQLite API > 3.14.0.
Also remove old 3.6.23 and 3.7.7 bindings.
2022-08-30 13:05:47 -07:00
gwenn
2d9621b8ae
Include vtablog only with modern_sqlite feature
...
Make array, csvtab, series module work with either modern_sqlite or buildtime_bindgen
2022-08-17 19:24:42 +02:00
heavenboy8
569b19c160
update code to fit the last rust version requirements
2022-08-17 08:28:12 +02:00
gwenn
d5110ced91
Fix clippy warnings
2022-07-31 07:00:37 +02:00
gwenn
618e9a1274
Clean code
...
Typos, deprecated code usages, ...
2022-05-29 13:33:51 +02:00
gwenn
d9b79a5f9e
Fix clippy warnings (derive_partial_eq_without_eq)
2022-05-29 11:32:47 +02:00
Lucas Burns
e669609734
chore: derive Debug for Savepoint
2022-05-05 13:00:49 -05:00
gwenn
7b0fb7d1b1
Merge pull request #1137 from gwenn/error_offset
...
Introduce SqlInputError with offset
2022-04-24 08:20:20 +02:00
gwenn
c313cd770d
Params for 28-length arrays
2022-04-23 21:32:19 -07:00
gwenn
8f40fd1cf3
Fix build errors with SQLCipher
2022-04-21 15:26:46 +02:00
gwenn
8370970b0b
Keep track of SQL input
2022-04-21 15:14:08 +02:00
gwenn
c15fa489ad
Bundled SQLCipher is now based on SQLite > 3.35
2022-04-21 13:34:20 +02:00
gwenn
cfcbb56fce
Merge remote-tracking branch 'origin/master' into error_offset
...
# Conflicts:
# src/statement.rs
2022-04-20 07:27:05 +02:00
gwenn
26c444341c
Do not use Connection::handle()
...
https://docs.rs/rusqlite/latest/rusqlite/struct.Connection.html#method.handle
```
You should not need to use this function...
```
And use `decode_result`...
2022-04-18 08:59:49 -07:00
Max Unsted
95941f6378
derive Eq for Type
2022-04-17 13:28:48 -07:00
Nikolai Vazquez
4d06d2222f
Add Connection::release_memory
method
...
This is behind a new `release_memory` feature flag. It simply calls
`sqlite3_db_release_memory` on the raw handle.
2022-04-17 08:40:36 -07:00
gwenn
ad911efd15
Replace .err().unwrap() by .unwrap_err()
2022-04-07 09:17:42 +02:00
gwenn
214a6244f9
Rustfmt
2022-04-07 09:17:07 +02:00
gwenn
fedf6b41ae
Use sqlite_error_code where possible
2022-04-07 09:15:55 +02:00
Nikolai Vazquez
b0993a1d99
Add Error
methods to get SQLite error values
2022-04-06 20:27:01 -04:00
gwenn
33e5f127cf
Check current SQLite version while registering module
2022-04-04 06:24:51 -07:00
gwenn
6e0684b69f
Rustfmt
2022-04-04 06:24:51 -07:00
gwenn
106e46c424
Actually test DELETE, INSERT, UPDATE on vtablog
2022-04-04 06:24:51 -07:00
gwenn
aa511ea337
Fix clippy warning
2022-04-04 06:24:51 -07:00
gwenn
fe1150b0cf
Port vtablog
as an example of a writable VTab
2022-04-04 06:24:51 -07:00
gwenn
762321c15e
Introduce macro to avoid code duplication
2022-04-04 06:24:51 -07:00
gwenn
f04bec2fd5
Updatable eponymous virtual table
2022-04-04 06:24:51 -07:00
gwenn
3787f432a4
Add support to updatable virtual tables
2022-04-04 06:24:51 -07:00
Thom Chiovoloni
624c3a2d05
Small doc grammar fix
2022-04-04 00:20:33 -07:00
Thom Chiovoloni
46def6d67e
Improve the docs for opening the connection a bit
2022-04-03 22:08:50 -07:00
gwenn
af8cd1caec
Merge pull request #1152 from thomcc/expose-changes
...
Expose `sqlite3_changes` (or `sqlite3_changes64` if available)
2022-04-04 06:36:10 +02:00
Thom Chiovoloni
9699b4a210
Fix non-bundled tests against macOS system SQLite
2022-04-03 11:12:38 -07:00
Thom Chiovoloni
899784379b
Expose sqlite3_changes
(or sqlite3_changes64
if available)
2022-04-03 08:13:27 -07:00
gwenn
5e2c103a0c
Add some missing wrappers ( #1139 )
...
* Add some missing wrappers:
sqlite3_value_subtype
sqlite3_result_subtype
sqlite3_changes64
sqlite3_db_readonly
sqlite3_txn_state
sqlite3_stmt_isexplain
sqlite3_vtab_config
sqlite3_index_info.idxFlags
sqlite3_index_info.colUsed
sqlite3_index_info.idxStr
sqlite3_vtab_collation
* Mark series VTab as innocuous and csv as direct only
2022-03-17 19:58:02 +01:00
gwenn
69a40526d5
Introduce SqlInputError with offset
2022-03-13 17:31:07 +01:00
Thom Chiovoloni
74e4fa008e
Make the example code in the crate docs be the same as the README
2022-03-10 13:07:06 -08:00
Thom Chiovoloni
2ec0b2e8fe
Implement Params
for tuples of ToSql up to size 16, and touch up docs
2022-03-10 13:07:06 -08:00
gwenn
65668a46e4
Add constants introduced by SQLite 3.38.0
...
SQLITE_STMTSTATUS_FILTER_MISS
SQLITE_STMTSTATUS_FILTER_HIT
SQLITE_INDEX_CONSTRAINT_LIMIT
SQLITE_INDEX_CONSTRAINT_OFFSET
2022-02-26 09:55:17 +01:00
link2xt
81795e90b4
Uncomment config::DbConfig::SQLITE_DBCONFIG_RESET_DATABASE
2022-01-16 16:16:39 +00:00
gwenn
34b9519c3e
Merge pull request #1050 from gwenn/clippy_send
...
Fix clippy warning
2022-01-16 09:00:07 +01:00
gwenn
d6d8adb54e
Merge pull request #1096 from thomcc/limit-cleanup
...
Move Limits enum from libsqlite3-sys into rusqlite
2022-01-09 15:37:49 +01:00
Thom Chiovoloni
d67c0e09dd
Remove the SQLite version check
2022-01-09 01:57:13 -08:00
Thom Chiovoloni
9cbe5a5e89
Move Limits enum from libsqlite3-sys into rusqlite
2022-01-08 16:45:35 -08:00
gwenn
cc4f059d9b
Merge remote-tracking branch 'origin/master' into ptr_as_ptr
2022-01-06 18:20:01 +01:00
gwenn
e1fd731cb0
clippy::unseparated_literal_suffix
2022-01-06 05:07:27 -08:00
gwenn
c10e2f39ef
clippy::single_match_else
2022-01-06 04:56:59 -08:00
gwenn
68f41d6e9e
clippy::semicolon_if_nothing_returned
2022-01-06 04:56:42 -08:00
gwenn
406ac6a7fc
clippy::must_use_candidate
2022-01-06 04:56:24 -08:00
gwenn
bcfe99578b
clippy::map_unwrap_or
2022-01-06 04:55:27 -08:00
gwenn
576a8a96f6
clippy::default_trait_access
2022-01-06 04:55:07 -08:00
gwenn
b5aa6f7984
clippy::redundant_closure_for_method_calls
2022-01-06 04:54:51 -08:00
gwenn
48975e015f
clippy::let_underscore_drop
2022-01-06 04:54:39 -08:00
gwenn
01c4be82c8
clippy::doc_markdown
2022-01-06 04:54:10 -08:00
gwenn
6f8e509763
Oops
2022-01-05 20:12:52 +01:00
gwenn
43591154b2
clippy:ptr_as_ptr
2022-01-05 19:50:25 +01:00
Thom Chiovoloni
230c76fe66
Fix a minor clippy complaint from nightly clippy
2022-01-04 21:15:18 -08:00
Thom Chiovoloni
519684a744
cleanup unlock_notify code a bit
2022-01-04 21:15:18 -08:00
trevyn
c759bc7527
Consolidate to FromSqlError::InvalidBlobSize
(breaking)
2022-01-02 18:24:56 -08:00
trevyn
7f09d295ba
Add ToSql/FromSql for [u8; N]
2022-01-02 18:24:56 -08:00
Nicholas Bishop
94cd2cbf6b
Fix markdown rendering of Connection::transaction doc
...
This fixes `DropBehavior::Commit` being rendered as `DropBehavior: :Commit`.
2021-12-30 15:45:23 -05:00
gwenn
f177ee1c72
Sync series with official source
2021-12-22 19:49:33 +01:00
gwenn
0ce15c546a
Fix clippy warnings
2021-12-18 08:42:04 +01:00
gwenn
4ceb290235
Fix rollback_hook doc
2021-12-11 12:10:01 +01:00
Thom Chiovoloni
287b0ea08b
Undo transition to edition 2021, prep release 0.26.3
2021-12-08 17:06:01 -08:00
gwenn
28da7a2ad9
Fix clippy warning
...
warning: this implementation is unsound, as some fields in `Connection` are `!Send`
--> src/lib.rs:339:1
339 | unsafe impl Send for Connection {}
2021-12-04 10:07:56 +01:00
gwenn
934e0c709e
Fix callbacks lifetime
2021-12-01 04:28:09 -08:00
gwenn
612158507e
Fix callbacks lifetime
2021-12-01 04:28:09 -08:00
gwenn
30f8c8c502
Fix callbacks lifetime
2021-12-01 04:28:09 -08:00
gwenn
9acc6f85f0
Rustfmt
2021-11-28 09:41:54 +00:00