78 Commits

Author SHA1 Message Date
Tom Dohrmann
6baddae9fd fix error messages 2020-03-16 22:58:31 -07:00
Tom Dohrmann
a2ba26dc7e add explanation for size_hint 2020-03-16 22:58:31 -07:00
Tom Dohrmann
7185f1ff25 switch from vecs to iterator chains 2020-03-16 22:58:31 -07:00
Tom Dohrmann
4cd179d42b move decode_struct_field and encode_struct_field to sqlx-core 2020-03-16 22:58:31 -07:00
freax13
e603f5fcf6 split derives into different files 2020-03-16 22:58:25 -07:00
Tom Dohrmann
9c96bc92ee move feature guard from strong_enum to struct 2020-03-16 22:58:25 -07:00
Tom Dohrmann
e166f062be format 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
dd99fc351c suppress unused warnings 2020-03-14 19:54:19 -07:00
Ryan Leckey
c661fdde19 sqlite: macros: initial support for the query macros 2020-03-14 19:45:28 -07:00
Ryan Leckey
1a48cf3b2c Reduce some duplication in type parsing 2020-03-14 17:43:44 -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
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
255dce1f06 remove outdated comment 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
10232a2cdc remove re-exports from sqlx-core and let sqlx fully define the module layout 2020-03-11 01:45:04 -07:00
Ryan Leckey
f18ab2fecb tweak type decoding in text mode for floats 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
Ryan Leckey
70d15f2262 Executor::describe requires &str not &String 2020-03-11 01:43:27 -07:00
Austin Bonander
0cb7bd1185 make macros work again 2020-03-11 01:43:27 -07:00
Ryan Leckey
a374c18a18 postgres: rewrite protocol in more iterative and lazy fashion 2020-03-11 01:43:17 -07:00
Jane Lusby
ff731ce503 Enable raw ident support 2020-01-28 18:56:25 -08:00
Austin Bonander
f0c88da152
Merge pull request #71 from Freax13/master
add derives for Encode and Decode
2020-01-24 13:13:06 -08:00
Tom Dohrmann
8ca3429327 format code 2020-01-24 18:54:41 +01:00
Tom Dohrmann
a94e60880d remove unused imports 2020-01-24 18:52:01 +01:00
Tom Dohrmann
60ef862713 lift if to pattern match with pattern guard 2020-01-24 18:35:25 +01:00
Austin Bonander
efed9b3d6d sqlx-macros: fix handling of invalid idents
add regression test with Trybuild

fix lint warnings as otherwise Trybuild wanted to include them
2020-01-21 01:52:57 -08:00
Tom Dohrmann
bb933decb7 add derives for Encode and Decode 2020-01-18 13:30:16 +01:00
Ryan Leckey
d00c18ec75 Fix query! for the no results case in Postgres and MySQL 2020-01-18 00:43:59 -08:00
Ryan Leckey
f1b37b9bc2 Add support for unsigned integers and binary in query! for mysql 2020-01-16 12:51:33 -08:00
Ryan Leckey
2c4b7e5e3c Add '#[allow(unused_variables)]' to suppress warnings on a feature-less compile of sqlx-macros 2020-01-16 12:09:41 -08:00
John-John Tedro
4b2267233f Be explicit about runtime features used in static runtime 2020-01-15 15:57:54 +01:00
John-John Tedro
68937221f3 Use the threaded scheduler in the runtime 2020-01-15 15:51:03 +01:00
John-John Tedro
453012c9bf Only create tokio runtime once for block_on 2020-01-15 14:49:56 +01:00
Ryan Leckey
c0e51d7451 Run rustfmt 2020-01-15 01:55:42 -08:00
Ryan Leckey
c42e859141 Add support for tokio to sqlx-macros 2020-01-15 01:54:50 -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
96f14c0700 Merge remote-tracking branch 'origin/ab/proc-macro-unhack-sort-of' into rl-transaction-1 2020-01-15 00:29:43 -08:00
Ryan Leckey
0fdc4c4761 Remove dbg! in the macros 2020-01-15 00:26:30 -08:00
Ryan Leckey
b1a27ddac2 Add a Transaction type to simplify dealing with Transactions 2020-01-15 00:22:01 -08:00
Austin Bonander
0fdb875c20 support arbitrary numbers of bind parameters in query!() et al 2020-01-15 00:05:34 -08:00
Austin Bonander
da5c538d22 strip out proc-macro-hack 2020-01-15 00:05:09 -08:00
Ryan Leckey
3183413e9e
Merge pull request #50 from launchbadge/rl-refactor-types
Refactor HasSqlType to provide an array of compatible types
2020-01-14 23:32:45 -08:00
Ryan Leckey
306ed9752d Add i8, date, time, and datetime (chrono) in query! for MySQL and remove bool 2020-01-14 23:32:30 -08:00
Ryan Leckey
6b22fb7489 Refactor HasSqlType to provide an array of compatible types.
* Intending to use in a new Row type to check types at runtime for
   dynamic queries and to guard against schema changes

 * Hoping the query! macro can utilize this to allow accepting N
   rust types for 1 sql type and returning N rust types for 1 sql
   type.
2020-01-14 23:27:42 -08:00
Ryan Leckey
4f3175c5d7 Remove all remaining check warnings 2020-01-02 23:52:47 -08:00
Ryan Leckey
4ced4058ac Remove unused imports and a couple unused muts 2020-01-02 23:47:49 -08:00