Commit Graph

169 Commits

Author SHA1 Message Date
Thom Chiovoloni
3c6b57fe1b Fix vtab::Module lifetime 2020-04-15 10:33:04 -07:00
gwenn
611c8e8b02 Rustfmt 2020-04-11 22:18:22 -07:00
Thom Chiovoloni
f5c20abaa1 Remove unused vtab_v3 feature while I'm here 2020-04-07 14:28:03 -07:00
Thom Chiovoloni
d35dd0e99f
Allow optionally passing an Error parameter to rusqlite::Result (#678) 2020-04-06 14:43:06 -07:00
Thom Chiovoloni
6f6f7ffd9f
Add #[non_exhaustive] to enums that might get new variants. (#673)
This just using them in patterns without a catchall. I left things alone
that seem very unlikely to change (`Value`, `ValueRef`, `DatabaseName`,
etc...). This might help reduce the number of breaking changes we need
(rusqlite is still pre-1.0 so it doesn't really matter that much, but
breaking changes complicate the story around when we can cut releases).
2020-04-06 12:01:39 -07:00
Thom Chiovoloni
3196989f0d
Clarify that the submodules of rusqlite::vtab are ports (#672) 2020-04-06 11:04:45 -07:00
Thom Chiovoloni
6617db59fb
Document which features are required, and add vtab usage examples (#669) 2020-04-05 22:15:27 -07:00
Thom Chiovoloni
3ae52545a9
Fix failing rarray test (#664) 2020-03-31 21:07:26 -07:00
gwenn
5356a609de Introduce alloc to generate C string allocated by sqlite3
Safe to send to SQLite for deallocation.
2020-02-29 13:09:42 +01:00
gwenn
953906aab9 Rustfmt 2020-02-09 11:48:45 +01:00
gwenn
922228f604 Fix clippy warnings 2020-02-09 11:48:08 +01:00
gwenn
8cc4440f45 Add missing IndexConstraintOp entries
Remove conditional inclusions.
2020-01-26 18:14:52 +01:00
gwenn
5d06bc25a6 Add missing IndexConstraintOp entries
Breaking changes
2020-01-26 17:51:51 +01:00
gwenn
adb904650d Fix warnings related to deprecated Error::description 2020-01-26 16:57:58 +01:00
Thom Chiovoloni
c70d148542 Remove most of the code using feature=bundled as a version check 2020-01-14 08:11:36 -08:00
gwenn
8302a50fb8 Fix clippy warnings 2019-11-03 11:19:07 +01:00
gwenn
0cf9ef8514 Fix some clippy warnings 2019-10-13 13:08:33 +02:00
gwenn
d229f0f9e9 Remove #[macro_use] attribute when importing macros 2019-08-09 20:01:44 +02:00
gwenn
30b41bed20 Make Module impl Send
Also introduce a dedicated feature for series virtual table.
2019-07-11 19:21:54 +02:00
gwenn
208f3c084b Clippy: fix warnings 2019-07-10 21:10:12 +02:00
Thom Chiovoloni
4356f5a176 Include the name of the column in InvalidColumnType errors 2019-06-25 12:20:11 -07:00
gwenn
93b5c10816 Fix warning: the item X is imported redundantly 2019-06-02 08:36:16 +02:00
Richard Dodd
6c837a3f51 Fix other failing case 2019-04-26 15:30:49 +01:00
gwenn
ceb1ce4a55 Rustfmt 2019-03-19 20:45:04 +01:00
gwenn
71a2004894 Add Rows::map method 2019-03-10 12:58:20 +01:00
gwenn
6d9ae896b5 Do not panic by default
Replace `Row::get` by `Row::get_checked`,
And rename original `Row::get` to `Row::get_unwrap`.
`Stmt::query_map`, `Stmt::query_map_named`, `Stmt::query_row`,
`Conn::query_row` and `Conn::query_row_named` callback parameter must return a `Result`.
2019-02-21 20:48:09 +01:00
gwenn
e9896a7734 Lifetime elision in impl 2019-02-03 11:02:38 +01:00
gwenn
8862b17340 Fix clippy warnings 2019-02-02 11:37:26 +01:00
gwenn
75c0fe349a Add xShadowName only if bundled or vtab_v3 activated 2018-12-15 11:53:41 +01:00
gwenn
287e2f5dbc Fix vtab modules
`xShadowName` added
2018-12-15 10:51:02 +01:00
gwenn
d874180333 Rust 2018 idioms 2018-12-07 21:57:04 +01:00
gwenn
bcaa929748 Merge remote-tracking branch 'jgallagher/master' into 2018
# Conflicts:
#	src/lib.rs
#	src/statement.rs
2018-11-05 20:04:04 +01:00
gwenn
ccf52b2daa Replace try! by ? 2018-11-05 19:09:41 +01:00
gwenn
495f1d529a Clippy 2018-11-01 09:40:56 +01:00
gwenn
1262238229 Rustfmt 2018-10-30 20:15:19 +01:00
gwenn
f04047db01 Rust 2018 2018-10-30 20:15:08 +01:00
gwenn
1598d4bc30 Rustfmt 2018-10-28 08:51:02 +01:00
gwenn
e7e03c3443 Introduce NO_PARAMS constant
As suggested here:
https://users.rust-lang.org/t/sql-parameter-values/20469/2
2018-09-16 11:10:19 +02:00
gwenn
c4ae541eac Take IntoIterator rather than &[&ToSql] (#312) 2018-09-16 09:49:23 +02:00
gwenn
b38fe372b6 [ci skip] fix doc 2018-09-08 11:10:08 +02:00
gwenn
5e9c7bac4e Rustfmt 2018-08-16 18:29:46 +02:00
gwenn
0ccf98d214 Merge remote-tracking branch 'jgallagher/master' into vtab 2018-08-11 13:37:56 +02:00
gwenn
40ef85c2af Fix array module 2018-08-07 19:58:26 +02:00
gwenn
e8dc412af1 [ci skip] Make test_array_module fails without sanitizer 2018-08-05 16:56:30 +02:00
gwenn
cea8e5cea2 [ci skip] Array module is buggy
AddressSanitizer: heap-use-after-free on address
2018-08-05 13:22:04 +02:00
gwenn
ce9d325ba0 Remove Table associated type in VTabCursor trait 2018-07-22 10:02:59 +02:00
gwenn
b82a155429 Introduces CreateVTab for non-eponymous VTab 2018-07-22 09:51:06 +02:00
gwenn
b93b005604 Add some TODOs 2018-07-17 21:06:08 +02:00
gwenn
669663304e Refactoring
Introduce VTab::destroy.
Let implementation specify the iVersion.
Rename simple_module into read_only_module.
2018-07-16 20:17:53 +02:00
gwenn
849dbda5e8 Remove direct dependency on libsqlite3_sys 2018-07-15 16:15:55 +02:00
gwenn
fe64d51422 Doc 2018-07-15 10:19:18 +02:00
gwenn
45624dc60b Clean up 2018-07-14 19:27:45 +02:00
gwenn
ed1bdc0e68 Rustfmt 2018-07-14 19:21:03 +02:00
gwenn
0c371834aa Remove vtab() function from VTabCursor trait 2018-07-14 19:10:28 +02:00
gwenn
e2df03f474 Remove macros 2018-07-14 18:47:52 +02:00
gwenn
823f3c96aa Ensure Virtual tables can be declared outside rusqlite crate
Not sure it is the way to go.
2018-07-14 11:01:19 +02:00
gwenn
ce39b9a3c0 Introduce VTabConnection and OrderBy 2018-07-09 18:53:52 +02:00
gwenn
ce0c9a6344 Fix clippy warnings 2018-06-28 21:07:05 +02:00
gwenn
6463db906d Make connect/create return a tuple 2018-06-22 17:20:47 +02:00
gwenn
861e8edb96 Move declare_vtab into Module trait 2018-06-20 20:29:55 +02:00
gwenn
eaee342025 Make connect/create/declare_vtab safe 2018-06-20 20:21:26 +02:00
gwenn
afeb5d4d47 Introduce Module trait to make create_module type safe 2018-06-20 20:01:38 +02:00
gwenn
2a684384fd Fix clippy warning 2018-06-20 19:12:02 +02:00
gwenn
b135c6d871 Minalist check that there is no memory leak. 2018-06-11 21:39:08 +02:00
gwenn
e040dc9e1f Remove int_array module
Replaced by array module.
2018-06-11 21:33:54 +02:00
gwenn
1a1d41b4e4 Carray module ported to Rust 2018-06-11 21:30:55 +02:00
gwenn
9a96e3a494 Reduce visibility of unsafe methods 2018-06-11 19:51:13 +02:00
gwenn
b8594a0f83 Fix regressions 2018-06-10 19:21:55 +02:00
gwenn
fa64a4d0bf Draft for carray module in Rust
Incomplete support for sqlite3_bind_pointer.
Make Context::set_result return a Result.
Add Values::get_array.
2018-06-10 18:29:38 +02:00
gwenn
b89b574f81 csvtab: use columns when specified 2018-05-14 19:23:17 +02:00
gwenn
b60ffe1940 Sync series with original impl 2018-05-13 19:49:11 +02:00
gwenn
88a7ed5812 Fix clippy warnings 2018-05-13 19:16:12 +02:00
gwenn
33b1b19d92 Upgrade to csv 1.0 2018-05-13 12:21:58 +02:00
gwenn
6cbeb6ef59 Introduce context module
To make `set_result` and `report_error` in functions module
visible to vtab module.
2018-05-13 11:44:31 +02:00
gwenn
58b8b4c95d Introduce Aux associated type 2018-05-06 18:05:02 +02:00
gwenn
2e2b5c41f4 Rustfmt 2018-05-06 17:21:36 +02:00
gwenn
8e6ea05efa Use associated types instead of generics 2018-05-06 17:19:19 +02:00
gwenn
10ba0514e6 Change arguments parsing of CSV module 2018-05-06 12:41:42 +02:00
gwenn
5fa3810a4b Fix Clippy warnings 2018-05-06 08:45:56 +02:00
gwenn
702e58f744 Fix non-eponymous virtual table declaration
Ensure that xCreate is different from xConnect for non-eponymous
virtual tables (even when the implementation is the same).
2018-05-05 10:33:05 +02:00
gwenn
db87de4086 Inline csv dependency 2018-03-10 17:05:22 +01:00
gwenn
4357471197 Fix build errors related to bitflags 2018-01-27 10:32:58 +01:00
gwenn
c842e789bd Merge remote-tracking branch 'jgallagher/master' into vtab 2017-09-11 19:45:22 +02:00
gwenn
197d1161c3 Field estimatedRows is not available with SQLite 3.7.7 2017-04-21 21:50:38 +02:00
gwenn
7f0082e44e Merge remote-tracking branch 'jgallagher/master' into vtab 2017-03-08 20:35:07 +01:00
gwenn
46df930881 Merge remote-tracking branch 'jgallagher/master' into vtab 2016-12-31 09:15:26 +01:00
gwenn
8c6f585d52 Fix clippy warnings 2016-12-04 10:18:56 +01:00
gwenn
58b7d62517 Introduce IndexConstraintUsage 2016-08-20 12:06:24 +02:00
gwenn
b11a4b1c73 Make index constraints and values iterable 2016-08-20 09:55:25 +02:00
gwenn
1d342ef5f3 Test series virtual table 2016-08-15 09:09:38 +02:00
gwenn
b4db5666b6 Misc 2016-08-14 19:57:39 +02:00
gwenn
424a6c0cc8 Add series table-valued-function. 2016-08-14 19:53:47 +02:00
gwenn
3b5bd7abab Introduce IndexConstraintOp 2016-08-14 12:26:05 +02:00
gwenn
4d2e881706 Partial IndexInfo implementation 2016-08-14 11:22:12 +02:00
gwenn
438312c132 Change signature of VTab::best_index 2016-08-14 09:44:37 +02:00
gwenn
505abc0331 Change signature of VTabCursor::filter 2016-08-14 09:31:53 +02:00
gwenn
a90388e6bf Change signature of VTab::best_index 2016-08-14 09:08:42 +02:00
gwenn
c8b09e2ee7 Change VTabCursor::column signature 2016-08-13 17:46:49 +02:00
gwenn
8f079819f7 Change VTabCursor::filter signature 2016-08-13 13:55:30 +02:00
gwenn
0a19cbd16a Change VTabCursor::filter signature 2016-08-13 13:12:48 +02:00