Thom Chiovoloni
ec879337af
Add support for querying sqlite_stmt_status
2019-01-24 21:43:39 -08:00
gwenn
dbc4eef657
Session extension ( #459 )
...
Session extension bindings
2019-01-13 12:46:19 +01:00
gwenn
92a22b7842
sqlite3_db_filename is available in SQLite >= 3.7.10
2019-01-06 14:01:17 +01:00
gwenn
0042f2514f
Introduce Connection::from_handle
2019-01-06 12:58:46 +01:00
gwenn
747a8d36ed
Err partial eq ( #452 )
...
Impl PartialEq for Error
2018-12-19 21:58:33 +01:00
gwenn
5c7104c12f
Improve doc
2018-12-16 11:55:04 +01:00
gwenn
e0db3d16dd
Introduce OptionalExtension
...
Like in Diesel.
2018-12-16 11:15:21 +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
d44203116a
Merge pull request #426 from gwenn/deprecated
...
Remove deprecated stuff
2018-11-01 11:05:40 +01:00
gwenn
2357acd79e
Remove deprecated stuff
2018-11-01 10:30:18 +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
77cb50e000
Check that only one statement is provided ( #397 )
...
Connection.execute
Connection.execute_named
Connection.quer_row
Connection.quer_row_named
2018-10-28 10:29:34 +01:00
gwenn
47d3ac7027
Try to fix test_interrupt #415
...
Use a scalar function to make sure the interrupt is performed
while the statement is running.
2018-10-28 09:54:30 +01:00
gwenn
1598d4bc30
Rustfmt
2018-10-28 08:51:02 +01:00
gwenn
0d08bf5e05
Merge pull request #411 from thomcc/i128_blob
...
Add a feature for storing i128 as blobs.
2018-10-19 21:49:09 +02:00
Thom Chiovoloni
3d82f7199a
Allow getting a ValueRef out of Row and Context, fixes #259
2018-10-18 12:14:38 -07:00
Joe
e109554819
Remove version check when bundled
2018-10-16 01:30:35 +00:00
Thom Chiovoloni
572471c40f
Add a feature for storing i128 as blobs.
...
This is behind the `i128_blob` feature.
Blobs are stored as 16 byte big-endian values, with their most significant bit
flipped. This is so that sorting, comparison, etc all work properly, even with
negative numbers. This also allows the representation to be stable across
different computers.
It's possible that the `FromSql` implementation should handle the case that the
real value is stored in an integer. I didn't do this, but would be willing to
make the change. I don't think we should store them this way though, since I
don't think users would be able to sort/compare them sanely.
Support for `u128` is not implemented, as comparison with i128 values would work
strangely. This also is consistent with `u64` not being allowed, not that I
think that would be reason enough on it's own.
The `byteorder` crate is used if this feature is flipped, as it's quite small
and implements things more or less optimally. If/when `i128::{to,from}_be_bytes`
gets stabilized (https://github.com/rust-lang/rust/issues/52963 ), we should
probably use that instead.
2018-10-08 12:22:28 -07:00
gwenn
7176be2d6d
Merge pull request #408 from thomcc/interrupt_handle
...
Add a method of interrupting a query executing on a separate thread, fixes #407
2018-10-08 18:37:30 +02:00
Thom Chiovoloni
b4565f565a
Add a method of interrupting a query executing on a separate thread, fixes #407
2018-09-26 13:42:30 -07: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
70b59f9c2c
Impossible to execute a pragma in 0.14.0 #400
...
sqlite3_stmt_readonly does not work for PRAGMA.
2018-09-12 22:16:22 +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
c925d1aa97
Rustfmt
2018-08-11 12:48:21 +02:00
gwenn
2a29717c5a
Fix hooks
2018-08-11 11:14:17 +02:00
gwenn
3aca24792c
Merge remote-tracking branch 'jgallagher/master' into vtab
2018-08-05 13:26:45 +02:00
gwenn
7310cac6f5
Use pub(crate)
2018-07-31 22:17:17 +02:00
gwenn
a5403eb05f
Replace PRAGMA call by Rust busy_timeout function
2018-07-28 17:04:10 +02:00
gwenn
73ebce5f98
Add binding to sqlite3_busy_timeout and sqlite3_busy_handler.
2018-07-28 17:04:10 +02:00
gwenn
fc37b324b8
Merge remote-tracking branch 'jgallagher/master' into vtab
2018-07-28 16:56:21 +02:00
gwenn
9ecb1eef55
Merge pull request #369 from gwenn/busy
...
Add binding to sqlite3_busy_timeout and sqlite3_busy_handler.
2018-07-28 16:39:38 +02:00
Kornel
b075592147
Test transaction recovery from sqlite busy error
2018-07-28 12:58:05 +01:00
gwenn
558104de4d
Add binding to sqlite3_busy_timeout and sqlite3_busy_handler.
2018-07-28 12:10:57 +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
3b0423353d
Merge remote-tracking branch 'jgallagher/master' into vtab
2018-06-28 21:01:53 +02:00
gwenn
bb6fa61e68
Merge remote-tracking branch 'jgallagher/master' into vtab
2018-06-28 20:54:32 +02:00
gwenn
2ea17d0b54
Fix clippy warnings
...
Calling OpenFlags::default() is more clear than this expression
2018-06-28 20:46:28 +02:00
gwenn
9c7a5583b9
Fix some clippy warnings
...
* Rows cannot implement iterator
* DatabaseName is passed by value => Copy ?
2018-06-20 19:07:23 +02:00
gwenn
d72c4582d9
Merge remote-tracking branch 'jgallagher/master' into vtab
2018-06-10 19:16:20 +02:00
gwenn
e1ba89c310
Merge remote-tracking branch 'jgallagher/master' into vtab
2018-06-10 18:49:40 +02:00
gwenn
0d0a7bf81f
Replace row changes/count type (i32) with usize
...
Breaking change
2018-05-23 21:23:28 +02:00
gwenn
c6f4ae632a
Replace column index/count type (i32) with usize
...
Breaking change
2018-05-23 21:04:13 +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
6855b5052d
Ensure connection can be safely returned to a pool ( #353 )
...
* Add binding to sqlite3_get_autocommit.
* Add binding to sqlite3_stmt_busy.
* Disable test_is_busy by default
2018-05-12 18:35:08 +02:00
gwenn
1e3dc542a4
Merge remote-tracking branch 'jgallagher/master' into vtab
2018-05-06 08:00:12 +02:00
gwenn
88f2f3e4bd
Merge pull request #350 from jgallagher/clippy
...
Fix clippy warnings
2018-05-04 20:44:34 +02:00
gwenn
994d40da26
Fix clippy warnings
2018-05-04 19:55:55 +02:00
gwenn
fee4bfcc86
Merge remote-tracking branch 'jgallagher/master' into unlock-notify
2018-05-04 18:06:41 +02:00
gwenn
30e23cf0a0
Fix features dependencies
2018-04-30 22:09:41 +02:00
gwenn
9c5c9e3c7e
Merge remote-tracking branch 'jgallagher/master' into vtab
2018-04-30 22:02:14 +02:00
gwenn
83775ee62d
Remove second field from RawStatement
...
Use sqlite3_db_handle instead
2018-04-03 20:18:51 +02:00
gwenn
a0151f9073
Introduce is_locked
2018-03-31 10:22:19 +02:00
gwenn
cccdf9735f
Factorize check on code returned by prepare/step.
2018-03-27 21:49:09 +02:00
gwenn
83c8db2d21
Fix Connection::open documentation ( #332 )
2018-03-24 10:58:42 +01:00
gwenn
c612a44207
Fix errors relative to OpenFlags
...
Also handle extended error codes.
2018-03-24 10:15:10 +01:00
gwenn
455e7d4060
WIP: Unlock Notification
...
To do: unlock_notify_cb
2018-03-24 08:06:30 +01:00
gwenn
5d91fb088f
Unlock notification
2018-03-24 08:03:21 +01:00
gwenn
d2a71a1352
Improve error message when we can't open a database
...
Ensure the error message contains the database path
2018-03-10 19:17:22 +01:00
gwenn
3aaab1e36f
Merge remote-tracking branch 'remotes/jgallagher/master' into vtab
2018-01-20 12:29:07 +01:00
gwenn
96103b0662
Merge remote-tracking branch 'jgallagher/master' into hooks
2018-01-20 10:08:40 +01:00
John Gallagher
ccf9e6fe6c
Merge branch 'master' of https://github.com/twistedfall/rusqlite into twistedfall-master
2017-11-13 08:30:29 -07:00
John Gallagher
217e12fcee
Merge pull request #304 from jgallagher/gwenn-clippy
...
Fix some clippy warnings
2017-11-13 08:23:52 -07:00
John Gallagher
498faac4db
Merge branch 'clippy' of https://github.com/gwenn/rusqlite into gwenn-clippy
2017-11-12 16:27:42 -07:00
John Gallagher
d000aa52d7
Merge branch 'flush_prepared_cached' of https://github.com/edelangh/rusqlite into edelangh-flush_prepared_cached
2017-11-12 16:23:59 -07:00
John Gallagher
4852d826c8
Merge branch 'update-deps' of https://github.com/oherrala/rusqlite into oherrala-update-deps
2017-11-12 15:07:31 -07:00
Ossi Herrala
28d58529b7
Update dependencies
...
* Gcc crate has been renamed to cc.
* Chrono::UTC has been renamed to Chrono::Utc.
* bitflags 1.0 uses associated constants. So prefix OpenFlags.
2017-10-09 23:25:40 +03:00
Pro
c08ee8be82
Export RowIndex trait to allow external code to be generic over what can index be
2017-09-20 15:34:06 +02:00
gwenn
c842e789bd
Merge remote-tracking branch 'jgallagher/master' into vtab
2017-09-11 19:45:22 +02:00
edelangh
ab643c90ce
review panic in InnerConnection.drop
2017-09-06 16:50:21 +02:00
gwenn
148dc0baf0
Fix more clippy warnings
2017-08-18 21:26:44 +02:00
edelangh
0d1907887e
add cfg for test
2017-07-20 16:40:24 +02:00
gwenn
f7c1a8e7b8
Fix some clippy warnings
2017-07-19 21:26:39 +02:00
edelangh
bdd4f9a1a9
Added drop for Connection to prevent fd leak
...
Added call to flush_prepared_statement_cache
otherwise InnerConnection receives DatabaseBusy on sqlite3_close
2017-07-19 12:22:31 +02:00
king6cong
13a32e4004
code indent
2017-06-02 17:19:39 +08:00
John Gallagher
4623064f4d
Update to bitflags 0.9.
2017-05-29 10:52:19 -04:00
gwenn
dfdd42fd09
Bind sqlite3_commit_hook and sqlite3_rollback_hook
2017-05-12 19:14:34 +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
3b575c3b4a
Implementation of sqlite3_update_hook #260
...
First draft (no tested and a memory leak)
2017-04-25 20:58:22 +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
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
4b2a6d2207
Fix unused macro warning when compiling tests without trace
feature.
2017-04-05 12:54:58 -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
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
509257dfa8
Merge branch 'limits' of https://github.com/gwenn/rusqlite into gwenn-limits
2017-02-07 19:41:30 -05: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
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
06583aadf2
fix clippy warnings
2017-01-23 19:46:49 -05:00
John Gallagher
68ae7de1d5
Update docs on Row::get
2017-01-22 19:42:51 -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
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
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
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
8f28ff17b8
Fix rustdoc warnings
2016-08-15 12:41:15 +02:00
gwenn
8f079819f7
Change VTabCursor::filter signature
2016-08-13 13:55:30 +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
e2cf171192
Introduce FromSqlError
as specified by John Gallagher
2016-06-02 21:03:25 +02: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