44 Commits

Author SHA1 Message Date
LovecraftianHorror
826e63fc11
refactor(sqlx-macros): Ignore deps when getting metadata for workspace root (#1823) 2022-04-21 12:36:15 -07:00
Robert Collins
89ee690550
Don't require cargo to build offline queries (#1415)
In particular building with bazel and cargo-raze doesn't imply having
cargo at all, and deferring the lookup allows same-crate builds to
succeed with no change to semantics.

Fixes #1414

Signed-off-by: Robert Collins <robert.collins@cognite.com>
2021-08-31 17:35:50 -07:00
Fredrik Østrem
e7c3610e85
fix: Ignore __CARGO_FIX_PLZ when running "cargo metadata" in macro (#1352) 2021-08-16 16:36:18 -07:00
Austin Bonander
b3ae6e50de
fix(macros): prefix generated variable names in query_as!() (#1336)
closes #1322
2021-07-21 17:24:39 -07:00
Austin Bonander
e89cb0971a
fix(macros): tell the compiler about external files/env vars to watch (#1332)
* fix(macros): tell the compiler about external files/env vars to watch

closes #663
closes #681

* feat(cli): add `migrate` subcommand for generating a build script

suggest embedding migrations on `sqlx migrate add` in a new project
2021-07-21 16:36:22 -07:00
Jonas Platte
e33e4510fc
Fix error message about wildcard overrides (#1276)
Co-authored-by: Austin Bonander <austin@launchbadge.com>
2021-06-15 15:12:49 -07:00
toshokan
eda78a7258 Fix infinite compile loop regression from recursive Lazy reference 2021-05-24 09:31:55 -07:00
Jonas Platte
901f858fbc
sqlx-data.json removal prep work (#1184)
* macros: Reduce I/O

by doing all .env and environment variable reading inside a Lazy initializer.

* Use the default runtime and TLS backend for all examples

Before, rust-analyzer was always hitting the
"only one runtime can be enabled" compile_error in sqlx-rt.
2021-05-21 17:33:56 -07:00
Tom Dohrmann
76326c6619 use absolute paths in macros 2021-02-03 01:58:57 -08:00
Jonas Platte
d3b7a0783e macros: Only depend on serde when it's actually used 2021-01-31 16:57:29 -08:00
Jonas Platte
6ad0a9ada7 macros: Only depend on once_cell when it's actually used 2021-01-31 16:57:29 -08:00
Austin Bonander
7c32928ebc
feat(macros): implement query_scalar!() and variants
Signed-off-by: Austin Bonander <austin@launchbadge.com>
2021-01-20 22:23:04 -08:00
Jonas Platte
0758ffd10e Remove cargo_metadata dependency
It was not pulling its weight.

Just look at that Cargo.lock diff!
2021-01-13 23:05:56 -08:00
Jonas Platte
5d564167ca sqlx-macros: Replace lazy_static by once_cell 2021-01-13 23:05:56 -08:00
Jonas Platte
751fe03228 Clean up imports in sqlx_macros::query 2021-01-13 23:05:56 -08:00
Joe Grund
3e1da43434 Support workspaces for offline feature
This patch enables having a top-level `sqlx-data.json` file within a
workspace.

It does this by using a full clean / check instead of `cargo rustc`
which fails on a workspace.

A `--merged` flag is introduced to switch to the workspace behavior

Fixes #353.

Signed-off-by: Joe Grund <jgrund@whamcloud.io>
2020-12-19 05:17:07 +00:00
Pleto
9f99a8f3d2 add 1 as true for SQLX_OFFLINE env variable 2020-12-17 00:54:21 -08:00
o0Ignition0o
bfa58417a1 dontt allow(clippy::all) twice, just put one in brackets. 2020-11-19 14:06:25 -08:00
o0Ignition0o
52d482ffd1 Wrap allow(clippy::all) twice to avoid potential stability errors in the future. 2020-11-19 14:06:25 -08:00
o0Ignition0o
4b223af2d3 let's add a couple more brackets 2020-11-19 14:06:25 -08:00
o0Ignition0o
9dc039c1ff #[allow(clippy::all)] on all of the generated code. 2020-11-19 14:06:25 -08:00
Jonas Platte
3c7c266eac Fix some clippy lints 2020-11-19 14:04:07 -08:00
Jonas Platte
85b5ab0fb3 Fix cfg-specific unused lints 2020-10-29 22:21:27 -07:00
Jonas Platte
abdd29f145 Store query metadata only the current build is online
This should help with conflicting writes in some cases, but even without
issues like that it reduces useless I/O.
2020-10-29 22:21:27 -07:00
Ferenc Tamás
a46d7f8fdf fix(macro): offline env 2020-10-13 09:49:36 -07:00
Chloe Ross
5f3245d7f4 format: run cargo fmt 2020-07-31 04:14:48 -07:00
Chloe Ross
3885ae6ddf fix: allow queries that select just void to pass through macros as () instead of struct { _1: () } 2020-07-31 04:14:48 -07:00
Raphaël Thériault
ced09e0545
Support using both nullability and type overrides (#549)
* Make it possible to use both nullability and type overrides

* Fix override parsing lookahead logic

* Update column override tests

* Support nullability overrides with wildcard type overrides

* Fix tests

* Update query! overrides docs

* Remove last bits of macro_result!

* rustfmt
2020-07-27 00:43:35 -07:00
Ryan Leckey
86d41f17aa Merge remote-tracking branch 'origin/ab/macro-refresh' 2020-07-26 17:54:23 -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
Austin Bonander
94aa698581
refactor(macros): remove ResultExt and macro_result!() 2020-07-21 21:19:31 -07:00
Jonas Platte
4c394de70b Add SQLX_OFFLINE env variable to force metadata usage 2020-07-17 01:12:07 -07:00
Ryan Leckey
e765287dba refactor: restructure relationship between Pool, Connection, and Options
* Pool::new -> Pool::connect

 * Add Pool::connect_lazy

 * Pool::builder -> PoolOptions::new

 * PoolConnection no longer implements Connection

 * Transaction no longer implements Connection

 * Add ConnectOptions::connect

 * Add Acquire - abstract between &Pool and &mut Connection within one function

 * Remove Connect, move connect to Connection

Co-authored-by: Austin Bonander <austin@launchbadge.com>
2020-07-12 03:43:55 -07:00
Ryan Leckey
8baeb9215a fix: correct a couple places from the recent column metadata changes 2020-07-05 04:28:25 -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
Austin Bonander
17e88ac1a4 perf: implement pool benchmark, make fairness an option 2020-07-03 05:59:20 -07:00
Austin Bonander
eb831382e5 feat(macros): type override annotations for columns 2020-06-21 06:06:53 -07:00
Ryan Leckey
6497d67b6a feat(mssql): add macro support 2020-06-07 16:29:46 -07:00
Austin Bonander
bddb2e560f
fix(macros): fix macros for Postgres 2020-06-05 20:28:21 -07:00
dignifiedquire
9b68eb19ef fix(sqlx-macros): update trait definitions 2020-06-05 19:49:31 -07:00
Ryan Leckey
d4d994bae4
fix: found a few more changes needed in internal core usage in macros 2020-05-30 18:11:05 -07:00
Ryan Leckey
e8aa127c55
fix: tweak sqlx-core usage in macros after the latest massive refactor 2020-05-30 17:56:19 -07:00
Austin Bonander
1bdc3e9057 cargo sqlx prepare: fix to consistently trigger recompile 2020-05-30 16:02:37 -07:00
Austin Bonander
03773d0065 sqlx-macros: simplify query_macros module name, delete unused file 2020-05-30 16:02:37 -07:00