Commit Graph

170 Commits

Author SHA1 Message Date
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
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
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
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
406ac6a7fc clippy::must_use_candidate 2022-01-06 04:56:24 -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
43591154b2 clippy:ptr_as_ptr 2022-01-05 19:50:25 +01: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
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
5d42ba7c29
Merge pull request #912 from Genomicsplc/fix-needless-update-warning
silence clippy::needless-update warning in vtab module creation functions
2021-10-23 16:57:45 +02:00
gwenn
b1257cdb79 Fix error: docs for unsafe trait missing # Safety section 2021-10-21 19:50:03 +02:00
gwenn
ce90b519bb Fix clippy warnings 2021-10-01 20:09:48 +02:00
gwenn
6f4283be94 Iterate on both index constraint and usage 2021-07-29 19:48:34 +02:00
Jiahao XU
0241cb0388 Fix the typename used in doc for VTab and VTabCursor
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
2021-07-25 22:30:44 -04:00
gwenn
dcaa67a617
Merge pull request #973 from gwenn/doc_cfg
Use #[doc(cfg)]
2021-06-30 18:07:54 +02:00
gwenn
5730b2f952 Fix clippy warnings 2021-06-25 18:57:25 -07:00
gwenn
0312937d6a Use #[doc(cfg)]
Fix #835
2021-06-13 09:17:35 +02:00
Thom Chiovoloni
cdce75328e Fix build on some older versions of Rust 2021-05-08 22:56:19 -07:00
Dirk Stolle
c33d6bfad3 fix several typos 2021-05-02 23:03:10 -07:00
gwenn
c4b398f468
Doctest column name reference (#918)
* Doctest column name reference
* Document rusqlite assumption on column name reference
And move doctest as a test.
* Document when columns metadata should be extracted.
* Rustfmt doc (wrap_comments)
2021-04-03 11:03:50 +02:00
gwenn
ed3bfbdf9d
Silent some clippy warnings (#924)
* allow(clippy::upper_case_acronyms) for rust enum entries that match
  SQLite constants.
* allow(clippy::needless_return) for collation_needed_callback until we
  find a way to propagate the error.
2021-03-25 21:06:46 +01:00
Joshua C. Randall
1b8af31f32 silence clippy::needless-update warning whe the ffi bindings specify exactly the set of sqlite3_module fields we explicitly list 2021-03-08 20:19:25 +00:00
gwenn
c9cc639080 Add tests adapted from official SQLite tests 2021-03-06 12:55:25 +01:00
gwenn
5e79126a60 Rustfmt 2021-02-28 12:58:59 +01:00
gwenn
1acd753a63 Sync series with official source 2021-02-28 12:43:46 +01:00
gwenn
afcdc2b43a Use most concise syntax for params 2021-01-19 21:16:08 +01:00
gwenn
2319165b59 Fix clippy warnings 2021-01-02 10:49:29 +01:00
gwenn
6fae5d6641 Add/fix rustdoc links 2020-11-22 09:34:03 +01:00
gwenn
0649df96ea Fix non-autolinks warnings 2020-11-07 12:32:41 +01:00
gwenn
3388fd1683 Remove #[non_exhaustive] attribute on IndexConstraintOp 2020-11-07 12:02:33 +01:00
gwenn
da94f8eba6 Make tests return Result 2020-11-05 22:14:00 +01:00
Thom Chiovoloni
65c38bf813 Add #[inline] and #[cold] in far more places 2020-11-04 07:59:23 -08:00
Thom Chiovoloni
22121772a2 Deprecate NO_PARAMS in favor of passing an empty array 2020-11-03 19:09:19 -08:00
gwenn
c577a9d801 Lifetime elision 2020-06-01 18:44:02 +02:00
gwenn
2af75d1f13 VTabCursor lifetime should be bound to VTab lifetime
```c
struct sqlite3_vtab_cursor {
  sqlite3_vtab *pVtab;      /* Virtual table of this cursor */
```
It seems that we need to introduce a lifetime on `VTab` trait
to express such constraint:
https://users.rust-lang.org/t/associated-type-with-lifetime-bound/7256
But there may be another/new way to do it.
2020-06-01 09:48:49 +02:00
gwenn
76fc22c653 Fix missing docs 2020-05-21 00:48:06 -07:00
gwenn
ceb9f11de8 Replace pub(crate) by pub(super) visibilty 2020-05-16 10:18:25 +02:00
Thom Chiovoloni
418ef10af2 Add a wrapper for strings allocated on sqlite heap 2020-04-16 08:21:43 -07:00
Thom Chiovoloni
9322b0e881 Update links & copyright statement 2020-04-15 21:37:39 -07:00