John Gallagher
9f5f4ac385
Merge branch 'functions' of https://github.com/gwenn/rusqlite into gwenn-functions
...
Conflicts:
Cargo.toml
src/lib.rs
2015-12-11 11:31:25 -05:00
John Gallagher
599e30f372
Rename bind_named_parameters -> bind_parameters_named.
2015-12-10 20:49:47 -05:00
John Gallagher
0051ff47a6
Refactor: Extract match to get an expected row into its own method.
2015-12-10 20:48:38 -05:00
John Gallagher
b7468b2c4b
Make parameter_index return a Result<Option<_>> instead of squashing
...
string conversion errors into None.
2015-12-10 20:41:31 -05:00
John Gallagher
186cb5893b
Rename query_named_row -> query_row_named.
...
I think this is more consistent with Rust's tendency to group similar
methods like `iter`, `iter_mut` by appending the difference as a suffix.
2015-12-10 20:31:07 -05:00
John Gallagher
8d4b3e6a31
Remove commented-out code
2015-12-10 20:30:43 -05:00
John Gallagher
21528452d7
Clean up comments on named parameter methods
2015-12-10 20:30:05 -05:00
John Gallagher
7338f23d4b
Add extra assertions around binding named parameters
2015-12-10 20:27:09 -05:00
John Gallagher
2f220161a5
Add extra check to named-parameter insertion unit test
2015-12-10 20:16:46 -05:00
John Gallagher
ab6ab3b2e9
Run rustfmt on named_params.rs
2015-12-10 17:01:19 -05:00
John Gallagher
53979407c5
Merge branch 'named-param' of https://github.com/gwenn/rusqlite into gwenn-named-param
...
Conflicts:
Cargo.toml
src/lib.rs
2015-12-10 16:53:43 -05:00
John Gallagher
a1f1480b18
Run rustfmt on all crate files
2015-12-10 16:48:09 -05:00
John Gallagher
49951ca3be
Add backup and restore methods to SqliteConnection (behind backup
Cargo feature)
2015-12-10 16:20:46 -05:00
John Gallagher
3781b8f47f
rustfmt backup.rs
2015-12-10 16:20:46 -05:00
John Gallagher
8c2e0a0da7
Rename BackupName -> DatabaseName
2015-12-10 16:20:45 -05:00
John Gallagher
5ebbf5a1a2
Use &str instead of String inside BackupName
2015-12-09 00:48:40 -05:00
John Gallagher
e2f8e73635
Initial implementation of the online backup API.
2015-12-09 00:19:59 -05:00
John Gallagher
51a542c0f7
Fix broken load_extension feature
2015-12-08 21:15:23 -05:00
Gwenael Treguier
fe6afe2a94
Merge branch 'master' of https://github.com/jgallagher/rusqlite into functions
2015-12-06 21:33:21 +01:00
Gwenael Treguier
da69584b9f
Add Example and Failure documentation
2015-12-05 13:43:03 +01:00
Gwenael Treguier
5b86871d76
Merge branch 'master' of https://github.com/jgallagher/rusqlite into named-param
2015-12-05 12:32:16 +01:00
Gwenael Treguier
2cf0455f8d
Add Failure documentation
2015-12-05 11:28:33 +01:00
Gwenael Treguier
cef1d3285e
Merge branch 'master' of https://github.com/jgallagher/rusqlite into blob
2015-12-05 11:11:23 +01:00
John Gallagher
ac08a18c43
Merge pull request #86 from jgallagher/gwenn-trace_extension
...
Add Rust interface to SQLite's logging, tracing, and profiling hooks
2015-12-01 13:19:43 -05:00
John Gallagher
3d654aeed1
Add more documentation for failure modes of functions that return s
2015-12-01 12:05:29 -05:00
John Gallagher
1af3fcd053
Fix error messages when failing to convert paths and strings to C-compatible versions
2015-12-01 11:47:55 -05:00
John Gallagher
49cb1efe62
Merge branch 'master' into gwenn-trace_extension
2015-12-01 11:13:23 -05:00
John Gallagher
635616842c
Remove 'static requirement on output of closure given to query_map and query_and_then.
...
The 'static bound was there to prevent callers from being able to save
off the `SqliteRow` handles passed into the closure. This PR changes the
closure to take `&SqliteRow`s instead, which provides the same feature
without restricting the output of the closure.
2015-12-01 10:58:32 -05:00
John Gallagher
e6fef5107d
Change profile() to take a Rust fn instead of an extern "C" fn.
2015-12-01 10:34:18 -05:00
John Gallagher
ace5b1ebdc
Change trace() to take a Rust fn instead of an extern "C" fn.
2015-11-30 21:08:39 -05:00
John Gallagher
dbfa6ca31f
Change config_log to take a Rust fn instead of an extern "C" fn.
...
Moves the unit test for config_log out of #[ignore] and into its own
test file since it affects the entire process.
2015-11-30 21:08:39 -05:00
John Gallagher
eaf080261b
Merge branch 'trace_extension' of https://github.com/gwenn/rusqlite into gwenn-trace_extension
2015-11-30 13:13:43 -05:00
Gwenael Treguier
0729e195c3
Use debug_struct for formatting.
2015-11-30 12:16:09 -05:00
Gwenael Treguier
20c1213482
Remove feature duration.
2015-11-11 15:03:07 +01:00
Gwenael Treguier
a2327fb048
Revert "Remove usage of unstable library feature 'duration'"
...
This reverts commit 9c415f9c9e
.
2015-11-11 15:00:39 +01:00
Gwenael Treguier
ddd976c158
Cleanup use statements.
2015-11-11 14:39:54 +01:00
Gwenael Treguier
db7345624f
Merge remote-tracking branch 'jgallagher/master' into named-param
2015-11-11 14:39:15 +01:00
Gwenael Treguier
50bfba1e1d
Ignore test_log.
2015-11-11 14:29:40 +01:00
Gwenael Treguier
8bff40b6d6
Merge remote-tracking branch 'jgallagher/master' into trace_extension
2015-11-11 14:28:21 +01:00
John Gallagher
420c4d4d9f
Address RFC 1214 warning
2015-11-03 11:27:52 -05:00
John Gallagher
b1350c4c14
Merge branch 'master' into gwenn-reset_asap
2015-09-22 10:16:52 -07:00
John Gallagher
d23667870e
Merge pull request #70 from jgallagher/pfernie-master
...
Replace get_opt with get_checked. Add query_and_then and query_row_and_then.
2015-09-21 10:38:07 -04:00
John Gallagher
7ee69fe103
Remove get_opt (superceded by get_checked).
2015-09-21 10:31:11 -04:00
John Gallagher
1918dc14d0
Add tests for query_row_and_then().
2015-09-20 21:30:40 -04:00
John Gallagher
072a336b33
Refactor: Reduce duplication across query_and_then tests.
2015-09-20 21:28:50 -04:00
John Gallagher
0cbb2743e3
Merge branch 'master' of https://github.com/pfernie/rusqlite into pfernie-master
2015-09-20 21:07:39 -04:00
John Gallagher
59a3b0ddb5
Merge pull request #62 from gwenn/too-big
...
Check Rust str length before binding.
2015-09-20 20:57:28 -04:00
John Gallagher
d07c7ec8a6
Add basic unit test of statement debug including SQL
2015-09-20 20:44:51 -04:00
gwenn
05669082a3
Debug db path and stmt sql.
2015-09-20 20:41:13 -04:00
John Gallagher
43b0c1c98a
Merge branch 'reset_asap' of https://github.com/gwenn/rusqlite into gwenn-reset_asap
2015-09-20 20:30:59 -04:00
John Gallagher
36f577aea6
Merge pull request #53 from gwenn/exec_check
...
Extra check in SqliteStatement.execute
2015-09-20 20:29:12 -04:00
Huon Wilson
b7efb37b35
Relax uses of P: AsRef<...>
from &P
to P
.
...
This means that one can pass `AsRef` types directly, without having to
insert a `&`, e.g. `SqliteConnection::open("foo.db")` (new)
vs. `SqliteConnection::open(&"foo.db")` (old).
This should be backwards compatible, since there is an impl in the
standard library:
impl<'a, T, U> AsRef<U> for &'a T where U: ?Sized, T: AsRef<U> + ?Sized
I.e. the old `&P` satisfies the new bound still. (Taking `P` directly is
what the standard library does with similar functions, like
`File::open`.)
2015-09-08 18:11:50 +10:00
Patrick Fernie
e4eda2041e
Implement SqliteConnection::query_row_and_then()
2015-08-27 14:47:48 -04:00
Patrick Fernie
29072e585b
Implement SqliteStatement::query_and_then()
...
Allows for more ergonomic unification of error types
2015-08-27 13:43:43 -04:00
Patrick Fernie
e1532f5edf
Correct idx-checking behavior for SqliteRow::get_checked()
2015-08-27 10:44:24 -04:00
Gwenael Treguier
b9ab3350ea
Add regexp() function implementation
2015-08-09 13:06:23 +02:00
Gwenael Treguier
0a454eed79
Add support to user defined scalar functions
2015-08-09 09:52:53 +02:00
Gwenael Treguier
eb7f670ce1
Make named_params module private
2015-08-08 16:19:05 +02:00
Gwenael Treguier
3b830b4bce
Add documentation
2015-08-08 16:11:31 +02:00
Gwenael Treguier
59a4c5593a
Improve documentation.
2015-08-08 09:57:07 +02:00
Gwenael Treguier
d1f5ce2435
Check when buffer is too long.
2015-08-08 09:39:35 +02:00
Gwenael Treguier
6bc1a8bb59
Check when statement is too long.
2015-08-08 09:30:50 +02:00
Gwenael Treguier
3b673a74b2
Add SqliteConnection.execute_named,query_named_row.
2015-08-07 02:19:57 +02:00
Gwenael Treguier
9c63b9f37a
Check Rust blob length before binding.
2015-08-06 21:45:54 +02:00
Gwenael Treguier
7b8051dc7e
Check Rust str length before binding.
2015-08-06 21:15:30 +02:00
Gwenael Treguier
7ff9d4056b
Add SqliteStatement.named_query.
2015-08-05 22:07:49 +02:00
Gwenael Treguier
e81757e86d
Add Stmt::named_execute and Stmt::parameter_index.
2015-08-04 21:48:54 +02:00
Gwenael Treguier
8bb624cccc
Factorize code
2015-08-04 18:52:57 +02:00
Gwenael Treguier
9c415f9c9e
Remove usage of unstable library feature 'duration'
2015-08-02 12:16:01 +02:00
gwenn
ef254fdca0
Rename feature to 'trace'
2015-08-01 18:58:04 +02:00
gwenn
1bf12f8150
Feature blob IO.
2015-08-01 18:51:02 +02:00
gwenn
4a7e83f0af
Feature sqlite3_{log,trace,profile}.
2015-08-01 17:21:41 +02:00
gwenn
4fa6d3c020
Reset as soon as possible.
2015-08-01 10:18:06 +02:00
gwenn
f91db1b350
Cache column_count (I am not sure it's worth it)
2015-08-01 10:08:28 +02:00
gwenn
c31c68d5e3
Only check column count when DONE.
2015-08-01 09:11:31 +02:00
gwenn
1dc144c8c1
Add test_execute_select.
2015-08-01 08:09:59 +02:00
John Gallagher
e7eb6454d9
Merge pull request #51 from Yuhta/colnames
...
Add column_names to SqliteStatement
2015-07-26 13:55:15 -04:00
John Gallagher
4d1063348e
Use sqlite3_destructor_type from bindgen'd header
2015-07-26 13:43:43 -04:00
Jimmy Lu
22968be4fc
Add column_names to SqliteStatement
2015-07-24 22:16:20 -04:00
gwenn
fd36d98c85
Make SqliteOpenFlags implement Default.
...
Activate URI and NO_MUTEX by default.
2015-07-06 20:24:27 +02:00
John Gallagher
ad3e805357
Merge pull request #39 from jgallagher/add-get-checked
...
Add get_checked to SqliteRow.
2015-05-11 20:17:18 -04:00
Marcus Klaas
51f6c15c6c
Slightly adjust the signature of query_map
2015-05-11 16:46:28 -04:00
John Gallagher
ea911fbdbd
Give MappedRows a SqliteRows instead of a SqliteStatement.
2015-05-11 16:46:28 -04:00
John Gallagher
3f75300844
Use boxed closures to allow query_map to take f: F instead of f: &F
2015-05-11 16:46:28 -04:00
Marcus Klaas
95f511d437
Add initial implementation for query_map
2015-05-11 16:46:26 -04:00
Marcus Klaas
f591b82cb0
Remove uses of query_row_safe in tests
2015-05-07 15:41:02 +02:00
John Gallagher
37cfcf470b
Add SqliteRow::get_checked, which performs basic SQLite column type checking.
2015-05-04 21:50:36 -04:00
John Gallagher
03be8e0cd6
Make query_row
a synonym for query_row_safe
.
...
This is a breaking change for anyone using `query_row`. To update code
that used the old `query_row`, you must now `.unwrap()` the returned
result.
2015-05-04 20:12:18 -04:00
John Gallagher
120f0cbb65
Add messages to all our assertions.
2015-05-04 20:02:33 -04:00
John Gallagher
98e7994251
Merge pull request #35 from marcusklaas/as-path
...
Change path parameter type to &AsRef<Path>
2015-05-04 19:55:19 -04:00
John Gallagher
55c173a465
Merge branch 'stable' into 'master'
2015-05-04 19:52:10 -04:00
Marcus Klaas
debb717aa4
Change path parameter type to &AsRef<Path>
2015-05-04 21:22:11 +02:00
John Gallagher
b393348ab0
Remove stable #![allow(unstable)]
tags from docs
2015-05-03 21:49:27 -04:00
John Gallagher
038d30e2c8
Remove unstable features for Rust-1.0-beta
2015-04-03 14:48:35 -05:00
John Gallagher
5e04b98840
Updates to track rustc nightly
2015-04-03 08:32:11 -05:00
Huon Wilson
57ca5f3b51
Use std::ptr::Unique
to ensure SqliteConnection is Send.
...
Semantically the C resource is owned by the SqliteConnection, so Unique
is correct. Being Send is safe because sqlite3 can only possibly be
thread unsafe in cases when there is simultaneous access from multiple
threads, but transferring ownership between threads doesn't allow that
to occur.
2015-03-29 21:27:13 +11:00
John Gallagher
4b085b9103
Bump version and use libc
from crates.io
2015-03-28 23:09:21 -04:00
John Gallagher
c8fbe48f15
Remove unneeded #![feature(core)]
2015-03-28 23:03:45 -04:00
John Gallagher
2461654861
Use new hyphen-less extern crate name
2015-03-26 15:49:13 -04:00
John Gallagher
89e20146e3
Use bitflags crate instead of rustc_bitflags
2015-03-17 00:56:55 -04:00