Commit Graph

590 Commits

Author SHA1 Message Date
louis
0d001583b2 Fixed loss of time information during string conversion 2017-07-11 17:01:25 +02:00
king6cong
13a32e4004 code indent 2017-06-02 17:19:39 +08:00
Kelvin Ly
dde762bf0e Rename Error::Other to Error::ToSqlConversionFailure 2017-05-30 19:22:14 -04:00
John Gallagher
20de96083a Merge pull request #280 from jgallagher/to-sql-str-u8
Add ToSql impls for str and [u8].
2017-05-29 13:39:35 -04:00
John Gallagher
3827a835ef Add ToSql impls for str and [u8]. 2017-05-29 11:20:52 -04:00
John Gallagher
4623064f4d Update to bitflags 0.9. 2017-05-29 10:52:19 -04:00
John Gallagher
6b360a11c2 Merge pull request #258 from gwenn/constants
Constants
2017-05-29 10:37:26 -04:00
Kelvin Ly
022f1e8671 Add Other variant for the Error type 2017-05-19 23:48:06 -04:00
gwenn
94670c0119 Rustfmt 2017-05-12 19:18:42 +02:00
gwenn
dfdd42fd09 Bind sqlite3_commit_hook and sqlite3_rollback_hook 2017-05-12 19:14:34 +02:00
gwenn
466b8aab2f Rename row parameter to row_id 2017-05-12 19:12:10 +02:00
gwenn
3e6fffaf94 Due to rust monophormisation, there is no need for double indirection 2017-04-27 18:05:12 +02:00
gwenn
63a444a95f Fix memory leak and add test 2017-04-26 20:12:48 +02:00
gwenn
6eb98afd67 SQLITE_RECURSIVE is not available with SQLite 3.6.8 2017-04-25 21:08:41 +02:00
gwenn
3b575c3b4a Implementation of sqlite3_update_hook #260
First draft (no tested and a memory leak)
2017-04-25 20:58:22 +02:00
gwenn
197d1161c3 Field estimatedRows is not available with SQLite 3.7.7 2017-04-21 21:50:38 +02:00
gwenn
1d684ae653 Merge remote-tracking branch 'jgallagher/master' into vtab 2017-04-21 20:01:04 +02:00
gwenn
9ea48db46f Some open flags are not available in 3.6.8 2017-04-20 20:59:07 +02:00
Aidan Hobson Sayers
7bd969b8fd Fix functions for empty blobs
Expands fix from #175
2017-04-16 16:49:28 +01:00
gwenn
08f96a678e Rustfmt 2017-04-07 19:43:24 +02:00
gwenn
4e5b64fbca Use constants generated by bindgen where possible 2017-04-07 19:36:31 +02:00
John Gallagher
401d1f81e1 Merge pull request #255 from jgallagher/fix-duplicated-constants
Avoid publicly exporting constants from libsqlite3-sys multiple times.
2017-04-05 14:31:31 -04:00
John Gallagher
549373f764 Fix incorrect ffi constant accesses. 2017-04-05 13:58:33 -04:00
John Gallagher
76363cca7e Merge pull request #253 from jgallagher/fix-unused-macro-warning
Fix unused macro warning when compiling tests without `trace` feature.
2017-04-05 13:30:46 -04:00
John Gallagher
4b2a6d2207 Fix unused macro warning when compiling tests without trace feature. 2017-04-05 12:54:58 -04:00
John Gallagher
a1206d5076 Add FromSql/ToSql impls for isize. 2017-04-05 12:52:37 -04:00
gwenn
3889c8d3e0 Merge remote-tracking branch 'jgallagher/master' into vtab 2017-03-09 19:24:43 +01:00
John Gallagher
ec78a2b5fa Reorganize: Extract Row/Rows and helper types into their own mod files. 2017-03-08 17:03:31 -05:00
gwenn
7f0082e44e Merge remote-tracking branch 'jgallagher/master' into vtab 2017-03-08 20:35:07 +01:00
John Gallagher
6bd8516511 Roll convenient.rs into statement.rs. 2017-03-08 11:26:25 -05:00
John Gallagher
5bd7cb37c7 Move named_params.rs into statement.rs, greatly reducing the StatementCrateImpl trait size. 2017-03-08 11:20:43 -05:00
John Gallagher
59159fcb25 Rename execute_() to execute_with_bound_parameters(). 2017-03-08 11:11:05 -05:00
John Gallagher
723fc91a09 Minor refactor to avoid needing to expose Statement::decode_result(). 2017-03-08 11:04:22 -05:00
John Gallagher
38c9a4a159 Reorganize: Extract Statement and its impl into its own module. 2017-03-08 10:48:14 -05:00
gwenn
faa94d1246 Fix clippy warnings
And fix bench.
2017-02-24 20:10:51 +01:00
John Gallagher
39d71810ce Merge branch 'master' into semver-check 2017-02-23 15:36:54 -05:00
Sean Griffin
2c58b3f804 Remove the dependency on libc
Recent versions of bindgen use `std::os::raw` over `libc`, but currently
`libsqlite3-sys` is overriding that. `std::os::raw` is a subset of
`libc` that exports only the relevant type definitions, but not any
functions which require additional linking. This enables
`libsqlite3-sys` to be more easily used on targets that may not have a
libc available (presumably sqlite itself would have been compiled with
musl in that case)
2017-02-16 11:17:24 -05:00
Dominik Miedziński
1b1573c5b2 Fix URL Markdown syntax in Connection docs 2017-02-11 10:50:13 +01:00
John Gallagher
56eee2c13c Perform a runtime check that the SQLite version isn't older than the one we found at build time. 2017-02-09 20:56:51 -05:00
John Gallagher
358cca1638 Clarify support of older SQLite versions. 2017-02-09 20:23:17 -05:00
John Gallagher
4216671fe6 Update for new bindgen output. 2017-02-08 20:40:30 -05:00
John Gallagher
e2d2a689f8 Minor cleanup from rustfmt pass 2017-02-08 19:38:50 -05:00
gwenn
80f822db28 rustfmt v0.7.1 2017-02-08 21:11:15 +01:00
John Gallagher
01b926c27e Trivial tweaks 2017-02-07 19:43:54 -05:00
John Gallagher
509257dfa8 Merge branch 'limits' of https://github.com/gwenn/rusqlite into gwenn-limits 2017-02-07 19:41:30 -05:00
gwenn
7014dd6260 Oops 2017-02-07 19:52:52 +01:00
gwenn
59111b783d Fix tests with old SQLite version (< 3.8.7) 2017-02-07 18:41:14 +01:00
John Gallagher
eb099952ac Expose version(), version_number(), and source_id() functions. 2017-02-06 20:23:16 -05:00
John Gallagher
98da52ce8f Merge branch 'err-code' of https://github.com/gwenn/rusqlite into gwenn-err-code 2017-02-06 19:53:31 -05:00
gwenn
bbd6c73daa Rename get_limit to limit
And do not test default limits, only updated ones
2017-02-06 17:43:32 +01:00
John Gallagher
60e1f3c02f Add more explicit types in unit tests. 2017-02-05 17:30:53 -05:00
gwenn
307431911c Exporting libsqlite3_sys::error::ErrorCode (#218) 2017-02-04 11:33:23 +01:00
gwenn
359ec914d2 Expose limits (#220) 2017-02-04 11:01:38 +01:00
John Gallagher
8054ea4ab8 Derive Clone, Debug, and PartialEq on ToSqlOutput. 2017-01-26 22:02:20 -05:00
reddraggone9
57750fe6a6 Fix doc comment example of FromSql/ToSql
Update a doc test so that it compiles on master. Also remove the ignore
directive so that it runs with the rest of the test suite.
2017-01-24 22:57:42 -06:00
John Gallagher
06583aadf2 fix clippy warnings 2017-01-23 19:46:49 -05:00
John Gallagher
aa6c542202 Add impl ToSql for ToSqlOutput. 2017-01-23 19:42:02 -05:00
John Gallagher
e180ab15ce Fix incomplete match under functions feature 2017-01-22 20:05:06 -05:00
John Gallagher
7c072bf55e impl ToSql for i8,i16,u8,u16,u32 2017-01-22 19:55:49 -05:00
John Gallagher
68ae7de1d5 Update docs on Row::get 2017-01-22 19:42:51 -05:00
John Gallagher
846a59695c Add range-checked FromSql impls for i8, i16, u8, u16, u32. 2017-01-22 19:40:48 -05:00
John Gallagher
1974ee573c Add range checks for i32's FromSql impl. 2017-01-22 19:26:19 -05:00
gwenn
8b9437ff35 Merge remote-tracking branch 'jgallagher/master' into vtab 2017-01-13 21:43:10 +01:00
John Gallagher
b49e1d1a1c Merge pull request #205 from jgallagher/fix-retry-close-failure
Fix close() returning a useful connection on failure.
2017-01-07 12:25:47 -05:00
John Gallagher
6709207453 Fix close() returning a useful connection on failure. 2017-01-06 14:32:27 -05:00
John Gallagher
f30edaf563 Silence another deprecation reexport warning. 2017-01-06 14:25:55 -05:00
gwenn
685694255b Merge remote-tracking branch 'jgallagher/master' into vtab 2017-01-06 18:34:54 +01:00
John Gallagher
0b5d8339e1 Silence warnings about deprecations when exporting deprecated types. 2017-01-06 01:23:51 -05:00
John Gallagher
3af91b36bf Make Connection::close() return the connection on failure. 2017-01-03 20:00:29 -05:00
gwenn
46df930881 Merge remote-tracking branch 'jgallagher/master' into vtab 2016-12-31 09:15:26 +01:00
John Gallagher
4c8b0ab6dd Merge pull request #181 from gwenn/clippy
Fix clippy warnings
2016-12-31 01:23:40 -05:00
John Gallagher
2e140d0684 FromSqlError::cause() returns other error's cause directly (possibly None). 2016-12-31 00:36:52 -05:00
John Gallagher
4181441d63 Merge branch 'master' into gwenn-invalid-column-type 2016-12-31 00:35:47 -05:00
gwenn
bc71c58387 Add Statement.query_row convenient method (#179) 2016-12-31 00:03:55 -05:00
John Gallagher
08d88177e7 Merge branch 'flush-cache' of https://github.com/gwenn/rusqlite into gwenn-flush-cache 2016-12-30 23:55:19 -05:00
John Gallagher
f17fc14a59 Update query_row_named so its closure also takes a &Row instead of a Row 2016-12-30 23:48:04 -05:00
John Gallagher
3815b6beef Merge branch 'query_row' of https://github.com/pfernie/rusqlite into pfernie-query_row 2016-12-30 23:42:38 -05:00
John Gallagher
d1ad61dc41 Merge pull request #178 from gwenn/varparam-usage
Fix issue #177
2016-12-30 23:38:50 -05:00
John Gallagher
4f5abc705a Remove workaround for issue fixed in Rust 1.9. 2016-12-30 23:25:21 -05:00
John Gallagher
0d685af2d5 Merge branch 'master' into safe-tosql 2016-12-30 23:18:32 -05:00
gwenn
8c6f585d52 Fix clippy warnings 2016-12-04 10:18:56 +01:00
gwenn
ffe605150a Ensure cache is flushed when closing the connection
Fix #186
2016-11-04 20:47:28 +01:00
Patrick Fernie
ece7c041e8 change query_row* fns to take Row by reference instead of moving 2016-10-07 12:42:27 -04: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
8f28ff17b8 Fix rustdoc warnings 2016-08-15 12:41:15 +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
gwenn
59ad638875 Change VTab::create signature 2016-08-13 11:54:19 +02:00
gwenn
b10c52f32f Fix clippy warnings 2016-08-08 15:23:55 +02:00
gwenn
3f55a4583c Merge remote-tracking branch 'jgallagher/master' into vtab 2016-07-02 11:51:42 +02:00
gwenn
038ef2de42 Revert all InvalidColumnType stuff 2016-07-02 11:50:39 +02:00
gwenn
3eb3b22ad5 Merge remote-tracking branch 'jgallagher/master' into vtab 2016-07-02 11:28:59 +02:00
gwenn
a7d27098b7 Fix issue #177 2016-07-02 10:22:47 +02:00
gwenn
9f05147660 Fix issue jgallagher/rusqlite#174 2016-06-13 20:32:39 +02:00
gwenn
95050f10a8 Add test with empty blob (issue #174). 2016-06-13 20:22:21 +02:00
gwenn
e2cf171192 Introduce FromSqlError as specified by John Gallagher 2016-06-02 21:03:25 +02:00
John Gallagher
58b7aea4f7 Merge branch 'release-0.7' into merge-0.7.3 2016-06-01 21:31:26 -04:00
John Gallagher
ad0b823560 Remove sanity check in insert() that could return StatementFailedToInsertRow.
This was intended to detect an `UPDATE` query passed to `insert`, but
incorrectly failed if inserts to different tables caused the same row ID
to be returned from both. `UPDATE`s are no longer detectable.
2016-06-01 20:52:22 -04:00
gwenn
91dc30b04d Simplify InvalidType 2016-05-30 21:20:07 +02:00
gwenn
fb19e718cf Introduce an intermediary InvalidType error.
InvalidType is used where the column/parameter index is not known.
2016-05-30 20:35:56 +02:00
John Gallagher
d43a1abc78 Merge branch 'master' into rust-1.9-reexported-trait-bugfix 2016-05-29 23:54:47 -04:00
John Gallagher
326d8999e8 Merge pull request #169 from jgallagher/deprecated
Use new Rust 1.9 attribute: #[deprecated(since = "...", note = "...")]
2016-05-29 23:42:22 -04:00
John Gallagher
b1b438158d Remove workaround for Rust compiler bug that was fixed in 1.9. 2016-05-29 20:38:46 -04:00
John Gallagher
7c0eba0475 Add since and note for all deprecation tags. 2016-05-29 20:36:20 -04:00
gwenn
6a4eacc927 Simply use cargo clippy 2016-05-28 11:16:55 +02:00
gwenn
f817ec86bc Use new Rust 1.9 attribute: #[deprecated]. 2016-05-26 21:16:09 +02:00
gwenn
cabcaf3dcb Better error reporting on invalid column type. 2016-05-26 21:03:05 +02:00
John Gallagher
bafa85a1a0 Fix clippy warnings. 2016-05-26 00:30:01 -04:00
John Gallagher
f3693a993e rustfmt 2016-05-26 00:28:18 -04:00
John Gallagher
9a6e17b478 Add doc comments to ToSqlOutput. 2016-05-26 00:14:46 -04:00
John Gallagher
2b830fde2d Remove pub re-export of FFI helpers from functions. 2016-05-26 00:14:45 -04:00
John Gallagher
6467815d02 Replace functions::ToResult with ToSql. 2016-05-26 00:14:45 -04:00
John Gallagher
13bff6fab6 Add ToSql impl for bool. 2016-05-26 00:14:45 -04:00
John Gallagher
9125826534 Move types::Value into its own module. 2016-05-26 00:14:45 -04:00
John Gallagher
e4926ac0d7 Rework ToSql to be implementable without unsafe. 2016-05-26 00:14:45 -04:00
John Gallagher
8adb96131b Remove now-unnecessary FFI re-exports. 2016-05-25 19:53:18 -04:00
John Gallagher
2f4990dafd Rename BorrowedValue -> ValueRef. 2016-05-24 21:34:18 -04:00
John Gallagher
d9df23ca90 Fix doc comment example of FromSql implementation. 2016-05-24 20:12:29 -04:00
John Gallagher
0fbfad2452 Remove functions::FromValue.
With the new definition of FromSql, we can reuse it since we can convert
a sqlite3_value into a BorrowedValue.
2016-05-24 20:08:12 -04:00
John Gallagher
4662b9b932 Allow FromSql::<f64> to work on SQLite integer values. 2016-05-24 20:05:32 -04:00
John Gallagher
9d47d5109a Add doc comments for BorrowedValue and friends. 2016-05-24 19:48:26 -04:00
John Gallagher
734f18c985 Impl From for converting Value <-> BorrowedValue 2016-05-24 19:36:38 -04:00
John Gallagher
5b0cdbaa56 Redo FromSql to make implementing it not unsafe.
Pass implementers a BorrowedValue instead of relying on them to use
the FFI interface. We take the responsibility of converting the raw
statement and column index into a BorrowedValue.
2016-05-23 21:49:54 -04:00
John Gallagher
c90cd37c00 Add types::BorrowedValue. 2016-05-23 21:48:56 -04:00
John Gallagher
efc6c89370 Add RawStatement::column_type. 2016-05-23 21:46:51 -04:00
John Gallagher
dccfd7e801 Refactor: Extract ToSql into its own module. 2016-05-22 20:16:54 -04:00
John Gallagher
0e96e2269c Refactor: Extract FromSql into its own module. 2016-05-22 20:01:03 -04:00
gwenn
cbc479c484 Rustfmt 2016-05-20 18:36:44 +02:00
gwenn
0740620ffe Merge remote-tracking branch 'jgallagher/master' into vtab 2016-05-20 18:31:30 +02:00
John Gallagher
8ce2f5888f Document CachedStatement::discard. 2016-05-19 20:36:41 -05:00
John Gallagher
dc1b0e39ed Re-export DropBehavior and SqliteTransactionBehavior. 2016-05-19 20:35:27 -05:00
John Gallagher
d27ed0de63 Re-export Savepoint. 2016-05-19 20:32:17 -05:00
John Gallagher
c4417bee0e Manual fixes for rustfmt overly long lines. 2016-05-19 20:09:40 -05:00
John Gallagher
71aa41c27a rustfmt 2016-05-19 20:04:33 -05:00
gwenn
ef6fcc8976 Merge remote-tracking branch 'jgallagher/master' into vtab 2016-05-19 22:10:58 +02:00
John Gallagher
57d2ae42cf Fix clippy needless_borrow warning 2016-05-19 15:03:01 -05:00
John Gallagher
6f8f2f3910 Fix clippy match_same_arms warning 2016-05-19 15:02:06 -05:00
John Gallagher
342b00303a Merge pull request #155 from jgallagher/fix-nightly-test-failures
Fix doctest failures on rust nightly.
2016-05-19 14:57:16 -05:00
John Gallagher
cacda916f9 Fix doctest failures on rust nightly.
These should've been failing on stable too as they were all wrong.

Closes #154.
2016-05-19 14:25:39 -05:00
gwenn
1bb177047e Merge remote-tracking branch 'jgallagher/master' into vtab 2016-05-19 21:24:17 +02:00