gwenn
187d1fec07
Merge remote-tracking branch 'upstream/master' into remove_check_macro
...
# Conflicts:
# src/blob/pos_io.rs
2021-07-27 18:36:44 +02:00
gwenn
01b52990da
Merge pull request #988 from gwenn/error_handle
...
Retrieve error message from database connection handle
2021-07-27 18:31:42 +02:00
gwenn
569893531e
Merge pull request #987 from gwenn/checked_memory_handle
...
[Cosmetic] Replace some usages of checked_memory_handle
2021-07-27 18:20:02 +02:00
gwenn
50097e1e44
Fix unused import
2021-07-27 18:17:07 +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
2dea70304d
Retrieve error message from database connection handle
2021-07-04 16:53:40 +02:00
gwenn
7ddf1316a2
Replace some usages of checked_memory_handle
...
In tests which return Result, we don't need to unwrap.
2021-07-04 16:04:13 +02:00
gwenn
7056e656ac
Remove check macro
...
Can be replaced by a simple function and ? operator.
2021-07-04 15:52:31 +02:00
gwenn
1970b60109
Add minimal test for cache_flush
2021-07-03 17:03:58 +02:00
gwenn
653e64ab98
Access to sqlite3_db_cacheflush via Connection
...
Fix #984
2021-07-03 16:41:55 +02:00
Thom Chiovoloni
15d3ae30e3
Add a helper function for getting the byte data from a value ref regardless of if its Text or Blob
2021-07-02 17:12:05 -07:00
gwenn
dcaa67a617
Merge pull request #973 from gwenn/doc_cfg
...
Use #[doc(cfg)]
2021-06-30 18:07:54 +02:00
gwenn
0c348c9eb0
Fix clippy warning
2021-06-28 19:05:37 +02:00
gwenn
5730b2f952
Fix clippy warnings
2021-06-25 18:57:25 -07:00
gwenn
b14e326181
Use format_description macro
2021-06-14 21:34:05 +02:00
gwenn
fc9f03c1ca
Make tests more succint by using Rfc3339 string
2021-06-14 20:49:59 +02:00
gwenn
2ddbebad97
Merge remote-tracking branch 'origin/master' into doc_cfg
2021-06-14 20:19:23 +02:00
gwenn
781d5b9fdd
Merge pull request #975 from gwenn/authorizer
...
Fix AuthContext / Authorization visibility
2021-06-14 19:54:22 +02:00
gwenn
83e8c96ae9
Fix InnerConnection::authorizer visibility
2021-06-14 19:26:09 +02:00
gwenn
73fd16958e
Fix missing docs
2021-06-13 10:57:01 +02:00
gwenn
a2756ffbb0
Fix AuthContext / Authorization visibility
...
Fix #972
Breaking change: Action is not visible from root anymore
2021-06-13 10:46:00 +02:00
gwenn
9cdf80f3ca
Fix InnerConnection decode_result / changes
...
Fix #931
2021-06-13 10:39:36 +02:00
gwenn
0312937d6a
Use #[doc(cfg)]
...
Fix #835
2021-06-13 09:17:35 +02:00
gwenn
bcf28fec35
Fix FromSql impl for OffsetDateTime
...
Fix test doc
2021-06-12 18:54:29 +02:00
gwenn
125f5dfbde
Fix FromSql impl for OffsetDateTime
...
Use time 0.3.0-alpha-1
2021-06-12 18:29:01 +02:00
gwenn
5baaa9a224
Fix FromSql impl for OffsetDateTime
...
Reveal bugs
2021-06-12 12:04:10 +02:00
gwenn
78e4036f90
Fix FromSql impl for OffsetDateTime
...
See 'Missing datetime format support' #968
2021-06-11 21:42:02 +02:00
dubiousjim
8770e7d443
Add bundle-sqlcipher and bundle-ssl ( #860 )
...
Co-authored-by: Thom Chiovoloni <chiovolonit@gmail.com>
2021-06-02 12:07:56 -07:00
Thom Chiovoloni
a2d48a8c15
Add a function to return the path of a Connection ( #963 )
2021-05-29 22:48:48 -07:00
gwenn
df02910660
Implement AsRef<Statement> for Row(s) ( #887 )
2021-05-26 14:51:28 +02:00
Nick Hynes
48e7561af9
Add support for authorizer hook ( #946 )
...
Co-authored-by: Thom Chiovoloni <chiovolonit@gmail.com>
2021-05-23 11:55:07 -07:00
gwenn
1985e78fa6
Fix clippy warnings ( #959 )
...
Fix clippy warnings
2021-05-13 08:58:46 +02:00
Thom Chiovoloni
cdce75328e
Fix build on some older versions of Rust
2021-05-08 22:56:19 -07:00
gwenn
cd40cc330b
Rustfmt ( #956 )
2021-05-07 19:39:53 +02:00
Dirk Stolle
c33d6bfad3
fix several typos
2021-05-02 23:03:10 -07:00
Nick Hynes
b8b1138fcf
Add Statement::parameter_name
2021-04-26 01:16:10 -07:00
gwenn
6c956bb270
Test that extra_check feature works with RETURNING statements ( #932 )
...
Test that extra_check feature works with RETURNING statements
2021-04-04 12:47:21 +02:00
gwenn
517ef2beae
Prepare release 0.25.0 ( #930 )
...
rusqlite 0.25.0
libsqlite3-sys 0.22.0
Also fix missing README for libsqlite3-sys crate
And fix a typo.
2021-04-03 20:07:53 +02: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
Nick Hynes
ecbc0aa767
Leniently parse rfc3339 timezones ( #928 )
2021-04-03 10:56:11 +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
73bf68f851
Merge remote-tracking branch 'upstream/master' into series
2021-03-06 12:38:10 +01:00
Thom Chiovoloni
bd736b2634
Fix nightly non_fmt_panic warning
2021-03-02 18:19:11 -08:00
gwenn
e1eed94bef
Fix clippy warnings
...
Allow `unnecessary_wraps` for `check_update` and `check_no_tail`.
Remove `check_readonly` (`sqlite3-parser` may help).
2021-02-28 13:19:58 +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
Thom Chiovoloni
19b0772f3f
Make it clear bind_in is not public, and inline functions passing large arrays by value to avoid too much copying
2021-01-31 16:18:48 -08:00
gwenn
91d6ce7a52
Fix unstable tests when machine is slow
2021-01-30 12:55:00 +01:00
gwenn
4f175d5748
Fix DateTime format
2021-01-29 22:03:50 +01:00
gwenn
afcdc2b43a
Use most concise syntax for params
2021-01-19 21:16:08 +01:00
gwenn
70742651b1
Fix CI build
...
clippy::unnecessary_wraps is not stable yet
2021-01-02 13:43:12 +01:00
gwenn
2319165b59
Fix clippy warnings
2021-01-02 10:49:29 +01:00
gwenn
e154ccb606
Rename get_raw to get_ref_unwrap and get_raw_checked to get_ref ( #838 )
...
* test `From<FromSqlError> for Error`
* Rename get_raw to get_ref_unwrap and get_raw_checked to get_ref
2020-12-22 21:34:30 +01:00
Thom Chiovoloni
73f59a3a38
Merge pull request #866 from phiresky/pass-context-to-aggregate
2020-12-19 12:47:13 -08:00
phiresky
0221266f2e
make init return result
2020-12-19 12:15:18 +01:00
phiresky
7c83680231
fix lints
2020-12-18 23:11:23 +01:00
phiresky
d4f8242d0c
format
2020-12-18 13:54:38 +01:00
phiresky
9d2e936eb8
formatting and tests
2020-12-18 13:53:13 +01:00
phiresky
eff747b756
format
2020-12-18 13:52:07 +01:00
phiresky
25c817413b
pass context to finalize function
2020-12-18 13:30:11 +01:00
phiresky
1309c563c7
add get_connection method to function context
2020-12-18 13:24:03 +01:00
phiresky
2cffca874c
pass context to aggregate init function
2020-12-18 13:11:39 +01:00
Mahmoud Al-Qudsi
73754bbe24
[docs] Document default busy_timeout/busy_handler
...
Include a note in the documentation for both `busy_handler()` and
`busy_timeout()` explaining the current default behavior (with a
disclaimer indicating that this behavior should not be relied upon as it
is an implementation detail that may change).
2020-12-02 17:20:50 -06:00
Mahmoud Al-Qudsi
2dab6d8364
[docs] Fix over-long monospacing of SQLITE_BUSY
2020-12-02 17:06:46 -06:00
gwenn
3aeb5d7e08
Remove obsolete doc section
...
`FromSql` / `ToSql` are now implemented for i64 and usize
2020-11-22 09:37:52 +01:00
gwenn
32ee895b63
Remove some usages of params! / NO_PARAMS
2020-11-22 09:37:00 +01:00
gwenn
6fae5d6641
Add/fix rustdoc links
2020-11-22 09:34:03 +01:00
kud1ing
7beba0c6eb
Document that optional()
requires import of rusqlite::OptionalExtension
...
Document that `optional()` requires import of `rusqlite::OptionalExtension`.
2020-11-20 18:09:47 -08:00
gwenn
0649df96ea
Fix non-autolinks warnings
2020-11-07 12:32:41 +01:00
gwenn
9ae66e363e
Merge pull request #840 from gwenn/IndexConstraintOp
...
Remove #[non_exhaustive] attribute on IndexConstraintOp
2020-11-07 12:20:15 +01:00
gwenn
3388fd1683
Remove #[non_exhaustive] attribute on IndexConstraintOp
2020-11-07 12:02:33 +01:00
gwenn
47ec0e1d8f
Fix create_collation
...
The xDestroy callback is not called if the sqlite3_create_collation_v2() function fails.
2020-11-07 11:54:59 +01:00
gwenn
bbd1ff5fb0
Try to fix CI build
2020-11-05 22:24:55 +01:00
gwenn
549ceb59e2
Try to fix CI build
2020-11-05 22:21:02 +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
7574124233
Format code in doc comments for good measure
2020-11-03 19:09:19 -08:00
Thom Chiovoloni
f0990c38bf
Fix stale doc
2020-11-03 19:09:19 -08:00
Thom Chiovoloni
a312582d11
Ensure empty array Params impl can trigger Error::InvalidParameterCount when needed
2020-11-03 19:09:19 -08:00
Thom Chiovoloni
22121772a2
Deprecate NO_PARAMS in favor of passing an empty array
2020-11-03 19:09:19 -08:00
Thom Chiovoloni
2461ebf62f
Update documentation
2020-11-03 19:09:19 -08:00
Thom Chiovoloni
032aea73b8
Overhaul query API, removing the need for the _named
variants of all functions, and rusqlite::NO_PARAMS
2020-11-03 19:09:19 -08:00
Thom Chiovoloni
c45446ba73
Seal the RowIndex
trait (technically breaking, but unlikely to break anybody)
2020-11-03 19:09:19 -08:00
gwenn
b9ccb252ef
Merge pull request #824 from gwenn/progress_handler
...
Expose query progress information
2020-11-03 18:14:36 +01:00
Thom Chiovoloni
1aeea123dd
Silence clippy's complaint about unelided lifetime in session.rs
2020-11-02 19:34:09 -08:00
gwenn
1103febb1e
Test Batch iterator
2020-10-31 11:11:12 +01:00
gwenn
f3c2b63836
Get rid of fallible iterator trait
2020-10-31 10:47:44 +01:00
gwenn
73323b6b92
Remove Iterator implementation for Batch
...
If Batch implements both `Iterator` and `FaillibleIterator`, `next`
method is ambiguous and must be qualified...
2020-10-29 20:06:47 +01:00
gwenn
b73ca079a8
Implement Iterator for Batch
2020-10-29 20:01:46 +01:00
gwenn
5f5943435e
Remove lazy_static block where possible
2020-10-29 19:51:51 +01:00
Nick Hynes
749266cae9
Reduce required lifetime in create_scalar_function
2020-10-28 23:33:00 -07:00
gwenn
d1ec46182f
Fix Clippy warning
2020-10-28 21:26:36 +01:00
gwenn
b448d95510
Merge remote-tracking branch 'upstream/master' into progress_handler
2020-10-28 21:21:19 +01:00
gwenn
76ad2bf19c
Rustfmt
2020-10-28 21:12:29 +01:00
gwenn
5ce81024c8
Introduce Batch fallible iterator
2020-10-28 21:10:13 +01:00
gwenn
e1072b7f75
Reduce required lifetime
...
Revert lifetime change on table_filter
2020-10-28 20:16:53 +01:00
gwenn
926977846f
Reduce required lifetime
...
Extends #825 to
- create_collation
- commit_hook
- rollback_hook
- update_hook
- table_filter
2020-10-28 19:20:05 +01:00
Tim Hutt
b0ade73f43
Add ToSql implementations for u64 and usize
2020-10-26 23:28:25 -07:00
gwenn
9c954b8cb5
Rustfmt
2020-10-25 12:28:03 +01:00
gwenn
49325296a9
Expose query progress information
...
Add unit tests
2020-10-25 12:20:15 +01:00
gwenn
f5c83af863
Expose query progress information
2020-10-25 11:58:47 +01:00
Tim Hutt
8841187717
Silence clippy
2020-10-24 09:52:05 -07:00
Tim Hutt
f264873999
Cargo format
2020-10-24 09:52:05 -07:00
Tim Hutt
ebcec59969
Implement From/ToSql for more types
...
This implements `FromSql` for `u64`, `usize` and `f32`, and `ToSql` for `f32`.
I also updated the documentation to describe how it currently works, and changed the implementation to use `try_from` for integral casts rather rather than custom code.
Test added.
2020-10-24 09:52:05 -07:00
gwenn
6ae9802fa3
Feature ptr_offset_from #41079 available in 1.47
2020-10-08 21:12:46 +02:00
Thom Chiovoloni
084d1f535d
Replace lru-cache with hashlink
2020-10-06 00:10:22 -07:00
Thom Chiovoloni
587fdeb185
Add write_all_at
for compatibility with FileExt, improve docs a little
2020-10-04 15:48:10 -07:00
Thom Chiovoloni
d61fe36237
Improve pos io test coverage
2020-10-04 15:48:10 -07:00
Thom Chiovoloni
67ee5a0586
Add test coverage for positional blob io
2020-10-04 15:48:10 -07:00
Thom Chiovoloni
7cd909fc14
Add positional blob i/o and adjust blob i/o example docs
2020-10-04 15:48:10 -07:00
gwenn
799b5d3f7b
Rustfmt
2020-10-04 07:39:35 +02:00
gwenn
d2dcc2d987
Fix clippy warning
2020-10-04 07:38:52 +02:00
Michael Sproul
d7e0536b41
Add must_use
attribute to iterators
2020-09-02 16:15:25 +10:00
gwenn
2a7b11320f
Fix clippy warnings
2020-08-17 20:07:56 +02:00
gwenn
a4691db6d0
pragma_update fails with ExecuteReturnedResults
...
Ideally, while executing a batch, we should fail if it contains a SELECT
statement. But currently there is no way to make the distinction between
a SELECT and a PRAGMA which both updates and returns a row.
So we fail only when `extra_check` feature is activated.
2020-08-17 19:30:24 +02:00
Nikhil Benesch
b83d22e2b7
Upgrade to time v0.2 and put it behind a feature flag
...
This also removes the usage of time in the crate's top-level
documentation example, as was done for the README in #625 .
Fix #653 .
2020-07-24 11:28:19 -07:00
Tim
83c038107d
Fix order of parameters in InvalidParameterCount message
...
This prints a message like `Error: Wrong number of parameters passed to query. Got 7, needed 8`, but the numbers were the wrong way around - i.e. it should have printed `Got 8, needed 7` in this case.
2020-07-01 08:38:50 -07:00
Thom Chiovoloni
f79a9ca3ef
Publically expose Map
2020-06-29 09:36:13 -07:00
gwenn
024e2e6bf0
Merge pull request #773 from gwenn/execute_batch
...
Implement our own sqlite3_exec
2020-06-28 06:18:56 +02:00
gwenn
dd886578d2
Implement our own sqlite3_exec
...
Should fix issue related to unlock notify: #767
Caveat: many CString allocated.
2020-06-26 19:35:14 +02:00
gwenn
4114c94585
Clippy
2020-06-26 19:22:20 +02:00
gwenn
57db338537
Rustfmt
2020-06-25 09:45:49 -07:00
gwenn
f37519ad51
Replace execute_batch usages by execute
...
Because execute_batch does not support unlock_notify
2020-06-25 09:45:49 -07:00
Thom Chiovoloni
1c9e381a21
Clippy fixes
2020-06-07 19:18:46 -07:00
Thom Chiovoloni
f7a573e44a
Don't implement Into<RawStatement> for Statement
2020-06-07 19:18:46 -07:00
gwenn
7b08dc9ad5
Try to explain why we need a map function
...
To tranform the fallible streaming iterator.
2020-06-02 19:05:09 +02:00
gwenn
c577a9d801
Lifetime elision
2020-06-01 18:44:02 +02:00
gwenn
52a80f95f7
Merge pull request #754 from gwenn/phantom_data
...
Fix some PhantomData declarations
2020-06-01 11:48:02 +02:00
gwenn
265020e589
Fix some PhantomData declarations
...
Specify the expected type instead of () even if only the lifetime
matters
2020-06-01 10:11:34 +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
Evgeniy A. Dushistov
d16748ac9f
adding ability to work with sqlite compiled with -DSQLITE_OMIT_DECLTYPE
...
fix #751
2020-06-01 06:31:27 +03:00
gwenn
8cb5b2e585
Document Rows::map and FallibleStreamingIterator impl
...
See
https://www.reddit.com/r/rust/comments/gov817/rusqlite_only_getting_ok_entries_from_query_map/
```
let mut stmt = self
.db
.prepare("SELECT tag FROM tags WHERE tags.entry_id = ?1")?;
let tags = stmt.query(params![id])?;
tags
.map(|res| res.get(0))
.collect()
```
2020-05-24 20:53:52 +02:00
gwenn
e664f82630
Add still missing docs in session module
2020-05-21 00:48:06 -07:00
gwenn
5ebba26a7e
Add missing docs in session module
2020-05-21 00:48:06 -07:00
gwenn
76fc22c653
Fix missing docs
2020-05-21 00:48:06 -07:00
Martin Habovstiak
8a08dff115
Clippy reports redundant closures even in cases in which removing the
...
closure is impossible. See
https://github.com/rust-lang/rust-clippy/issues/5594
Allow this lint until the issue is resolved in clippy or the compiler.
2020-05-21 00:47:52 -07:00
Martin Habovstiak
c5b2efc099
impl TryFrom<&Row<'_>> for (...)
...
This change implements `TryFrom<&Row>` for tuples up to 16 fields. This
is a convenience function that can be used to map rows more easily.
The change includes tests for 1-tuple, 2-tuple and 16-tuple.
2020-05-21 00:47:52 -07:00
gwenn
5565ae5629
Merge pull request #735 from gwenn/extended_result_codes
...
Activate extended result codes asap
2020-05-17 09:53:25 +02:00
gwenn
0060ff8a44
Activate extended result codes asap
2020-05-16 11:01:30 +02:00
gwenn
ceb9f11de8
Replace pub(crate) by pub(super) visibilty
2020-05-16 10:18:25 +02:00
Thom Chiovoloni
12cb228c9c
Fix SqliteMallocString::from_str on arm32
2020-04-23 13:58:50 -07:00
Thom Chiovoloni
d88fe1c1b1
Remove parameter count caching -- should be cheap (if statically linked at least...)
2020-04-16 12:05:56 -07:00
Thom Chiovoloni
a776f460e8
Cache param count and make statement cache more effective
2020-04-16 12:05:56 -07:00
Thom Chiovoloni
6485b324d7
Name fields of RawStatement
2020-04-16 12:05:56 -07:00
Thom Chiovoloni
1207a7cc06
Make clippy behave slightly more reasonably
2020-04-16 08:21:43 -07: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
Thom Chiovoloni
45fd77ee43
UnlockNotification should hold mutex when calling condvar
2020-04-15 13:52:19 -07:00
Thom Chiovoloni
c9ef5bd63c
Make VTab / VTabCursor unsafe trait
as implmenting them on the wrong type is unsound
2020-04-15 10:33:04 -07:00
Thom Chiovoloni
3c6b57fe1b
Fix vtab::Module lifetime
2020-04-15 10:33:04 -07:00
Thom Chiovoloni
2327d3b774
Fix format string error in rusqlite::trace::log
2020-04-14 12:23:15 -07:00
Thom Chiovoloni
abbab7216a
Better docs and cleaner SmallCString
2020-04-14 10:26:41 -07:00
Thom Chiovoloni
ac30e169ae
Use SmallCString in most places
2020-04-14 10:26:41 -07:00
Thom Chiovoloni
552416039e
Optimize named params via caching and use of smallvec
2020-04-14 10:26:41 -07:00
Thom Chiovoloni
cf9b6e9ae2
Avoid relying on sqlite to justify str::from_utf8_unchecked
2020-04-14 09:31:29 -07:00
Thom Chiovoloni
1b27ce0541
Docs for new aux api
2020-04-14 08:06:37 -07:00
Thom Chiovoloni
2ef3628dac
Actually fix auxdata api...
2020-04-14 08:06:37 -07:00
Thom Chiovoloni
71b2f5187b
Ensure type use for auxdata is repr(C)
2020-04-14 08:06:37 -07:00
Thom Chiovoloni
38aea89809
Remove implementations of std::error::Error::description
2020-04-12 12:06:53 -07:00
Thom Chiovoloni
5a8108bd86
Implement source
and not cause
for FromSqlError
2020-04-12 12:06:53 -07:00
gwenn
611c8e8b02
Rustfmt
2020-04-11 22:18:22 -07:00
gwenn
4dbfdc85fe
Fix ValueRef::from_value
...
Handle text with internal nuls (#657 )
2020-04-11 22:18:22 -07:00
Thom Chiovoloni
e04426176f
Merge pull request #693 from thomcc/unchecked-transaction
...
Allow opting out of compile-time transaction checking
2020-04-10 10:06:37 -07:00
Thom Chiovoloni
d408e3bcd2
Allow opting out of compile-time transaction checking
2020-04-09 12:39:40 -07:00
Konrad Borowski
c8078dfd1f
Allow non-Unicode file names on Unix-like platforms
2020-04-09 10:35:38 +02:00
Thom Chiovoloni
ca13698273
Revert "Merge pull request #499 from xfix/unix-invalid-unicode"
...
This reverts commit 061748e1f5
, reversing
changes made to cf3cdecf12
.
2020-04-08 10:38:32 -07:00
Thom Chiovoloni
061748e1f5
Merge pull request #499 from xfix/unix-invalid-unicode
...
Allow non-Unicode file names on Unix-like platforms
2020-04-08 10:30:50 -07:00
Thom Chiovoloni
cf3cdecf12
Merge pull request #684 from thomcc/internal-unsafe
...
Clean up internal unsafe code
2020-04-08 10:15:03 -07:00
Thom Chiovoloni
f5c20abaa1
Remove unused vtab_v3 feature while I'm here
2020-04-07 14:28:03 -07:00
Thom Chiovoloni
8f7fc7d976
Avoid using MaybeUninit for pointers
2020-04-07 10:04:18 -07:00
Thom Chiovoloni
53c99f940e
Fix up conventions around unsafe in internal functions
2020-04-07 10:04:18 -07:00
Thom Chiovoloni
c0df911946
Avoid rust-analyzer bug in InnerConnection::new ( #686 )
...
This is a workaround for a false error rust-analyzer gives in
InnerConnection::new. I'm guessing it's because it does some weird
feature stuff. It doesn't change any semantics, but makes working in
`rusqlite` much nicer when using rust-analyzer.
2020-04-07 08:58:41 -07:00
Thom Chiovoloni
5ef73f6c8c
Implement std::error::Error::source instead of cause ( #683 )
2020-04-06 18:12:22 -07:00
Thom Chiovoloni
76336369ed
Fix regression with <Cow<'_, _> as ToSql> ( #681 )
2020-04-06 17:00:15 -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
9b040da029
Add Rows::{mapped,and_then}
to get an Iterator out of a Rows i… ( #676 )
2020-04-06 13:01:39 -07:00
Thom Chiovoloni
0394e114d0
Return an error instead of panicing when parameter count is wron… ( #675 )
...
Fixes #671
2020-04-06 12:47:35 -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
0c0d45f714
Add APIs allowing separate parameter binding and statement execu… ( #668 )
2020-04-06 10:44:00 -07:00
Thom Chiovoloni
26c744d0c3
Improve CI test coverage ( #670 )
...
* Improve CI test coverage
* Run clippy/rustfmt/rustdoc in CI
* Disable warnings when building bundled sqlite
2020-04-06 10:43:43 -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
zero-systems
2a04f06a3a
Relaxed Sized bound on Box/Rc/Arc/Cow for ToSql
...
* Fix Box<T> for unsized
* refactoring
* Add more tests
* ?Sized for Cow, Rc, Arc too
2020-03-31 20:52:34 -07:00
zero-systems
761df93a83
Impls of ToSql for different generic types (Box, Cow, Rc, Arc). ( #660 )
...
* Impl ToSql for Box<str>
* Add generic impls for Cow, Box, Rc, Arc. Remove impl for Box<str>
* Remove impl of ToSql for Cow<'_, str>
* Add missing as_ref
Co-authored-by: Øsystems <>
2020-03-28 09:53:03 -07:00
gwenn
f71ea05603
Handle text with internal nuls
...
Fix insertion and selection (#657 ).
2020-03-25 19:20:05 +01:00
Thom Chiovoloni
8c574be1e3
Revert "don't truncate text columns that contain nul bytes"
...
This reverts commit 004c8f23d4
.
2020-03-24 10:58:09 -07:00
Damien Elmes
004c8f23d4
don't truncate text columns that contain nul bytes
2020-03-23 22:03:31 -07:00
gwenn
8ddacbb27c
doctest README.md
2020-03-08 15:36:56 +01:00
gwenn
97b2f4cda0
Fix test_execute_select
2020-03-04 20:42:32 +01:00
gwenn
1fb00e99b7
Fix error while executing ALTER statement
...
`execute_bacth` should be used for DDL.
`execute` should still work except when `extra-check` feature is
activated.
2020-03-04 20:26:31 +01: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
a3e5ea990d
Merge pull request #640 from Genomicsplc/wasm-no-thread-checks
...
don't perform threading mode checks on wasm32
2020-02-29 10:01:25 +01:00
Joshua C. Randall
09ad553081
don't perform threading mode checks on wasm32
2020-02-24 22:48:54 +00:00
gwenn
15fc3b4b71
Clippy + rust fmt
2020-02-22 11:50:00 +01:00
gwenn
406cd6d2cf
Merge pull request #630 from gwenn/pr/open-with-vfs
...
add ability to open sqlite connection with specified vfs
2020-02-09 12:54:45 +01:00
gwenn
7d1d6024e9
Factorize code
2020-02-09 12:21:20 +01:00
gwenn
4d58a43b38
Fix compilation errors
2020-02-09 12:08:25 +01:00
gwenn
9e17a0b28e
Merge remote-tracking branch 'upstream/master' into pr/open-with-vfs
...
# Conflicts:
# src/inner_connection.rs
2020-02-09 11:58:49 +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
05e87b8d8d
Add missing constants
2020-02-09 11:47:01 +01:00
gwenn
17759a912e
Ignore PATH change
...
Cargo itself changes the PATH.
So `libsqlite3-sys` is always rebuilt on Windows platform.
To avoid this, we ignore PATH change.
If the PATH has been modified in such a way that a different SQLite library is found,
you will have to also modify SQLITE3_LIB_DIR to make cargo rebuild `libsqlite3-sys`
Fix #435 .
2020-02-08 10:25:52 +01:00
gwenn
b2c63c8224
Merge pull request #623 from gwenn/index-constraint-op
...
Add missing IndexConstraintOp entries
2020-01-26 18:26:40 +01:00
gwenn
8cc4440f45
Add missing IndexConstraintOp entries
...
Remove conditional inclusions.
2020-01-26 18:14:52 +01:00
gwenn
5565d2e058
Add support to function flags ( #622 )
...
Breaking changes
2020-01-26 18:11:11 +01:00
gwenn
5d06bc25a6
Add missing IndexConstraintOp entries
...
Breaking changes
2020-01-26 17:51:51 +01:00
gwenn
b61c570cdd
Merge pull request #621 from gwenn/dbconfig
...
Add missing DbConfig entries
2020-01-26 17:36:15 +01:00
gwenn
e266211c48
Add missing DbConfig entries
2020-01-26 17:03:48 +01:00
gwenn
adb904650d
Fix warnings related to deprecated Error::description
2020-01-26 16:57:58 +01:00
gwenn
d1813caa1d
Merge pull request #617 from gwenn/params
...
Fix params macro
2020-01-18 19:29:14 +01:00
gwenn
f8991082da
Fix params macro
...
See #614
2020-01-18 19:04:28 +01:00
gwenn
ea7f0da6ae
Merge pull request #613 from thomcc/modern_sqlite
...
Separate the `modern_sqlite` and `bundled` features.
2020-01-14 20:40:39 +01:00
Thom Chiovoloni
585797b4d6
Add FromSql for Box<str>, Rc<str> and Arc<str>
2020-01-14 08:26:16 -08:00
Thom Chiovoloni
c70d148542
Remove most of the code using feature=bundled
as a version check
2020-01-14 08:11:36 -08:00
arthurprs
cae86b2bfe
Fix i32 overflow in Connection::busy_timeout
2019-12-28 20:18:10 +01:00
Steven Roose
c162a4516c
Replace deprecated tempdir with tempfile
...
This also removes one dependency on the winapi crate. The current
version of the time crate also depends on winapi, but work is being done
to replace that version with 0.2 to remove the winapi dependency.
2019-11-22 11:12:53 +00:00
gwenn
8302a50fb8
Fix clippy warnings
2019-11-03 11:19:07 +01:00
gwenn
9484f5c15e
Merge pull request #588 from gwenn/session
...
Session
2019-11-02 15:21:55 +01:00
gwenn
de9f06f142
Fix ChangesetIter::start_strm
...
The input reference must still be alive after the function returns
2019-11-02 14:53:32 +01:00
gwenn
fb9fb3790c
Fix segfaut by using a cursor instead of a slice.
2019-11-02 10:42:13 +01:00
gwenn
317abe6155
Update README example
2019-11-01 18:27:56 +01:00
gwenn
0693d5f6ce
Reactivate session feature
...
And fix partially x_input.
2019-11-01 09:57:56 +01:00
gwenn
ca5eccfe95
Check that even when sqlite_stmt
is null, there is no panic.
2019-10-30 20:09:27 +01:00
gwenn
8eb844b0c9
Paste relevant section from SQLite documantation
2019-10-29 20:26:35 +01:00
gwenn
edfd7658c3
Segmentation fault on prepare_cached
with an empty query
...
With an empty query is prepared, sqlite3 returns no error but a null pointer.
And then `sqlite3_sql` returns null.
Which make `CStr::from_ptr` crash.
2019-10-29 19:24:18 +01:00
gwenn
ec52d44939
Merge pull request #578 from gwenn/cant-open
...
Cant open
2019-10-19 11:20:56 +02:00
gwenn
15f356e5a7
Merge remote-tracking branch 'jgallagher/master' into cant-open
2019-10-19 10:40:53 +02:00
gwenn
22bdd80b92
Ignore mutex_atomic
clippy lint
...
> This lint cannot detect if the mutex is actually used for waiting
before a critical section.
2019-10-19 10:10:17 +02:00
gwenn
0cf9ef8514
Fix some clippy warnings
2019-10-13 13:08:33 +02:00
Will Dowd
49f48a5c56
Parse Option<T> into Value/ValueRef where applicable
2019-09-27 16:02:37 -04:00
gwenn
104188055e
Merge pull request #568 from gwenn/column_name
...
Make `column_name()` public and forward all column methods in Row and Rows
2019-09-02 18:29:52 +02:00
Vlad-Shcherbina
81d26ccadb
Fix typo in docs
2019-09-01 12:41:51 +03:00
gwenn
9ce3b82570
Make column_name
returns a Result
2019-08-31 12:17:48 +02:00
gwenn
4ffdb07f31
Merge remote-tracking branch 'jgallagher/master' into twistedfall
2019-08-31 10:00:33 +02:00
gwenn
941e36be9d
Merge remote-tracking branch 'jgallagher/master' into twistedfall
2019-08-31 09:55:24 +02:00
gwenn
6c838bf544
Ignore test_execute_multiple when no extra check
2019-08-31 09:39:09 +02:00
gwenn
c6a5fd402c
Merge remote-tracking branch 'jgallagher/master' into tail
2019-08-31 09:30:25 +02:00
gwenn
bcd26ca062
Merge remote-tracking branch 'jgallagher/master' into tail
...
# Conflicts:
# src/inner_connection.rs
# src/lib.rs
2019-08-26 20:41:15 +02:00
gwenn
00d50199a2
Check SQL query passed to execute
...
When `extra_check` feature is activated:
Fail when query has a column count > 0
Or when query is readonly.
2019-08-26 20:21:23 +02:00
Pro
a8d34da2d5
Use the correct (larger) lifetime of the returned column-related references in Row, Rows and Column
2019-08-22 16:53:16 +02:00
Pro
2a8339bda7
Forward all column related methods in Row and Rows
2019-08-22 16:38:43 +02:00
Pro
d46eb23364
Make column_name() public
...
Changes it's interface to Option<&str> to accommodate for out of bounds index
2019-08-22 16:38:43 +02:00
Pro
692b4b67dc
Use expect() instead of unwrap() for string conversion
2019-08-22 16:38:31 +02:00
gwenn
dfcc4511ea
Fix Clippy warning
2019-08-17 08:19:19 +02:00
gwenn
08e32444c9
Cleanup use statements
2019-08-17 08:18:37 +02:00
gwenn
28a48ec7c1
Check OpenFlags
2019-08-17 08:16:47 +02:00
gwenn
dcc43fa445
Fix warnings
2019-08-09 20:06:31 +02:00