Ryan Leckey
7b132d1dbc
refactor(mysql): store max_size in MySqlTypeInfo – prepare for an eventual future where emit bool
for TINYINT(1)
2020-07-26 19:37:58 -07:00
Ryan Leckey
55f6c9a2e9
test: fix decode test in macros
2020-07-26 18:11:15 -07:00
Ryan Leckey
86d41f17aa
Merge remote-tracking branch 'origin/ab/macro-refresh'
2020-07-26 17:54:23 -07:00
Ryan Leckey
08d2c79279
feat(postgres): expose PgTypeKind
2020-07-24 07:28:59 -07:00
Danny Weinberg
f0f93c4f79
Fix options in tests
2020-07-24 07:25:29 -07:00
Danny Weinberg
036bd2a05d
Add SCREAMING_SNAKE_CASE rename_all option
...
This mirrors the addition of `uppercase` in https://github.com/launchbadge/sqlx/pull/304 , but for all uppercase snake case.
2020-07-24 07:25:29 -07:00
Ryan Leckey
e575501a39
feat: add Executor::prepare, a hook into the automatic statement preparation life-cycle
2020-07-24 07:24:23 -07:00
Julius de Bruijn
e8a4c54ac7
Allow setting caching per-query
2020-07-24 07:24:23 -07:00
Julius de Bruijn
c9c11c8302
2-tier cache for Postgres
...
This solves a problem when needing to describe a query before executing
it, in cases where the query is more of a dynamic nature and binding its
parameters require the type info.
In this case, the first describe doesn't know the input parameters, so
the parameter type info is inferred from the database. In cases of
`varchar(10)[]` or `json` column types, the parameter type is inferred
to the column type. Now if we then try to use `text[]` or `jsonb` as the
types, the database has already stored different types for these
parameters for the statement, and will error out.
So we'll now only store the statement to the cache when it comes from an
actual execution of the query.
2020-07-24 07:24:23 -07:00
Julius de Bruijn
0c9bea4ab2
Fixing panics for disabled statement cache
2020-07-24 07:24:23 -07:00
Julius de Bruijn
a27244b3c9
Make the test simpler for easier debug
2020-07-24 07:24:23 -07:00
Julius de Bruijn
a4dc3dfbd7
Add a test showing a bug in describe/execute combo
2020-07-24 07:24:23 -07:00
Julius de Bruijn
590f97df4a
Caching describe
2020-07-24 07:24:23 -07:00
Austin Bonander
94aa698581
refactor(macros): remove ResultExt and macro_result!()
2020-07-21 21:19:31 -07:00
Ryan Leckey
ee4d9b5412
fix(postgres): use the element type info from the protocol if available for array element decoding
...
fixes #537
2020-07-20 23:53:18 -07:00
Ryan Leckey
ae8800ccc4
feat(postgres): add () for VOID in macro resolution
2020-07-20 23:12:43 -07:00
Ryan Leckey
96b76dc737
update todo examples to 0.4 and use migrations
...
* update tests/x.py
* add examples/x.py
2020-07-18 05:43:16 -07:00
Ryan Leckey
fa40e9e55f
implement support for postgres TIMETZ type
...
Co-authored-by: Julius de Bruijn <julius+github@nauk.io>
2020-07-17 03:22:40 -07:00
Ryan Leckey
9b956c0d2c
fix(postgres): support the VOID type, as ()
2020-07-15 02:16:08 -07:00
Ryan Leckey
54c857b448
fix some remaining usage of PoolOptions
2020-07-14 06:33:36 -07:00
Ryan Leckey
00137d4a04
feat: add sqlx::Done and return from Executor::execute()
...
+ Done::rows_affected()
+ Done::last_insert_id()
2020-07-14 04:31:25 -07:00
Ryan Leckey
fc682fa991
fix: adjust pool usage in tests and examples
2020-07-12 04:42:48 -07:00
OriolMunoz
993352e9d4
Support for #[sqlx(default)]
2020-07-12 03:57:17 -07:00
Julius de Bruijn
f246d41aed
Fixed an overflow with a negative scale
2020-07-09 12:32:19 -07:00
Julius de Bruijn
245d53e484
Test Decimal conversions in my and pg
2020-07-09 12:32:19 -07:00
Julius de Bruijn
e3b3806db5
Handle ParameterStatus
in PgStream
2020-07-06 05:56:10 -07:00
Ryan Leckey
41df13ba5a
test(postgres): fix unreliable test that depends on the sequence number
2020-07-05 04:40:13 -07:00
Ryan Leckey
8d188c5f1a
feat: expose column information on Row
...
- add database-specific Column types: MySqlColumn, PgColumn, etc.
- add Row::columns() -> &[DB::Column]
- add Row::column(I) and Row::try_column(I)
2020-07-05 03:48:36 -07:00
Ryan Leckey
3a8dc0e211
fix(tests): prevent postgres::pool_smoke_test from starving executor
2020-07-03 05:59:20 -07:00
Julius de Bruijn
b3db51cdfc
Implement a proper type for money
2020-07-03 03:57:20 -07:00
Ryan Leckey
4c5ea7af77
Merge remote-tracking branch 'dimtion/pginterval'
2020-07-02 23:35:05 -07:00
Ryan Leckey
33ab2b9049
style: rustfmt
2020-07-02 22:38:23 -07:00
Ryan Leckey
1a7480774b
fix(postgres): after closing a statement, the connection should await CloseComplete
2020-07-02 22:37:04 -07:00
Loïc Carr
71cb68b2f4
feat(postgres) Create bindings for PgInterval
2020-06-27 17:36:06 -07:00
Ryan Leckey
a7117dd71b
feat(any): introduce the Any database driver which enables choosing the database driver at runtime
2020-06-27 04:07:40 -07:00
Julius de Bruijn
2c2a277666
Caching methods in Connection
2020-06-25 10:44:05 +02:00
Julius de Bruijn
5d64310004
LRU caching for PostgreSQL
2020-06-24 19:01:54 +02:00
Austin Bonander
36a53b44cd
fix(macros): don't emit typechecking code for explicit type overrides on bind params
2020-06-21 06:06:53 -07:00
Austin Bonander
f2515e2472
feat(macros): support nullable column override
2020-06-21 06:06:53 -07:00
Austin Bonander
029ba24cad
chore(macros): add tests for bind parameter overrides
2020-06-21 06:06:53 -07:00
Austin Bonander
eb831382e5
feat(macros): type override annotations for columns
2020-06-21 06:06:53 -07:00
Ryan Leckey
8800a40979
test: tokio or actix should import tokio in pool_smoke_test
2020-06-21 04:34:29 -07:00
Ryan Leckey
9abdd7e408
style: rustfmt
2020-06-21 04:08:17 -07:00
Ryan Leckey
7c4c185698
chore: update dependencies
2020-06-21 03:55:31 -07:00
Ryan Leckey
6cfe5ac811
refactor: tweak type name display to use TypeInfo::name
2020-06-21 03:55:31 -07:00
Ryan Leckey
c9f3e1adca
feat(postgres): add support for built-in range types and allow derives to handle custom range types
...
Co-authored-by: Caio <c410.f3r@gmail.com>
2020-06-12 15:33:19 -07:00
Caio
d4329e98d4
refactor: prepare to support postgres ranges
...
- Remove Type bound from Encode + Decode which removes the defaults
for produces() and accepts(). This allows custom type implementations
to be more flexible.
2020-06-12 15:33:19 -07:00
Ryan Leckey
e1d22a1840
fix(core): async-stream crate seems to lose the stream if the stream owns the object we are streaming
...
hand-rolled a copy of the idea behind AsyncStream and things seem to work
2020-06-09 02:16:47 -07:00
Ryan Leckey
e001815a18
test: fix non-repeatable postgres macro test
2020-06-08 00:18:53 -07:00
Ryan Leckey
55a59121ee
test: small fix to sql in json test
2020-06-07 04:07:33 -07:00