Ryan Leckey
e5b6047009
feat: introduce docker-compose based testing for running locally against many database combinations
2020-05-30 17:51:55 -07:00
Ryan Leckey
0a04abdb3e
feat: Pool is now generic over Database, as opposed to Connection
...
this fixes an unfortunate interaction with HRTBs where the compiler would
produce infinitely nested PoolConnection<PoolConnection<....
2020-05-30 17:51:55 -07:00
Ryan Leckey
cf7606be1b
fix: Transaction now to rollbacks on drop (again)
2020-05-30 17:51:55 -07:00
Ryan Leckey
bb3b571a57
fix: tweak lifetimes in Executor to limit the scope for the borrow on the query to the single execution
2020-05-30 17:51:55 -07:00
Ryan Leckey
cc9d443434
feat: re-introduce Transaction
...
* Transaction now wraps `&mut Connection` instead of `Connection`
2020-05-30 17:51:55 -07:00
Ryan Leckey
9d2a0141cb
feat: introduce IntoArguments, query_with, query_as_with, and query_scalar_with
2020-05-30 17:51:55 -07:00
Ryan Leckey
37a69e0ac3
refactor(sqlite): adapt to the 0.4.x core refactor
...
* massive (~20x) performance improvement
2020-05-30 16:09:50 -07:00
Austin Bonander
6913695588
add support for building in "decoupled" mode
2020-05-30 16:02:37 -07:00
Hasan Ali
3e2ed00b60
Drop all statements before closing sqlite connection
2020-04-27 10:20:57 -07:00
Josh Holmer
16229fd0ad
Add basic query logging
...
Prints each query performed at DEBUG level,
along with a timing of how long the query took
to execute.
Slow queries will be printed at WARN level.
Currently the slow query threshold is
hardcoded to 1 second.
2020-04-17 22:49:33 -07:00
George Kaplan
7df6d4dbcf
undo URL percent-encoding for SQLite connection strings
2020-04-17 18:23:33 -07:00
Ryan Leckey
cd6735b5d7
fix(sqlite): handle empty statements, fixes #231
2020-04-08 02:13:37 -07:00
kosyak
6c9241a3a9
Fixed types of variables that interact with libsqlite3
2020-04-07 04:10:47 -07:00
Ryan Leckey
4b9a615b32
sqlite: remove SqliteTypeInfo from sqlite::types
2020-03-29 15:57:59 -07:00
Ryan Leckey
b8537d0a87
sqlite: condense allow(unsafe_code)
2020-03-29 15:55:09 -07:00
Ryan Leckey
2b06386bf1
sqlite: remove two unused imports
2020-03-29 15:53:04 -07:00
Austin Bonander
73a9155b46
fix import of from_utf8_unchecked()
2020-03-28 17:50:27 -07:00
Austin Bonander
4ffa7f0e01
SQLite: implement column nullability checking
2020-03-28 17:50:27 -07:00
Austin Bonander
fe00c0d619
sqlite/statement.rs: lift #[allow(unsafe_code)] to module
2020-03-28 17:50:27 -07:00
Austin Bonander
e99a863288
remove now-unused imports and reformat
2020-03-25 21:37:11 -07:00
Austin Bonander
6e3fa49ad5
add unit tests for DatabaseError downcasting
2020-03-25 18:26:57 -07:00
Austin Bonander
673f133cab
un-generify Error and support downcasting in DatabaseError
2020-03-25 18:13:56 -07:00
Ryan Leckey
41608c3f60
rename {DB}Error -> {DB}DatabaseError
2020-03-25 04:50:27 -07:00
Ryan Leckey
6049f976f9
opt out of compatible type check for null values
2020-03-25 04:25:38 -07:00
Ryan Leckey
2f6bab396a
Add PartialEq for PgTypeInfo and SqliteTypeInfo
2020-03-25 03:59:29 -07:00
Ryan Leckey
985d62009c
sqlite: adjust for recent changes with RawValue
2020-03-25 02:37:10 -07:00
Ryan Leckey
fa4138b25c
add docs to explain the SQL <-> Rust mapping
2020-03-24 02:56:52 -07:00
Ryan Leckey
412f7125fb
document Cursor
2020-03-24 01:53:56 -07:00
Ryan Leckey
1940b685d3
fix warnings from rustdoc
2020-03-24 01:36:17 -07:00
Ryan Leckey
792acdd554
audit Row, FromRow, and ColumnIndex
...
* tweak FromRow to accept Row by reference, should make it easier to compose FromRow impls
* rename ColumnIndex::resolve to ColumnIndex::index
* document behaviors
2020-03-24 01:24:10 -07:00
Ryan Leckey
a0bf61cc4a
Declare ColumnIndex over Row instead of over Database
2020-03-23 21:21:59 -07:00
Ryan Leckey
cb2e3220e0
simplify lifetimes on Row
2020-03-21 03:25:17 -07:00
Daniel Akhterov
cbdc1bbfb2
Refactor the error to be generic over database
2020-03-20 23:51:45 -07:00
Ryan Leckey
2a8906d1e5
add more documentation
2020-03-18 22:46:44 -07:00
Ryan Leckey
6f4c478fb7
sqlite: fix NULL handling
2020-03-18 16:52:27 -07:00
Ryan Leckey
d380f4b4a8
remove is_null_type and use Option<TypeInfo>
2020-03-17 21:43:41 -07:00
Ryan Leckey
b04f2cbd4d
sqlite: fix detection of INT and CHAR types
2020-03-17 21:34:01 -07:00
Austin Bonander
6cea7e2c1b
macros: add proper test for sqlite using database file
2020-03-17 21:10:19 -07:00
Austin Bonander
8328e07c97
macros + sqlite: fix error for null-typed columns
2020-03-17 21:10:19 -07:00
Ryan Leckey
4e7b1b51e0
sqlite: handle encoding nulls
2020-03-17 01:13:32 -07:00
Ryan Leckey
e0ca521889
cursor: for now, add #[doc(hidden)] to from_connection and from_pool as we look for ways to remove them
2020-03-16 22:51:55 -07:00
Ryan Leckey
4869f48f84
sqlite: don't leak on connection failure
2020-03-16 20:30:28 -07:00
Ryan Leckey
57d414f15c
sqlite: fix impl of DatabaseError
2020-03-16 19:54:24 -07:00
Ryan Leckey
1d0100b35d
Add DatabaseError::code
2020-03-16 18:29:41 -07:00
Ryan Leckey
12e250b52c
Inline MaybeOwned in ConnectionSource and add another variant to store owned or ref connections
2020-03-15 02:58:41 -07:00
Ryan Leckey
ab20db14a2
Remove Sqlite prefix from SqliteStatement as it is an internal API
2020-03-15 02:16:31 -07:00
Ryan Leckey
68d4a0d258
sqlite: produce connection specific errors
...
postgres, mysql: use derive for Debug for error types
2020-03-15 02:14:23 -07:00
Ryan Leckey
f667910cbf
sqlite: SqliteResultValue -> SqliteValue to match other drivers
2020-03-15 01:54:43 -07:00
Ryan Leckey
426361f361
sqlite: make SqliteConnection and Statement !Sync
2020-03-15 01:48:51 -07:00
Ryan Leckey
69b1d7feaa
sqlite: add even more notes about Send/Sync
2020-03-15 00:34:13 -07:00