119 Commits

Author SHA1 Message Date
Josh Triplett
71a72e7c67 Add support for git2::Oid (under the git2 feature flag)
This allows queries to convert between Oid and SQL data types.
2020-11-21 14:32:29 -08:00
Josh Triplett
47b0973bdb Add support for bstr::BString (under the bstr feature flag)
This allows queries to convert between BString and SQL data types.
2020-11-21 14:03:11 -08:00
Ryan Leckey
0b03dc6762 prepare v0.4.0 2020-11-12 07:46:13 -08:00
Ryan Leckey
f22a3f5a5d remove default runtime, you must now always select a runtime 2020-11-12 07:42:31 -08:00
Jonas Platte
1ed75ba5f0 Support accept_invalid_certs & accept_invalid_hostnames with rustls
Co-authored-by: BlackHoleFox <blackholefoxdev@gmail.com>
2020-11-12 07:32:59 -08:00
Jonas Platte
b14266ba2e Add rustls support 2020-11-12 07:32:59 -08:00
Jonas Platte
9298c88b87 Refactor TLS code to be a bit easier to read 2020-11-12 07:32:21 -08:00
Jonas Platte
a161bcba05 Rename cargo features in preparation for rustls support 2020-11-12 07:32:21 -08:00
Julius de Bruijn
25e72925fa Update to bigdecimal 0.2 and num-bigint 0.3 2020-11-04 17:09:01 -08:00
dignifiedquire
eae3f46237 update libsqlite3-sys to 0.20 2020-10-26 01:34:28 -07:00
Joshua Nelson
591d33b877 Enable all features for sqlx-core on docs.rs 2020-10-17 02:44:53 -07:00
Joshua Nelson
20d65a8248 Remove hashbrown dependency
Hashbrown is now the hashmap used in the standard library, so no need to
pull in an external dependency. This switches to using `AHashMap`
directly.
2020-10-17 02:44:09 -07:00
Jonas Platte
1935e91e7a Bump base64 version 2020-10-13 10:04:05 -07:00
Jonas Platte
63bfab90c5 Bump hmac version 2020-10-13 10:04:05 -07:00
Jonas Platte
f155bb83e8 Bump hashbrown version 2020-10-13 10:04:05 -07:00
Chloe Ross
1949445cf0 other: don't deadname self 2020-07-31 04:14:48 -07:00
吴翱翔
c6fa9047b9 Remove rust_decimal unnecessary num-traits 2020-07-29 07:39:31 -07:00
Julius de Bruijn
1a59d3308a Pg: Implementing BIT and VARBIT using BitVec 2020-07-27 03:36:44 -07:00
Ryan Leckey
22f1f93b79 chore: prepare sqlx v0.4.0-beta.1 and sqlx-cli v0.1.0-beta.1 2020-07-27 01:43:02 -07:00
ABGH, C
dad1356147 Remove unused phf dependency 2020-07-22 17:58:23 -07:00
Ryan Leckey
6fdb0d534f chore: update dependencies 2020-07-17 05:36:56 -07:00
Ryan Leckey
ff4dd4c7e7 fix: add a couple missing cfgs for the migrate feature 2020-07-12 04:15:37 -07:00
Ryan Leckey
61e4a4f566 feat: finish v1 of both cli and embedded migrations 2020-07-12 03:43:55 -07:00
Julius de Bruijn
fd837fce09 Support for rust_decimal::Decimal 2020-07-09 12:32:19 -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
518eb0c41a chore: add any to all-databases and to each db test in CI 2020-06-27 06:04:30 -07:00
Ryan Leckey
4bb88e7da2 chore: update dependencies 2020-06-27 05:57:21 -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
2b6f242a22 LRU statement cache for MySQL 2020-06-24 16:57:06 +02:00
Ryan Leckey
3dc067f031 fix: downgrade num-bigint due to conflicting version in rsa 2020-06-21 04:13:45 -07:00
Ryan Leckey
f8dc7284b9 chore: update dependencies 2020-06-21 03:55:31 -07:00
Ryan Leckey
e2ac01e190 chore: update dependencies 2020-06-13 08:54:38 -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
9a7401a427 chore: update dependencies 2020-06-07 16:30:21 -07:00
Daniel Akhterov
362a546484 feat(postgres): make sure username is ran through saslprep before sending to server 2020-06-07 02:34:41 -07:00
Ryan Leckey
9233cb5812 fix(sqlite): minor typo when encode for Option<T> became a macro 2020-06-07 02:15:48 -07:00
Ryan Leckey
ef2527ff3e feat(mssql): fix a few bugs and implement Connection::describe 2020-06-07 02:00:31 -07:00
Ryan Leckey
28636c1f5d feat(mssql): add support for string types including a framework for handling non-UTF8 data 2020-06-07 02:00:13 -07:00
Ryan Leckey
9a701313bc feat(mssql): implement enough to get simple queries working
Co-authored-by: Daniel Akhterov <akhterovd@gmail.com>
2020-06-07 02:00:12 -07:00
Ryan Leckey
05eb07e7d4 feat(mssql): setup the initial boilerplate for MSSQL
Co-authored-by: Daniel Akhterov <akhterovd@gmail.com>
2020-06-07 02:00:12 -07:00
Ryan Leckey
a3053119fa fix: expose runtime-actix in sqlx/Cargo.toml 2020-06-01 05:34:52 -07:00
Ryan Leckey
51ae9f00e7
chore: bump version to 0.4.0-pre 2020-05-30 23:15:52 -07:00
Ryan Leckey
35bf560481
fix(core): tweak serialization impls to fix offline mode 2020-05-30 18:17:51 -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
Austin Bonander
6913695588 add support for building in "decoupled" mode 2020-05-30 16:02:37 -07:00
Ryan Leckey
cbccd68963
chore: prepare v0.3.5 2020-05-06 03:30:35 -07:00
Josh Holmer
f73149a90f Format SQL queries when printing them to the logs
Before, the query would be formatted equivalent to the input string:

```
[2020-04-18T23:47:32Z DEBUG sqlx_core::postgres::executor] SELECT id, queue, ..., elapsed: 2.320µs

        SELECT id, queue, payload, status, priority, created_at, updated_at
    FROM jobs
    WHERE status = $1
    ORDER BY priority ASC, created_at ASC

```

After, the query is formatted cleanly and consistently:

```
[2020-04-19T00:30:18Z DEBUG sqlx_core::postgres::executor] SELECT id, queue, ..., elapsed: 2.280µs

    SELECT
      id,
      queue,
      payload,
      status,
      priority,
      created_at,
      updated_at
    FROM
      jobs
    WHERE
      status = $1
    ORDER BY
      priority ASC,
      created_at ASC

```

This uses the `sqlformat` crate, which was ported from the
Javascript `sql-formatter-plus` library specifically for this purpose.
2020-04-19 16:11:50 -07:00
Felix Wiedemann
5628658d3f postgres: Add unix domain socket support 2020-04-18 14:31:31 -07:00
Ryan Leckey
90fd35745c Prepare v0.3.4 2020-04-10 15:56:13 -07:00
Ryan Leckey
e7ace2adc7 Prepare v0.3.3 2020-04-01 18:24:08 -07:00