105 Commits

Author SHA1 Message Date
Ryan Leckey
9be1512833 mysql: use double literals in test 2020-03-18 23:16:56 -07:00
Ryan Leckey
1fc18460b0 transaction: document, test, and fix operation of nested transactions 2020-03-18 22:46:44 -07:00
Austin Bonander
33677e86a8 move PgNumeric[Sign], PgRecord[Encoder,Decoder] to hidden postgres::types::raw
fix errors
2020-03-18 19:36:54 -07:00
Austin Bonander
3a43e939e3 refactor PgNumeric so NaN can't be misinterpreted, document types 2020-03-18 19:06:14 -07:00
Ryan Leckey
63f5592ecf postgres: be explicit about an expression type for a test 2020-03-18 19:06:14 -07:00
Austin Bonander
94c40b3eb7 Postgres: implement numeric and BigDecimal support 2020-03-18 19:06:14 -07:00
Ryan Leckey
ebda944581 mysql: unwrap type infos 2020-03-17 22:02:20 -07:00
Ryan Leckey
d380f4b4a8 remove is_null_type and use Option<TypeInfo> 2020-03-17 21:43:41 -07:00
Ryan Leckey
1da6feac56 postgres: use inventory_item from fixture ( still need type name resolution for the test to work reliably ) 2020-03-17 21:33:51 -07:00
Ryan Leckey
a3f7029346 sqlite: assert what we get back from the db (it is a fixture) 2020-03-17 21:33:29 -07:00
Ryan Leckey
ec97dfb884 tweak fixtures to add more columns and add some initial for postgres/mysql 2020-03-17 21:32:57 -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
fb5db48c52 Don't test custom records until we have some kind of fixtures 2020-03-17 19:42:23 -07:00
Ryan Leckey
ff722d0e62 Run rustfmt 2020-03-17 19:35:01 -07:00
Ryan Leckey
d77b2b1e97 derives: update for new Decode/Encode traits and extensively test in usage 2020-03-17 19:26:59 -07:00
Ryan Leckey
4fc5e65f5d derives: update transparent 2020-03-17 03:24:08 -07:00
Ryan Leckey
602e61ab27 postgres: add support for decoding anonymous tuples and more fully test encoding/decoding records 2020-03-17 02:47:37 -07:00
Tom Dohrmann
a600b5b856 add tests for postgres struct field encoding 2020-03-16 22:58:31 -07:00
Tom Dohrmann
d3cb84b893 fix db type 2020-03-16 22:58:25 -07:00
Tom Dohrmann
c3aeb275c2 add derive macros for weak & strong enums and structs 2020-03-16 22:58:25 -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
63ef32189d sqlite: implement support for multiple statements 2020-03-14 17:43:44 -07:00
Ryan Leckey
0130fe1479 sqlite: implement describe 2020-03-14 17:43:44 -07:00
Ryan Leckey
5f27026459 sqlite: implement remainder of query API 2020-03-14 17:43:44 -07:00
Ryan Leckey
a3799c3496 sqlite: implement command execution 2020-03-14 17:43:44 -07:00
Ryan Leckey
444ffff127 Run rustfmt 2020-03-14 17:43:44 -07:00
Ryan Leckey
1a48cf3b2c Reduce some duplication in type parsing 2020-03-14 17:43:44 -07:00
Ryan Leckey
7ab07016da sqlite: initial work in connection 2020-03-14 17:43:44 -07:00
Ryan Leckey
7a98253840 postgres: clean up protocol 2020-03-14 17:43:06 -07:00
Ryan Leckey
c7d416a1c3 Add Connection::begin 2020-03-14 17:43:06 -07:00
Austin Bonander
a9f0fca1b2 fix Postgres UI tests for 1.41 stable 2020-03-11 15:43:07 -07:00
Ryan Leckey
76431141e5 postgres: add type test for NULL 2020-03-11 03:34:23 -07:00
Ryan Leckey
a165615f53 row: Row::get panics, Row::try_get is fallible, Query::map panics, Query::try_map is fallible 2020-03-11 03:32:52 -07:00
Ryan Leckey
17f52a819b Fix doctests for macros 2020-03-11 02:01:48 -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
Ryan Leckey
672f83c00e use pin-project and fix impl of GuardedFlush 2020-03-11 01:47:29 -07:00
Austin Bonander
800af574c5 query_macros: allow Option<&str> to be passed in place of String
closes #93
2020-03-11 01:47:16 -07:00
Austin Bonander
4163388298 add nullability info to Describe
implement nullability check for Postgres as a query on pg_attribute

implement type name fetching for Postgres as part of `describe()`

add nullability for describe() to MySQL

improve errors with unknown result column type IDs in `query!()`

run cargo fmt and fix warnings

improve error when feature gates for chrono/uuid types is not turned on

workflows/rust: add step to UI-test missing optional features

improve error for unsupported/feature-gated input parameter types

fix `PgConnection::get_type_names()` for empty type IDs list

fix `tests::mysql::test_describe()` on MariaDB 10.4

copy-edit unsupported/feature-gated type errors in `query!()`

Postgres: fix SQL type of string array

closes #107
closes #17

Co-Authored-By: Anthony Dodd <Dodd.AnthonyJosiah@gmail.com>
2020-03-11 01:46:06 -07:00
Ryan Leckey
81bf390678 postgres: remove old commented out test 2020-03-11 01:44:41 -07:00
Ryan Leckey
f337f1c602 postgres: implement text mode for chrono and clean up type tests 2020-03-11 01:44:41 -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
f18ab2fecb tweak type decoding in text mode for floats 2020-03-11 01:44:06 -07:00
Ryan Leckey
8e8cf6db20 postgres: fix various issues and add more tests 2020-03-11 01:44:06 -07:00
Ryan Leckey
433aab1e5b postgres: use RawValue in Decode and implement row-returning simple queries 2020-03-11 01:44:06 -07:00
Austin Bonander
0cb7bd1185 make macros work again 2020-03-11 01:43:27 -07:00
Ryan Leckey
7404708bab adjust Cursor::map to work through black magic hacks and hope we get GATs soon 2020-03-11 01:43:17 -07:00
Ryan Leckey
a374c18a18 postgres: rewrite protocol in more iterative and lazy fashion 2020-03-11 01:43:17 -07:00
Tim Harding
f0b276ea86 Added tests for trailing commas on query_file! and query_file_as! 2020-02-09 20:41:16 -08:00
timmythetiny
cefd377020 Fix #105, allow trailing commas in query macros 2020-02-08 16:14:50 -08:00