Commit Graph

1118 Commits

Author SHA1 Message Date
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
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
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
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