34 Commits

Author SHA1 Message Date
Ryan Leckey
f345c23e51 fix(mssql): handle multi-chunk packets
fixes #523
2020-07-17 06:08:36 -07:00
Ryan Leckey
c64122c03f feat(mssql): implement parameterized queries 2020-06-07 02:00:13 -07:00
Ryan Leckey
9b299d9f09
style(core): apply future-incompatible suggestions 2020-05-30 18:06:21 -07:00
Ryan Leckey
757a930e21
refactor(core): remove the HRTB (higher rank trait bound) on Row in the aim of improving ergonomics
* removes the lifetime from Row

 * removes MySqlQueryAs, SqliteQueryAs, etc. (no longer needed)

 * introduce query_scalar

 * introduce Decode::accepts to allow overriding runtime type checking
   per-type (replaces TypeInfo::compatible)

 * introduce Encode::produces to allow overriding the encoded type per-value

 * adds a lifetime to Arguments (and introduce the HRTB HasArguments)
   to support zero-copy encoding with SQLite

 * renames Database::RawBuffer to HasArguments::ArgumentBuffer

 * introduce Connect::connect_with to provide an ConnectOptions type
   explicitly to opt-out of connection string parsing

 * introduce Value and ValueRef traits to allow decoding-deferred
   extraction of values from Rows

 * introduce Encode::encode_by_ref and change Encode::encode to take
   by-value to try and re-use memory where possible

 * use thiserror to generate sqlx::Error

 * [!] temporarily removes query logging

 * [!] temporarily removes transactions
2020-05-30 16:09:08 -07:00
Felix Wiedemann
5628658d3f postgres: Add unix domain socket support 2020-04-18 14:31:31 -07:00
Felix Wiedemann
49f15713d6 Move empty host handling to the DB specific code 2020-04-18 14:31:31 -07:00
Austin Bonander
e99a863288 remove now-unused imports and reformat 2020-03-25 21:37:11 -07:00
Austin Bonander
673f133cab un-generify Error and support downcasting in DatabaseError 2020-03-25 18:13:56 -07:00
Daniel Akhterov
cbdc1bbfb2 Refactor the error to be generic over database 2020-03-20 23:51:45 -07:00
Ryan Leckey
0ecacfaf1d io: forward lifetime properly in Buf trait 2020-03-16 18:29:54 -07:00
Ryan Leckey
751efdf31b generalize MaybeOwnedConnection and clean up the connection file 2020-03-14 17:43:44 -07:00
Ryan Leckey
c9df8acc41 Add zero-allocation to MySQL query execution
WIP mysql compiles with types and executor commented out
2020-03-11 01:47:29 -07:00
Austin Bonander
de14a206ff remove pin-project workaround 2020-03-11 01:47:29 -07:00
Ryan Leckey
672f83c00e use pin-project and fix impl of GuardedFlush 2020-03-11 01:47:29 -07:00
Austin Bonander
f3fe264478 implement guarded flush for BufStream
closes #122
2020-03-11 01:47:29 -07:00
Ryan Leckey
b8cd2e9388 remove unused imports 2020-03-11 01:45:04 -07:00
Ryan Leckey
47f3d77e59 query_as: fully implement query_as, required a db-specific ext trait 2020-03-11 01:44:41 -07:00
Ryan Leckey
a374c18a18 postgres: rewrite protocol in more iterative and lazy fashion 2020-03-11 01:43:17 -07:00
Jane Lusby
7d3772e23b Resolve PR comments 2020-01-22 20:49:22 -08:00
Jane Lusby
ea03fa47e7 Initial commit with doc_cfg changes 2020-01-22 13:10:10 -08:00
Austin Bonander
d55e4568b8 fix build with tls and runtime-tokio features on 2020-01-21 12:24:54 -08:00
Ryan Leckey
809bc3964c Run rustfmt 2020-01-15 01:34:20 -08:00
Ryan Leckey
92f12e11aa Add support for Tokio 2020-01-15 01:17:33 -08:00
Ryan Leckey
0a5b527d79 fix import errors and run rustfmt 2020-01-14 10:35:50 -08:00
Ryan Leckey
cb1dbff544 mysql: if in a TLS stream, sha2 auth is just "send a clear text password" 2020-01-14 10:32:59 -08:00
Austin Bonander
638852a2dd implement TLS support for Postgres 2020-01-13 11:52:09 -08:00
Ryan Leckey
92f3f8cf6f Finish reallocation strategy for BufStream
Fixes #30
2020-01-06 10:53:56 -08:00
Ryan Leckey
d76b1357da Audit MySql and Postgres protocols 2019-12-27 17:31:01 -08:00
Austin Bonander
786deecc36 replace bitflags::_core with std
for some reason IntelliJ-Rust reaches for this first
2019-12-19 18:46:37 -08:00
Austin Bonander
ca3fbd740a implement support for chrono
fix tests
2019-12-11 19:59:41 -08:00
Ryan Leckey
871183d23b Minor fixes and run rustfmt 2019-12-03 00:22:02 -08:00
Ryan Leckey
9558ab1c50 Remove bytes usage and update dependencies 2019-12-02 23:26:44 -08:00
Ryan Leckey
061b7819ab Remove the RawConnection concept and fold into Backend 2019-11-22 11:48:49 +00:00
Austin Bonander
fc07830639 implement facade crate so macros can be used from same namespace 2019-11-22 10:30:16 +00:00